Dear all,
I'm pleased to announce the availability of the version 0.0.1 (proof of concept) version of my
specialization plugin on GitHub : https://github.com/archi-contribs/specialization-plugin (https://github.com/archi-contribs/specialization-plugin)
It is far from having the final functionalities but this version demonstrates the capacity of a plugin to change the icons. At the moment, one may change the icon of business actors and elements of technology layer elements only, using a "icon" property which indicates the name of the icon. The elements icons are then changed in the tree on the left handside of Archi and in every views where the elements are included.
Please note that after changing an element's icon, it may be necessary to update the opened views either by moving one of their element or by closing and reopening them.
You will find more information and installation instructions on GitHub.
On the short term roadmap:
- provide automated installation
- add the ability to change the icon of all the elements
- add more icons, especially those of IML (http://cognitsolutions.co.uk/publications/iml (http://cognitsolutions.co.uk/publications/iml))
- replace (or extend) the "icon" property system by more complex rules
As usual, if you've got comments or requirements, please do not hesitate to drop me a line :D
Best regards
Hervé
ps: once the plugin installed, there is an option on the preference page to automatically update it from GitHub ;D
Dear all,
I'm pleased to announce the version 0.0.3 alpha of my specialization plugin. It is avilable on github : https://github.com/archi-contribs/specialization-plugin (https://github.com/archi-contribs/specialization-plugin)
The installation procedure is simple: download the jar file and copy it to Archi's plugins folder.
This plugin allows to change the icon of any element (only technology, application and business layers on this alpha version). Is supports PNG, JPG, GIF (static images only) and BMP. The image should be located in any subfolder of the plugins/com.archimatetool.editor_4.0.3.201707201522/img folder.
To change an element's icon, simply create a property clled icon and with value, the path of the image under the img folder.
For instance, to show up the plugins/com.archimatetool.editor_4.0.3.201707201522/img/logistic/factory.png image, one would write <b>logistic/factory.png</b>
Here is a sample of what can be acheived so far ... Please note that this is just an alpha release, so please be tolerent to few display bugs.
Best regards
Hervé
Dear all,
I've been working hard and I'm please to announce that my specialization plugin is now ready to be promoted to beta release (version 0.1). You may download it from GitHub : https://github.com/archi-contribs/specialization-plugin (https://github.com/archi-contribs/specialization-plugin)
The updates done from previous version:
- bug fixes
- Activate the plugin's automatic update mechanism (you won't be required anymore to manually download the JAR file from GitHub when a new version is released)
- all the Archi's elements can now have a new icon
- two options have been added on the preference page
- enable icons replacement in views
- enable icons replacement in model tree
On my TODO list:
- Provide a file exporer on the preference page to access the images (and hiding Archi's ones of course) and enable copy/paste operations.
- encode the images in the model metadata that they can be saved in the archimate file
As usual, please do not hesitate to drop me a line should you discover a bug or request a new functionality.
Best regards
Hervé
Hi!
I'm sorry, but I'm not getting clear where to download the plugin and images.
Where's that "plugins" folder?
Thank you in advance.
Hi,
The plugin is a JAR file that can be downloaded from GitHub:
- Go to the GitHub page https://github.com/archi-contribs/specialization-plugin (https://github.com/archi-contribs/specialization-plugin)
- click on the JAR file
- click on the "download" button at the right of the page
Then, the JAR file needs to be copied to the "plugins" folder of Archi. This folder is located next to the Archi binary file so it really depends where you installed Archi.
At last, you may start Archi (or restart if it was already running).
The images should be located in the "com.archimatetool.editor_4.0.xxxxx" subfolder of the "plugins" folder.
Hope this helps
Best regards
Hervé
Hi.
I have a little problem installing your plugins. After moving them to the plugin directory and after running the Archi I have no any sign that they have been installed. I do not have such a issue with the Collaboration plugin. I put it in the plugin directory, restart the Archi and just use it. What is the difference beetweeen Collaboration plugin and the ones you provide? Do they need any additional java or Windows configuration?
Best regards,
Marek
Hi Marek,
My plugins do no require any other Java or Windows configuration.
There are several ways to check if the plugin is correctly started by Archi. Please use the one you prefer:
- Go to Edit / Preferences. You have one entry per installed plugin.
- Go to Help/ Help Contents. You have one entry per installed plugin.
- Go to Help / About Archi / Installation details. You have one entry per installed plugin.
If the plugin does not show up, you may check if an error message is shown on the Java console by running "
Archi.exe -consolelog".
Regarding your other question about the difference between Collaboration plugin and the ones I provide. Basically, I provide the following plugins (all available through the archicontribs GitHub page https://github.com/archi-contribs (https://github.com/archi-contribs)):
- Database plugin: this plugin allows to store models in a central database. The difference with the collaboration plugin is that it uses a GitHub server while my plugin uses a database (SQL or Neo4J) than can be requested or updated using any SQL tool like an ETL.
- Form plugin: this plugin allows to create forms to show and update components properties. It also contains a module to export those properties to an Excel spreadsheet.
- Script plugin: this plugin allows to automate few tasks when Archi is started like loading a specific model (from an Archimate file or from a database) and generate an HTML report from this model.
- Specialization plugin: this plugin allows to change the Archi elements icons (the ones at the upper left corner) in order to specialize them.
- Service Now plugin: this plugin allows to import elements and relationships form the Service Now CMDB web services.
Hope this helps.
Best regards
Hervé
Hi.
Thanks for a prompt reply.
Please find enclosed some screenshots.
I'm almost sure there must be a configuration issue.
Rgds,
Marek
Hi Marek,
Your files do not have the right size. Should be:
- org.archicontribs.database_v2.0.7b.jar 15.7 MB
- org.archicontribs.form_v1.6.1.jar 11.8 MB
Did you follow the procedure I've given to download them ?
1. click on the JAR file
2. click on the download button
Best regards
Hervé
ps: you do not need the vpp file :)
Hi.
My fault. I didn't follow your download instructions. It seems that everything is working.
Thanks a lot.
Marek
Hi, Herve.
On a Mac, Archi is an "app" file, with folders inside. Do you mean the plugins folder inside it?
If so, what happens whit a new version of Archi? Should I copy the jar file every time I upgrade?
Regards.
Hi,
My apologies, I do not have a Mac, so I don't know about app files ...
Best regards
Hervé
@ Marek,
You're welcome ;)
Hi,
Quote from: jmariani on September 27, 2017, 15:50:31 PM
On a Mac, Archi is an "app" file, with folders inside. Do you mean the plugins folder inside it?
If so, what happens whit a new version of Archi? Should I copy the jar file every time I upgrade?
Yes, you're right. That's the folder inside the App so you'll have to install then again in the new version of the app.
Regards,
JB
Quote from: Jean-Baptiste Sarrodie on September 30, 2017, 14:26:10 PM
Hi,
Yes, you're right. That's the folder inside the App so you'll have to install then again in the new version of the app.
Regards,
JB
Thank you!. Maybe in a future version will you consider moving the plugin outside the "app"? Thank you!
Hi.
You say we copy images to the "com.archimatetool.editor_4.0.3.201707201522" folder, but I don't have one called like that.
What I have is one called "com.archimatetool.editor_4.0.3.201709061211". I'm using Archi 4.0.3 build 201709061211.
Regards.
Hi,
The number at the end depends on the version of Archi you use. In your case, you can safely copy your images in your "com.archimatetool.editor_4.0.3.201709061211" folder.
In a next release, it will possible to copy/pase the images to the the preference page and the images will be automatically stored in the correct folder ;)
Best regards
Hervé
Quote from: Hervé on October 11, 2017, 20:29:04 PM
Hi,
The number at the end depends on the version of Archi you use. In your case, you can safely copy your images in your "com.archimatetool.editor_4.0.3.201709061211" folder.
In a next release, it will possible to copy/pase the images to the the preference page and the images will be automatically stored in the correct folder ;)
Best regards
Hervé
You might need Administrator access to write to the Archi installation folder if it was installed using the installer on Windows 64-bit version.
Hi Phil,
You're right but if your credentials allow you to install a software, then the Windows Explorer isable to automatically change the folder rights to allow thie copy ;)
Best regards
Hervé
Dear all,
I just release the version 0.2 of my specialization plugin to Github: https://github.com/archi-contribs/specialization-plugin (https://github.com/archi-contribs/specialization-plugin)
The key updates are:
- The list of elements where the icon can be changes has been increased
- It is now possible to change the elements and relationships label as well using the "label" property
- It is now possible to switch between Archi's standard icons / labels and your customized ones using a contect menu (right click)
As usual, please do not hesitate to drop me a line in case of any question or issue.
Best regards
Hervé
Hi guys
I see an opportunity in using plugin .
When an organisation doesn't know about archimate, people -even architects- often tend to reject the archimate notation/symbols and prefer the more"neutral" visualization they're used to, that is just plain boxes or rectangles to symbolize applications, data, etc.
So I'd like to go on with archimate modeling, but use the plugin to render views that mimics vizualisation people usually see.
Hervé, have you any hints about the size (in pixels) the icons should be ?
Hi,
Indeed... At the moment, I store images in several sizes (and add the size in the image filenames for reference) but this is not very convenient.
In a next release, it will be possible to dynamically change the image size. I was thinking to a syntax like "filename:size" for squares or "filename:width:height" for rectangles.
Best regards
Hervé
Quote from: Hervé on October 12, 2017, 08:15:45 AM
Hi Phil,
You're right but if your credentials allow you to install a software, then the Windows Explorer isable to automatically change the folder rights to allow thie copy ;)
Best regards
Hervé
I use Archi on two machines. My own Mac :) and a work PC with no admin rights >:( I'm about to run Archi without the full install, but in the quoted scenario, I can't get at an install to reference the specialization icons. I guess I could always place them elsewhere and refer to that location?
Hi,
If you do not use the full install procedure, this means that you coy the files in a custom folder. You need to go in this custom folder, then the "plugins" folder, then the "com.archimatetool.editor_xxxx" (where xxxx depends on Archi version).
Best regards
Hervé
Quote from: ubibene on November 03, 2017, 06:39:20 AM
Hervé, have you any hints about the size (in pixels) the icons should be ?
16x16 does it for me (see attached), but as Hervé says, it supports any size.
Thanks rheward !
By the way, it would be cool to be able to use custom icons on data objects. I understand this is not possible at the moment because they have no icons in archi : maybe archi could use "void" icons instead : a 1x1 pixel png image with transparent background for example. This would change nothing for existing models, but we could use tthen custom icons on such objects.
Hi all.
I am attempting to get the icon plugin working correctly on a Mac OS 13 (Sierra)
I think it is partially working? I found that the "plugin" folder of Archi for mac's is really:
path to Archi.app (this is appears as the Archi icon on my desktop) /
Contents/Eclipse/plugins/com.archimatetool.editor_4.1.0.201711211025/img/network
where "network" is a subfolder I created.
When I create a icon on the application and put in the properties of "icon - > path to .png file"
the model tree shows that it picked up / can use the icon o.k. (see picture)
However, if I drag a new one of these icons onto the page, it appears as a regular node.
Ideas on what I have set up incorrect?
Many thanks in advance!
Hi,
If I understand correctly, you try to change the icon on nodes. You need to know that some components have got two figures, one with an icon, one without. That's the case for nodes (see screenshot bellow).
My plugin is able to change the existing icon if there is one, but is not able to add one where there isn't any. So you need to change the nodes figures to see your icon.
Please do not hesitate to ask me again if I misunderstood your question ...
Best regards
Hervé
Many thanks for your reply Hervé.
From your screen picture, you are describing that if a node has the little diagram of the box in the node case, the icon value will replace that diagram.
Many of the selections in the technology section of the palette, (e.g. - Communications Network) have the diagram you pointed out, and can be changed in the method described with the plugin via the icon property.
For me, both the "node" and "device" palette selections do not have the diagram that can be replaced. Just verifying that this is what should be expected.
Thanks again for making this clear for me and again, sincerely appreciate your help. The folks working on this application are really making strides to allow this to be very functional for very many folks.
Thanks again!
That's correct.
The only way to change the icon is to change the figure to something that has got an existing icon.
Best regards
Hervé
Dear all,
the version 0.3 of the specialization plugin has been released on github : https://github.com/archi-contribs/specialization-plugin (https://github.com/archi-contribs/specialization-plugin)
As Usually, you may install it by manually copy the JAR file to Archi's plugin folder, or click on the "check for update" button on the plugin's preference page if you've got a previous version installed.
The key updates are:
- Add debug and trace messages
- Add the ability to change the name of the property that contains the icon filename
- Add the ability to change the name of the property that contains the label text
- Add a context menu to refresh the model tree
The next devs are now:
- alow to dinamically change the images size
- add a file explorer to the preference page to manage the image files
- automate the creation of symbolic links (linux/mac) and junctions (windows) to access image files outside Archi's editor folder
Best regards
Hervé
Dear all,
I've been working very hard to release this new version before Christmas : https://github.com/archi-contribs/specialization-plugin (https://github.com/archi-contribs/specialization-plugin)
Even if a lot more need to be done, I decided to release it under
version 1.0 because it becomes quite complete now
As usual, you may download and copy the JAR file into archi's plugin folder or click on the "check for update" on the preference page if a previous version of the plugin is already installed.
The key updates are:
- Better integration into Archi (please see screenshot below)
- The image files can now be located outside Archi's editor folder
- The icon and label names can now contain variables (i.e. references to other properties)
- Add the ability to change the images size
- Add the ability to change the image location into the elements' rectangles
- Rewrite debug and trace messages
- Update inline help
- Various Fixes:
- Fix elements shape (square corners instead of round ones)
- Fix junction shape
- Do not replace the icon in the properties window anymore
Best regards
Hervé
Dear all,
I just released the version 1.0.1 of my specialization plugin, with 2 small updates:
- Replace "\n" string by a newline in labels
- Expand variables ${name}, ${id}, ${property:xxx}, ... the same way the form plugins does
Best regards
Hervé
Hi!
How to completely hide/cancel the label?
Thanks!
Hi,
You may replace the label by a space char.
Best regards
Hervé
Quote from: Hervé on February 05, 2018, 20:03:48 PM
Hi,
You may replace the label by a space char.
Best regards
Hervé
Thanks! Maybe you can consider adding some checkboxes in the future, like "Hide label" and "Override original label".
"Hide label" will, obviously, hide the label.
"Override original label" will, when checked, use the label defined in the replace label tab. Otherwise, will use the original one.
Thanks!
Hi,
Why not ... I'll think about it.
Best regards
Hervé
Also, (at the risk of being a pain in the ass) maybe you can consider adding some controls to the icon section like:
- Keep aspect ratio
- Positioning as an absolite value or as a percentage of the coordinates (0,0 at the top left corner of the figure)
The aspect ratio is qlready done (you may specify a width and leave "0" as height, or specify a height and leave "0" as width).
Regarding the percentage from top left corner, you already can specify coordinates. I'm not sure percentage will be that useful as I do not beleive you will resize your objects that often.
Best regards
Hervé
Dear all,
I just released the version 1.0.2 of my specialization plugin : https://github.com/archi-contribs/specialization-plugin (https://github.com/archi-contribs/specialization-plugin)
The key updates are :
- The undo/redo now works on the label editing tab
- Updating a label now sets the model's dirty flag
Best regards
Hervé
Dear all,
An issue has been discovered on the relationships labels in the version 1.0.2. I just released the version 1.0.3 that solves the issue.
Best regards
Hervé
Dear all,
I'm pleased to announce the version 1.0.4 of my specialization plugin (https://github.com/archi-contribs/specialization-plugin (https://github.com/archi-contribs/specialization-plugin)).
To install it:
- For a fresh install: download the org.archicontribs.specialization_v1.0.4.jar to the Archi plugins folder
- To update from a previous version: go to the specialization preference page and click on the "check for update" button"
The key improvements are:
- Implement ${model:purpose} variable
- Implement ${sum:xxx} variable which is able to recursively sum numeric value (like ${view:sum:property:cost})
- Replace exception by simple error messages in variable expansion to avoid generating Archi misbehavior
- Fix ${view:xxx} variables
Best regards
Hervé
Dear all,
I just discovered an issue in the ${sum:xxx} variable recursion, so I just released the version 1.0.5 of the plugin:
- the ${sum:xxx} variable includes the the selected object in the sum
- the ${sumx:xxx} variable excludes the the selected object from the sum
One may test the plugin with the following model that includes both of them:
<?xml version="1.0" encoding="UTF-8"?>
<archimate:model xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:archimate="http://www.archimatetool.com/archimate" name="test sum" id="2c0f0b84-f918-4614-96e8-a558a30932b8" version="4.0.0">
<metadata/>
<folder name="Strategy" id="185309c3-e930-4d83-a347-d97506ac9636" type="strategy"/>
<folder name="Business" id="cc455990-e1f4-42b1-889a-e838055b0bb9" type="business"/>
<folder name="Application" id="e71470ce-ef3d-4bfe-8165-61ed815dd66a" type="application"/>
<folder name="Technology & Physical" id="78472b37-54e4-42d3-8c1b-4f5bc8268d74" type="technology">
<folder name="folder 1" id="9c6fc6f0-c2d9-4c01-8f3c-dbc86d05ed39">
<element xsi:type="archimate:Node" name="Cost node" id="29767061-378c-4832-aaed-4b839acf6766">
<property key="label" value="The total cost is ${view:sum:property:cost} €."/>
</element>
</folder>
<folder name="folder 2" id="bbbdfa3e-0636-4c92-8b03-ae1e7605b5ea">
<element xsi:type="archimate:Node" name="Node 1" id="b2169f00-c0f0-4ac9-ade7-8ade4e40135c">
<property key="cost" value="12"/>
<property key="label" value="node 1\ncost is ${property:cost} €"/>
</element>
<element xsi:type="archimate:Node" name="Node 2" id="e4747193-f34b-4832-82bd-23373b3e8579">
<property key="cost" value="24"/>
<property key="label" value="node 2\ncost is ${property:cost} €"/>
</element>
</folder>
</folder>
<folder name="Motivation" id="6daded04-0965-41b0-aaa9-20797cc3f70c" type="motivation"/>
<folder name="Implementation & Migration" id="aef0104c-327c-4f13-8993-59d33b93bc7d" type="implementation_migration"/>
<folder name="Other" id="129a22e0-cda9-4216-8537-fbc725d60f2a" type="other">
<element xsi:type="archimate:Location" name="Datacenter" id="92d0eef4-16b1-49b6-b109-a2944395696b">
<property key="label" value="datacenter\ncost is ${sumx:property:cost} €"/>
<property key="cost" value="100"/>
</element>
</folder>
<folder name="Relations" id="332551c8-28bc-4168-b123-5a084fbf65c4" type="relations">
<element xsi:type="archimate:FlowRelationship" name="node1 to node2" id="25192a0f-cfed-4b0a-87e8-c10cb77dfa91" source="b2169f00-c0f0-4ac9-ade7-8ade4e40135c" target="e4747193-f34b-4832-82bd-23373b3e8579"/>
<element xsi:type="archimate:CompositionRelationship" id="d782b240-737e-4353-9903-5f994dd6fe72" source="92d0eef4-16b1-49b6-b109-a2944395696b" target="b2169f00-c0f0-4ac9-ade7-8ade4e40135c"/>
<element xsi:type="archimate:CompositionRelationship" id="b5f86a42-9eaf-4977-a7e7-5c19a6babd64" source="92d0eef4-16b1-49b6-b109-a2944395696b" target="e4747193-f34b-4832-82bd-23373b3e8579"/>
</folder>
<folder name="Views" id="f76d44bd-0cbe-433b-af50-24ea1667b60f" type="diagrams">
<element xsi:type="archimate:ArchimateDiagramModel" name="Default View" id="d290d7fb-9375-408b-8343-98cd400b834e">
<child xsi:type="archimate:DiagramObject" id="5973db03-198c-4155-a20f-01a6a77eed83" archimateElement="29767061-378c-4832-aaed-4b839acf6766">
<bounds x="168" y="36" width="120" height="55"/>
</child>
<child xsi:type="archimate:DiagramObject" id="90fb515a-755d-4481-b5c4-a234b17a52a7" archimateElement="92d0eef4-16b1-49b6-b109-a2944395696b">
<bounds x="24" y="108" width="397" height="145"/>
<sourceConnection xsi:type="archimate:Connection" id="8d5b7fde-7327-4524-ab13-d261faeef41d" source="90fb515a-755d-4481-b5c4-a234b17a52a7" target="0d375ca2-0ad7-4933-8df9-363942585b92" archimateRelationship="d782b240-737e-4353-9903-5f994dd6fe72"/>
<sourceConnection xsi:type="archimate:Connection" id="b83a97b5-f998-422d-a61b-ac967ac3324c" source="90fb515a-755d-4481-b5c4-a234b17a52a7" target="d2b60400-549e-484a-a359-e0c49f8004ad" archimateRelationship="b5f86a42-9eaf-4977-a7e7-5c19a6babd64"/>
<child xsi:type="archimate:DiagramObject" id="0d375ca2-0ad7-4933-8df9-363942585b92" targetConnections="8d5b7fde-7327-4524-ab13-d261faeef41d" archimateElement="b2169f00-c0f0-4ac9-ade7-8ade4e40135c">
<bounds x="24" y="60" width="120" height="55"/>
<sourceConnection xsi:type="archimate:Connection" id="78c83e19-c034-4d17-bbcb-f1240b089198" source="0d375ca2-0ad7-4933-8df9-363942585b92" target="d2b60400-549e-484a-a359-e0c49f8004ad" archimateRelationship="25192a0f-cfed-4b0a-87e8-c10cb77dfa91"/>
</child>
<child xsi:type="archimate:DiagramObject" id="d2b60400-549e-484a-a359-e0c49f8004ad" targetConnections="78c83e19-c034-4d17-bbcb-f1240b089198 b83a97b5-f998-422d-a61b-ac967ac3324c" archimateElement="e4747193-f34b-4832-82bd-23373b3e8579">
<bounds x="245" y="60" width="120" height="55"/>
</child>
</child>
</element>
</folder>
<purpose>purpose</purpose>
</archimate:model>
Best regards
Hervé
Hi.
Just downloaded and installed the 1.0.5 version, but the Preferences->specialization plugin pane says I have 1.0.4, and when I check for update, it says there's a new version available.
???
My apologies, I had forgotten to increase the release number inside the jar file.
I just sent an update to GitHub.
Thanks!
Hervé,
have you considered adding support for the new multi-selection Property Sections?
This allows the Property Sections to edit more than one item. The code was changed here:
https://github.com/archimatetool/archi/commit/348a8c3b81155dbea57666d437c2602adde18908
I don't think it would be too hard to change, but ask if you have any questions.
Phil
Hi Phil,
Thanks for pointing me out this change. I definitely will.
Best regards
Hervé
Hi Hervé,
I have a suggestion for default labels to apply to a view. I have scanned the forum and the repository files, I don't believe the plugin can do this yet.
Idea A:
A view could have one or more properties, such as "label_ApplicationComponent", which act as the default label for that type of element. This could be enabled in the view's preferences Replace labels in this view would have four options: yes|no|use model's configuration|use view defaults first, where use view defaults first acts like the yes option but inherits a global "label" property from the view and any "label_ElementType" property as defaults for that view.
This would make label format specific to a view so that each view could display labels in alternative formats depending on the intended audience for that view. For example, an infrastructure engineer/architect may wish to read all properties for nodes in one view whereas an alternate view for 2nd line support may wish to show only node names and OS.
Idea B:
A view could have one or more properties, such as "label_Format1", "label_FormatXYZ". Each element may have a property "label_inherit" which specifies the parent view (or model) label property from which to inherit its format, e.g. "label_inhert=label_Format1". That would achieve much the same goal as Idea A and could still be overridden with a "label" property for specific elements within a view. This may be simpler to use and possibly more flexible as any element could inherit from the same format rather than one based on its type.
Different views could specify unique label formats that would be inherited by the elements shown, therefore changing format of all elements in a view with just one property field.
I hope my proposal makes sense and is not too complex, because it would provide great flexibility. Thanks for a great plugin!
Chris
Hi Chris,
Thanks a lot for your suggestions.
You are right, one weakness of my plugin is that the label and icon are stored as properties, thus at the element / relationship level (and not at the graphical component level).
I did it this way as it did not require any change in the archimate file structure, so a model updated using my specialization plugin can continue to be opened in an Archi instance that does not have got my specialization plugin.
Unfortunately, this implies that all views share the same label / icon properties and the only parameter available in the views is an on/off switch.
Your suggestion is very interesting as it will allow to have different labels / icons per view.
It shouldn't be very complicated to implement. I'll have a think and come back to you asap.
Best regards
Hervé
Hi Hervé
The suggestions made by Chris would be a possible help for me as well. For now I sometimes use the following naming scheme for an element based on the pattern described by Gerben in his book:
[Some grouping concept] Element Name (Archimate Concept Abbreviation)
For example
[ACME] Manage Customers (Bus. Prcs.)
To represent a business process Manage Customers for organization Acme Inc.
Use Chris' idea A, I could use a variable ${model:enterprise_abbreviation} on the model level indicating for which enterprise the model is constructed, "ACME" and on the specific Manage Customers business process a variable ${property:type_abbreviation} to indicate the "(Bus. Prcs.)" part.
On a specific view I could then add a property "label_BusinessProcess" with a value
Quote"${model:enterprise_abbreviation} ${name} ${property:type_abbreviation}"
to represent the entire pattern.
At the moment the pattern "[ACME] Manage Customers (Bus. Prcs.)" is entirely stored in the element's name and I have to extract the real name when exporting it to a database or something else.
When reading through the latest updates to this wonderful plugin, I came across the following 2 questions:
- Does the ${sum:xxx} variable only take into account the elements in a specific view or is it possible to make a sum across all elements in a model?
- When would you use the ${model:purpose} variable?
Are you able to assist me with these?
Thank you as always.
Best regards,
Hi,
To be honnest, I concentrate on the database plugin at the moment to release a version that is mode collaborative (i.e. the export process will
sync the model with the database) so I haven't worked much on the specialization plugin these last days ...
Chris idea B is easier for me to implement as it just requires to update the algorithm which calculates the label ... So unfortunately, it won't be very soon but it is on my todo list.
Regarding your others questions:
QuoteDoes the ${sum:xxx} variable only take into account the elements in a specific view or is it possible to make a sum across all elements in a model?
It takes in account the component that holds this variable, plus recursively all the components that are contained in it (if it is a container of course).
To get the sum of all the components inside a view: ${view:sum:xxx} and to get the sum of all components in the model: ${model:sum:xxxx}
QuoteWhen would you use the ${model:purpose} variable?
To be honest, I do not think this variable is very useful and do not see any use case where it can be of any use. I created it for completeness only.
Best regards
Hervé
Hi Hervé
No worries. Just wanted to point out that it could be usefull for other cases as well.
Your work on the database plugin supports now the possibility for Neo4j to contain a relationship to another relationship, which we discussed in the past, so that might come handy as well :)
I haven't been modelling a lot lately, but recently came across a project where we potentially could use your specialization plugin to represent a User Story Map, so I started thinkering again in Archi.
Happy coding.
Happy to hear you're coming back to Archi. So welcome back ;)
I'm rushing to deliver my new database version as it was planned for the end of last year (you see, I'm VERY late).
Amine, a fellow developer is getting on board and will help me with my plugins. Our first common jobs will be to reorganize my code and automate unit tests to reduce the number of bugs and make my plugins more reliable.
Of course, I will not stop to deliver new functionalities, but the two priorities described before are slowing them down.
In addition, the coming 4.3 release of Archi will provide new interesting functionalities on its own.
So please do not hesitate to continue to make new functionality requests or to raise issues ;D
Best regards
Hervé
Dear all,
I'm please to announce the version 1.0.7 of my specialization plugin (https://github.com/archi-contribs/specialization-plugin (https://github.com/archi-contribs/specialization-plugin)).
This version introduces a new drill down functionality: i.e. it is now possible to open a specific view with a double click on any element (and not only on view links).
As usual, to install the plugin, one just need to copy the JAR file to Archi's plugin folder. If the plugin is already install, one may update it using the "check for update" button on the preference page.
Please do not hesitate to open new cases on GitHub should you discover issues.
Best regards
Hervé
Drill down rocks!
I installed Archi plus the Specialization Plugin on a MacBook Pro in macOS. Archi works fine and I have the Preferences window for Specialization Plugin too. I want to change the labels in my views. Unfortunately this does not works: I see the original Name not the value defined in label property. I do not know what can be the problem because earlier I used the same solution on a Windows PC without any problem. I attached some screenshots and a log file. Please help me to find the reason why the labels are not changed! Thanks, Tamas Viragh
The screenshots I mentioned in the previous post are now attached here.
Hi,
Unfortunately, I do not have any Mac computer so cannot reproduce your environment.
What I'm thinking of is that you filled in the label property manually in the properties tab. If you do it this way, the view is not aware of the label property creation or update.
what you could do is to force the view to refresh itself. There are two options:
1- you close the view and reopen it
2- you select the "replace label" tab and update the label in this tab (like add a space and remove it just after).
If this does not solve your issue, I suggest you follow the following plan:
1- close all your models in Archi
2- close Archi
3- delete the plugin log file
4- restart Archi (Archi will not load any model during startup)
5- go to the preferences and switch the plugin in trace mode
6- create an empty model
6a- create your element in the default view
6b- create all your required properties
6c- set the label using the "replace label" tab
7- close Archi
8- send me the complete log file
Hope this helps
Best regards
Hervé
Hi Hervé,
thanks for your answer.
I performed steps 1 to 8 as you suggested and attached the log file.
At Logger preferences I used "Simple mode" and "Trace".
I also attached a video from the screen.
Unfortunately the label does not appeared in the view just the original object name when I closed and re-opened the view.
Best regards,
Tamas
Thanks,
I'll have a close look when I come back home this evening ...
Best regards
Hervé
Hi Herve,
I think I came upon same issue as others in that the icon plugin stopped working for me and may correspond to the last Archi update? Some models previously where I did have icons showing up, now do not.
Am running Archi on a mac laptop professional.
I did a logger trace mode to try to set an icon for a test and attaching that to this post.
Many thanks in advance.
As some other people told me, the label replacement is not working either on MAC
I've got 3 difficulties here:
- I do not have any MAC to test my plugin
- There is no error message in the log file to provide me a clue on what can happen
- The plugin works on Windows and Linux
So, I need some help from you. Could you please :
- Tell me the latest version number that was working (that I can compare the changes done since this version)
- Open the Java console while running Archi (i.e. running "archi -consolelog") and check if there are some messages that would not be in the log file
Thanks and regards
Hervé
Hi Herve.
Javaconsole shows no errors. I believe also that Mac OS came out with a update (10.13.6) recently as well, which could be tied to this issue, although backing that out isn't easy for me to do.
Going to see about backing out last Archi & specialization plugin combinations to see if it makes a difference and will post if I find anything.
Thanks as always.
In fact, another user did the test and confirmed to me that rollbacking to version 1.0.7 solves the issue.
What I do not understand is that the only change done between version 1.0.7 and 1.0.7.1 is a fix to restore missing placement and sizing command icons beneath Archi menu.
So I created a "test for MAC" folder on GitHub and compiled the .jar on a Windows 10 PC (64 bits) and will compile the .jar next Monday at work on a Windows 7 PC (32 bit). Just in case ...
Else, I do not have any clue on what can happen.
Meanwhile, I restored the 1.0.7 version of the plugin on GitHub.
Best regards
Hervé
Hi, I used new specialization-plugin/test for MAC/org.archicontribs.specialization_v1.0.7.1-win10-64b.jar file on macOS 10.13.6 (17G2208).
Unfortunately the label is not used in the model so the problem exists.
Tamas
New info: I found an old version of the plugin on my windows PC and copied that to the MacBook Pro.
So org.archicontribs.specialization_v1.0.6.jar works fine on macOS 10.13.6 (17G2208)!
I see the label property values in the view.
Tamas
Hi,
I compiled the .jar file on a 32 bit Windows 7 workstation and uploaded it to the "test for MAC" folder.
It has been compiled with exactly the same code than the one compiled from a 64 bit Windows 10 workstation and the content slightly differs.
So I let you have a try and let me know if it works better on your MAC.
Best regards
Hervé
As I've been told by email, the 32bit version is working fine on MAC, so I replaced the jar file with its 32bit version on GitHub.
Please do not hesitate to open an issue on GitHub https://github.com/archi-contribs/specialization-plugin/issues (https://github.com/archi-contribs/specialization-plugin/issues) if you discover other bugs.
Best regards
Hervé
32 or 64 bit makes no difference when compiling a Java Jar. If there is an issue with running on later versions of Mac, it will be related to something else like event despatching in the UI.
It's what I suspected but I was not sure... So I need to compare my two workstations in detail to understand what the differences are.
Different OS X versions can exhibit different and subtle behaviour differences in the UI. The only way to be sure is to test on the latest OS X. I can't help you here because I don't have a Mac powerful enough to run the latest OS X.
Hi all.
For me, the 32 nor 64 bit plugin work to bring back the icons. Renamed these to regular name in plugin folder - "org.archicontribs.specialization_v1.0.7.1.jar"
I did not have older version of the plugin to try as viraght has found to try. Possible to bring back a 64b - "org.archicontribs.specialization_v1.0.6.jar" and a "7.0.jar" version to test against? Then could try each to see where things stopped working for me.
Many thanks in advance for your help.
Hi,
Quote from: newbie1234 on September 05, 2018, 14:16:20 PM
Possible to bring back a 64b - "org.archicontribs.specialization_v1.0.6.jar" and a "7.0.jar" version to test against?
Has Hervé store its jar inside its repo (BTW Hervé: this is bad practice, you should create release for that and attache the jar to the release), you can simply access older version through their respective commits:
Version 1.0.7 : https://github.com/archi-contribs/specialization-plugin/tree/189e4c178c8ad90d8f1a901c873b3b4422a86d2b
Version 1.0.6 : https://github.com/archi-contribs/specialization-plugin/tree/cb96adf6eba41644ae806b634c69b2a702d42132
Hope this helps.
JB
Herve,
are you sure the bug is only manifesting on Mac? I notice you made some other changes like sub-classing the ArchimateDiagramEditor to catch mouse clicks. Has this broken anything?
Hi Phil,
I cannot guarantee my code is 100% bug free (who can ;D) but I've got tests environments on Windows (Win 7 32 bit and Win 10 64 bit) and Linux (Fedora 28 64 bit).
In addition, my colleagues and myself are using my plugins at work on a daily basis (including my specialization plugin, but not my ServiceNow plugin I must admit). I'm also in close touch by mail and by phone with other companies that use them on a daily basis as well and I would like to officially thank them very much for all the help they provide me : bug report, functionality requirements, testing on beta releases, ...
Regarding the specialization plugin, and especially the latest 1.0.7.1 version, I only received complaints (so far) from MAC users about the version that has been compiled on a Windows 10 64 bit workstation, while the same code compiled on a Windows 7 32 bit workstation seems to work. As you confirmed the JAR file should be generated exactly the same on both systems and as obviously they are not, I'm still investigating the other differences I may have between my two workstations and that may cause the JAR files to be different.
Unfortunately, I do not own a MAC and, even if I've seen some tuto on how to install the MAC OS on a virtual machine, this is not allowed and therefore I cannot do any tests on MAC before delivering new releases of my plugin.
If someone has got a MAC that he doesn't use, I'm ready to accept it as a gift ;D ;D ;D
Anyway, for more than nearly 3 years now (wow, already 3 years :o !!!), when someone reports a bug, I do my best to solve it as quickly as I can ;D
;)
Best regards
Hervé
QuotePossible to bring back a 64b - "org.archicontribs.specialization_v1.0.6.jar" and a "7.0.jar" version to test against?
As everybody do not know how to use GitHub (me first ;D), I'm re-publishing all the old version from the 1.0.1 like that you will be able to try all of them ;D
Best regards
Hervé
Thanks JB.
Can confirm that 1.0.7 brings back the icons for Mac. Many thanks!
Quote from: Hervé on September 05, 2018, 18:55:51 PM
Anyway, for more than nearly 3 years now (wow, already 3 years :o !!!), when someone reports a bug, I do my best to solve it as quickly as I can ;D
As always Hervé, thank you for all your hard work and time you take to support everyone.
Quote from: newbie1234 on September 06, 2018, 13:12:35 PM
Thanks JB.
Can confirm that 1.0.7 brings back the icons for Mac. Many thanks!
Phew, I thought I was going slightly mad having lost the icons. I put it down to some renaming of the icon folder location that I coincidently changed, but I agree that going back to 1.0.7 works fine again and 1.0.7.1 doesn't work.
Hi,
There is a "test for MAC" folder on Github with two versions of the 1.0.7.1 jar file:
- one compiled on a 32 bit Windows 7 workstation
- one compiled on a 64 bit Windows 10 workstation
Some users told me that the version compiled on the 32 bit windows 7 workstation was working fine on MAC.
Could you please confirm ?
Thanks and regards
Hervé
Please bear with me on testing explanation....
By *accident* I copied the "org.archicontribs.specialization_v1.0.7.1-win10-64b.jar" to the Archi plugin directory as "org.archicontribs.specialization_v1.0.7.jar" -- IT WORKED!
Then, I changed the "org.archicontribs.specialization_v1.0.7.jar" that I just copied to plugin directory to "org.archicontribs.specialization_v1.0.7.1.jar" and ....IT DOES NOT WORK... (added a ".1" to the name)
When I used the 7.0.jar version, Archi let me know that there was a update available to "7.0.1" When I did the test above, it was happy that I had the newest version, even though the jar file was named "7.0.jar"
Hopefully above explanation makes sense? Is mac OS looking for something to match up against inside jar file that it doesn't like?
Hi,
The version is coded into the plugin. You can rename the jar file to any name you wish, it will continue to behave the same way. Basically, the only reason I added the version number in the jar file is to be able to "visually" distinguish versions.
But what I do not understand is that MAC users said the org.archicontribs.specialization_v1.0.7.1-win10-64b.jar file (compiled on a 64 bit Windows 10 workstation) was not working on MAC, but the org.archicontribs.specialization_v1.0.7.1-win7-32b.jar (compiled on a 32 bit Windows 7 workstatoin) was working fine.
And if I understand correctly, you are saying that the win10-64b files works fine on your MAC, aren't you ?
Could you please confirm ?
Thanks and regards
Hervé
Hi. Yes, "win10-64b" when renamed to "7.0.jar" works fine on my mac. When I rename to "7.0.1.jar" it does not show the replaced icons. I tried the change with both the 32b and 64b versions.
Thanks again for all of your help.
-John
Sorry to insist, but I'd like to be sure I understand correctly ...
You say that both the win10-64b and the win7-32b jar files are failing to show the replaced icons. Is that correct ?
Hi.
I tried both versions, *both* the win10-64b and the win7-32b when renamed to just "7.0.jar" (no win10-64b, no win7-32b in name) work. When I try with 7.0.1.jar name (no win10-64b, no win7-32b in name) , they both fail to bring in the icons.
Thanks.
Still not sure to understand ... I must be tired, or dumb, or both :o ;D
1 ) org.archicontribs.specialization_v1.0.7.1-win10-64b.jar
- when used as is (no rename) --> it does not work
- when renamed to org.archicontribs.specialization_v1.0.7.1.jar --> it does not work
- when renamed to org.archicontribs.specialization_v1.0.7.jar --> it works fine
1 ) org.archicontribs.specialization_v1.0.7.1-win7-32b.jar
- when used as is (no rename) --> it does not work
- when renamed to org.archicontribs.specialization_v1.0.7.1.jar --> it does not work
- when renamed to org.archicontribs.specialization_v1.0.7.jar --> it works fine
Is that correct ?
Hi Herve.
Your plugin is great to use as having special icons is somewhat a religion to some folks :)
Apologies for late reply as was pulled into some meetings between then and now.
Your outline is correct. BTW - I upgraded Archi to 4.3 yesterday as well, and did the tests over again with the results as how you have outlined.
regards,
-John
It is much clearer now, I will never use numbers with 4 digits ;D
Thank you very much for your tests
Today I noticed that on Archi 4.2 and 4.3 using the Specialization amongst others results in having a different icon color for some elements like application functions as the attached image shows. The main color of the element itself is what is set in the preferences, only the icon differs.
When I run it in a clean 4.3 installation, the issue is not there. I use the color preferences from the Mastering Archimate book and the model/view is set to not specialize the icons.
Does anyone else observe this behavior?
I do not experience this kind of issue on my desktop (Windows).
But I've already been informed by JB that I do not do the things the right way regarding the standard icons. I replace them by images where the standard way is to draw them using lines.
The next version of the specialization plugin will correct this point. It will therefore solve as well the issue you describe in your post.
Best regards
Hervé
Archi does not render the icon in the top right of the figure as a bitmap image. It is rendered in code similarly to SVG (move to xy pos, draw a line, etc). This is so that the icon is drawn correctly at all zoom levels and when exporting to SVG image. If a bitmap icon is used instead then this will not scale and, while looking OK at 1:1 zoom level, will not look so good when zoomed in the editor or SVG image.
So if you are using the Specialization plug-in you need to be aware of this if you are setting your own icon.
Yes Phil, This is exactly what JB explained to me.
The next version of the specialization plugin will correct this point.
Best regards
Hervé
I now understand the difference in the way the plugin works. Thank you.
The only thing that is still is unclear to me is why the icon is shown as is without having the icon attribute set on the specific element.
Or does the plugin always redraw the icons regardless of whether something is specialized?
The plugin replace the draw() method of Archi to handle the icon replacement.
When no icon is specified, the plugin gets and draws the icon of the element from Archi (while, as JB and Phil are saying Archi paints the icon with lines).
What I will change is that when no specific configuration is done, than I will not draw the element's icon anymore. I will ask Archi to paint the icon with lines as if the pugin was not installed.
Hi Herve.
Saw that there was a new specialization plugin available (1.0.9), from Archi, so tried it. Copied "as is name" to plugins directory and it did not like it (icons replacement went away) on the Mac laptop.
Tried again trick to rename the 1.0.9 version into the plugin directory as 1.0.7 and it WORKS. Weird. Let me know if you want me to a particular test against this.
regards.
Unsigned Mac apps can sometimes exhibit problems due to Apple's sandboxing. Try moving the Archi app to a different location and then installing the plug-in. Also, ensure that there is not more than one version of the plug-in in the "plugins" folder.
Thanks Phil.
I have the Archi app on my desktop at present as I thought I saw mention of the sandbox issue was when Archi was somewhere other than the desktop.
I will try another move to see what it does.
Thanks for the suggestion and will update after trying.
I do not know about this sandbox issue. I never had a MAC and do not have the budget to purchase one :-[
Unfortunately I cannot be of any help on this subject but I know that several people do have the same kind of issue so I would be interested if we could provide a definitive solution for MAC users :)
Best regards
Hervé
To follow up on Phil's suggestion, I moved the Archi folder on my mac from the Desktop where I had been using it, back over to the application folder in the mac. Started up Archi, and same symptom (no icon replacement) if I leave the name of the file as "1.0.9.jar" instead of "1.0.7.jar". The Archi app identifies the specialization plugin as 1.0.9 so I know I am using the latest version. Renaming a file is not awful, and cal utilize the plugin which folks liked.
Many thanks again for everyone's work on this!
Hello,
I've tripped over an issue that may be related to the specialisation plug-in.
I've outlined the issue in a post on here called "undo broken"...basically if I remove the specialisation plug-in the UI focus and view menu and zoom toolbar all return to normal behaviour. With the specialisation plug-in installed, there is peculiar UI behaviour.
Interested in your view or if you can reproduce the fault, happy to talk via PM's if that's more appropriate?
cheers
Chris
Hi Chris,
Version 1.0.7.1 had effectively an issue with actions in the icons bar (undo/redo, sizing, alignment, ...).
So I've got 2 questions for you :
- Could you please confirm the version of the specialization plugin you're using (the latest version is 1.0.9) ?
- Do you know if it happens with Archi 4.3 only or does it happen with Archi 4.2 as well ?
Thanks and regards
Hervé
Hello Hervé
Thanks for the response.
I've checked and it was indeed version 1.0.7...I think what's happened is that when I reinstalled the newest version of Archi, I've managed to find an old copy of the plugins I use in my downloads folder and blindly copied them in. Whereas I'd been using "check for updates" in my previous 4.2 install of Archi, so my previous install was up to date.
I also had archi installed as a windows program and because the userid isn't an admin user, it's possible the lack of write under \Program Files also causes some confusion (eg. "check for update" needs Archi to be run with admin privileges.
All working fine now that I'm running the portable version of Archi and have up to date plug-ins.
Thanks for your help with this, it's great tool and plug-in.
cheers
Chris
You're welcome.
Please do not hesitate to come back to me should you find other anomaly or request a new feature.
Best regards
Hervé
Hi Hervé,
is there a way to set a variable name in a littera way?
I would like to set the label property through the form plugin. It means that label text must contain the variable name and not the variable value.
The result should be: label = ${documentation} for example.
But I'm unable to use some escape characters to avoid the replacement of variable name by it's value.
I tried using single quote, backslash,...
Thanks for your help.
Hi Jose-Carlos,
I tried once but messed up with the regexp ... I'll work again on this case ...
Do you mind open a case on the GitHup site ?
Thanks and regards
Hervé
Hi Hervé,
the case is open on github.
Thanks.
Great plugin BTW. Just one thing: I have 1.0.10 installed on Archi 4.3 Windows 10. However when I check for update (Preferences / Specialization ), it proposes the 1.0.10_for_mac. Is it normal? Shall I install it ?
Hi,
My apologies for this late answer, I've been very busy those last days ...
In fact, for a reason that I still do not understand, my plugin does not work well on MAC OS and I had to provide a specific version. I haven't had time to change the automatic update procedure about this file.
If you're on Windows, please do not install the MAC version. In the best scenario, it will work but on a worst case scenarion, you may have some unexpected behaviour.
I'll move the MAC version to a specific folder to avoid this in the future.
Thanks and regards
Hervé