Reference : API : API and Metamodel XML for representational consistency
  
API and Metamodel XML for representational consistency
System Architect introduces new API and MetaModel XML changes, which are added because the DefinedByMetaItem cannot be altered to support representational consistency.
Main API changes
Diagram.CreateSymbolRepresenting(SymbolType, Definition)
Adds a symbol to the diagram representing the definition.
MetaItem.Represents
A new public replacing 'DefinedByMetaItem' which can be used for both representational and non-representational symbols.
RepresentationalType: 0 - None, 1 = Node, 2 = Explicit Relationship, 3 = Implicit Relationship
MetaObjects: An SACollection of objects which the symbol can represent
MetaItem.RepresentedBy
The inverse of MetaItem.Represents.MetaObjects - This returns a collection of symbols which can represent a definition type on a particular diagram type.
MetaProperty.RepresentedBy
The collection of symbols which can represent a property (implicit relationship) on a diagram type.
Main MetaModel XML changes
Top level MetaItem nodes (direct children of MetaClass nodes)
MetaItem nodes have a Mode attribute •
MetaProperty nodes have OfMajorTypeNumber and OfMinorTypeNumber attributes
Where <MetaClass MajorType=’2’>:
A <Represents> node has been added with RepresentationalType and RepresentationalName properties.
If the RepresentationalType = 3 (implicit relationship) the Represents node contains the following structure:
<MetaItems>
<MetaItem TypeName TypeNumber>
<MetaProperties>
<MetaProperty Name>
<RefTypes TypeName TypeNumber>
If RepresentationalType is anything else the represents node contains the following structure:
<MetaItems>
<MetaItem TypeName TypeNumber>
Where <MetaClass MajorType=’3’>
MetaItem contains the Instantiable attribute
MetaProperty has the following additional attributes:
FromDef
ToDef
FromTag
ToTag
Some MetaProperty nodes have these attributes:
InheritedFromName
InheritedFromType
SubTypeOfName
SubTypeOfType
Parent topic
API