I’m testing archetype specialization using the AE, but I can’t find a way to redefine a constraint of the parent archetype inside the specialized one.
The problem is that the AE doesn’t show the nodes of the parent archetype on the specialized one.
Is this a bug or there is some functionality somewhere to redefine parent’s constraints?
I'm testing archetype specialization using the AE, but I can't find a way to redefine a constraint of the parent archetype inside the specialized one.
The problem is that the AE doesn't show the nodes of the parent archetype on the specialized one.
Hi Pablo,
AE is currently still stuck on ADL 1.4, so it doesn't support differential archetypes as defined in ADL 1.5.
Therefore, when you work on a specialised archetype in AE, you will see the parent's nodes only if they were copied from the parent archetype. This works okay (more or less) as long as the specialised archetype was created when work on the parent archetype had already been completed. On creating the specialised archetype, everything is copied from the parent. Where it fails, however, is that if there have been further modifications to the parent archetype, after the specialised archetype was created, the new changes don't magically appear in the specialised archetype: someone has to copy those changes manually from the parent.
This is a maintenance problem. Fixing this is one of the main benefits of ADL 1.5.
By the way, Pablo, I think you mentioned recently that you were still using AE 2.2.779. There have been a lot of improvements to how AE handles specialisation since then, so I recommend that you install the latest release. (Although it won't fix problems intrinsic to ADL 1.4, of course.)
I’m testing archetype specialization using the AE, but I can’t find a way to redefine a constraint of the parent archetype inside the specialized one.
The problem is that the AE doesn’t show the nodes of the parent archetype on the specialized one.
Hi Pablo,
AE is currently still stuck on ADL 1.4, so it doesn’t support differential archetypes as defined in ADL 1.5.
Therefore, when you work on a specialised archetype in AE, you will see the parent’s nodes only if they were copied from the parent archetype. This works okay (more or less) as long as the specialised archetype was created when work on the parent archetype had already been completed. On creating the specialised archetype, everything is copied from the parent. Where it fails, however, is that if there have been further modifications to the parent archetype, after the specialised archetype was created, the new changes don’t magically appear in the specialised archetype: someone has to copy those changes manually from the parent.
I think it would be better if the AE copies the parents nodes into the specialized archetype when the AE user clicks on “File > Specialize”, of course, only when the ADL version is 1.4.
Manual copying is error prone. What do you think?
This is a maintenance problem. Fixing this is one of the main benefits of ADL 1.5.
By the way, Pablo, I think you mentioned recently that you were still using AE 2.2.779. There have been a lot of improvements to how AE handles specialisation since then, so I recommend that you install the latest release. (Although it won’t fix problems intrinsic to ADL 1.4, of course.)
I have that update in my TODO list it is very kind of you to remember that, thank you.
I think it would be better if the AE copies the parents nodes into the specialized archetype when the AE user clicks on "File > Specialize", of course, only when the ADL version is 1.4.
Manual copying is error prone. What do you think?
I'm not sure, but I think that when you upload a specialised archetype to CKM it validates it against the parent. You can also use ADL Workbench to validate it.
Nonetheless, that's a nice suggestion, Pablo. It would need to be a new menu item, since "File | Specialise" already does something (i.e., it creates a specialisation of the specialisation). Maybe "File | Update Specialisation"?
It would take a while to implement something like that, however, because we'd have to make sure it handled everything properly. Even then, I'm sure that corner cases would remain where the specialised archetypes got out of step.
ADL 1.5 is the only real solution. I'd rather put that effort into moving to ADL 1.5.
I’ve uploaded here a set of screenshots explaining what I’ve done. You’ll see in the 3rd image the “weird” ADL. This was an empty copy of the parent (1st & 2nd images), it doesn’t had any nodes on the ACTIVITY description and I added one ELEMENT.
Trying to reproduce the same behaviour on the Archetype Editor, I got another structure and cannot reproduce the first “weird” specialization (4th image).
In all cases I do: File > Specialize when editing the parent archetype (images 1 & 2)
I asked for this " I think it would be better if the AE copies the parents nodes into the specialized archetype when the AE user clicks on “File > Specialize”, of course, only when the ADL version is 1.4" because of what I got the first time I specialize the parent (image 3).
About validation, it takes a lot of time to do something manually, then validate - fix - validate - fix again … that time could be saved using just the AE.
BTW: I found a possible bug when editing scpeialized archetype on image 4, if I put a constraint occurrences 0..0 on the DV_QUANTITY node, the ADL still says 0..1. I’ll update my AE to the new version to see if this still happen.
Just a question about specialization: is there a specialization level constraint? the AE doesn’t allow to make an specialization from an specialization (3rd level of specialization).