Sparx Systems Forum
Enterprise Architect => Automation Interface, Add-Ins and Tools => Topic started by: Chris Tatem on April 24, 2013, 12:36:32 am
-
I am trying to access the value/type of a relation that I can see from a model element that is in a diagram. If I right click on that element->advanced-Parent, I get a dialog "Set Parents and Interfaces." In this dialog there is a list of Relations under the heading Type Details. There is also a check box that says to "Accept classifier if not in model."
I have elements that have a 'row' there, but through the SDK I can't seem to find this information... the row values are:
Classifier: normalizedString
Type: generalizes
Owned: No
Package: <none>
So I assume (and confirmed) that normalizedString is not an element in my model.
This got populated via an import of a WSDL, and the element is stereotyped as <XSDtopLevelElement> if that matters (I have removed the stereotype and the parent relation remains). The XSDtopLevelElement properties (double click on the element) show 'normalizedString' as the XSD elment type.
I've tried things like connectors (there are none), RelationSets, classifierType/Name all to no avail. Any ideas? (Note: I can't seem to find this from EA using the the UML view of the elements properties either...)
cwt
-
The Advanced Parent elements are those connected through Element.Connectors where the connector is a Generalization or a Realization.
q.
-
This seems to be true if the Generalization/Realization is an actual Element, if it's not an element, there don't appear to be "real" connectors (as Elements). This happens when the "Accept classifier if not in model" is checked/set.
Curious as to where that string (in my example normalizedString) is stored. In both cases, that string (classifier name) appears in the element on the diagram - so it's there somewhere!
cwt
-
Check the genlinks property of the element.
q.
-
That's it! Thank you.
Chris