<?xml version='1.0' encoding='UTF-8'?>
<xmi:XMI xmi:version='2.1'
  xmlns:cmof='http://schema.omg.org/spec/MOF/2.0/cmof.xml'
  xmlns:xmi='http://schema.omg.org/spec/XMI/2.1'>
<xmi:Documentation exporter='NIST UML-CMOF' exporterVersion='1.0.8'/>
<cmof:Package xmi:id='I167e3a5m10018e5d720mm7d16' xmi:type='cmof:Package' name='ExpressMetamodel' visibility='public'>
<ownedRule xmi:type='cmof:Constraint' xmi:id='_16_0_1_852026a_1252017866250_496529_1673' name='no-ParametricElements-for-InverseAttribute'>
<constrainedElement xmi:idref='_16_0_1_852026a_1251998454140_122583_1487'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_000013' language='OCL2.0' body='if typeof(self) = InverseAttribute then sizeof(type-parameters) = 0 and sizeof(type-constraints = 0) and sizeof(structure-constraints) = 0'/>
</ownedRule>
<ownedRule xmi:type='cmof:Constraint' xmi:id='_16_0_1_852026a_1258498158328_667981_1528' name='Source-for-attribute-is-GENERIC_ENTITY'>
<constrainedElement xmi:idref='I808680m1128bdf3bcfmb16'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_000014' language='OCL2.0' body='not (self-&gt;source.type = Attribute) or (self-&gt;isEntity);'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000015' body='If the source is an Attribute, the ParametricType must be based on GENERIC_ENTITY.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1258498158328_667981_1528'/>
</ownedComment>
</ownedRule>
<ownedRule xmi:type='cmof:Constraint' xmi:id='_16_0_1_852026a_1252009282843_119289_1567' name='scope-is-EntityType-or-Algorithm'>
<constrainedElement xmi:idref='I808680m1128bdf3bcfmc5f'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_000016' language='OCL2.0' body='typeof(self-&gt;namespace) = EntityType or typeof(self-&gt;namespace) = Function or typeof(self-&gt;namespace) = Procedure;'/>
</ownedRule>
<ownedRule xmi:type='cmof:Constraint' xmi:id='_16_0_1_852026a_1252008692203_308611_1565' name='id-required'>
<constrainedElement xmi:idref='I808680m1128bdf3bcfmc5f'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_000017' language='OCL2.0' body='exists(self-&gt;id)'/>
</ownedRule>
<ownedRule xmi:type='cmof:Constraint' xmi:id='_16_0_1_852026a_1258488526921_608761_1524' name='exactly-2-GenericTypes'>
<constrainedElement xmi:idref='I167e3a5m10240564a77mm7af8'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_000018' language='OCL' body='self = GenericTypes::GENERIC OR self = GenericTypes::GENERIC_ENTITY;'/>
</ownedRule>
<ownedRule xmi:type='cmof:Constraint' xmi:id='_16_0_1_852026a_1249670788937_585758_1428' name='type_required'>
<constrainedElement xmi:idref='I17779e3m1003cfd8422mm7b5c'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_000019' language='OCL2.0' body='self = INDETERMINATE or exists(self-&gt;of-type);'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00001a' body='Every Instance except INDETERMINATE has at least one data type.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1249670788937_585758_1428'/>
</ownedComment>
</ownedRule>
<ownedRule xmi:type='cmof:Constraint' xmi:id='_16_0_1_852026a_1258481183187_878187_1472' name='is-singleton'>
<constrainedElement xmi:idref='I1fe40d5m10bde1ca5c0mm15d5'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_00001b' language='OCL2.0' body='self = INDETERMINATE;'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00001c' body='The only instance of Indeterminate is the INDETERMINATE object.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1258481183187_878187_1472'/>
</ownedComment>
</ownedRule>
<ownedRule xmi:type='cmof:Constraint' xmi:id='_16_0_1_852026a_1258412890812_211413_1316' name='occurs-in-ProcedureCall'>
<constrainedElement xmi:idref='_16_0_1_852026a_1247080261328_388051_1011'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_00001d' language='' body='exists(self-&gt;inProcedureCall);'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00001e' body='Every PassByReference appears in a ProcedureCall (not a FunctionCall).'>
<annotatedElement xmi:idref='_16_0_1_852026a_1258412890812_211413_1316'/>
</ownedComment>
</ownedRule>
<ownedMember xmi:id='_16_0_1_852026a_1253921107156_154143_662' xmi:type='cmof:Package' name='Enumerations' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00001f' body='The Enumerations Package contains the model of EnumerationItem and the subclasses of Instance that it instantiates.  Its purpose is to support a compliance point that includes schema-level declarations and EnumerationItems.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1253921107156_154143_662'/>
</ownedComment>
<packageImport xmi:type='cmof:PackageImport' xmi:id='_16_0_1_852026a_1253921201046_44758_673'>
<importedPackage xmi:type='cmof:Package' xmi:idref='I17779e3m1026e8ed5e9mm7d82'/>
</packageImport>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1026e8ed5e9mm7ba1' name='ConcreteValue' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000020' body='&lt;p&gt;represents a data item, an Instance that is an item of information that has an explicit data representation conveying its meaning.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1026e8ed5e9mm7ba1'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1003cfd8422mm7b5c'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7e66' name='EnumerationItem' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000021' body='&lt;p&gt;a ConcreteValue representing a named value of an EnumerationType. 
An EnumerationItem is also a TypedInstance, because the corresponding EnumerationType has an Identifier.  
An EnumerationItem is also a TypeElement, in that the scope of its identifier is the EnumerationType.&lt;/p&gt;
&lt;note&gt;See 8.4.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7e66'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I118958em102f0aec0a0mm7f96'/>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1026e8ed5e9mm7ba1'/>
<general xmi:type='cmof:Class' xmi:idref='I118958em102d5a77152mm7fe6'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1eaf25dm106bd879899mm2aed' name='position' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Integer'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000022' body='&lt;p&gt;Represents the position of the Enumeration Item in the list of items in the type_declaration that defines the EnumerationItem.
That is, .position relates to the .declared-in EnumerationType.  
When the number of values of .of-type (the types of which this EnumerationItem is a value) is exactly 1, the position defines an ordering on the values of the EnumerationType.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2aed'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I10ad419m106c6ab6f8emm2971' name='declared-in' type='I167e3a5m10018e5d720mm7ea0' association='I10ad419m106c6ab6f8emm296e' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000023' body='&lt;p&gt;represents the relationship between an EnumerationItem and the EnumerationType whose declaration defines the item.&lt;/p&gt;'>
<annotatedElement xmi:idref='I10ad419m106c6ab6f8emm2971'/>
</ownedComment>
<subsettedProperty xmi:id='I118958em102f0aec0a0mm7f5f'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm78fa' name='of-type' type='I167e3a5m10018e5d720mm7ea0' association='I17779e3m1003cfd8422mm790a' visibility='public' isDerived='true' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000024' body='&lt;p&gt;represents the relationship between an EnumerationItem and the EnumerationTypes of which it is a value.&lt;/p&gt;
&lt;p&gt;With respect to a given “governing schema” and all of the SchemaElements it defines and interfaces, each declared EnumerationItem is a value of every EnumerationType that is related by extension to the EnumerationType in which it is declared. That is, it is a value of
(a) the EnumerationType self-&gt;declared-in;
(b) the EnumerationType that is the :base of that EnumerationType, if any, and recursively of all EnumerationTypes related by :base, and
(c) each EnumerationType that is an .extension of any of the EnumerationTypes related by either (a) or (b) above, and recursively of all EnumerationTypes related to them by :extension.&lt;/p&gt;
&lt;note&gt;See 8.4.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm78fa'/>
</ownedComment>
<subsettedProperty xmi:id='I17779e3m1003cfd8422mm7839'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1003cfd8422mm790a' name='value-of-EnumerationType' isDerived='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000025' body='&lt;p&gt;represents the relationship between an EnumerationType and the EnumerationItems that are valid values of the type.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm790a'/>
</ownedComment>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7907'/>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm78fa'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I10ad419m106c6ab6f8emm296e' name='enumeration-declares-item' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000026' body='&lt;p&gt;represents the relationship between an EnumerationItem and the EnumerationType whose declaration defines the item.&lt;/p&gt;'>
<annotatedElement xmi:idref='I10ad419m106c6ab6f8emm296e'/>
</ownedComment>
<memberEnd xmi:idref='I10ad419m106c6ab6f8emm2974'/>
<memberEnd xmi:idref='I10ad419m106c6ab6f8emm2971'/>
</ownedMember>
</ownedMember>
<ownedMember xmi:id='I17779e3m1026e8ed5e9mm7d91' xmi:type='cmof:Package' name='Rules' visibility='public'>
<packageImport xmi:type='cmof:PackageImport' xmi:id='_16_0_1_852026a_1253921401515_516081_685'>
<importedPackage xmi:type='cmof:Package' xmi:idref='I17779e3m1026e8ed5e9mm7d71'/>
</packageImport>
<packageImport xmi:type='cmof:PackageImport' xmi:id='_14_0_852026a_1203968342609_594225_5102'>
<importedPackage xmi:type='cmof:Package' xmi:idref='I17779e3m1026e8ed5e9mm7d82'/>
</packageImport>
<packageImport xmi:type='cmof:PackageImport' xmi:id='_14_0_852026a_1203968384796_200343_5118'>
<importedPackage xmi:type='cmof:Package' xmi:idref='I17779e3m1026e8ed5e9mm7d57'/>
</packageImport>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm785f' name='SubtypeConstraint' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000027' body='&lt;p&gt;a Rule requiring a specific relationship among the Extents of two or more subtypes of a given supertype EntityType.  
The constraint can be stated as a relationship among the Extents as Sets of entity instances, and is equivalent to a NamedRule.&lt;/p&gt;
&lt;note&gt;See 9.2.5 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm785f'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1025f5930bdmm7f12' name='equivalent-rule' type='I167e3a5m10018e5d720mm7ad9' association='I17779e3m1025f5930bdmm7f1e' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000028' body='&lt;p&gt;represents the fact that every SubtypeConstraint is equivalent to a BooleanExpression involving the Extents of the EntityTypes named in the SubtypeConstraint.
The Expression is required to evaluate to True.  
The effect is that the SubtypeConstraint is equivalent to a NamedRule.&lt;/p&gt;
&lt;note&gt;The equivalent-rule that formulates the SubtypeConstraint is wholly owned by the SubtypeConstraint. It is not treated as reusable. &lt;note&gt;'>
<annotatedElement xmi:idref='I17779e3m1025f5930bdmm7f12'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1025f5930bdmm7f30' name='collection' type='I17779e3m1025f5930bdmm7ff0' association='I17779e3m1025f5930bdmm7f3c' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000029' body='&lt;p&gt;represents the relationship of a SubtypeConstraint to the SupertypeRule that contains it, which also identifies the common supertype.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1025f5930bdmm7f30'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm77c7' name='constrained-subtypes' type='I167e3a5m10018e5d720mm7f96' association='I167e3a5m10018e5d720mm77d3' visibility='public' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00002a' body='&lt;p&gt;the EntityTypes whose Extents are constrained by the SubtypeConstraint.&lt;/p&gt;
&lt;note&gt;See 9.2.5 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm77c7'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm77b6' name='ONEOFConstraint' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00002b' body='&lt;p&gt;a constraint requiring all of its operands to be mutually exclusive.  Each operand can be a single Extent or a union of Extents.&lt;/p&gt;
&lt;note&gt;See 9.2.5.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm77b6'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm785f'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm77a2' name='ANDConstraint' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00002c' body='&lt;p&gt;a constraint requiring its two operands to be equal as sets.  Each operand can be a single Extent or a union of Extents.&lt;/p&gt;
&lt;note&gt;See 9.2.5.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm77a2'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm785f'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm778e' name='TOTAL_OVERConstraint' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00002d' body='&lt;p&gt;a constraint requiring the union of all of its operands to be equal to the Extent of the supertype.&lt;/p&gt;
&lt;note&gt;See 9.7.2 of ISO 10303-11:2004.&lt;/note&gt;
&lt;note&gt;NOTE: The proper model of a TOTAL_OVER constraint requires that the supertype be one of the operands of the equivalent-expression and that the supertype be included among the constrained-subtypes.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm778e'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm785f'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7711' name='NamedRule' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00002e' body='&lt;p&gt;a constraint requiring a given Boolean Expression involving the Extents of one or more EntityTypes to evaluate to True.  It corresponds to a domain rule contained in a Rule declaration in EXPRESS.&lt;/p&gt;
&lt;note&gt;See 9.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7711'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I9ced84m109b2851e95mm1237'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1eaf25dm106bd879899mm2a21' name='position' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Integer'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00002f' body='&lt;p&gt;Represents the lexical position of the NamedRule in the sequence of NamedRules contained in the GlobalRule.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2a21'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm774f' name='asserts-expression' type='I167e3a5m10018e5d720mm7ad9' association='I167e3a5m10018e5d720mm775b' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000030' body='&lt;p&gt;represents the fact that every NamedRule states a Boolean expression that is required to be True for the Extents in a given Population.&lt;/p&gt;
&lt;note&gt;See 9.6 of ISO 10303-11:2004.&lt;/note&gt;
&lt;note&gt;The asserted-expression that formulates the NamedRule is wholly owned by the NamedRule.  It is not treated as reusable.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm774f'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm76e6' name='namespace' type='I167e3a5m10018e5d720mm788d' association='I167e3a5m10018e5d720mm76e9' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000031' body='&lt;p&gt;represents the relationship between the NamedRule and the GlobalRule that contains it.
This is a refinement of the NamedElement.namespace relationship to Scope.
In addition to being the namespace for the id of the NamedRule, the GlobalRule identifies the EntityTypes to which the NamedRule applies 
(and whose Extents may be referred to in the asserted-expression) and may define Variables that are used in the asserted-expression.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm76e6'/>
</ownedComment>
<subsettedProperty xmi:id='I9ced84m109b2851e95mm1210'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1025f5930bdmm7ff0' name='SupertypeRule' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000032' body='&lt;p&gt;a CommonElement representing a collection of rules requiring specific relationships among the Extents of two or more subtypes of a given supertype EntityType.  
The interpretation of a SupertypeRule is that all of the contained constraints shall hold.
SupertypeRule corresponds to a SUBTYPE_CONSTRAINT declaration, or to the EXPRESS supertype-clause attached to an entity declaration.  
A SupertypeRule shall have an :id value if and only if it represents an EXPRESS SUBTYPE_CONSTRAINT.&lt;/p&gt; 

&lt;note&gt;This rule reflects the EXPRESS syntax.  An EXPRESS supertype-clause has no identifier.  An EXPRESS SUBTYPE_CONSTRAINT is required to have an identifier.&lt;/note&gt;

&lt;note&gt;See 9.2.5 and 9.7 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1025f5930bdmm7ff0'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I118958em102d5a77152mm7d06'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='Ia75974m1082615da82mm22e6' name='assertsAbstract' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Boolean'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000033' body='&lt;p&gt;Represents a declaration in a SUBTYPE_CONSTRAINT that the .supertype EntityType is to be treated as ABSTRACT in this context, 
which is usually an interfacing schema.&lt;/p&gt;
&lt;note&gt;See clause 9.2.5.1 of ISO 10303-11:2004.&lt;/note&gt;
'>
<annotatedElement xmi:idref='Ia75974m1082615da82mm22e6'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1025f5930bdmm7f4a' name='named-supertype' type='I167e3a5m10018e5d720mm7f96' association='I17779e3m1025f5930bdmm7f58' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000034' body='&lt;p&gt;represents the relationship between a SupertypeRule and the EntityType that is the supertype of all the EntityTypes that appear in the SupertypeRule.
This relationship is nominal for ANDConstraints and ONEOFConstraints, but significant for ABSTRACT and TOTAL_OVERConstraints.&lt;/p&gt;
&lt;note&gt;See 9.2.5 and 9.7 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1025f5930bdmm7f4a'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1025f5930bdmm7f39' name='constraints' type='I167e3a5m10018e5d720mm785f' association='I17779e3m1025f5930bdmm7f3c' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000035' body='&lt;p&gt;represents the relationship between a SupertypeRule (supertype-clause or SUBTYPE_CONSTRAINT) and the individual subtype constraints it contains.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1025f5930bdmm7f39'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm788d' name='GlobalRule' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000036' body='&lt;p&gt;a SchemaElement denoting a collection of NamedRules for the interaction of the Extents of one or more EntityTypes.  It corresponds to the RULE declaration in EXPRESS.  Every GlobalRule is also an AlgorithmScope and may define CommonElements and Variables.&lt;/p&gt;
&lt;note&gt;See 9.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm788d'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1025f5930bdmm7d31'/>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m102ef760d6emm7fc2'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m1121f4b0370mm42e' name='supporting-body' type='I1507ef7m10811c3e7aemm2949' association='I1fe40d5m1121f4b0370mm42b' visibility='public' aggregation='composite' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000037' body='&lt;p&gt;represents the Statement, usually a StatementBlock, that provides values for LocalVariables used in the NamedRules that are contained in the GlobalRule.  
The supporting-body of the GlobalRule can only appear if one or more LocalVariables are introduced for use in the NamedRules, 
and even then, the supporting-body is not required if the value of each LocalVariable is completely defined by an initializing expression.&lt;/p&gt;
&lt;p&gt;If an implementation of the metamodel does not support the Statements compliance point, the supporting body should be captured as text when it is present.&lt;/p&gt;
&lt;note&gt;See 9.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1fe40d5m1121f4b0370mm42e'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm76dd' name='contains-rules' type='I167e3a5m10018e5d720mm7711' association='I167e3a5m10018e5d720mm76e9' visibility='public' aggregation='composite' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000038' body='&lt;p&gt;represents the relationship between the GlobalRule (container) and the NamedRules it contains.
Since the GlobalRule also constitutes the scope of the id (if any) for the NamedRule, this relationship is treated as a specialization of the Scope.named-elements relationship.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm76dd'/>
</ownedComment>
<subsettedProperty xmi:id='I9ced84m109b2851e95mm1213'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm77df' name='constrained-extents' type='I167e3a5m10018e5d720mm7f96' association='I167e3a5m10018e5d720mm77eb' visibility='public' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000039' body='&lt;p&gt;the EntityTypes whose Extents are constrained by the GlobalRule&lt;/p&gt;
&lt;note&gt;See 9.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm77df'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm77d3' name='rule-constrains-subtypes' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00003a' body='&lt;p&gt;represents the relationship between a SubtypeConstraint and the EntityTypes whose Extents are constrained by it.&lt;/p&gt;
&lt;note&gt;See 9.2.5 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm77d3'/>
</ownedComment>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm77d0'/>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm77c7'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm77eb' name='rule-constrains-extents' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00003b' body='&lt;p&gt;represents the relationship between a GlobalRule and the EntityTypes whose Extents it constrains&lt;/p&gt;
&lt;note&gt;See 9.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm77eb'/>
</ownedComment>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm77e8'/>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm77df'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm775b' name='NamedRule-asserts-Expression' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7758'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7758' name='__inv_asserts-expression' type='I167e3a5m10018e5d720mm7711' association='I167e3a5m10018e5d720mm775b' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm774f'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm76e9' name='GlobalRule-contains-NamedRule' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00003c' body='&lt;p&gt;represents the relationship between the GlobalRule (container) and the NamedRules it contains.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm76e9'/>
</ownedComment>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm76e6'/>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm76dd'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1025f5930bdmm7f3c' name='rule-includes-SubtypeConstraints' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00003d' body='&lt;p&gt;represents the relationship between a SupertypeRule (supertype-clause or SUBTYPE_CONSTRAINT) and the individual subtype constraints it contains.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1025f5930bdmm7f3c'/>
</ownedComment>
<memberEnd xmi:idref='I17779e3m1025f5930bdmm7f39'/>
<memberEnd xmi:idref='I17779e3m1025f5930bdmm7f30'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1025f5930bdmm7f1e' name='SubtypeConstraint-has-equivalent' visibility='public'>
<memberEnd xmi:idref='I17779e3m1025f5930bdmm7f1b'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1025f5930bdmm7f1b' name='__inv_equivalent-rule' type='I167e3a5m10018e5d720mm785f' association='I17779e3m1025f5930bdmm7f1e' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1025f5930bdmm7f12'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1025f5930bdmm7f58' name='rule-scoped-to-supertype' visibility='public'>
<memberEnd xmi:idref='I17779e3m1025f5930bdmm7f55'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1025f5930bdmm7f55' name='__inv_named-supertype' type='I17779e3m1025f5930bdmm7ff0' association='I17779e3m1025f5930bdmm7f58' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1025f5930bdmm7f4a'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1fe40d5m1121f4b0370mm42b' name='rule-has-body' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00003e' body='&lt;p&gt;represents the relationship between a GlobalRule and a Statement, usually a StatementBlock, that provides values for LocalVariables used in the NamedRules that are contained in the GlobalRule.  
&lt;/p&gt;
&lt;note&gt;See 9.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1fe40d5m1121f4b0370mm42b'/>
</ownedComment>
<memberEnd xmi:idref='I1fe40d5m1121f4b0370mm431'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1fe40d5m1121f4b0370mm431' name='__inv_supporting-body' type='I167e3a5m10018e5d720mm788d' association='I1fe40d5m1121f4b0370mm42b' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I1fe40d5m1121f4b0370mm42e'/>
</ownedMember>
</ownedMember>
<ownedMember xmi:id='I17779e3m1026e8ed5e9mm7d82' xmi:type='cmof:Package' name='Core' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00003f' body='The Core Package contains all of the generally required modeling elements of EXPRESS, along with some basic
metamodel artifacts. It is the foundation on which all of the other packages are built. The Core Package is the minimal
implementation of the EXPRESS Metamodel.'>
<annotatedElement xmi:idref='I17779e3m1026e8ed5e9mm7d82'/>
</ownedComment>
<packageImport xmi:type='cmof:PackageImport' xmi:id='_14_0_852026a_1203973222734_601945_5442'>
<importedPackage xmi:type='cmof:Package' href='UML_Standard_Profile.xml#_12_0EAPbeta_be00301_1157529392394_202602_1'/>
</packageImport>
<ownedMember xmi:type='cmof:Enumeration' xmi:id='_16_0_1_852026a_1254172436156_747469_652' name='InterfaceKind' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000040' body='The nature of an Interface – the EXPRESS interface relationship between two Schemas.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1254172436156_747469_652'/>
</ownedComment>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='_16_0_1_852026a_1254172586437_565207_690' name='IMPLICIT' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000041' body='Represents “implicit” interfacing, as defined in ISO 10303-11.  A NamedElement is implicitly interfaced when it is not explicitly interfaced by any USE or REFERENCE statement but is used in the specification of a NamedElement that is explicitly interfaced, or in the specification of another element that is implicitly interfaced.  Elements that are implicitly interfaced do not appear in the namespace of the interfacing schema.  Instances of implicitly interfaced NamedTypes may appear in a Population governed by that Schema as if they were REFERENCEd.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1254172586437_565207_690'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='_16_0_1_852026a_1254172606578_872757_692' name='REFERENCE' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000042' body='Represents explicit interfacing by a REFERENCE statement.  NamedElements that are explicitly interfaced have identifiers in the namespace of the interfacing schema. Instances of NamedTypes that are interfaced by a REFERENCE statement may exist in a Population, but only to fulfill some Attribute of an entity that is ultimately dependent on an &quot;independent entity&quot;.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1254172606578_872757_692'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='_16_0_1_852026a_1254172614218_638030_694' name='USE' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000043' body='Represents explicit interfacing by a USE statement.  NamedElements that are explicitly interfaced have identifiers in the namespace of the interfacing schema. Instances of every NamedType that is explicitly interfaced by a USE statement are permitted to be &quot;independent entities&quot; in a Population governed by the interfacing Schema. '>
<annotatedElement xmi:idref='_16_0_1_852026a_1254172614218_638030_694'/>
</ownedComment>
</ownedLiteral>
</ownedMember>
<ownedMember xmi:type='cmof:PrimitiveType' xmi:id='_14_0_852026a_1203973966781_376902_5491' name='Keyword' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000044' body='&lt;p&gt;EXPRESS language element used for names of built-in data types.&lt;/p&gt;
&lt;note&gt;See 7.2.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='_14_0_852026a_1203973966781_376902_5491'/>
</ownedComment>
<general xmi:type='cmof:PrimitiveType' xmi:idref='_14_0_852026a_1203973376187_525723_5444'/>
</ownedMember>
<ownedMember xmi:type='cmof:PrimitiveType' xmi:id='_14_0_852026a_1203973938843_871362_5468' name='Identifier' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000045' body='&lt;p&gt;EXPRESS language element used for naming NamedElements.&lt;/p&gt;
&lt;note&gt;See 7.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='_14_0_852026a_1203973938843_871362_5468'/>
</ownedComment>
<general xmi:type='cmof:PrimitiveType' xmi:idref='_14_0_852026a_1203973376187_525723_5444'/>
</ownedMember>
<ownedMember xmi:type='cmof:PrimitiveType' xmi:id='_14_0_852026a_1203973376187_525723_5444' name='ExpressText' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000046' body='&lt;p&gt;Represents any EXPRESS language text, including both unparsed text and specific syntactic elements..&lt;/p&gt;
&lt;note&gt;See clause 7 of ISO 10303-11:2004.&lt;/note&gt;
'>
<annotatedElement xmi:idref='_14_0_852026a_1203973376187_525723_5444'/>
</ownedComment>
<general xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#String'/>
</ownedMember>
<ownedMember xmi:type='cmof:Enumeration' xmi:id='_14_0_852026a_1203969412796_407448_5320' name='OrderingKind' visibility='public'>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='_14_0_852026a_1203969591953_696543_5346' name='unordered' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000047' body='&lt;p&gt;Specifies that the structure of the AggregateValues is a BAG or SET.
That is, the position of each member-value in the sequence has no significance in interpreting the AggregateValue.&lt;/p&gt;'>
<annotatedElement xmi:idref='_14_0_852026a_1203969591953_696543_5346'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='_14_0_852026a_1203969517812_26964_5342' name='ordered' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000048' body='&lt;p&gt;Specifies that the structure of the AggregateValues is a LIST.
That is, the position of each member-value in the sequence is significant in interpreting the AggregateValue.&lt;/p&gt;'>
<annotatedElement xmi:idref='_14_0_852026a_1203969517812_26964_5342'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='_14_0_852026a_1203969580140_588346_5344' name='indexed' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000049' body='&lt;p&gt;Specifies that the structure of the AggregateValues is an ARRAY.
That is, the positions in the sequence are associated with specific (consecutive) INTEGER index values.&lt;/p&gt;'>
<annotatedElement xmi:idref='_14_0_852026a_1203969580140_588346_5344'/>
</ownedComment>
</ownedLiteral>
</ownedMember>
<ownedMember xmi:type='cmof:DataType' xmi:id='I118958em102d5a77152mm7ca6' name='ScopedId' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00004a' body='&lt;p&gt;The combination of an Identifier and its namespace, which together constitute a well-defined symbol for an EXPRESS ModelElement.  
A ScopedId whose Scope is a Schema is visible throughout the Schema, and possibly to other Schemas that interface the NamedElement.  
A ScopedId whose Scope is a LocalScope is visible only in that LocalScope.  
A ScopedId whose Scope is a NamedType is visible only in the declaration of that NamedType and in Expressions involving references to elements whose data type is that NamedType.  
&lt;/p&gt;
'>
<annotatedElement xmi:idref='I118958em102d5a77152mm7ca6'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em102d5a77152mm7c8f' name='localName' type='_14_0_852026a_1203973938843_871362_5468' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00004b' body='&lt;p&gt;Represents the EXPRESS identifier that uniquely identifies the NamedElement within the namespace that is the Scope.&lt;/p&gt;'>
<annotatedElement xmi:idref='I118958em102d5a77152mm7c8f'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1286c71m10a1909d8b9mmb68' name='definingScope' type='I118958em102d5a77152mm7d4b' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00004c' body='&lt;p&gt;Represents the relationship between the ScopedId and the Scope in which it is defined.&lt;/p&gt;
&lt;note&gt;See Clause 10 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1286c71m10a1909d8b9mmb68'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m10023cc289dmm7d9d' name='ActualTypeConstraint' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00004d' body='&lt;p&gt;a constraint on the InstantiableType that corresponds to a given GenericType component of an attribute-type or a formal-parameter-type.  The constraint is declared in EXPRESS by a type_label (the :label property) on a GENERIC or GENERIC_ENTITY keyword that occurs in the specification of the formal-parameter-type, but is not defined there. The requirement declared by the constraint is that the InstantiableType that corresponds to the GenericType component that uses the type_label (the component in the data type of the corresponding actual parameter or corresponding instantiable attribute) must be type compatible with the InstantiableType to that corresponds to the ParametricType that defines the type_label (the :required-type). &lt;/p&gt;
&lt;p&gt;
If the formal parameter types of additional Parameters of the same Algorithm contain the same type_label, each such occurrence constitutes a distinct ActualTypeConstraint.&lt;/p&gt;
&lt;p&gt;
The data type of the ElementSource (Attribute or Parameter) that has the ActualTypeConstraint contains exactly one occurrence of a GenericType (GENERIC or GENERIC_ENTITY).  That occurrence is the component that is constrained by the ActualTypeConstraint.
&lt;/p&gt;
&lt;note&gt;See 9.5.3.4 of ISO 10303-11:2004.&lt;/note&gt;
'>
<annotatedElement xmi:idref='I17779e3m10023cc289dmm7d9d'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m1024a81540emm7ac5' name='label' type='_14_0_852026a_1203973938843_871362_5468' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00004e' body='&lt;p&gt;the EXPRESS type_label on the GENERIC or GENERIC_ENTITY keyword that denotes the constraint. Any occurrence of the same type_label after the first denotes a constraint.&lt;/p&gt;
&lt;note&gt;See 9.5.3.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m1024a81540emm7ac5'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I14a3da8m1067f761adfmm32db' name='required-type' type='I808680m1128bdf3bcfmb16' association='I14a3da8m1067f761adfmm32d8' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00004f' body='&lt;p&gt;the ParametricType that defines the EXPRESS type_label that is used to establish the constraint. The GenericParameter defines the data type with which the component of the data type of the actual parameter that has the ActualTypeConstraint must be compatible. &lt;/p&gt;'>
<annotatedElement xmi:idref='I14a3da8m1067f761adfmm32db'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I808680m1128bdf3bcfmdc7' name='ActualStructureConstraint' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000050' body='&lt;p&gt;A constraint on the structure of the ConcreteAggregationType that corresponds to a given AGGREGATEType.  The constraint is declared in EXPRESS by a type_label on the AGGREGATE keyword that occurs in the specification of an attribute-type or a formal-paramater-type, but is not the definition of that type_label (cf. ParametricStructure). The requirement declared by the constraint is that the structure of the ConcreteAggregationType that corresponds to the AGGREGATEType that uses the type_label (the :matching-structure, the component in the data type of the corresponding actual parameter or corresponding instantiable attribute) must be the same as the structure referred to by the ParametricStructure that defines the type_label (the :required-structure). &lt;/p&gt;
&lt;note&gt;See 9.5.3.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I808680m1128bdf3bcfmdc7'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I808680m1128bdf3bcfmddf' name='label' type='_14_0_852026a_1203973938843_871362_5468' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000051' body='&lt;p&gt;the EXPRESS type_label on the AGGREGATE keyword that denotes the constraint. 
Any occurrence of the same type_label after the first denotes a constraint.&lt;/p&gt;'>
<annotatedElement xmi:idref='I808680m1128bdf3bcfmddf'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I808680m1128bdf3bcfme19' name='required-structure' type='I808680m1128bdf3bcfmb03' association='I808680m1128bdf3bcfme1c' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000052' body='&lt;p&gt;the ParametricStructure that defines the EXPRESS type_label that is used to establish the constraint. The :required-structure defines the required structure (ARRAY, BAG, LIST, SET) of the ConcreteAggregationType that corresponds to the AGGREGATEType that is the :matching structure.&lt;/p&gt;'>
<annotatedElement xmi:idref='I808680m1128bdf3bcfme19'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I808680m1128bdf3bcfmdf6' name='matching-structure' type='I167e3a5m10240564a77mm7c23' association='I808680m1128bdf3bcfmdf9' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000053' body='&lt;p&gt; the AGGREGATEType component to which the constraint applies, i.e., the AGGREGATEType that is denoted by the AGGREGATE keyword that uses the type_label.&lt;/p&gt;'>
<annotatedElement xmi:idref='I808680m1128bdf3bcfmdf6'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='_16_0_1_852026a_1251998454140_122583_1487' name='ElementSource' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000054' body='&lt;p&gt;an Attribute or Parameter.  ElementSource reifies the roles of Attribute and Parameter as :source of ParametricElements, container of their declarations, and owner of ActualTypeConstraints and ActualStructureConstraints.&lt;/p&gt;

&lt;note&gt;InverseAttributes cannot have values for any of the properties of ElementSource -- type-parameters, type-constraints, structure-constraints.&lt;/note&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1251998454140_122583_1487'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1252015501593_299156_1617' name='structure-constraints' type='I808680m1128bdf3bcfmdc7' association='_16_0_1_852026a_1252015501593_134043_1615' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000055' body='&lt;p&gt;the ActualStructureConstraints, if any, that constrain the allowable data types of the corresponding actual parameter or instantiable attribute.&lt;/p&gt;
&lt;note&gt;See 9.5.3.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1252015501593_299156_1617'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1252015512468_627255_1625' name='type-constraints' type='I17779e3m10023cc289dmm7d9d' association='_16_0_1_852026a_1252015512468_236616_1623' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000056' body='&lt;p&gt;the ActualTypeConstraints, if any, that constrain the allowable data types of the corresponding actual parameter or instantiable attribute.&lt;/p&gt;
&lt;note&gt;See 9.5.3.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1252015512468_627255_1625'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1251998488765_827851_1508' name='type-parameters' type='I808680m1128bdf3bcfmc5f' association='_16_0_1_852026a_1251998488765_338248_1506' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000057' body='&lt;p&gt;the ParametricElements whose declarations are contained in the declared type of the ElementSource (Attribute or Parameter).&lt;/p&gt;
'>
<annotatedElement xmi:idref='_16_0_1_852026a_1251998488765_827851_1508'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I808680m1128bdf3bcfmb03' name='ParametricStructure' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000058' body='&lt;p&gt;A syntactic occurrence of AGGREGATE within a formal parameter type or attribute type that defines a type_label.  The ParametricStructure is the first occurrence of the label among the Parameters of the Algorithm or the Attributes of the EntityType.&lt;/p&gt;
&lt;p&gt; 
In an Attribute declaration, the ParametricStructure refers to the structure (ARRAY, BAG, LIST, SET) of the corresponding instantiable AggregationType in corresponding Attributes of subtypes.  In a Parameter declaration, the ParametricStructure refers to the structure of the corresponding component of the corresponding ActualParameters. &lt;/p&gt;
&lt;/p&gt;'>
<annotatedElement xmi:idref='I808680m1128bdf3bcfmb03'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I808680m1128bdf3bcfmc5f'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1249318456093_198108_873' name='structure-source' type='I167e3a5m10240564a77mm7c23' association='_16_0_1_852026a_1249318456093_612807_872' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000059' body='&lt;p&gt;the AGGREGATEType from whose instantiations the ParametricStructure takes its values.  That is, the ParametricStructure refers to the structure of the attribute-type or the component of the actual parameter that corresponds to this AGGREGATEType.&lt;/p&gt;
&lt;note&gt;the AGGREGATEType is unique and is, or is a component of, the data type of the :source, which is a ParameterType.  Since a ParameterType can contain more than one occurrence of AGGREGATE, the intended component of the actual parameter type must be explicitly identified.  &lt;/note&gt;
'>
<annotatedElement xmi:idref='_16_0_1_852026a_1249318456093_198108_873'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I808680m1128bdf3bcfmb16' name='ParametricType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00005a' body='&lt;p&gt;A syntactic occurrence of GENERIC or GENERIC_ENTITY within a formal parameter type or attribute type that defines a type_label.  The ParametricType is the first occurrence of the type_label among the Parameters of the Algorithm or the Attributes of the EntityType.&lt;/p&gt;
&lt;p&gt;In an EntityType declaration, the ParametricType refers to the corresponding InstantiableType component of each corresponding Attribute.  In an Algorithm declaration, the ParametricType refers to the data type of the corresponding component of each corresponding ActualParameter.  Since the ElementSource (Attribute or Parameter) contains exactly one component that is a GenericType, the ParametricType is always associated with that component. &lt;/p&gt;
&lt;note&gt;The association between the ParametricType and the GenericType component is not modeled, since the GenericType component is not itself modeled (it is simply an occurrence of one of the two objects of GenericType).  The association is implied, as stated above, by the (inherited) association to the ElementSource (ParametricElement:source).&lt;/note&gt;

&lt;note&gt;See ISO 10303-11 clause 9.5.3.4.  It also requires that the ParametricType must be based on GENERIC_ENTITY, i.e., that :isEntity be TRUE, if the :source of the ParametricType is an Attribute.&lt;/note&gt;'>
<annotatedElement xmi:idref='I808680m1128bdf3bcfmb16'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I808680m1128bdf3bcfmc5f'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1249416536328_961754_660' name='isEntity' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Boolean'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00005b' body='True if the ParametricType is based on GENERIC_ENTITY; False if it is based on GENERIC.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1249416536328_961754_660'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I808680m1128bdf3bcfmc5f' name='ParametricElement' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00005c' body='&lt;p&gt;a NamedElement representing a parametric data type – a component of the type description for an abstract Attribute or a formal Parameter that refers to the corresponding type component of the InstantiableType or the corresponding actual parameter.  The ParametricElement is denoted by an EXPRESS type_label that is unique within the scope of the EntityType or Algorithm.  &lt;/p&gt;
&lt;p&gt;The :id attribute of the ParametricElement represents the EXPRESS type_label.&lt;/p&gt;
&lt;p&gt;In EXPRESS entity_declarations, the first occurrence of the type_label among the Attribute declarations defines the ParametricElement.  Any later occurrence of the same type_label in the Attribute declarations for the same EntityType (even for the same Attribute) specifies an ActualStructureConstraint or an ActualTypeConstraint that is based on the ParametricElement.  The :source property indicates the Attribute whose data type contains the ParametricElement definition.&lt;/p&gt;
&lt;p&gt;In EXPRESS Algorithm declarations, the first occurrence of the type_label in the formal parameter list defines the ParametricElement.  Any later occurrence of the same type_label in the formal parameter list (even in the same Parameter) specifies an ActualStructureConstraint or an ActualTypeConstraint that is based on the ParametricElement.  The :source property indicates the Parameter whose formal parameter type contains the ParametricElement definition.
&lt;/p&gt;
&lt;note&gt;An EXPRESS type_label is not part of the model of a GenericType or AGGREGATEType; it is an identifier for a ParametricElement that can be used in ActualTypes and ActualTypeConstraints. &lt;/note&gt;'>
<annotatedElement xmi:idref='I808680m1128bdf3bcfmc5f'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I175beefm1040b3ac253mm40ee'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1251998488765_105664_1507' name='source' type='_16_0_1_852026a_1251998454140_122583_1487' association='_16_0_1_852026a_1251998488765_338248_1506' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00005d' body='&lt;p&gt;the ElementSource (Attribute or Parameter) whose declared type is or includes the ParametricElement and defines its type_label.  The first (by :position) Attribute or Parameter whose declared type contains the type_label is the source for that ParametricElement and defines the type_label as its :id.  &lt;/p&gt;
&lt;note&gt;See 9.5.3.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1251998488765_105664_1507'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1251998251875_639152_1474' name='namespace' type='I118958em102d5a77152mm7d4b' association='_16_0_1_852026a_1251998251875_326321_1472' visibility='public' isDerived='true'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00005e' body='&lt;p&gt;the Algorithm or EntityType that is the namespace of the ScopedId that is the type_label.  
This relationship is derived -- the namespace of a ParametricElement is the same as the namespace of its :source element (Attribute or Parameter).&lt;/p&gt;
&lt;note&gt;The namespace is modeled as Scope, because Algorithm and EntityType have no other common supertype.&lt;/note&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1251998251875_639152_1474'/>
</ownedComment>
<subsettedProperty xmi:id='I175beefm1040b3ac253mm40d4'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='_16_0_1_852026a_1239831682515_391695_638' name='Interface' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00005f' body='&lt;p&gt;represents the EXPRESS “interface” relationship between two Schemas that is created by a USE or REFERENCE statement.&lt;/p&gt;
&lt;p&gt;
Each EXPRESS interface statement (USE or REFERENCE) explicitly includes zero or more SchemaElements from the interfaced  Schema in the interfacing Schema. Each interface statement shall be represented by an Interface object with the corresponding :kind.   If there are multiple interface statements of the same kind for the same interfaced schema, they may all be represented by a single Interface object of that kind.  Each SchemaElement that is explicitly interfaced by the statement(s) shall be represented by exactly one InterfacedElement that is included in the Interface.  Such elements are considered to be in the namespace of the interfacing Schema as well, but the identifier in the interfacing schema may be overridden in the InterfacedElement. &lt;/p&gt;
&lt;p&gt;
In addition, an EXPRESS interface statement may implicitly interface zero or more SchemaElements from the interfaced  Schema in the interfacing Schema, in order to complete the specifications of the explicitly interfaced elements.  For each interfaced schema from which one or more SchemaElements are implicitly interfaced, the interfacing Schema shall also contain one Interface object that has :kind=IMPLICIT, and that includes one InterfacedElement for each implicitly interfaced element from that interfaced Schema. Implicitly interfaced elements are not considered to be in the namespace of the interfacing schema, but they may appear in a corresponding population.&lt;/p&gt;
'>
<annotatedElement xmi:idref='_16_0_1_852026a_1239831682515_391695_638'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1239832041375_380500_757' name='kind' type='_16_0_1_852026a_1254172436156_747469_652' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000060' body='The nature of the Interface (statement): USE, REFERENCE, implicit.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1239832041375_380500_757'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1239832128781_855545_765' name='interfaced-schema' type='I167e3a5m10018e5d720mm790f' association='_16_0_1_852026a_1239832128781_96070_764' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000061' body='represents the relationship between the Interface and the Schema whose SchemaElements are being interfaced into the .interfacing-schema.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1239832128781_855545_765'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1239832310515_771589_790' name='interfacing-schema' type='I167e3a5m10018e5d720mm790f' association='_16_0_1_852026a_1239832310515_292586_789' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000062' body='represents the relationship between the Interface and the Schema in which it appears.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1239832310515_771589_790'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1241200385406_6290_1264' name='interfaced-elements' type='I88cf9em1096f16eabcmm1203' association='_16_0_1_852026a_1241200385406_888662_1261' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000063' body='&lt;p&gt;the InterfacedElements that are included in the Interface. That is, the SchemaElements that are implicitly or explicitly interfaced into the interfacing schema by the USE or REFERENCE statement that is represented by the
Interface.&lt;/p&gt;
&lt;note&gt;See clause 11 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1241200385406_6290_1264'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='_14_0_852026a_1204244265046_827366_8995' name='ConcreteType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000064' body='&lt;p&gt;represents any InstantiableType that is not an EntityType.&lt;/p&gt;
&lt;note&gt;Note: See 9.1 of ISO 10303-11:2004.&lt;/note&gt;
 '>
<annotatedElement xmi:idref='_14_0_852026a_1204244265046_827366_8995'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10240564a77mm7c95'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7b23' name='ExplicitAttribute' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000065' body='&lt;p&gt;represents an EXPRESS &quot;explicit&quot; attribute, a model of a property of an entity instance that is not, in general, derived from other properties of that instance or other entity instances.&lt;/p&gt;
&lt;note&gt;See 9.2.1.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7b23'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7d99'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m1024a81540emm7cbb' name='isOptional' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Boolean'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000066' body='&lt;p&gt;True if the entity instance is permitted to have no specified value for this attribute; False if a value for this attribute is required.&lt;/p&gt;
&lt;note&gt;See 9.2.1.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m1024a81540emm7cbb'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7faf' name='AnonymousType' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000067' body='&lt;p&gt;represents any InstantiableType that is not a NamedType.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7faf'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='_14_0_852026a_1204244265046_827366_8995'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7fd5' name='specializes' type='I167e3a5m10018e5d720mm7faf' association='I167e3a5m10240564a77mm7fe5' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000068' body='&lt;p&gt;represents the relationship of an AnonymousType to an AnonymousType of which it is a &quot;specialization&quot;, as specified in Part 11 clause 9.2.7.  
Unlike the specialization for defined data types, these relationships are true subtypes: the domain of the &quot;specialization&quot; is a subset of the domain of AnonymousType and has the same interpretation.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7fd5'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7f96' name='EntityType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000069' body='&lt;p&gt;a NamedType representing an EXPRESS entity data type, a type declared by an entity_declaration.&lt;/p&gt;
&lt;note&gt;See 9.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7f96'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7fd9'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7a14' name='isAbstract' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Boolean'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00006a' body='&lt;p&gt;True if the EXPRESS entity data type is declared ABSTRACT in its orginal declaration, either as ABSTRACT entity or as ABSTRACT SUPERTYPE; False otherwise.  
The entity data type can also/later be declared &quot;abstract&quot; in a SUBTYPE_CONSTRAINT, e.g. in an interfacing Schema, but that is taken as a constraint on the usage of the EntityType in that context.&lt;/p&gt;
&lt;note&gt;See 9.2.4 and 9.2.5.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7a14'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm77d0' name='subtype-constraints' type='I167e3a5m10018e5d720mm785f' association='I167e3a5m10018e5d720mm77d3' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00006b' body='&lt;p&gt;represents the relationship between an EntityType and the SubtypeConstraints that involve it.&lt;/p&gt;
&lt;note&gt;See 9.2.5 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm77d0'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm77e8' name='constraint-rules' type='I167e3a5m10018e5d720mm788d' association='I167e3a5m10018e5d720mm77eb' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00006c' body='&lt;p&gt;represents the relationship between an EntityType and the GlobalRules that constrain it.&lt;/p&gt;
&lt;note&gt;See 9.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm77e8'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7d52' name='subtype-of' type='I167e3a5m10018e5d720mm7f96' association='I167e3a5m10018e5d720mm7d5e' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00006d' body='&lt;p&gt;represents the relationship of an entity data type to its immediate supertypes -- those entity data types from whose common domain the instances of the EntityType are drawn.  
For compatibility with the interpretation of other features of EXPRESS, this relationship extends only to those EntityTypes that are &quot;immediate supertypes&quot;, i.e. those explicitly declared in the SUBTYPE OF clause for this EntityType.&lt;/p&gt;
&lt;note&gt;See 9.2.3 of ISO 10303-11:2004.&lt;/note&gt;
'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7d52'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1239990411500_515659_641' name='local-attributes' type='I167e3a5m10018e5d720mm7d99' association='_16_0_1_852026a_1239990411171_551313_640' visibility='public' isDerived='true' lower='0' upper='*'>
<subsettedProperty xmi:id='I118958em102f0aec0a0mm7f6c'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7d73' name='attributes' type='I167e3a5m10018e5d720mm7d99' association='I167e3a5m10018e5d720mm7d76' visibility='public' isDerived='true' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00006e' body='&lt;p&gt;represents the relationship between an EntityType and the declared Attributes of that EntityType, including those in the entity declaration and those inherited from supertypes.&lt;/p&gt;
&lt;note&gt;See 9.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7d73'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em102c66626a0mm7f5d' name='unique-rules' type='I167e3a5m10018e5d720mm7ac3' association='I118958em102c66626a0mm7f69' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00006f' body='&lt;p&gt;represents the relationship between an EntityType and the local uniqueness rules that constrain the values of attributes of that EntityType&lt;/p&gt;
&lt;note&gt;See 9.2.2.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I118958em102c66626a0mm7f5d'/>
</ownedComment>
<subsettedProperty xmi:id='I118958em102f0aec0a0mm7f6c'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m1024a81540emm7e5c' name='redeclarations' type='I167e3a5m10018e5d720mm79c9' association='I167e3a5m1024a81540emm7e5f' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000070' body='&lt;p&gt;represents the relationship between the EntityType and any attribute Redeclarations that appear in its declaration.&lt;/p&gt;
&lt;note&gt;See 9.2.3.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m1024a81540emm7e5c'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em1027e581026mm7cf7' name='declares' type='I1c21ed3m103f6d4f890mm43c6' association='I118958em1027e581026mm7cfa' visibility='public' aggregation='composite'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000071' body='&lt;p&gt;the SingleEntityType that is declared in the declaration for the EntityType, i.e., the group of Attributes that is named for the EntityType.&lt;/p&gt;'>
<annotatedElement xmi:idref='I118958em1027e581026mm7cf7'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I13ceab3m106c229c32emm2bec' name='plays-range-role' type='I13ceab3m106c229c32emm2c1f' association='I13ceab3m106c229c32emm2be9' visibility='public' isDerived='true' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000072' body='&lt;p&gt;represents the relationship betwen an entity type and the range roles that its instances play.  
For each occurrence of the EntityType as the attribute-type, or a member of the attribute-type, of an explicit attribute (InvertibleAttribute), 
the EntityType plays the corresponding RangeRole (.models-role).&lt;/p&gt;'>
<annotatedElement xmi:idref='I13ceab3m106c229c32emm2bec'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I13ceab3m106c229c32emm2bbb' name='plays-domain-role' type='I13ceab3m106c229c32emm2c07' association='I13ceab3m106c229c32emm2bb8' visibility='public' isDerived='true' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000073' body='&lt;p&gt;represents the relationship betwen an entity type and the domain roles that its instances play.  
For each InvertibleAttribute of the EntityType, the EntityType plays a corresponding DomainRole.
An EntityInstance is considered to play the DomainRole once for each member of an InvertibleAttribute whose data type is an AggregationType.&lt;/p&gt;'>
<annotatedElement xmi:idref='I13ceab3m106c229c32emm2bbb'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1b9bbe8m10bd611c411mm15f9' name='used-in' type='I1b9bbe8m10bd611c411mm1618' association='I1b9bbe8m10bd611c411mm15f3' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000074' body='&lt;p&gt;represents the relationship between the EntityType and the InvertibleAttributes (of other EntityTypes) that establish relationships to it.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1b9bbe8m10bd611c411mm15f9'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7ff4' name='instances' type='I1160e64m10462d0e89emm33fd' association='I17779e3m1003cfd8422mm7ff7' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000075' body='&lt;p&gt;represents the relationship between an EntityType (classifier) and the EntityInstances that satisfy it.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7ff4'/>
</ownedComment>
<subsettedProperty xmi:id='I17779e3m1003cfd8422mm7844'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm77f7' name='extension' type='I167e3a5m10018e5d720mm7830' association='I167e3a5m10018e5d720mm7803' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000076' body='&lt;p&gt;represents the relationship between an EntityType and its extent (the set of corresponding EntityInstances) in a given Population. &lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm77f7'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7f7d' name='DefinedType' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000077' body='&lt;p&gt;a NamedType representing an EXPRESS defined data type, a type declared by a type_declaration.&lt;/p&gt;
&lt;note&gt;See 8.3.2 and 9.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7f7d'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='_14_0_852026a_1204244265046_827366_8995'/>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7fd9'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7f61' name='AggregationType' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000078' body='&lt;p&gt;an AnonymousType representing an EXPRESS &quot;aggregation type&quot;, whose instances are collections of instances of a &quot;member type&quot;: ARRAY, BAG, LIST, SET.&lt;/p&gt;
&lt;note&gt;See 8.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7f61'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m1024a81540emm7ff7' name='isUnique' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Boolean'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000079' body='&lt;p&gt;True if the members of a given instance of the type are required to be distinct; else False.  
isUnique is always True for a SET type, always False for a BAG type, and True for LIST and ARRAY types if and only if the UNIQUE keyword is present in the type designation&lt;/p&gt;
&lt;note&gt;See 8.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m1024a81540emm7ff7'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='Ie20459m109465a669dmm1477' name='ordering' type='_14_0_852026a_1203969412796_407448_5320' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00007a' body='&lt;p&gt;Specifies the structure of the AggregationType: indexed (ARRAY), ordered (LIST), unordered (BAG, SET).&lt;/p&gt;'>
<annotatedElement xmi:idref='Ie20459m109465a669dmm1477'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7ee0' name='upper-bound' type='I167e3a5m10240564a77mm7d09' association='I17779e3m1003cfd8422mm7eec' visibility='public' aggregation='composite' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00007b' body='&lt;p&gt;represents the appearance of an upper-bound constraint in the syntactic designation for the aggregation type.  
Refines InstantiableType.constraints.  
For this purpose the appearance of an explicit indeterminate value (&quot;?&quot;) is considered to represent no upper-bound constraint, and shall not be represented by an upper-bound relationship.  
(The appearance of an upper-bound expression that may evaluate to &quot;?&quot; shall be represented by an upper-bound relationship.)&lt;/p&gt;
&lt;note&gt;See 8.2.2, 8.2.3 and 8.2.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7ee0'/>
</ownedComment>
<subsettedProperty xmi:id='If8093fm102ff7b3af0mm43ee'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7efa' name='lower-bound' type='I167e3a5m10240564a77mm7d09' association='I17779e3m1003cfd8422mm7f06' visibility='public' aggregation='composite' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00007c' body='&lt;p&gt;represents the appearance of a lower-bound constraint in syntactic designation for the aggregation type.  
Refines InstantiableType.constraints.  
For this purpose the appearance of an explicit zero (&quot;0&quot;) value may be considered to represent no lower-bound constraint; and the lower-bound relationship need not appear.  
(The appearance of a lower-bound expression that may evaluate to zero shall always be represented by a lower-bound relationship.)&lt;/p&gt;
&lt;note&gt;See 8.2.2, 8.2.3 and 8.2.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7efa'/>
</ownedComment>
<subsettedProperty xmi:id='If8093fm102ff7b3af0mm43ee'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7f1b' name='SimpleType' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00007d' body='&lt;p&gt;an AnonymousType representing those EXPRESS data types defined in the language as &quot;simple types&quot;: BINARY types, BOOLEAN, INTEGER, LOGICAL, NUMBER, REAL types, and STRING types.&lt;/p&gt;
&lt;note&gt;See 8.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7f1b'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7faf'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m1024a81540emm7fe8' name='id' type='_14_0_852026a_1203973966781_376902_5491' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00007e' body='&lt;p&gt;represents the EXPRESS keyword denoting the SimpleType, one of: BINARY, BOOLEAN, INTEGER, LOGICAL, NUMBER, REAL, STRING.&lt;/p&gt;
&lt;note&gt;See 8.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m1024a81540emm7fe8'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7eca' name='SpecializedType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00007f' body='&lt;p&gt;a DefinedType representing an EXPRESS defined data type whose underlying_type is neither an explicit ENUMERATION data type nor an explicit SELECT data type.  According to ISO 10303-11 clause 9.1, a SpecializedType represents an abstract data type whose values are represented by values of the underlying_type; but in practice, a SpecializedType may also simply name an underlying_type that is an AnonymousType, or name an underlying_type whose domain is a subset of the domain of another DefinedType.&lt;/p&gt;
&lt;note&gt;See 9.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7eca'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7f7d'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_14_0_852026a_1204244509031_716386_9303' name='underlying-type' type='_14_0_852026a_1204244265046_827366_8995' association='_14_0_852026a_1204244509031_406648_9302' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000080' body='&lt;p&gt;represents the EXPRESS &quot;specialization&quot; relationship between a defined data type and the &quot;underlying type&quot; used to represent it.&lt;/p&gt;
&lt;note&gt;See 9.1 and 9.7 of ISO 10303-11:2004.&lt;/note&gt;
 
'>
<annotatedElement xmi:idref='_14_0_852026a_1204244509031_716386_9303'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7eb5' name='SelectType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000081' body='&lt;p&gt;a DefinedType representing an EXPRESS defined data type whose underlying_type is a SELECT data type.&lt;/p&gt;
&lt;note&gt;See 8.4.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7eb5'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7f7d'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7cb4' name='isEntity' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Boolean'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000082' body='&lt;p&gt;represents a constraint on the extensions of an Extensible SelectType: True if every NamedType in the extension must be an EntityType; otherwise False..&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7cb4'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em102c66626a0mm7e4e' name='isExtensible' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Boolean'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000083' body='&lt;p&gt;True if the SelectType is EXTENSIBLE, i.e. if it can have additional NamedTypes in the select-list when it is interfaced into another Schema; False otherwise.&lt;/p&gt;
&lt;note&gt;See 8.4.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I118958em102c66626a0mm7e4e'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I88485fm106cc8fc6camm2ae4' name='select-list' type='I167e3a5m10018e5d720mm7fd9' association='I88485fm106cc8fc6camm2ae1' visibility='public' lower='0' upper='*' isOrdered='true'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000084' body='&lt;p&gt;represents the appearance of the NamedType in the select list in the declaration of the SelectType.  
For extended and extensible SelectTypes, the NamedType should appear in exactly one of the select-lists in any set of SelectTypes related by extension.  
This is distinct from .allowed-types, which represents all of the NamedTypes that can validly instantiate the SelectType, including any related by extension.  
The select-list is said to be &quot;ordered&quot;, to convey the syntactic ordering.  The ordering has no semantic significance.&lt;/p&gt;
&lt;note&gt;See 8.4.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I88485fm106cc8fc6camm2ae4'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m10023cc289dmm7f2d' name='extension' type='I167e3a5m10018e5d720mm7eb5' association='I17779e3m10023cc289dmm7f3d' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000085' body='&lt;p&gt;represents the relationship of an EXTENSIBLE select type to a select type BASED ON it.&lt;/p&gt;
&lt;note&gt;See 8.4.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m10023cc289dmm7f2d'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m10023cc289dmm7f3a' name='base' type='I167e3a5m10018e5d720mm7eb5' association='I17779e3m10023cc289dmm7f3d' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000086' body='&lt;p&gt;represents the relationship of an extended select type to the (extensible) select type it is BASED ON.&lt;/p&gt;
&lt;note&gt;See 8.4.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m10023cc289dmm7f3a'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7c82' name='allowed-types' type='I167e3a5m10018e5d720mm7fd9' association='I167e3a5m10018e5d720mm7c85' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000087' body='&lt;p&gt;represents the relationship of the SelectType to a NamedType whose values are included in the domain of the SelectType.
All values in the domain of the NamedType are valid values of the SelectType.&lt;/p&gt;
&lt;note&gt;See 8.4.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7c82'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1241582639812_213802_723' name='allowed-value' type='I118958em102d5a77152mm7fe6' association='_16_0_1_852026a_1241582639812_659926_721' visibility='public' isDerived='true' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000088' body='&lt;p&gt;represents the relationship between a SelectType and the Instances that are valid values of the SelectType.
By definition, these values are instances of one or more of the types in the select list for the SelectType.&lt;/p&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1241582639812_213802_723'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m10023cc289dmm7f94' name='GeneralizedType' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000089' body='&lt;p&gt;an abstract classifier, representing those EXPRESS data types that are &quot;abstract&quot;, in the sense that every actual instance is an instance of some InstantiableType(s).
These types are only permitted as the data type of formal parameters and the data type of &quot;abstract&quot; Attributes of ABSTRACT EntityTypes.  
GeneralizedType is a proper subclass of ParameterType that is disjoint with InstantiableType.&lt;/p&gt;
&lt;note&gt;The syntactic occurrences of EXPRESS generalized_type do not always denote GeneralizedTypes per se.  
In particular, a generalized_type that appears with a type_label may denote an ActualType or a constraint.
When used as the type of a LocalVariable or FunctionResult, it denotes an ActualType (q.v.).
When used as the type of a Parameter, it may be a ParametricElement that defines a reference to the data type of the corresponding actual parameter 
(in addition to being a GeneralizedType specification for the allowable data types of the actual parameter), 
or it may represent a constraint on the data type of the corresponding actual parameter that relates to the data type of another actual parameter.
See 9.5.3.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m10023cc289dmm7f94'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I14a75bbm102da9bec90mm7e19'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1003cfd8422mm7e91' name='DomainConstraint' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00008a' body='&lt;p&gt;represents a constraint on the allowable values of an EXPRESS data type.  
This concept does not appear explicitly in the EXPRESS language.  
Some DomainConstraints are explicit DomainRules (WHERE rules); 
others, such as SizeConstrraints and LengthConstraints, are stated in the EXPRESS syntax for the data type.  
In this model, a DomainConstraint is always formulated as a (boolean) Expression, regardless of the EXPRESS syntax used to specify it.&lt;/p&gt;

'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7e91'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7e55' name='asserts' type='I167e3a5m10018e5d720mm7ad9' association='I17779e3m1003cfd8422mm7e61' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00008b' body='&lt;p&gt;represents the relationship between the domain constraint and a Boolean expression that can be evaluated to determine if it holds.&lt;/p&gt;
&lt;note&gt;The asserts expression that formulates the DomainConstraint is wholly owned by the DomainConstraint.  It is not treated as reusable.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7e55'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='If8093fm102ff7b3af0mm43f1' name='domain' type='I14a75bbm102da9bec90mm7e19' association='If8093fm102ff7b3af0mm43eb' visibility='public' isAbstract='true'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00008c' body='&lt;p&gt;a dependency -- represents the relationship between the DomainConstraint and the data type whose values it constrains&lt;/p&gt;'>
<annotatedElement xmi:idref='If8093fm102ff7b3af0mm43f1'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10240564a77mm7fbb' name='RealType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00008d' body='&lt;p&gt;represents all EXPRESS REAL data types, which are distinguished from one another by different values of &quot;precision&quot;.  Type REAL (with no &quot;precision&quot; value) is one instance of REALType.&lt;/p&gt;
&lt;note&gt;See 8.1.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7fbb'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m10283aab711mm7de8'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7fae' name='precision' visibility='public' lower='0'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Integer'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00008e' body='&lt;p&gt;represents the number of significant figures in the values of the RealType, as specified in its syntactic designation.  Although the value of &quot;precision&quot; is specified in EXPRESS to be an expression, it is assumed in this model that the value will in practice be a &quot;constant&quot;.  The only REALType for which &quot;precision&quot; is not present is the EXPRESS type REAL (with no precision specification).&lt;/p&gt;
&lt;note&gt;See 8.1.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7fae'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10240564a77mm7f94' name='StringType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00008f' body='&lt;p&gt;a SimpleType representing all EXPRESS STRING data types, which are distinguished by different LengthConstraints.  By definition, every EXPRESS STRING type with a LengthConstraint is different from every other STRING data type.  (They may be compatible with others, but not the same.)  The only instance of STRINGType with no LengthConstraint is the EXPRESS data type STRING.&lt;/p&gt;
&lt;note&gt;See 8.1.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7f94'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7f1b'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7f22' name='string-length-constraint' type='I167e3a5m10240564a77mm7f3a' association='I167e3a5m10240564a77mm7f25' visibility='public' aggregation='composite' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000090' body='&lt;p&gt;represents a constraint on the length (in characters) of the values in the domain of the STRING data type.  
Refines InstantiableType.constraints.&lt;/p&gt;
&lt;note&gt;See 8.1.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7f22'/>
</ownedComment>
<subsettedProperty xmi:id='If8093fm102ff7b3af0mm43ee'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10240564a77mm7f6b' name='BinaryType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000091' body='&lt;p&gt;a SimpleType representing all EXPRESS BINARY data types, which are distinguished by different LengthConstraints.  By definition, every EXPRESS BINARY type with a LengthConstraint is different from every other BINARY data type.  (They may be compatible with others, but not the same.)  The only instance of BINARYType with no LengthConstraint is the EXPRESS data type BINARY.&lt;/p&gt;
&lt;note&gt;See 8.1.7 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7f6b'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7f1b'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7f06' name='binary-length-constraint' type='I167e3a5m10240564a77mm7f3a' association='I167e3a5m10240564a77mm7f09' visibility='public' aggregation='composite' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000092' body='&lt;p&gt;represents a constraint on the length (in bits) of the values in the domain of the BINARY data type.  
Refines InstantiableType.constraints.&lt;/p&gt;
&lt;note&gt;See 8.1.7 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7f06'/>
</ownedComment>
<subsettedProperty xmi:id='If8093fm102ff7b3af0mm43ee'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10240564a77mm7f3a' name='LengthConstraint' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000093' body='&lt;p&gt;represents any maximum-length or fixed-length constraint on the length of the values of a STRING or BINARY type.  
A LengthConstraint is a DomainConstraint, considered to have an equivalent Boolean expression using the built-in Length() function.&lt;/p&gt;
&lt;note&gt;See 8.1.6 and 8.1.7 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7f3a'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1003cfd8422mm7e91'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7d26' name='maxLength' visibility='public' lower='0'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Integer'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000094' body='&lt;p&gt;represents a constant value specifying the required maximum/fixed length of the STRING or BINARY value.  This attribute is present when the constraint expression is a &quot;constant&quot;.&lt;/p&gt;
&lt;note&gt;See 8.1.6 and 8.1.9 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7d26'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m1024a81540emm7fcc' name='isFixed' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Boolean'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000095' body='&lt;p&gt;True if all values of the SimpleType are required to be of the same length; False if the constraint specifies only the maximum length of the values.&lt;/p&gt;
&lt;note&gt;See 8.1.6 and 8.1.8 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m1024a81540emm7fcc'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7fd9' name='NamedType' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000096' body='&lt;p&gt;a CommonElement that defines a new InstantiableType.&lt;/p&gt;
&lt;note&gt;See 8.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7fd9'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I118958em102d5a77152mm7d06'/>
<general xmi:type='cmof:Class' xmi:idref='I118958em102d5a77152mm7d4b'/>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10240564a77mm7c95'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7c79' name='instantiates' type='I167e3a5m10018e5d720mm7eb5' association='I167e3a5m10018e5d720mm7c85' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000097' body='&lt;p&gt;represents the relationship between the NamedType and a SelectType whose domain includes it.&lt;/p&gt;
&lt;note&gt;See 8.4.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7c79'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='If8093fm102ff7b3af0mm4419' name='domain-rules' type='I167e3a5m10018e5d720mm7aae' association='If8093fm102ff7b3af0mm4416' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000098' body='&lt;p&gt;a refinement of InstantiableType.constraints, represents the association of DomainRules that restrict the domain of valid values of the NamedType&lt;/p&gt;
&lt;note&gt;See 9.1  of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='If8093fm102ff7b3af0mm4419'/>
</ownedComment>
<subsettedProperty xmi:id='If8093fm102ff7b3af0mm43ee'/>
<subsettedProperty xmi:id='I118958em102f0aec0a0mm7f6c'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em102f0aec0a0mm7f6c' name='type-elements' type='I118958em102f0aec0a0mm7f96' association='I118958em102f0aec0a0mm7f6f' visibility='public' isAbstract='true' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000099' body='&lt;p&gt;represents the relationship between the NamedType and the TypeElements that are defined in its scope.&lt;/p&gt;'>
<annotatedElement xmi:idref='I118958em102f0aec0a0mm7f6c'/>
</ownedComment>
<subsettedProperty xmi:id='I175beefm1040b3ac253mm40d7'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1241582240828_699332_708' name='instances' type='I118958em102d5a77152mm7fe6' association='_16_0_1_852026a_1241582240781_64712_706' visibility='public' isAbstract='true' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00009a' body='the instances of the NamedType.  By definition, the instances of a NamedType are TypedInstances.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1241582240828_699332_708'/>
</ownedComment>
<subsettedProperty xmi:id='I17779e3m1003cfd8422mm7844'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1001f33ccb7mm7cb5' name='SETType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00009b' body='&lt;p&gt;an AggregationType representing all EXPRESS SET data types.&lt;/p&gt;
&lt;note&gt;See 8.2.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1001f33ccb7mm7cb5'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I808680m1128bdf3bcfm8b1'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7dcf' name='ARRAYType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00009c' body='&lt;p&gt;an AggregationType representing all EXPRESS ARRAY data types.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7dcf'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I808680m1128bdf3bcfm8b1'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7f34' name='isOptional' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Boolean'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00009d' body='&lt;p&gt;True if the member type is declared to be OPTIONAL in the syntactic designation for the ARRAYType; False otherwise.  When isOptional is True, any instance of the ARRAYType is permitted to have members whose value is unspecified (&quot;?&quot;).&lt;/p&gt;
&lt;note&gt;See 8.2.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7f34'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7ea6' name='hi-index' type='I118958em102c66626a0mm7e02' association='I17779e3m1003cfd8422mm7eb6' visibility='public' aggregation='composite'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00009e' body='&lt;p&gt;represents the relationship between the ARRAYType and the upper bound on the Integer index-range of each value of the ARRAYType.&lt;/p&gt;
&lt;note&gt;See 8.2.1 and 15.11 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7ea6'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7ec2' name='lo-index' type='I118958em102c66626a0mm7e02' association='I17779e3m1003cfd8422mm7ed0' visibility='public' aggregation='composite'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00009f' body='&lt;p&gt;represents the relationship between the ARRAYType and the lower bound on the Integer index-range of each value of the ARRAYType.&lt;/p&gt;
&lt;note&gt;See 8.2.1 and 15.17 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7ec2'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1001f33ccb7mm7c9b' name='LISTType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000a0' body='&lt;p&gt;an AggregationType representing all EXPRESS LIST data types&lt;/p&gt;
&lt;note&gt;See 8.2.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1001f33ccb7mm7c9b'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I808680m1128bdf3bcfm8b1'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1001f33ccb7mm7ccf' name='BAGType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000a1' body='&lt;p&gt;an AggregationType representing all EXPRESS BAG data types&lt;/p&gt;
&lt;note&gt;See 8.2.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1001f33ccb7mm7ccf'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I808680m1128bdf3bcfm8b1'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10240564a77mm7d09' name='SizeConstraint' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000a2' body='&lt;p&gt;A SizeConstraint represents a constraint on the number of members in each value of an EXPRESS aggregation type, stated as a bound in the syntactic designation for the type.  
A SizeConstraint represents either an upper-bound or a lower-bound.  
In the case of an ARRAY type, the value (hi-index - lo-index + 1) is both the lower-bound value and the upper-bound value.  
A SizeConstraint is a DomainConstraint, considered to have an equivalent Boolean expression using the built-in SizeOf() function.&lt;/p&gt;
&lt;note&gt;See 8.2.2, 8.2.3, and 8.2.4 of ISO 10303-11:2004.&lt;/note&gt;

'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7d09'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1003cfd8422mm7e91'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m1024a81540emm7f41' name='bound' visibility='public' lower='0'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Integer'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000a3' body='&lt;p&gt;represents a constant value specifying the (upper or lower) bound on the number of members in a valid instance of the aggregation type.  This attribute is present when the bound expression is a &quot;constant&quot;.&lt;/p&gt;
&lt;note&gt;See 8.2.2, 8.2.3, and 8.2.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m1024a81540emm7f41'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7d99' name='Attribute' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000a4' body='&lt;p&gt;represents an EXPRESS attribute, i.e. a model of a property of an entity instance&lt;/p&gt;
&lt;note&gt;See 9.2.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7d99'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='_16_0_1_852026a_1251998454140_122583_1487'/>
<general xmi:type='cmof:Class' xmi:idref='I118958em102f0aec0a0mm7f96'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1eaf25dm106bd879899mm2c03' name='position' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Integer'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000a5' body='&lt;p&gt;Represents the position of the attribute declaration in the sequence of attribute declarations in the entity declaration.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2c03'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m1121f4b0370mm760' name='isAbstract' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Boolean'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000a6' body='&lt;p&gt;True if .isAbstract is True for the owning EntityType (see .of-entity) and the attribute-type of the EXPRESS attribute is a GeneralizedType; False in all other cases.  
When .isAbstract is True, this Attribute must be redeclared to have an attribute-type that is an InstantiableType in any subtype of the owning EntityType that is not itself ABSTRACT.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m1121f4b0370mm760'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1239990411500_584050_642' name='namespace' type='I167e3a5m10018e5d720mm7f96' association='_16_0_1_852026a_1239990411171_551313_640' visibility='public' isDerived='true'>
<subsettedProperty xmi:id='I118958em102f0aec0a0mm7f5f'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7d6a' name='owning-entity' type='I167e3a5m10018e5d720mm7f96' association='I167e3a5m10018e5d720mm7d76' visibility='public' isDerived='true' upper='*'>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7d3a' name='attribute-type' type='I14a75bbm102da9bec90mm7e19' association='I167e3a5m10018e5d720mm7d46' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000a7' body='&lt;p&gt;represents the required DataType for all values of that Attribute in all instances of the EntityType.  
The DataType is required to be an InstantiableType unless isAbstract is True for the EntityType, 
or the EntityType is defined in an AlgorithmScope (instead of a Schema).&lt;/p&gt;
&lt;note&gt;See 9.2.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7d3a'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7720' name='of-entity' type='I1c21ed3m103f6d4f890mm43c6' association='I17779e3m1003cfd8422mm772e' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000a8' body='&lt;p&gt;represents the relationship of an Attribute to the SingleEntityType for which it was originally declared.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7720'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7b87' name='InverseAttribute' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000a9' body='&lt;p&gt;represents an EXPRESS INVERSE attribute = a property of each instance of this entity data type that represents a relationship between it and instances of some other entity data type, created by an InvertibleAttribute of that entity data type.&lt;/p&gt;
&lt;note&gt;See 9.2.1.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7b87'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7d99'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7b5c' name='isUnique' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Boolean'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000aa' body='&lt;p&gt;True if the designated relationship between this instance and any given instance can occur at most once; False if it can occur more than once.  
(True if the attribute-type of the INVERSE attribute is declared to be an entity data type or a SET; False if it is declared to be a BAG.)  &lt;/p&gt;
&lt;note&gt;See 9.2.1.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7b5c'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1eaf25dm106bd879899mm2c3c' name='models-role' type='I13ceab3m106c229c32emm2c07' association='I1eaf25dm106bd879899mm2c39' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000ab' body='&lt;p&gt;represents the relationship between an Inverse Attribute and the domain-role it refers to.  
By extension (models-role.in-relationship), it models the relationship of the inverse attribute to the Relationship it denotes.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2c3c'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7b35' name='explicit' type='I1b9bbe8m10bd611c411mm1618' association='I167e3a5m10018e5d720mm7b41' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000ac' body='&lt;p&gt;the explicit attribute (InvertibleAttribute) of the associated entity data type that models the Relationship from which the inverse attribute is derived.&lt;/p&gt;
&lt;note&gt;The attribute-type of the InverseAttribute may be a subtype of the entity data type that defines the InvertibleAttribute. &lt;/note&gt;
&lt;note&gt;See 9.2.1.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7b35'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7b0f' name='DerivedAttribute' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000ad' body='&lt;p&gt;represents an EXPRESS DERIVE attribute = a property whose value can be determined from other attributes and relationships of the entity instance.&lt;/p&gt;
&lt;note&gt;See 9.2.1.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7b0f'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7d99'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7a4e' name='derivation' type='I167e3a5m10018e5d720mm7ad9' association='I167e3a5m10018e5d720mm7a5a' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000ae' body='&lt;p&gt;the Expression that specifies how to determine the value of the DerivedAttribute from the values of other Attributes.&lt;/p&gt;
&lt;note&gt;See 9.2.1.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7a4e'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7ac3' name='UniqueRule' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000af' body='&lt;p&gt;represents an EXPRESS UNIQUE rule = a requirement that the combination of values of the specified &quot;key&quot; attributes be unique over all instances of the entity data type in a given Population.&lt;/p&gt;
&lt;note&gt;See 9.2.2.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7ac3'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I118958em102f0aec0a0mm7f96'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1eaf25dm106bd879899mm2b6a' name='position' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Integer'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000b0' body='&lt;p&gt;Represents the position of the Unique Rule in the list of rules following the UNIQUE keyword in the entity/type declaration.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2b6a'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7a6a' name='key-component' type='I167e3a5m10018e5d720mm7d99' association='I167e3a5m10018e5d720mm7a76' visibility='public' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000b1' body='&lt;p&gt;represents the relationship between the UniqueRule and the &quot;key&quot; attributes of the (possibly joint) key for the instances of the EntityType&lt;/p&gt;
&lt;note&gt;See 9.2.2.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7a6a'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em102c66626a0mm7f66' name='domain' type='I167e3a5m10018e5d720mm7f96' association='I118958em102c66626a0mm7f69' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000b2' body='&lt;p&gt;represents the relationship of the UniqueRule to the EntityType whose Extent is the domain of values to which it applies.&lt;/p&gt;'>
<annotatedElement xmi:idref='I118958em102c66626a0mm7f66'/>
</ownedComment>
<subsettedProperty xmi:id='I118958em102f0aec0a0mm7f5f'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7aae' name='DomainRule' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000b3' body='&lt;p&gt;represents a DomainConstraint that is stated as an EXPRESS domain rule in a WHERE clause in the type_declaration or the entity declaration.  
In a type_declaration, it is a Boolean expression in terms of SELF that limits the allowable values in the domain of the data type.  
In an entity_declaration, it is a Boolean expression that constrains the values of one or more attributes (or other relationships) of the entity data type.&lt;/p&gt;
&lt;note&gt;Note:  Part 11 permits the evaluation of a DomainRule which evaluates to indeterminate (&quot;?&quot;) and requires that to be treated as satisfied.  
The most common case is the evaluation of an expression involving an OPTIONAL attribute.  
Languages like OCL and OWL require the possibly indeterminate values to be protected by an EXISTS operation,  
So translation of the EXPRESS DomainRule may require the rule to be prefixed with IF EXISTS(expression) THEN ...&lt;/note&gt;
&lt;note&gt;See clauses 9.1 and 9.2.2.2 of ISO 10303-11:2004.&lt;/note&gt;

'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7aae'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1003cfd8422mm7e91'/>
<general xmi:type='cmof:Class' xmi:idref='I118958em102f0aec0a0mm7f96'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1eaf25dm106bd879899mm2b36' name='position' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Integer'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000b4' body='&lt;p&gt;Represents the position of the Domain Rule in the list of rules following the WHERE keyword in the entity/type declaration.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2b36'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='If8093fm102ff7b3af0mm441c' name='domain' type='I167e3a5m10018e5d720mm7fd9' association='If8093fm102ff7b3af0mm4416' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000b5' body='&lt;p&gt;represents the relationship of the DomainRule to the NamedType that is the domain of values to which it applies&lt;/p&gt;'>
<annotatedElement xmi:idref='If8093fm102ff7b3af0mm441c'/>
</ownedComment>
<subsettedProperty xmi:id='If8093fm102ff7b3af0mm43f1'/>
<subsettedProperty xmi:id='I118958em102f0aec0a0mm7f5f'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm79c9' name='Redeclaration' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000b6' body='&lt;p&gt;represents the &quot;redeclaration&quot; of an EXPRESS attribute in a subtype of the entity data type for which that attribute was originally declared.  
A redeclaration represents a refinement of the original attribute concept in the subtype, and it states corresponding constraints on the possible values of that attribute in the subtype.  
It may also rename the attribute for the subtype.  
When the attribute-type of the original-attribute is an EntityType, the Redeclaration may be seen as refining the RangeRole represented by the original-attribute for the domain restricted to the subtype.&lt;/p&gt;
&lt;note&gt;See 9.2.3.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm79c9'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m1024a81540emm7f82' name='alias' type='I118958em102d5a77152mm7ca6' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000b7' body='&lt;p&gt;an additional EXPRESS identifier that may be used to identify the original attribute in this subtype.&lt;/p&gt;
&lt;note&gt;See 9.2.2.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m1024a81540emm7f82'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m1024a81540emm7f6d' name='isMandatory' visibility='public' lower='0'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Boolean'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000b8' body='&lt;p&gt;True if the entity instance is required to have a value for this attribute in this subtype; False if it is permitted to have no specified value.  This attribute is only present if isOptional is True for the original attribute.&lt;/p&gt;
&lt;note&gt;See 9.2.3.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m1024a81540emm7f6d'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1eaf25dm106bd879899mm2b7f' name='position' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Integer'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000b9' body='&lt;p&gt;Represents the position of the redeclaration in the sequence of attribute declarations in the entity declaration.
By convention these follow all the new attribute declarations of each kind.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2b7f'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7946' name='derivation' type='I167e3a5m10018e5d720mm7ad9' association='I167e3a5m10018e5d720mm7952' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000ba' body='&lt;p&gt;When specified, represents a Redeclaration that redeclares an ExplicitAttribute to be &quot;derived&quot; in the .scope subtype.  
That is, it declares an Expression that can be used to derive (or validate) the value of the redeclared Attribute in this subtype.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7946'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7993' name='original-attribute' type='I167e3a5m10018e5d720mm7d99' association='I167e3a5m10018e5d720mm799f' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000bb' body='&lt;p&gt;identifies the original Attribute being redeclared by the Redeclaration.  
If the Redeclaration redeclares another redeclared-attribute (see .refines), the .original-attribute is determined transitively.  
Every Redeclaration ultimately constrains an original attribute in some supertype.&lt;/p&gt;
&lt;note&gt;See 9.2.3.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7993'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1eaf25dm106bd879899mm2d46' name='refined-role' type='I1eaf25dm106bd879899mm2cd9' association='I1eaf25dm106bd879899mm2d43' visibility='public' isDerived='true' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000bc' body='&lt;p&gt;represents the relationship between a Redeclaration and the Role represented by the .original-attribute.  
If the Redeclaration redeclares an InvertibleAttribute, it refines the corresponding RangeRole by restricting the allowable participants in the RangeRole for the domain that is the .scope of the Redeclaration.  
If the Redeclaration redeclares an InverseAttribute, it refines the corresponding DomainRole by restricting the allowable participants in the DomainRole for the range that is the .scope of the Redeclaration.  
&lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2d46'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I88cf9em1096f16eabcmm1387' name='refines' type='I167e3a5m10018e5d720mm79c9' association='I88cf9em1096f16eabcmm1384' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000bd' body='&lt;p&gt;This relationship is present only when a Redeclaration is stated as a refinement of another redeclared attribute.  
.refines refers to the Redeclaration represented by that redeclared attribute.&lt;/p&gt;
&lt;note&gt;See 9.2.3.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I88cf9em1096f16eabcmm1387'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I88cf9em1096f16eabcmmff4' name='upper-bound' type='I167e3a5m10240564a77mm7d09' association='I88cf9em1096f16eabcmmff1' visibility='public' isDerived='true' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000be' body='&lt;p&gt;represents a restriction on the maximum cardinality of the role that is stated by the Redeclaration.  
This is the case when the Redeclaration redeclares the ParameterType to restrict the maximum size of the aggregate values.&lt;/p&gt;'>
<annotatedElement xmi:idref='I88cf9em1096f16eabcmmff4'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I88cf9em1096f16eabcmmf40' name='lower-bound' type='I167e3a5m10240564a77mm7d09' association='I88cf9em1096f16eabcmmf3d' visibility='public' isDerived='true' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000bf' body='&lt;p&gt;represents a restriction on the minimum cardinality of the role that is stated by the Redeclaration.  
This is the case when the Redeclaration redeclares the ParameterType to restrict the minimum size of the aggregate values.&lt;/p&gt;'>
<annotatedElement xmi:idref='I88cf9em1096f16eabcmmf40'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7977' name='restricted-type' type='I14a75bbm102da9bec90mm7e19' association='I167e3a5m10018e5d720mm7983' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000c0' body='&lt;p&gt;when specified, specifies the subtype or specialization of the data type of the original attribute to which all values of the original attribute in instances of the &quot;scope&quot; EntityType must conform.&lt;/p&gt;
&lt;note&gt;See 9.2.3.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7977'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m1024a81540emm7e51' name='scope' type='I167e3a5m10018e5d720mm7f96' association='I167e3a5m1024a81540emm7e5f' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000c1' body='&lt;p&gt;represents the relationship between the Redeclaration and the entity data type to which the redeclaration applies.
Values for the original attribute are constrained by the Redeclaration for instances of the .scope EntityType and all of its subtypes.  
The .scope EntityType is the namespace of the .alias identifier, if present.&lt;/p&gt;
&lt;note&gt;See 9.2.3.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m1024a81540emm7e51'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10240564a77mm7c23' name='AGGREGATEType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000c2' body='&lt;p&gt;a GeneralizedType that is an abstraction of all AggregationTypes and all GeneralAggregationTypes.  
That is, any ARRAY, BAG, LIST or SET Instance that satisfies the SizeConstraints (if any), whose members are of the specified member type or some specialization of it, is an instance of the AGGREGATEType.   
It follows that any ARRAY, BAG, LIST or SET type whose instances are necessarily instances of the AGGREGATEType is a specialization.&lt;/p&gt;
&lt;p&gt;Each syntactic occurrence of AGGREGATE is considered to be a distinct instance of AGGREGATEType, even when the bounds and member-type are the same as those of some other syntactic occurrence, because the corresponding types of the actual parameters or subtype attributes need not be the same.  When the structures are required to be the same, that is represented as an ActualStructureConstraint &lt;/p&gt;
&lt;note&gt;See 9.5.3.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7c23'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m10023cc289dmm7f94'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I808680m1128bdf3bcfmdf3' name='constraint' type='I808680m1128bdf3bcfmdc7' association='I808680m1128bdf3bcfmdf9' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000c3' body='&lt;p&gt;the ActualStructureConstraint, if any, that applies to this component of the GeneralizedType specification.&lt;/p&gt;
&lt;note&gt;Only an AGGREGATEType that appears in the specification of the data type of a Parameter can have an ActualStructureConstraint.  
The AGGREGATEType has an ActualStructureConstraint only if it has a syntactic type_label and does not itself define that type_label.  
See 9.5.3.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I808680m1128bdf3bcfmdf3'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1249318456093_574431_874' name='defines-parameter' type='I808680m1128bdf3bcfmb03' association='_16_0_1_852026a_1249318456093_612807_872' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000c4' body='&lt;p&gt;The ParametricStructure, if any, that is defined to refer to the structure of the actual data types that conform to this AGGREGATEType.&lt;/p&gt;
&lt;note&gt;This is the object that has the type_label on the AGGREGATE keyword, if this is a definition.&lt;/note&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1249318456093_574431_874'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7b0e' name='member-type' type='I14a75bbm102da9bec90mm7e19' association='I167e3a5m10240564a77mm7b1c' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000c5' body='&lt;p&gt;represents the relationship between an AGGREGATE Type and the specification for the data type of the members of its instances.  If the specification is an InstantiableType, the member-type of conforming aggregation types is required to be exactly that data type.  If the specification is a GeneralizedType, the member-type of the conforming aggregation types must conform to it.&lt;/p&gt;
&lt;note&gt;See 9.5.3.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7b0e'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7a05' name='upper-bound' type='I167e3a5m10240564a77mm7d09' association='I167e3a5m10240564a77mm7a11' visibility='public' aggregation='composite' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000c6' body='&lt;p&gt;represents an upper-bound constraint on aggregate values conforming to the AGGREGATE type.  
If the upper-bound constraint is present and does not evaluate to indeterminate (&quot;?&quot;), the number of members of the aggregate value shall be less than or equal to this value.  
If the upper-bound is not present or evaluates to indeterminate, there is no constraint.  
Unless the upper-bound specified for the AGGREGATE type is an explicit &quot;?&quot;, this constraint shall appear.&lt;/p&gt;
&lt;note&gt;See 9.5.3.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7a05'/>
</ownedComment>
<subsettedProperty xmi:id='If8093fm102ff7b3af0mm43ee'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7a21' name='lower-bound' type='I167e3a5m10240564a77mm7d09' association='I167e3a5m10240564a77mm7a2d' visibility='public' aggregation='composite' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000c7' body='&lt;p&gt;represents a lower-bound constraint on aggregate values conforming to the AGGREGATE type.  
If the lower-bound constraint is present, the number of members of the aggregate value shall be greater than or equal to this value.  
If the lower-bound is not present or evaluates to zero, there is no constraint.  
Unless the lower-bound specified for the AGGREGATIONType is an explicit &quot;0&quot;, this constraint shall appear.&lt;/p&gt;
&lt;note&gt;See 9.5.3.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7a21'/>
</ownedComment>
<subsettedProperty xmi:id='If8093fm102ff7b3af0mm43ee'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10240564a77mm7c05' name='GeneralAggregationType' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000c8' body='&lt;p&gt;represents a GeneralizedType whose instances are AggregateValues with a specific structure (ARRAY, BAG, LIST or SET), but whose member-types are specializations of some specified GeneralizedType.  
That is, a GeneralAggregationType is an aggregation data type whose member-type is specified to be a GeneralizedType; 
while an (Instantiable) AggregationType is an aggregation data type whose member-type is specified to be an InstantiableType. &lt;/p&gt;
&lt;p&gt;Any instance of a GeneralAggregationType is required to be an AggregateValue that has the specified structure and has members that are instances of some InstantiableType that conforms to the specified member-type.  
In addition,the instance must satisfy any DomainConstraints associated with the GeneralAggregationType.&lt;/p&gt;
&lt;note&gt;See 9.5.3.5 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7c05'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m10023cc289dmm7f94'/>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7f61'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7b2e' name='member-type' type='I17779e3m10023cc289dmm7f94' association='I167e3a5m10240564a77mm7b3c' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000c9' body='&lt;p&gt;represents the relationship between a GeneralAggregationType and the conformance specification for the member-type.&lt;/p&gt;
&lt;note&gt;See 9.5.3.5 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7b2e'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10240564a77mm7be0' name='GeneralARRAYType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000ca' body='&lt;p&gt;represents a GeneralAggregationType whose structure is an ARRAY.  
The hi-index and lo-index values of a conforming ARRAYInstance are required to be equal to the values given for the GeneralARRAYType.&lt;/p&gt;
&lt;p&gt;When the GeneralARRAYType is the data type of an abstract attribute (see 1.10.3.2), the datatype of every conforming redeclaration is required to be an ARRAYType or a GeneralARRAYType whose hi-index and lo-index values are equal to the values given for the GeneralARRAYType.  
In addition, the .isOptional property of the redeclaration shall be as specified below.&lt;/p&gt;
&lt;note&gt;See 9.5.3.5 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7be0'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10240564a77mm7c05'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7bc4' name='isOptional' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Boolean'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000cb' body='&lt;p&gt;When isOptional is True, any conforming ARRAYInstance is permitted to have members whose value is indeterminate (&quot;?&quot;).  
When isOptional is False, no member of a conforming ARRAYInstance is permitted to have an unspecified value. &lt;/p&gt;
&lt;p&gt;If isOptional is True for an abstract attribute, the member type of any attribute that redeclares the abstract attribute may be declared to be OPTIONAL; 
if False,  the member type of an attribute that redeclares the abstract attribute shall not be declared to be OPTIONAL. &lt;/p&gt;
&lt;note&gt;See 9.5.3.5 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7bc4'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7a51' name='lo-index' type='I118958em102c66626a0mm7e02' association='I167e3a5m10240564a77mm7a5d' visibility='public' aggregation='composite' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000cc' body='&lt;p&gt;The lo-index value of a conforming ARRAY data type is required to be equal to the lo-index value, if any, for the GeneralARRAYType.&lt;/p&gt;
&lt;note&gt;See 9.5.3.5 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7a51'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7a39' name='hi-index' type='I118958em102c66626a0mm7e02' association='I167e3a5m10240564a77mm7a45' visibility='public' aggregation='composite' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000cd' body='&lt;p&gt;The hi-index value of a conforming ARRAY data type is required to be equal to the hi-index value, if any, for the GeneralARRAYType.&lt;/p&gt;
&lt;note&gt;See 9.5.3.5 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7a39'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10240564a77mm7ba6' name='GeneralBAGType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000ce' body='&lt;p&gt;represents a GeneralAggregationType whose structure is a BAG.&lt;/p&gt;
&lt;p&gt;When the GeneralBAGType is the data type of an abstract attribute (see 1.10.3.2), the datatype of every conforming redeclaration is required to be a BAGType or a GeneralBAGType 
that includes or refines any DomainConstraint associated with the GeneralBAGType.&lt;/p&gt;
&lt;note&gt;See 9.5.3.5 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7ba6'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10240564a77mm7c05'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10240564a77mm7b8e' name='GeneralLISTType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000cf' body='&lt;p&gt;represents a GeneralAggregationType whose structure is a LIST.&lt;/p&gt;
&lt;p&gt;When the GeneralLISTType is the data type of an abstract attribute (see 1.10.3.2), the datatype of every conforming redeclaration is required to be a LISTType or a GeneralLISTType 
that includes or refines any DomainConstraint associated with the GeneralLISTType.&lt;/p&gt;
&lt;note&gt;See 9.5.3.5 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7b8e'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10240564a77mm7c05'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10240564a77mm7b67' name='GeneralSETType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000d0' body='&lt;p&gt;represents a GeneralAggregationType whose structure is a SET.&lt;/p&gt;
&lt;p&gt;When the GeneralSETType is the data type of an abstract attribute (see 1.10.3.2), the datatype of every conforming redeclaration is required to be a SETType or a GeneralSETType 
that includes or refines any DomainConstraint associated with the GeneralSETType.&lt;/p&gt;
&lt;note&gt;See 9.5.3.5 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7b67'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10240564a77mm7c05'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10240564a77mm7af8' name='GenericType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000d1' body='&lt;p&gt;represents the EXPRESS generalized types GENERIC and GENERIC_ENTITY.&lt;/p&gt;
&lt;p&gt; Every data type is a specialization of the GenericType GENERIC, and every Instance is an Instance of
GENERIC. Every entity data type is a specialization of the GenericType GENERIC_ENTITY. Every EntityInstance is an
instance of GENERIC_ENTITY and every instance of GENERIC_ENTITY is an EntityInstance.&lt;/p&gt;

&lt;note&gt;See 9.5.3.2 and 9.5.3.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7af8'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m10023cc289dmm7f94'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m10283aab711mm7de8' name='NumericType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000d2' body='&lt;p&gt;a SimpleType representing the EXPRESS data types NUMBER, INTEGER and all REAL data types.  NUMBER and INTEGER are instances of NUMBERType.&lt;/p&gt;
&lt;note&gt;See 8.1.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m10283aab711mm7de8'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7f1b'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m10283aab711mm7dd0' name='LogicType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000d3' body='&lt;p&gt;a SimpleType representing the EXPRESS data types BOOLEAN and LOGICAL, which are the only instances of LOGICALType.&lt;/p&gt;
&lt;note&gt;See 8.1.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m10283aab711mm7dd0'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7f1b'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m1024a81540emm7d31' name='PartialEntityType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000d4' body='&lt;p&gt;a-DataType representing a collection of SingleEntityTypes.  A PartialEntityType is the data type of a PartialEntityValue.&lt;/p&gt;
&lt;note&gt;See 9.2.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m1024a81540emm7d31'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m1024a81540emm7d9f'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1c21ed3m103f6d4f890mm436e' name='components' type='I1c21ed3m103f6d4f890mm43c6' association='I1c21ed3m103f6d4f890mm4368' visibility='public' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000d5' body='&lt;p&gt;represents the relationship between the PartialEntityValue and the SingleEntityValues that make it up. &lt;/p&gt;
&lt;note&gt;See 9.2.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1c21ed3m103f6d4f890mm436e'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I118958em102c66626a0mm7e02' name='ArrayBound' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000d6' body='&lt;p&gt;represents a bound on the index domain of an ARRAY data type .&lt;/p&gt;
&lt;note&gt;See 8.2.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I118958em102c66626a0mm7e02'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em102c66626a0mm7df5' name='bound' visibility='public' lower='0'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Integer'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000d7' body='&lt;p&gt;the integer value of the bound, when it can be determined &quot;by inspection&quot; of the bound expression.&lt;/p&gt;
&lt;note&gt;See 8.2.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I118958em102c66626a0mm7df5'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em102c66626a0mm7dce' name='bound-expression' type='I167e3a5m10018e5d720mm7ad9' association='I118958em102c66626a0mm7dda' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000d8' body='&lt;p&gt;the Expression that defines the ArrayBound.&lt;/p&gt;
&lt;note&gt;See 8.2.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I118958em102c66626a0mm7dce'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I14a75bbm102da9bec90mm7e19' name='ParameterType' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000d9' body='&lt;p&gt;An abstract classification of Types that includes InstantiableTypes, ActualTypes and GeneralizedTypes.  
That is, a ParameterType is any Type that is admissible as the declared type of a Parameter or an (abstract) ExplicitAttribute.&lt;/p&gt;
&lt;note&gt;See ISO 10303-11:2004 clause 8.6.2&lt;/note&gt;
'>
<annotatedElement xmi:idref='I14a75bbm102da9bec90mm7e19'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='If8093fm102ff7b3af0mm43ee' name='constraints' type='I17779e3m1003cfd8422mm7e91' association='If8093fm102ff7b3af0mm43eb' visibility='public' isAbstract='true' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000da' body='&lt;p&gt;represents the association of DomainConstraints that restrict the value domain of the AttributeType&lt;/p&gt;
&lt;note&gt;See 8.1.6, 8.1.7, 8.2, and 9.1  of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='If8093fm102ff7b3af0mm43ee'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7d43' name='role' type='I167e3a5m10018e5d720mm7d99' association='I167e3a5m10018e5d720mm7d46' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000db' body='&lt;p&gt;represents the relationship between the ParameterType and the roles (attributes of entities) that its admissible values may play.&lt;/p&gt;
&lt;note&gt;See 9.2.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7d43'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I118958em102f0aec0a0mm7f96' name='TypeElement' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000dc' body='&lt;p&gt;A NamedElement whose namespace is a data type (NamedType).&lt;/p&gt;
&lt;note&gt;See 8.2.2, 8.2.3, and 8.2.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I118958em102f0aec0a0mm7f96'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I175beefm1040b3ac253mm40ee'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em102f0aec0a0mm7f5f' name='namespace' type='I167e3a5m10018e5d720mm7fd9' association='I118958em102f0aec0a0mm7f6f' visibility='public' isAbstract='true'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000dd' body='&lt;p&gt;represents the relationship between the TypeElement and the NamedType in which it is defined.
This is a refinement of the NamedElement.namespace and an abstraction of the specific relationships of TypeElements to their owner NamedTypes.&lt;/p&gt;'>
<annotatedElement xmi:idref='I118958em102f0aec0a0mm7f5f'/>
</ownedComment>
<subsettedProperty xmi:id='I175beefm1040b3ac253mm40d4'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7ea0' name='EnumerationType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000de' body='&lt;p&gt;a DefinedType representing an EXPRESS defined data type whose underlying_type is a ENUMERATION data type — a data type that has as its domain a set of named values.&lt;/p&gt;
&lt;note&gt;See 8.4.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7ea0'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7f7d'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1160e64m10462d0e89emm3697' name='isExtensible' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Boolean'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000df' body='&lt;p&gt;True if the EnumerationType can have additional values in a schema that interfaces it; False if not.&lt;/p&gt;
&lt;p&gt;In the context schema for a population, the final set of possible values is known.  But the set given in the defining schema may be incomplete and be extended by other EnumerationTypes for which this is the base.&lt;/p&gt;
&lt;note&gt;See 8.4.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1160e64m10462d0e89emm3697'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I10ad419m106c6ab6f8emm2974' name='declared-items' type='I167e3a5m10018e5d720mm7e66' association='I10ad419m106c6ab6f8emm296e' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000e0' body='&lt;p&gt;represents the relationship of an EnumerationType to the EnumerationItems that are declared in its type_declaration.
For extended enumeration types, this is distinct from the .values relationship, which captures all of the valid values of the type.&lt;/p&gt;
&lt;note&gt;See 8.4.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I10ad419m106c6ab6f8emm2974'/>
</ownedComment>
<subsettedProperty xmi:id='I118958em102f0aec0a0mm7f6c'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7907' name='values' type='I167e3a5m10018e5d720mm7e66' association='I17779e3m1003cfd8422mm790a' visibility='public' isDerived='true' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000e1' body='&lt;p&gt;represents the relationship between an EnumerationType and the EnumerationItems that are valid values of the type.  
An EnumerationItem is a value of every EnumerationType that is related by extension to the type that declares it.  
This relationship can be derived recursively as the union of the values of the .declared-items attribute for the EnumerationType, 
for each EnumerationType in the sequence of .base relationships from the EnumerationType, 
and from all the extensions of the EnumerationType.&lt;/p&gt;
&lt;note&gt;See clause 8.4.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7907'/>
</ownedComment>
<subsettedProperty xmi:id='I17779e3m1003cfd8422mm7844'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m10023cc289dmm7f51' name='extension' type='I167e3a5m10018e5d720mm7ea0' association='I17779e3m10023cc289dmm7f5f' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000e2' body='&lt;p&gt;represents the relationship of an EXTENSIBLE EnumerationType to the EnumerationTypes that are BASED ON it. 
Each extension type may add additional values to the domain, and these are considered to be values of the base type for all uses within the schema containing the extension.&lt;/p&gt;
&lt;note&gt;See 8.4.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m10023cc289dmm7f51'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m10023cc289dmm7f5c' name='base' type='I167e3a5m10018e5d720mm7ea0' association='I17779e3m10023cc289dmm7f5f' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000e3' body='&lt;p&gt;represents the relationship of an extended EnumerationType to the EnumerationType it is BASED ON.  
The domain of the extended type includes all of the values of the base type and all the values defined in the extension.&lt;/p&gt;
&lt;note&gt;See 8.4.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m10023cc289dmm7f5c'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1c21ed3m103f6d4f890mm43c6' name='SingleEntityType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000e4' body='&lt;p&gt;the group of Attributes of a given EntityType that appear directly in the entity_declaration for that EntityType, i.e. excluding &quot;inherited&quot; attributes.  
A SingleEntityType corresponds to, and has the same id as, the EntityType whose declaration defines it.&lt;/p&gt;
&lt;note&gt;A SingleEntityType is not a DataType; it cannot be the type of an Expression result or of any other EXPRESS concept.  
It is only the &quot;type&quot; of SingleEntityValues, and they are not Instances.&lt;/note&gt;
&lt;note&gt;See 3.3.9 of ISO 10303-11:2004 (should be corrected by TC#1).&lt;/note&gt;'>
<annotatedElement xmi:idref='I1c21ed3m103f6d4f890mm43c6'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1c21ed3m103f6d4f890mm43af' name='id' type='I118958em102d5a77152mm7ca6' visibility='public' isDerived='true'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000e5' body='&lt;p&gt;Represents the EXPRESS Identifier for the SingleEntityType, which is the same as the Identifier for the corresponding EntityType&lt;/p&gt;'>
<annotatedElement xmi:idref='I1c21ed3m103f6d4f890mm43af'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1160e64m10462d0e89emm3487' name='equivalent' type='I167e3a5m1024a81540emm7d31' association='I1160e64m10462d0e89emm3484' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000e6' body='&lt;p&gt;represents the relationship between the SingleEntityType and the &quot;equivalent&quot; PartialEntityType, namely, the PartialEntityType that consists of exactly that one SingleEntityType.  
For those PartialEntityTypes that are equivalent to SingleEntityTypes, the PartialEntityType.includes relationship is the inverse of this relationship.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1160e64m10462d0e89emm3487'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em1027e581026mm7cee' name='declared-in' type='I167e3a5m10018e5d720mm7f96' association='I118958em1027e581026mm7cfa' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000e7' body='&lt;p&gt;represents the derivation of the SingleEntityType from the entity_declaration for the EntityType.&lt;/p&gt;'>
<annotatedElement xmi:idref='I118958em1027e581026mm7cee'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm772b' name='declares' type='I167e3a5m10018e5d720mm7d99' association='I17779e3m1003cfd8422mm772e' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000e8' body='&lt;p&gt;represents the relationship between a SingleEntityType and the Attributes declared in the entity declaration for the corresponding EntityType..&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm772b'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1eaf25dm106bd879899mm2df4' name='Relationship' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000e9' body='&lt;p&gt;a &quot;distributive relationship&quot; between entity data types.
Every InvertibleAttribute creates a Relationship between two EntityTypes and creates two Roles -- one for each participating EntityType.
All relationships are directed.  
The InvertibleAttribute is an explicit attribute of the EntityType that plays the DomainRole; 
the range-type of the InvertibleAttribute is the EntityType that plays the RangeRole
The range-type may have an inverse attribute denoting the DomainRole; or the DomainRole may be referred to by the UsedIn function.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2df4'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1eaf25dm106bd879899mm2d6c' name='range' type='I13ceab3m106c229c32emm2c1f' association='I1eaf25dm106bd879899mm2d69' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000ea' body='&lt;p&gt;represents the relationship between the Relationship and its &quot;range&quot; role.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2d6c'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1eaf25dm106bd879899mm2d95' name='domain' type='I13ceab3m106c229c32emm2c07' association='I1eaf25dm106bd879899mm2d8f' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000eb' body='&lt;p&gt;represents the relationship between the Relationship and the Role that is its DomainRole.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2d95'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='Idf804em10bd9891f14mm166d' name='based-on' type='I1b9bbe8m10bd611c411mm1618' association='Idf804em10bd9891f14mm1667' visibility='public' isDerived='true'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000ec' body='&lt;p&gt;represents the relationship between a Relationship and the InvertibleAttribute on which it is based, i.e. the Attribute that creates the Relationship.&lt;/p&gt;'>
<annotatedElement xmi:idref='Idf804em10bd9891f14mm166d'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1eaf25dm106bd879899mm2cd9' name='Role' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000ed' body='&lt;p&gt;a &quot;slot&quot; in a relationship, denoting the behavior of one of the Instances involved in the relationship.
Since all relationships in EXPRESS are directed, the two slots are nominally designated domain and range.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2cd9'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m1024a81540emm7f13' name='lower-bound' type='I167e3a5m10240564a77mm7d09' association='I167e3a5m1024a81540emm7f21' visibility='public' isDerived='true' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000ee' body='&lt;p&gt;represents a lower-bound on the number of Relationship instances in which a given EntityInstance can play this Role.  
An explicit zero (&quot;0&quot;) value may be considered to represent no lower-bound constraint; and the lower-bound relationship need not appear. 
 (A lower-bound expression that may evaluate to zero shall always be represented by a lower-bound relationship.)  
The lower-bound on the Domain role is specified by the Explicit Attribute that models the RangeRole.
The lower-bound on the Range role is specified by the Inverse Attribute that models the Domain Role, if any, 
or possibly by a DomainRule on the &quot;range&quot; EntityType involving UsedIn(SELF, &lt;RangeRole&gt;).&lt;/p&gt;
&lt;note&gt;Note:  Because the ExplicitAttribute that creates the Relationship may have an aggregation data type for which isUnique does not hold, 
a given pair of participating entity instances may occur more than once as an instance of the Relationship.  
The Size constraint is on the count of pairs, not the count of distinct pairs.&lt;/note&gt;
&lt;note&gt;See 9.2.1.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m1024a81540emm7f13'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m1024a81540emm7ef5' name='upper-bound' type='I167e3a5m10240564a77mm7d09' association='I167e3a5m1024a81540emm7f03' visibility='public' isDerived='true' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000ef' body='&lt;p&gt;represents an upper-bound on the number of Relationship instances in which a given EntityInstance can play the Role.  
An explicit indeterminate value (&quot;?&quot;) is considered to represent no upper-bound constraint, and shall not be represented by an upper-bound relationship.  
(An upper-bound expression that may evaluate to &quot;?&quot; shall be represented by an upper-bound relationship.)&lt;/p&gt;
The upper-bound on the Domain role is specified by the Explicit Attribute that models the RangeRole.
The upper-bound on the Range role is specified by the Inverse Attribute that models the Domain Role, if any, 
or possibly by a DomainRule on the &quot;range&quot; EntityType involving UsedIn(SELF, &lt;RangeRole&gt;).  
&lt;note&gt;Note:  Because the ExplicitAttribute that creates the Relationship may have an aggregation data type for which isUnique does not hold, 
a given pair of participating entity instances may occur more than once as an instance of the Relationship.  
The Size constraint is on the count of pairs, not the count of distinct pairs.&lt;/note&gt;
&lt;note&gt;See 9.2.1.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m1024a81540emm7ef5'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I13ceab3m106c229c32emm2c1f' name='RangeRole' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000f0' body='&lt;p&gt;a role representing the behavior of the entity instances that is designated the &quot;range&quot; of the relationship&lt;/p&gt;'>
<annotatedElement xmi:idref='I13ceab3m106c229c32emm2c1f'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1eaf25dm106bd879899mm2cd9'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I16a90c9m10843ceeb02mm1f9a' name='id' type='I118958em102d5a77152mm7ca6' visibility='public' isDerived='true'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000f1' body='&lt;p&gt;Represents the &quot;complete&quot; identifier for the Role.  
The identifier for a RangeRole is derived from the identifier for the ExplicitAttribute that creates the relationship, including the Identifier value and the associated EntityType identifier.&lt;/p&gt;'>
<annotatedElement xmi:idref='I16a90c9m10843ceeb02mm1f9a'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I13ceab3m106c229c32emm2bef' name='range' type='I167e3a5m10018e5d720mm7f96' association='I13ceab3m106c229c32emm2be9' visibility='public' isDerived='true'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000f2' body='&lt;p&gt;represents the (single) entity data type common to all instances that play the Range Role.  
&lt;/p&gt;'>
<annotatedElement xmi:idref='I13ceab3m106c229c32emm2bef'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1eaf25dm106bd879899mm2d6f' name='in-relationship' type='I1eaf25dm106bd879899mm2df4' association='I1eaf25dm106bd879899mm2d69' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000f3' body='&lt;p&gt;represents the relationship between a Range Role and the (unique) Relationship in which it is defined&lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2d6f'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1eaf25dm106bd879899mm2d24' name='domain-view' type='I1b9bbe8m10bd611c411mm1618' association='I1eaf25dm106bd879899mm2d1e' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000f4' body='&lt;p&gt;represents the relationship between a RangeRole and the InvertibleAttribute of the domain/referencing entity that models it.  
&lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2d24'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I13ceab3m106c229c32emm2c07' name='DomainRole' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000f5' body='&lt;p&gt;a role representing the behavior of the entity instances that is designated the &quot;domain&quot; of the relationship&lt;/p&gt;'>
<annotatedElement xmi:idref='I13ceab3m106c229c32emm2c07'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1eaf25dm106bd879899mm2cd9'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I16a90c9m10843ceeb02mm1fba' name='id' type='I118958em102d5a77152mm7ca6' visibility='public' isDerived='true' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000f6' body='&lt;p&gt;Represents the &quot;complete&quot; identifier for the Role.
The identifier for the DomainRole is derived from the identifier for the InverseAttribute, when present, including the Identifier value and the associated EntityType identifier.  
When there is no InverseAttribute, .id has no proper value, but the DomainRole may be identified by the pseudo-identifier: UsedIn.&amp;lt;RangeRole.id&amp;gt;, 
where &amp;lt;RangeRole.id&amp;gt; is the identifier for the RangeRole in the Relationship.&lt;/p&gt;'>
<annotatedElement xmi:idref='I16a90c9m10843ceeb02mm1fba'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I13ceab3m106c229c32emm2bbe' name='domain' type='I167e3a5m10018e5d720mm7f96' association='I13ceab3m106c229c32emm2bb8' visibility='public' isDerived='true'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000f7' body='&lt;p&gt;represents the (single) entity data type common to all instances that play the Domain Role.  &lt;/p&gt;'>
<annotatedElement xmi:idref='I13ceab3m106c229c32emm2bbe'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1eaf25dm106bd879899mm2c3f' name='range-view' type='I167e3a5m10018e5d720mm7b87' association='I1eaf25dm106bd879899mm2c39' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000f8' body='&lt;p&gt;represents the relationship between a domain-role and the inverse attributes of the range entities that model it.
Different subtypes of the primary &quot;range&quot; entity data type can define different views of (and constraints on) the domain role.  
The &quot;range&quot; entity has an inverse attribute that defines the &quot;domain&quot; role (the role of the other entity).&lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2c3f'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1eaf25dm106bd879899mm2d92' name='in-relationship' type='I1eaf25dm106bd879899mm2df4' association='I1eaf25dm106bd879899mm2d8f' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000f9' body='&lt;p&gt;represents the relationship between a Domain Role and the (unique) Relationship in which it is defined&lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2d92'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm790f' name='Schema' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000fa' body='&lt;p&gt;a Scope that represents an EXPRESS SCHEMA, i.e. a collection of SchemaElement declarations and interface declarations.&lt;/p&gt;
&lt;note&gt;Note: &quot;Schema&quot; is a reserved word in EXPRESS; if this metamodel is converted to EXPRESS, this class must be renamed.&lt;/note&gt;
&lt;note&gt;See 9.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm790f'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I118958em102d5a77152mm7d4b'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7902' name='name' type='_14_0_852026a_1203973938843_871362_5468' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000fb' body='&lt;p&gt;the name of the EXPRESS schema.&lt;/p&gt;
&lt;note&gt;See clause 9.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7902'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em102c66626a0mm7d4d' name='version' visibility='public' lower='0'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#String'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000fc' body='&lt;p&gt;the version identifier for the EXPRESS schema, if any.&lt;/p&gt;
&lt;note&gt;See 9.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I118958em102c66626a0mm7d4d'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1239832310515_118536_791' name='interfaces' type='_16_0_1_852026a_1239831682515_391695_638' association='_16_0_1_852026a_1239832310515_292586_789' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000fd' body='the Interfaces that link the Schema to the Schemas it interfaces and to the InterfacedElements they interface into the Schema.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1239832310515_118536_791'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm789e' name='schema-elements' type='I17779e3m1025f5930bdmm7d31' association='I167e3a5m10018e5d720mm78aa' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000fe' body='&lt;p&gt;represents the relationship between the Schema and the SchemaElements that are defined in it, as distinct from those that are interfaced into it.
refines the (abstract) Scope.named-elements relationship.&lt;/p&gt;
&lt;note&gt;See 9.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm789e'/>
</ownedComment>
<subsettedProperty xmi:id='I175beefm1040b3ac253mm40d7'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I10ad419m106c6ab6f8emm2ab0' name='documentation' type='I10ad419m106c6ab6f8emm2c05' association='I10ad419m106c6ab6f8emm2aaa' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0000ff' body='&lt;p&gt;represents the relationship between a Schema and the Remarks, if any, that constitute its in-schema documentation.  
If the Scope (.appears-in) of the Remark is a different Schema, the Remark only applies to the Schema as-interfaced.&lt;/p&gt;
&lt;note&gt;See 7.1.6.3 of ISO 10303-11:2004.  Technically the Schema is a named element of the EXPRESS language, but it has no defined Scope.&lt;/note&gt;'>
<annotatedElement xmi:idref='I10ad419m106c6ab6f8emm2ab0'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1241201521671_960845_1284' name='interfaced-elements' type='I88cf9em1096f16eabcmm1203' association='_16_0_1_852026a_1241201521656_397374_1281' visibility='public' isDerived='true' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000100' body='&lt;p&gt;represents the relationship between a Schema and the InterfacedElements it contains, that is, the SchemaElements that it imports/interfaces from other Schemas via USE and REFERENCE statements. 
&lt;/p&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1241201521671_960845_1284'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I118958em102d5a77152mm7d4b' name='Scope' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000101' body='&lt;p&gt;any EXPRESS object that defines a namespace for the interpretation of identifiers.&lt;/p&gt;
&lt;note&gt;See clause 10 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I118958em102d5a77152mm7d4b'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1251998251890_365091_1475' name='type-parameters' type='I808680m1128bdf3bcfmc5f' association='_16_0_1_852026a_1251998251875_326321_1472' visibility='public' isDerived='true' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000102' body='&lt;p&gt;The ParametricElements that are defined within the Scope.&lt;/p&gt;

&lt;p&gt;Only an Algorithm or an EntityType may have type-parameters.&lt;/p&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1251998251890_365091_1475'/>
</ownedComment>
<subsettedProperty xmi:id='I175beefm1040b3ac253mm40d7'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I175beefm1040b3ac253mm40d7' name='named-elements' type='I175beefm1040b3ac253mm40ee' association='I175beefm1040b3ac253mm40d1' visibility='public' isAbstract='true' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000103' body='&lt;p&gt;represents the relationship between a Scope and the NamedElements that are defined in it.&lt;/p&gt;
&lt;note&gt;This relationship is very much conceptual.  Not every kind of NamedElement can be defined in every kind of Scope.&lt;/note&gt;
&lt;note&gt;See clause 10 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I175beefm1040b3ac253mm40d7'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I10ad419m106c6ab6f8emm2b09' name='includes-remarks' type='I10ad419m106c6ab6f8emm2c05' association='I10ad419m106c6ab6f8emm2b03' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000104' body='&lt;p&gt;represents the relationship between a Schema and the Remarks that appear in it.&lt;/p&gt;
&lt;note&gt;See 7.1.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I10ad419m106c6ab6f8emm2b09'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I118958em102d5a77152mm7d2d' name='LocalScope' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000105' body='&lt;p&gt;A Scope that is neither a Schema nor a NamedType.  
Terms defined in a LocalScope are not visible at the Schema level.&lt;/p&gt;
&lt;note&gt;See Clause 10 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I118958em102d5a77152mm7d2d'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I118958em102d5a77152mm7d4b'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I9ced84m109b2851e95mm1213' name='local-elements' type='I9ced84m109b2851e95mm1237' association='I9ced84m109b2851e95mm120d' visibility='public' isAbstract='true' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000106' body='&lt;p&gt;the LocalElements that are defined in the LocalScope. (A LocalScope that is an AlgorithmScope may also be the scope of CommonElements.)&lt;/p&gt;
&lt;note&gt;See Clause 10.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I9ced84m109b2851e95mm1213'/>
</ownedComment>
<subsettedProperty xmi:id='I175beefm1040b3ac253mm40d7'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m102ef760d6emm7fc2' name='AlgorithmScope' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000107' body='&lt;p&gt;A LocalScope that can be the namespace of CommonElements.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m102ef760d6emm7fc2'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I118958em102d5a77152mm7d2d'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em102d5a77152mm7cef' name='common-elements' type='I118958em102d5a77152mm7d06' association='I118958em102d5a77152mm7cf2' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000108' body='&lt;p&gt;the CommonElements that are defined in the AlgorithmScope&lt;/p&gt;
&lt;note&gt;See clause 10 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I118958em102d5a77152mm7cef'/>
</ownedComment>
<subsettedProperty xmi:id='I175beefm1040b3ac253mm40d7'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1001f33ccb7mm7ea8' name='variables' type='I167e3a5m10018e5d720mm7360' association='I17779e3m1001f33ccb7mm7eab' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000109' body='&lt;p&gt;represents the relationship between the AlgorithmScope and the set of LocalVariables that are defined within it.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1001f33ccb7mm7ea8'/>
</ownedComment>
<subsettedProperty xmi:id='I9ced84m109b2851e95mm1213'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1025f5930bdmm7d31' name='SchemaElement' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00010a' body='&lt;p&gt;a NamedElement whose scope can be a Schema.   
This includes all CommonElements and GlobalRule.  
The scope of CommonElements can be a Schema, but is not required to be a Schema.&lt;/p&gt;
'>
<annotatedElement xmi:idref='I17779e3m1025f5930bdmm7d31'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I175beefm1040b3ac253mm40ee'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm78a7' name='defined-in' type='I167e3a5m10018e5d720mm790f' association='I167e3a5m10018e5d720mm78aa' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00010b' body='&lt;p&gt;represents the relationship between the SchemaElement and the Schema in which it is (originally) defined.
refines the (abstract) NamedElement.namespace relationship&lt;/p&gt;
&lt;note&gt;See 9.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm78a7'/>
</ownedComment>
<subsettedProperty xmi:id='I175beefm1040b3ac253mm40d4'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I88cf9em1096f16eabcmm112d' name='referenced-as' type='I88cf9em1096f16eabcmm1203' association='I88cf9em1096f16eabcmm112a' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00010c' body='&lt;p&gt;represents a use of the SchemaElement in some Schema other than the one in which it is defined.  
Only a SchemaElement whose scope is a Schema can be referenced as an InterfacedElement.&lt;/p&gt;'>
<annotatedElement xmi:idref='I88cf9em1096f16eabcmm112d'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I175beefm1040b3ac253mm40ee' name='NamedElement' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00010d' body='&lt;p&gt;An abstract class representing a principal modeling concept of the EXPRESS language: an object that is defined in a model, has a notion of &quot;lifetime&quot;, and has an identifier that refers to it in Schemas or in some nested Scope in a Schema.&lt;/p&gt;  
&lt;note&gt;Note:  Every NamedElement has an .id attribute whose value is a ScopedId.  
Some NamedElements are not required to have identifiers, and some NamedElements can have additional identifiers.  
The scope of each such identifier is the Scope in which the NamedElement is defined.&lt;/note&gt;'>
<annotatedElement xmi:idref='I175beefm1040b3ac253mm40ee'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='Idf804em10aceee8a59mm1420' name='id' type='I118958em102d5a77152mm7ca6' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00010e' body='&lt;p&gt;Represents the identifier that uniquely identifies the NamedElement within the Scope that is the .namespace.  
Not all NamedElements are required to have identifiers.&lt;/p&gt;
&lt;note&gt;See Clause 10 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='Idf804em10aceee8a59mm1420'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I175beefm1040b3ac253mm40d4' name='namespace' type='I118958em102d5a77152mm7d4b' association='I175beefm1040b3ac253mm40d1' visibility='public' isAbstract='true'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00010f' body='&lt;p&gt;represents the relationship between a NamedElement and the &quot;scope&quot; in which it is defined, 
i.e. the set of model elements for which that name refers to that NamedElement&lt;/p&gt;
&lt;note&gt;See clause 10 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I175beefm1040b3ac253mm40d4'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I10ad419m106c6ab6f8emm2ae6' name='documentation' type='I10ad419m106c6ab6f8emm2c05' association='I10ad419m106c6ab6f8emm2ae0' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000110' body='&lt;p&gt;represents the relationship between a NamedElement and the Remarks, if any, that constitute its in-schema documentation.  
If the Scope (.appears-in) of the Remark is, or is contained in, a different Schema from the declaration of the NamedElement, the Remark only applies to the NamedElement as-interfaced.&lt;/p&gt;
&lt;note&gt;See 7.1.6.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I10ad419m106c6ab6f8emm2ae6'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I10ad419m106c6ab6f8emm2c05' name='Remark' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000111' body='&lt;p&gt;A comment or or other documentation element that provides additional information about a model element. &lt;/p&gt;'>
<annotatedElement xmi:idref='I10ad419m106c6ab6f8emm2c05'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I10ad419m106c6ab6f8emm2b48' name='isTagged' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Boolean'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000112' body='&lt;p&gt;Is TRUE if the Remark is &quot;tagged&quot; to refer to one or more NamedElements, and FALSE if the remark is not explicitly tagged.&lt;/p&gt;
&lt;note&gt;See 7.1.6.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I10ad419m106c6ab6f8emm2b48'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I10ad419m106c6ab6f8emm2b33' name='isTail' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Boolean'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000113' body='&lt;p&gt;is True if the Remark is lexically a Tail Remark; and False if the Remark is lexically an Embedded remark&lt;/p&gt;
&lt;note&gt;See 7.1.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I10ad419m106c6ab6f8emm2b33'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I10ad419m106c6ab6f8emm2b1e' name='text' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#String'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000114' body='&lt;p&gt;Represents the actual text of the remark.
Note: Part 11 requires that the character set of the remark be the EXPRESS character set, but in practice a larger subset of ISO 10646-1 Basic Multilingual Plane is often used.&lt;/p&gt;
&lt;note&gt;See 7.1.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I10ad419m106c6ab6f8emm2b1e'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I10ad419m106c6ab6f8emm2aad' name='describes-schema' type='I167e3a5m10018e5d720mm790f' association='I10ad419m106c6ab6f8emm2aaa' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000115' body='&lt;p&gt;represents the relationship between a Remark that describes a Schema and the Schema it describes.  
The Remark may be Tagged to refer to the Schema, or it may be ascribed to the Schema if it lacks any other association.  
In particular, a Remark may appear in one Schema and refer to an interfaced Schema or to elements interfaced from it.&lt;/p&gt;
&lt;note&gt;See 7.1.6.3 of ISO 10303-11:2004.  Technically the Schema is a named element of the EXPRESS language, but it has no defined Scope.&lt;/note&gt;'>
<annotatedElement xmi:idref='I10ad419m106c6ab6f8emm2aad'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I10ad419m106c6ab6f8emm2b06' name='appears-in' type='I118958em102d5a77152mm7d4b' association='I10ad419m106c6ab6f8emm2b03' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000116' body='&lt;p&gt;the Schema that lexically contains the Remark. &lt;/p&gt; 
&lt;note&gt;This may be the only cue as to the subject of the Remark.  The first edition of EXPRESS did not specify a means for binding Remarks to model elements.&lt;/note&gt;
'>
<annotatedElement xmi:idref='I10ad419m106c6ab6f8emm2b06'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I10ad419m106c6ab6f8emm2ae3' name='describes-element' type='I175beefm1040b3ac253mm40ee' association='I10ad419m106c6ab6f8emm2ae0' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000117' body='&lt;p&gt;rthe NamedElement(s) described by the Remark.&lt;/p&gt;
&lt;note&gt;See 7.1.6.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I10ad419m106c6ab6f8emm2ae3'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I88cf9em1096f16eabcmm1203' name='InterfacedElement' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000118' body='&lt;p&gt;represents the EXPRESS &quot;interface&quot; relationship (USE, REFERENCE) between an interfacing Schema and one SchemaElement that is defined in some other Schema.  
It can be viewed as a &quot;role&quot; of the .refers-to SchemaElement in the interfacing schema.  &lt;/p&gt;
&lt;p&gt;Each InterfacedElement is contained in exactly one Interface, which models one or more interface statements of the same kind for the interfaced schema.  Because it is not meaningful for an interface statement to interface the same SchemaElement more than once, the combination (:included-in, :refers-to) uniquely identifies an InterfacedElement relationship.&lt;/p&gt;
&lt;note&gt;See clause 11 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I88cf9em1096f16eabcmm1203'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1241200694250_660193_1275' name='position' visibility='public' lower='0'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Integer'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000119' body='&lt;p&gt;represents the syntactic position of the InterfacedElement in the list of explicit elements in the interface statement that is modeled by the :included-in Interface.  This attribute shall not be present if the Interface has kind=implicit, or the interface statement has no explicit list.&lt;/p&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1241200694250_660193_1275'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1241200604625_587006_1271' name='kind' type='_16_0_1_852026a_1254172436156_747469_652' visibility='public' isDerived='true'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00011a' body='The way in which the SchemaElement is interfaced -- USE, REFERENCE, implicit.  The value is derived from the kind of the Interface that includes the InterfacedElement.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1241200604625_587006_1271'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I88cf9em1096f16eabcmm11eb' name='interfacedId' type='I118958em102d5a77152mm7ca6' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00011b' body='&lt;p&gt;the new Identifier for the .refers-to SchemaElement in the interfacing schema.&lt;/p&gt;
&lt;note&gt;See clause 11 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I88cf9em1096f16eabcmm11eb'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1241200385406_369421_1263' name='included-in' type='_16_0_1_852026a_1239831682515_391695_638' association='_16_0_1_852026a_1241200385406_888662_1261' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00011c' body='&lt;p&gt;the Interface that includes the InterfacedElement.&lt;/p&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1241200385406_369421_1263'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1241201521656_30795_1283' name='interfacing-schema' type='I167e3a5m10018e5d720mm790f' association='_16_0_1_852026a_1241201521656_397374_1281' visibility='public' isDerived='true'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00011d' body='represents the relationship between the InterfacedElement and the Schema in which it appears. If the InterfacedElement renames the .refers-to SchemaElement, the interfacing-schema is the namespace for the . interfacedId.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1241201521656_30795_1283'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I88cf9em1096f16eabcmm1130' name='refers-to' type='I17779e3m1025f5930bdmm7d31' association='I88cf9em1096f16eabcmm112a' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00011e' body='&lt;p&gt;represents the SchemaElement being imported (interfaced) into the interfacing schema as the InterfacedElement.&lt;/p&gt;'>
<annotatedElement xmi:idref='I88cf9em1096f16eabcmm1130'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10240564a77mm7c95' name='InstantiableType' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00011f' body='&lt;p&gt;an abstract classifier, encompassing all the data type notions that characterize objects and properties in EXPRESS.  InstantiableType is a proper subtype of DataType (which includes classifiers that represent conformance rules for InstantiableTypes).&lt;/p&gt;
&lt;note&gt;See 8.6.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7c95'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1fe40d5m11266e8346cmbb4'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I16a90c9m10843ceeb02mm1f06' name='fundamental-type' type='I167e3a5m10240564a77mm7c95' association='I16a90c9m10843ceeb02mm1f03' visibility='public' isDerived='true'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000120' body='&lt;p&gt;represents the relationship between the DefinedType and the data type used to represent its values.  
The fundamental-type of a DefinedType is the fundamental-type of its underlying-type; the fundamental-type of any other InstantiableType is the type itself. &lt;/p&gt;
&lt;note&gt;See 13.3.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I16a90c9m10843ceeb02mm1f06'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7ad9' name='Expression' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000121' body='&lt;p&gt;In general, an Expression is the representation of an Instance by a set of computational operations that will produce that Instance when performed in the context in which the Expression occurs.  
An Expression is always evaluated in a context which determines the assignment of Instances to model elements (e.g., Variables, Attributes, etc.) that appear in the Expression.  
The Instance produced by the same Expression may vary from context to context.  
The Instance produced is said to be the value, or the evaluation, of the Expression. &lt;/p&gt;
&lt;note&gt;The equivalent-expression that formulates the SubtypeConstraint is wholly owned by the SubtypeConstraint.  It is not treated as reusable.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7ad9'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11233374625m75' name='text' type='_14_0_852026a_1203973376187_525723_5444' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000122' body='&lt;p&gt;represents the actual EXPRESS language text denoting the Expression. 
The text is required if the Expressions Package is not implemented.  
It is optional in most cases when the Expressions Package is implemented.  
Certain forms of Expression (in the Expressions Package) specialize the text attribute.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11233374625m75'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm72c7' name='data-type' type='I167e3a5m1024a81540emm7d9f' association='I167e3a5m10018e5d720mm72d5' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000123' body='&lt;p&gt;represents the DataType of the evaluation of the Expression.  
While the result of an Expression always has a DataType, it is not always possible to determine at model-analysis time what that data type is.  
And in many cases, even when it is known, it is not necessary to specify it.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm72c7'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7857' name='evaluation' type='I17779e3m1003cfd8422mm7b5c' association='I17779e3m1003cfd8422mm7865' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000124' body='&lt;p&gt;represents the Instance (value) that results from evaluating the Expression.
Since the same Expression can be evaluated in more than one &quot;situation&quot;, i.e. different values for the operands, the result in each situation may be a different Instance.  
The evaluation is included in a model, however, only when it is &quot;constant&quot; and can be computed at &quot;compile time&quot;.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7857'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1233bdcm108256b20abmm26dc' name='interpretation-context' type='I118958em102d5a77152mm7d4b' association='I1233bdcm108256b20abmm26d9' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000125' body='&lt;p&gt;An Expression is always evaluated in a context which determines the assignment of specific instances of model elements to symbols (e.g. Variables, Attributes, etc.).  
When the Expression is represented by text only, this relationship is usually required, but in many cases it may be implicit.  
When the Expression is represented by the detailed model elements in the Expressions Package, the interpretation of the Text has been done, and this association is purely documentary and not required.  
Certain permissible EXPRESS constructs, however, only permit interpretation of certain keyword symbols to Operations in the presence of actual operand Instances.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1233bdcm108256b20abmm26dc'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1003cfd8422mm7b5c' name='Instance' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000126' body='&lt;p&gt;an object that is in the domain of a DataType – any real or conceptual object, information unit or data element.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7b5c'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7839' name='of-type' type='I167e3a5m1024a81540emm7d9f' association='I17779e3m1003cfd8422mm7847' visibility='public' isAbstract='true' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000127' body='&lt;p&gt;Represents the DataType(s) that are instantiated in the Instance. With the exception of the Indeterminate Instance, every modeled Instance instantiates at least one modeled DataType; an Instance may instantiate more than one.&lt;/p&gt;
&lt;p&gt;
A modeled Instance should be modeled as an Instance of its “declared type.” It may, but need not, be modeled as an
Instance of all the supertypes or SelectTypes that it instantiates.&lt;/p&gt; 
&lt;p&gt;This is the abstract relationship -- every subclass of Instance has the of-type relationship to a specific class of DataTypes.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7839'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I118958em102d5a77152mm7d06' name='CommonElement' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000128' body='&lt;p&gt;a SchemaElement that can be defined in either a Schema or a LocalScope, and has (or may have) a unique identifier within that Scope.  
This is an artifact of the declaration and namespace rules for the EXPRESS language.  
NamedTypes, Algorithms, Constants, and &quot;SupertypeRules&quot; can be defined at the Schema level or within Algorithms and GlobalRules (AlgorithmScopes).  
Every CommonElement has a Scope.  The Scope is either a SchemaScope or an AlgorithmScope.&lt;/p&gt;'>
<annotatedElement xmi:idref='I118958em102d5a77152mm7d06'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1025f5930bdmm7d31'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em102d5a77152mm7ce4' name='local-scope' type='I17779e3m102ef760d6emm7fc2' association='I118958em102d5a77152mm7cf2' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000129' body='&lt;p&gt;represents the relationship between a CommonElement that is defined in an AlgorithmScope and the scope in which it is defined; 
also, the scope (set of model elements) in which the id of the CommonElement refers to that CommonElement.&lt;/p&gt;
&lt;note&gt;See Clause 10 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I118958em102d5a77152mm7ce4'/>
</ownedComment>
<subsettedProperty xmi:id='I175beefm1040b3ac253mm40d4'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1b9bbe8m10bd611c411mm1618' name='InvertibleAttribute' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00012a' body='&lt;p&gt;An ExplicitAttribute whose attribute type is one of:&lt;br&gt;
- an EntityType&lt;br&gt;
- a Select-type whose select-list consists of EntityTypes&lt;br&gt;
- an AggregationType whose member-type is either of the above&lt;/p&gt;
&lt;p&gt;An InvertibleAttribute models a Relationship between two EntityTypes – the EntityType that declares the InvertibleAttribute, and the EntityType that appears in its .attribute-type.
An InvertibleAttribute whose attribute-type (or its member-type) is a SelectType defines one Relationship for each EntityType in the select-list.  &lt;/p&gt;
&lt;note&gt;See ISO 10303-11.2:2004 clause 9.2.1.3&lt;/note&gt;
'>
<annotatedElement xmi:idref='I1b9bbe8m10bd611c411mm1618'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7b23'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1b9bbe8m10bd611c411mm15f6' name='range-type' type='I167e3a5m10018e5d720mm7f96' association='I1b9bbe8m10bd611c411mm15f3' visibility='public' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00012b' body='&lt;p&gt;models the relationship between the InvertibleAttribute and the EntityTypes that are, or are members of, its attribute-type.  
These EntityTypes are the &quot;range&quot; of the Relationship with the &quot;referencing&quot; entity that is created by the InvertibleAttribute.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1b9bbe8m10bd611c411mm15f6'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7b3e' name='inverse' type='I167e3a5m10018e5d720mm7b87' association='I167e3a5m10018e5d720mm7b41' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00012c' body='&lt;p&gt;represents the relationship of an explicit attribute denoting a Relationship to the inverse attribute of the range entity data type that models the same Relationship.  
While the inverse is conceptually unique, EXPRESS allows it to be declared differently in different subtypes of the original range entity.&lt;/p&gt;
&lt;note&gt;See 9.2.1.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7b3e'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='Idf804em10bd9891f14mm166a' name='creates-relationship' type='I1eaf25dm106bd879899mm2df4' association='Idf804em10bd9891f14mm1667' visibility='public' isDerived='true'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00012d' body='&lt;p&gt;represents the relationship between an InvertibleAttribute and the Relatiionship between EntityTypes that it models.&lt;/p&gt;'>
<annotatedElement xmi:idref='Idf804em10bd9891f14mm166a'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1eaf25dm106bd879899mm2d21' name='models-role' type='I13ceab3m106c229c32emm2c1f' association='I1eaf25dm106bd879899mm2d1e' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00012e' body='&lt;p&gt;represents the relationship between an Invertible Attribute and the RangeRole it defines.  &lt;/p&gt;
&lt;note&gt;An explicit attribute defines a RangeRole (and thus a Relationship) if and only if it is an InvertibleAttribute.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2d21'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1fe40d5m11266e8346cmbb4' name='VariableType' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00012f' body='&lt;p&gt; An abstract class representing the permissible data types of a variable: InstantiableTypes and ActualTypes. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11266e8346cmbb4'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I14a75bbm102da9bec90mm7e19'/>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m1024a81540emm7d9f'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I14a3da8m1067f761adfmm33b3' name='ActualType' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000130' body='&lt;p&gt;specification of an instantiable data type by reference to (a component of) the data type of the actual parameter that corresponds to a formal parameter of the Algorithm. 
&lt;/p&gt;
&lt;note&gt;See 9.5.3.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I14a3da8m1067f761adfmm33b3'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1fe40d5m11266e8346cmbb4'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I808680m1128bdf3bcfm81f' name='scope' type='I167e3a5m10018e5d720mm74c7' association='I808680m1128bdf3bcfm822' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000131' body='&lt;p&gt;The Algorithm in which the ActualType is specified.  
The ActualType must be the data type of a Variable or Attribute whose scope is contained in the Algorithm.&lt;/p&gt;
&lt;p&gt;An ActualType does not have a namespace; it defines no identifiers. The :scope of the ActualType represents the ownership of the ActualType and the lifetime of the ActualType.
&lt;/p&gt;
&lt;p&gt;The ParametricElement that defines the type_label to which the ActualType refers shall be defined among the formal parameters of the Algorithm.&lt;/p&gt;'>
<annotatedElement xmi:idref='I808680m1128bdf3bcfm81f'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m1024a81540emm7d9f' name='DataType' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000132' body='&lt;p&gt;an ExpressionType that represents all the data type notions that can be declared for objects and properties in EXPRESS.  Syntactically called parameter_type, it includes InstantiableTypes and GeneralizedTypes (which represent conformance rules for InstantiableTypes).  It excludes PartialEntityTypes, which are only classifiers for intermediate results.&lt;/p&gt;
&lt;note&gt;See clause 8 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m1024a81540emm7d9f'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7844' name='instances' type='I17779e3m1003cfd8422mm7b5c' association='I17779e3m1003cfd8422mm7847' visibility='public' isAbstract='true' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000133' body='&lt;p&gt;represents the (abstract) relationship between a DataType and its domain -- the Instances that satisfy it.&lt;/p&gt;
&lt;note&gt;Except for the case of EnumerationTypes, this association is not usually instantiated.&lt;/note&gt;
'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7844'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I808680m1128bdf3bcfm8b1' name='ConcreteAggregationType' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000134' body='&lt;p&gt;an anonymous InstantiableType that is an AggregationType whose member-type is itself an InstantiableType.&lt;/p&gt;'>
<annotatedElement xmi:idref='I808680m1128bdf3bcfm8b1'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7faf'/>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7f61'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7ddc' name='member-type' type='I167e3a5m10240564a77mm7c95' association='I167e3a5m10018e5d720mm7de8' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000135' body='&lt;p&gt;represents data type of its components (members) of the InstantiableAggregationType.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7ddc'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I9ced84m109b2851e95mm1237' name='LocalElement' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000136' body='&lt;p&gt;An abstract class, representing NamedElements whose scope is a LocalScope.  
No LocalElement is defined in the Core package.&lt;/p&gt;'>
<annotatedElement xmi:idref='I9ced84m109b2851e95mm1237'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I175beefm1040b3ac253mm40ee'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I9ced84m109b2851e95mm1210' name='namespace' type='I118958em102d5a77152mm7d2d' association='I9ced84m109b2851e95mm120d' visibility='public' isAbstract='true'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000137' body='&lt;p&gt;the Scope in which the LocalElement is defined.  Unlike SchemaElements, a LocalElement is instantiated only in the context of a particular &quot;use&quot; or &quot;invocation&quot; of the Scope in which it is defined.  As a consequence, a LocalElement can be instantiated more than once in interpreting a Population under a given Schema, and each such instantiation has a &quot;lifetime&quot; corresponding to that use/invocation&lt;/p&gt;'>
<annotatedElement xmi:idref='I9ced84m109b2851e95mm1210'/>
</ownedComment>
<subsettedProperty xmi:id='I175beefm1040b3ac253mm40d4'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1252015501593_134043_1615' name='parameter-has-structure-constraints' visibility='public'>
<memberEnd xmi:idref='_16_0_1_852026a_1252015501593_471733_1616'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1252015501593_471733_1616' name='__inv_structure-constraints' type='_16_0_1_852026a_1251998454140_122583_1487' association='_16_0_1_852026a_1252015501593_134043_1615' visibility='public'>
</ownedEnd>
<memberEnd xmi:idref='_16_0_1_852026a_1252015501593_299156_1617'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1252015512468_236616_1623' name='parameter-has-type-constraints' visibility='public'>
<memberEnd xmi:idref='_16_0_1_852026a_1252015512468_174066_1624'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1252015512468_174066_1624' name='__inv_type-constraints' type='_16_0_1_852026a_1251998454140_122583_1487' association='_16_0_1_852026a_1252015512468_236616_1623' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000138' body='&lt;p&gt;represents the relationship between an ActualTypeConstraint and the Algorithm to which it applies.&lt;/p&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1252015512468_174066_1624'/>
</ownedComment>
</ownedEnd>
<memberEnd xmi:idref='_16_0_1_852026a_1252015512468_627255_1625'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I14a3da8m1067f761adfmm32d8' name='constraint-requires-type' visibility='public'>
<memberEnd xmi:idref='I14a3da8m1067f761adfmm32de'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I14a3da8m1067f761adfmm32de' name='__inv_required-type' type='I17779e3m10023cc289dmm7d9d' association='I14a3da8m1067f761adfmm32d8' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I14a3da8m1067f761adfmm32db'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I808680m1128bdf3bcfme1c' name='constraint-requires-structure' visibility='public'>
<memberEnd xmi:idref='I808680m1128bdf3bcfme16'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I808680m1128bdf3bcfme16' name='__inv_required-structure' type='I808680m1128bdf3bcfmdc7' association='I808680m1128bdf3bcfme1c' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I808680m1128bdf3bcfme19'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I808680m1128bdf3bcfmdf9' name='aggregate-has-constraint' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000139' body='&lt;p&gt;the relationship between an AGGREGATE type specification and its ActualStructureConstraint, if any.&lt;/p&gt;'>
<annotatedElement xmi:idref='I808680m1128bdf3bcfmdf9'/>
</ownedComment>
<memberEnd xmi:idref='I808680m1128bdf3bcfmdf3'/>
<memberEnd xmi:idref='I808680m1128bdf3bcfmdf6'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1249318456093_612807_872' name='AGGREGATEType-defines-parameter' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00013a' body='represents the relationship between a ParametricStructure and the AGGREGATEType that defines it.  The ParametricStructure takes on the structure of the actual parameters that conform to this element of the formal parameter type.
'>
<annotatedElement xmi:idref='_16_0_1_852026a_1249318456093_612807_872'/>
</ownedComment>
<memberEnd xmi:idref='_16_0_1_852026a_1249318456093_574431_874'/>
<memberEnd xmi:idref='_16_0_1_852026a_1249318456093_198108_873'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1251998251875_326321_1472' name='scope-of-ParametricElement' isDerived='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00013b' body='&lt;p&gt;represents the relationship of the ParametricElement to the Algorithm or EntityType that is its namespace.  
This relationship is always derived; the namespace of a ParametricElement is the same as the namespace of its :source.&lt;/p&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1251998251875_326321_1472'/>
</ownedComment>
<memberEnd xmi:idref='_16_0_1_852026a_1251998251890_365091_1475'/>
<memberEnd xmi:idref='_16_0_1_852026a_1251998251875_639152_1474'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1251998488765_338248_1506' name='element-has-source' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00013c' body='represents the relationship between a ParametricElement and the syntactic/semantic element that contains its definition.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1251998488765_338248_1506'/>
</ownedComment>
<memberEnd xmi:idref='_16_0_1_852026a_1251998488765_827851_1508'/>
<memberEnd xmi:idref='_16_0_1_852026a_1251998488765_105664_1507'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1247080557125_336231_1059' name='ActualParameter-has-value' visibility='public'>
<memberEnd xmi:idref='_16_0_1_852026a_1247080557140_779338_1060'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1247080557140_779338_1060' name='__inv_actual-value' type='_16_0_1_852026a_1247080307437_46176_1032' association='_16_0_1_852026a_1247080557125_336231_1059' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='_16_0_1_852026a_1247080557140_662566_1061'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1241201521656_397374_1281' name='schema-interfaces-elements' isDerived='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00013d' body='&lt;p&gt;represents the EXPRESS “interface” relationships (USE, REFERENCE) between an interfacing Schema and the
InterfacedElements that represent the SchemaElements that are interfaced from other Schemas.&lt;/p&gt;
&lt;note&gt;See clause 11 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1241201521656_397374_1281'/>
</ownedComment>
<memberEnd xmi:idref='_16_0_1_852026a_1241201521671_960845_1284'/>
<memberEnd xmi:idref='_16_0_1_852026a_1241201521656_30795_1283'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1241200385406_888662_1261' name='interface-includes-elements' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00013e' body='&lt;p&gt;represents the relationship between an Interface and the InterfacedElements it contains, that is the relationship between an interface statement (USE or REFERENCE) and the SchemaElements it implicitly and explicitly interfaces.&lt;/p&gt;
&lt;note&gt;See clause 11 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1241200385406_888662_1261'/>
</ownedComment>
<memberEnd xmi:idref='_16_0_1_852026a_1241200385406_6290_1264'/>
<memberEnd xmi:idref='_16_0_1_852026a_1241200385406_369421_1263'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1239990411171_551313_640' name='EntityType-has-Attribute' isDerived='true' visibility='public'>
<memberEnd xmi:idref='_16_0_1_852026a_1239990411500_584050_642'/>
<memberEnd xmi:idref='_16_0_1_852026a_1239990411500_515659_641'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1239832310515_292586_789' name='schema-has-interface' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00013f' body='represents the relationship between a Schema and the Interfaces it contains, and indirectly, the Schemas that it imports/interfaces.
Note: See clause 11 of ISO 10303-11:2004. 
'>
<annotatedElement xmi:idref='_16_0_1_852026a_1239832310515_292586_789'/>
</ownedComment>
<memberEnd xmi:idref='_16_0_1_852026a_1239832310515_118536_791'/>
<memberEnd xmi:idref='_16_0_1_852026a_1239832310515_771589_790'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1239832128781_96070_764' name='interfacing-interfaced-schema' visibility='public'>
<memberEnd xmi:idref='_16_0_1_852026a_1239832128781_779110_766'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1239832128781_779110_766' name='__inv_interfaced-schema' type='_16_0_1_852026a_1239831682515_391695_638' association='_16_0_1_852026a_1239832128781_96070_764' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='_16_0_1_852026a_1239832128781_855545_765'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_14_0_852026a_1204244509031_406648_9302' name='specialized-type-has-underlying-type' visibility='public'>
<memberEnd xmi:idref='_14_0_852026a_1204244509031_958659_9304'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='_14_0_852026a_1204244509031_958659_9304' name='__inv_underlying-type' type='I167e3a5m10018e5d720mm7eca' association='_14_0_852026a_1204244509031_406648_9302' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='_14_0_852026a_1204244509031_716386_9303'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1003cfd8422mm772e' name='attribute-declared-in-entity' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000140' body='&lt;p&gt;represents the relationship between a SingleEntityType and the Attributes declared in the entity declaration for the corresponding EntityType.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm772e'/>
</ownedComment>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm772b'/>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7720'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm7c85' name='type-instantiates-select-type' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000141' body='&lt;p&gt;represents the appearance of the &quot;generalizes&quot; NamedType in the select list of the &quot;instantiates&quot; SelectType.&lt;/p&gt;
&lt;note&gt;See 8.4.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7c85'/>
</ownedComment>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7c82'/>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7c79'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m10023cc289dmm7f3d' name='select-type-extends-select-type' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000142' body='&lt;p&gt;represents the relationship of an EXTENSIBLE select type to a select type BASED ON it.&lt;/p&gt;
&lt;note&gt;See 8.4.2 of ISO 10303-11:2004.&lt;/note&gt;
'>
<annotatedElement xmi:idref='I17779e3m10023cc289dmm7f3d'/>
</ownedComment>
<memberEnd xmi:idref='I17779e3m10023cc289dmm7f3a'/>
<memberEnd xmi:idref='I17779e3m10023cc289dmm7f2d'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1003cfd8422mm7e61' name='constraint-asserts-expression' visibility='public'>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7e5e'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7e5e' name='__inv_asserts' type='I17779e3m1003cfd8422mm7e91' association='I17779e3m1003cfd8422mm7e61' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7e55'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10240564a77mm7fe5' name='type-specializes-type' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10240564a77mm7fe2'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7fe2' name='__inv_specializes' type='I167e3a5m10018e5d720mm7faf' association='I167e3a5m10240564a77mm7fe5' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10240564a77mm7fd5'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10240564a77mm7f25' name='StringType-has-LengthConstraint' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000143' body='&lt;p&gt;&lt;/p&gt;
'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7f25'/>
</ownedComment>
<memberEnd xmi:idref='I167e3a5m10240564a77mm7f22'/>
<memberEnd xmi:idref='I167e3a5m10240564a77mm7f17'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7f17' name='__inv_string-length-constraint' type='I167e3a5m10240564a77mm7f94' association='I167e3a5m10240564a77mm7f25' visibility='public' lower='0'>
</ownedEnd>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10240564a77mm7f09' name='BinaryType-has-LengthConstraint' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000144' body='&lt;p&gt;&lt;/p&gt;
'>
<annotatedElement xmi:idref='I167e3a5m10240564a77mm7f09'/>
</ownedComment>
<memberEnd xmi:idref='I167e3a5m10240564a77mm7f06'/>
<memberEnd xmi:idref='I167e3a5m10240564a77mm7efb'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7efb' name='__inv_binary-length-constraint' type='I167e3a5m10240564a77mm7f6b' association='I167e3a5m10240564a77mm7f09' visibility='public' lower='0'>
</ownedEnd>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1003cfd8422mm7eec' name='aggregation-has-upper-bound' visibility='public'>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7ee9'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7ee9' name='__inv_upper-bound' type='I167e3a5m10018e5d720mm7f61' association='I17779e3m1003cfd8422mm7eec' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7ee0'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1003cfd8422mm7eb6' name='array-has-hi-index' visibility='public'>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7eb3'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7eb3' name='__inv_hi-index' type='I167e3a5m10018e5d720mm7dcf' association='I17779e3m1003cfd8422mm7eb6' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000145' body='&lt;p&gt;.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7eb3'/>
</ownedComment>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7ea6'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1003cfd8422mm7ed0' name='array-has-lo-index' visibility='public'>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7ecd'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7ecd' name='__inv_lo-index' type='I167e3a5m10018e5d720mm7dcf' association='I17779e3m1003cfd8422mm7ed0' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7ec2'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1003cfd8422mm7f06' name='aggregation-has-lower-bound' visibility='public'>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7f03'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7f03' name='__inv_lower-bound' type='I167e3a5m10018e5d720mm7f61' association='I17779e3m1003cfd8422mm7f06' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7efa'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm7a76' name='UniqueRule-uses-key-attribute' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7a73'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7a73' name='__inv_key-component' type='I167e3a5m10018e5d720mm7ac3' association='I167e3a5m10018e5d720mm7a76' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7a6a'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm7a5a' name='DerivedAttribute-has-derivation' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7a57'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7a57' name='__inv_derivation' type='I167e3a5m10018e5d720mm7b0f' association='I167e3a5m10018e5d720mm7a5a' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7a4e'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm7952' name='redeclaration-specifies-derivation' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm794f'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm794f' name='__inv_derivation' type='I167e3a5m10018e5d720mm79c9' association='I167e3a5m10018e5d720mm7952' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7946'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10240564a77mm7b3c' name='general-aggregation-has-member-type' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10240564a77mm7b39'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7b39' name='__inv_member-type' type='I167e3a5m10240564a77mm7c05' association='I167e3a5m10240564a77mm7b3c' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10240564a77mm7b2e'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10240564a77mm7b1c' name='aggregate-has-member-type' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10240564a77mm7b19'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7b19' name='__inv_member-type' type='I167e3a5m10240564a77mm7c23' association='I167e3a5m10240564a77mm7b1c' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10240564a77mm7b0e'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10240564a77mm7a5d' name='general-array-has-lo-index' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10240564a77mm7a5a'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7a5a' name='__inv_lo-index' type='I167e3a5m10240564a77mm7be0' association='I167e3a5m10240564a77mm7a5d' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10240564a77mm7a51'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10240564a77mm7a45' name='general-array-has-hi-index' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10240564a77mm7a42'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7a42' name='__inv_hi-index' type='I167e3a5m10240564a77mm7be0' association='I167e3a5m10240564a77mm7a45' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10240564a77mm7a39'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I118958em102c66626a0mm7dda' name='bound-is-expression' visibility='public'>
<memberEnd xmi:idref='I118958em102c66626a0mm7dd7'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I118958em102c66626a0mm7dd7' name='__inv_bound-expression' type='I118958em102c66626a0mm7e02' association='I118958em102c66626a0mm7dda' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I118958em102c66626a0mm7dce'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I118958em102f0aec0a0mm7f6f' name='type-element-has-scope' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000146' body='&lt;p&gt;represents the relationship between a TypeElement and the NamedType in which it is defined.
This is a refinement of the entity-defined-in-scope relationship and an abstraction of the specific relationships of TypeElements to their owner NamedTypes.&lt;/p&gt;'>
<annotatedElement xmi:idref='I118958em102f0aec0a0mm7f6f'/>
</ownedComment>
<memberEnd xmi:idref='I118958em102f0aec0a0mm7f6c'/>
<memberEnd xmi:idref='I118958em102f0aec0a0mm7f5f'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='If8093fm102ff7b3af0mm4416' name='NamedType-has-DomainRule' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000147' body='&lt;p&gt;a refinement of type-has-constraints, representing the relationship of a NamedType to a DomainRule that restrict the domain of valid values of the NamedType&lt;/p&gt;
&lt;note&gt;See 9.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='If8093fm102ff7b3af0mm4416'/>
</ownedComment>
<memberEnd xmi:idref='If8093fm102ff7b3af0mm441c'/>
<memberEnd xmi:idref='If8093fm102ff7b3af0mm4419'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m10023cc289dmm7f5f' name='enumeration-extends-enumeration' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000148' body='&lt;p&gt;represents the relationship of an EXTENSIBLE EnumerationType to the EnumerationTypes that are BASED ON it. &lt;/p&gt;
&lt;note&gt;See 8.4.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m10023cc289dmm7f5f'/>
</ownedComment>
<memberEnd xmi:idref='I17779e3m10023cc289dmm7f5c'/>
<memberEnd xmi:idref='I17779e3m10023cc289dmm7f51'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I118958em1027e581026mm7cfa' name='single-entity-declared-in-entity' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000149' body='&lt;p&gt;represents the relationship between the EntityType and the SingleEntityType that is implicitly declared in the entity_declaration for the EntityType.&lt;/p&gt;'>
<annotatedElement xmi:idref='I118958em1027e581026mm7cfa'/>
</ownedComment>
<memberEnd xmi:idref='I118958em1027e581026mm7cf7'/>
<memberEnd xmi:idref='I118958em1027e581026mm7cee'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1c21ed3m103f6d4f890mm4368' name='PartialEntityType-has-components' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00014a' body='&lt;p&gt;represents the relationship between a PartialEntityType and the SingleEntityTypes it contains.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1c21ed3m103f6d4f890mm4368'/>
</ownedComment>
<memberEnd xmi:idref='I1c21ed3m103f6d4f890mm436e'/>
<memberEnd xmi:idref='I1c21ed3m103f6d4f890mm436b'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1c21ed3m103f6d4f890mm436b' name='__inv_components' type='I167e3a5m1024a81540emm7d31' association='I1c21ed3m103f6d4f890mm4368' visibility='public' upper='*'>
</ownedEnd>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1160e64m10462d0e89emm3484' name='SingleEntityType-has-equivalent' visibility='public'>
<memberEnd xmi:idref='I1160e64m10462d0e89emm348a'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1160e64m10462d0e89emm348a' name='__inv_equivalent' type='I1c21ed3m103f6d4f890mm43c6' association='I1160e64m10462d0e89emm3484' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00014b' body='&lt;p&gt;represents the equivalence between a PartialEntityType comprising exactly one SingleEntityType and that SingleEntityType.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1160e64m10462d0e89emm348a'/>
</ownedComment>
</ownedEnd>
<memberEnd xmi:idref='I1160e64m10462d0e89emm3487'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm7d5e' name='entity-is-subtype-of-entity' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7d5b'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7d5b' name='__inv_subtype-of' type='I167e3a5m10018e5d720mm7f96' association='I167e3a5m10018e5d720mm7d5e' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7d52'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I118958em102c66626a0mm7f69' name='EntityType-has-UniqueRule' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00014c' body='&lt;p&gt;represents the relationship between an EntityType and the local uniqueness rules that constrain the values of attributes of that EntityType&lt;/p&gt;'>
<annotatedElement xmi:idref='I118958em102c66626a0mm7f69'/>
</ownedComment>
<memberEnd xmi:idref='I118958em102c66626a0mm7f66'/>
<memberEnd xmi:idref='I118958em102c66626a0mm7f5d'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1eaf25dm106bd879899mm2c39' name='InverseAttribute-models-role' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00014d' body='&lt;p&gt;represents the relationship between an Inverse Attribute and the domain-role it refers to. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2c39'/>
</ownedComment>
<memberEnd xmi:idref='I1eaf25dm106bd879899mm2c3f'/>
<memberEnd xmi:idref='I1eaf25dm106bd879899mm2c3c'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I13ceab3m106c229c32emm2be9' name='entity-plays-range-role' isDerived='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00014e' body='&lt;p&gt;represents the relationship betwen an entity type and the range roles that its instances play.&lt;/p&gt;'>
<annotatedElement xmi:idref='I13ceab3m106c229c32emm2be9'/>
</ownedComment>
<memberEnd xmi:idref='I13ceab3m106c229c32emm2bef'/>
<memberEnd xmi:idref='I13ceab3m106c229c32emm2bec'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1eaf25dm106bd879899mm2d8f' name='DomainRole-in-Relationship' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00014f' body='&lt;p&gt;represents the relationship between the Relationship and the Role that is its DomainRole.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2d8f'/>
</ownedComment>
<memberEnd xmi:idref='I1eaf25dm106bd879899mm2d95'/>
<memberEnd xmi:idref='I1eaf25dm106bd879899mm2d92'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1eaf25dm106bd879899mm2d69' name='RangeRole-in-Relationship' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000150' body='&lt;p&gt;represents the relationship between a Range Role and the (unique) Relationship in which it is defined&lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2d69'/>
</ownedComment>
<memberEnd xmi:idref='I1eaf25dm106bd879899mm2d6f'/>
<memberEnd xmi:idref='I1eaf25dm106bd879899mm2d6c'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I13ceab3m106c229c32emm2bb8' name='entity-plays-domain-role' isDerived='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000151' body='&lt;p&gt;represents the relationship betwen an entity type and the domain roles that its instances play.&lt;/p&gt;'>
<annotatedElement xmi:idref='I13ceab3m106c229c32emm2bb8'/>
</ownedComment>
<memberEnd xmi:idref='I13ceab3m106c229c32emm2bbe'/>
<memberEnd xmi:idref='I13ceab3m106c229c32emm2bbb'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m1024a81540emm7f21' name='role-has-lower-bound' isDerived='true' visibility='public'>
<memberEnd xmi:idref='I167e3a5m1024a81540emm7f1e'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m1024a81540emm7f1e' name='__inv_lower-bound' type='I1eaf25dm106bd879899mm2cd9' association='I167e3a5m1024a81540emm7f21' visibility='public' isDerived='true' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m1024a81540emm7f13'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m1024a81540emm7f03' name='role-has-upper-bound' isDerived='true' visibility='public'>
<memberEnd xmi:idref='I167e3a5m1024a81540emm7f00'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m1024a81540emm7f00' name='__inv_upper-bound' type='I1eaf25dm106bd879899mm2cd9' association='I167e3a5m1024a81540emm7f03' visibility='public' isDerived='true' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m1024a81540emm7ef5'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m1024a81540emm7e5f' name='scope-of-redeclaration-is-EntityType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000152' body='&lt;p&gt;represents the relationship between the Redeclaration and the entity data type to which the redeclaration applies.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m1024a81540emm7e5f'/>
</ownedComment>
<memberEnd xmi:idref='I167e3a5m1024a81540emm7e5c'/>
<memberEnd xmi:idref='I167e3a5m1024a81540emm7e51'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I88485fm106cc8fc6camm2ae1' name='SelectType-has-select-list' visibility='public'>
<memberEnd xmi:idref='I88485fm106cc8fc6camm2ae7'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I88485fm106cc8fc6camm2ae7' name='__inv_select-list' type='I167e3a5m10018e5d720mm7eb5' association='I88485fm106cc8fc6camm2ae1' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I88485fm106cc8fc6camm2ae4'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm7d76' name='entity-has-attributes' isDerived='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000153' body='&lt;p&gt;&lt;/p&gt;
'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7d76'/>
</ownedComment>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7d73'/>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7d6a'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10240564a77mm7a11' name='aggregate-has-upper-bound' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10240564a77mm7a0e'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7a0e' name='__inv_upper-bound' type='I167e3a5m10240564a77mm7c23' association='I167e3a5m10240564a77mm7a11' visibility='public'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10240564a77mm7a05'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10240564a77mm7a2d' name='aggregate-has-lower-bound' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10240564a77mm7a2a'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10240564a77mm7a2a' name='__inv_lower-bound' type='I167e3a5m10240564a77mm7c23' association='I167e3a5m10240564a77mm7a2d' visibility='public'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10240564a77mm7a21'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm72d5' name='Expression-has-DataType' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm72d2'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm72d2' name='__inv_data-type' type='I167e3a5m10018e5d720mm7ad9' association='I167e3a5m10018e5d720mm72d5' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm72c7'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm78aa' name='schema-defines-elements' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000154' body='&lt;p&gt;represents the relationship between a Schema and the SchemaElements that are defined in it.&lt;/p&gt;
'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm78aa'/>
</ownedComment>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm78a7'/>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm789e'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I175beefm1040b3ac253mm40d1' name='element-defined-in-scope' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000155' body='&lt;p&gt;represents the generic relationship between a NamedElement and the Scope in which it is defined.  
Every NamedElement is defined in exactly one Scope.  
It may be interfaced into other Scopes, and it may be visible in Scopes nested inside the Scope in which it defined and the Scopes into which it is interfaced.&lt;/p&gt;
&lt;note&gt;See clause 10 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I175beefm1040b3ac253mm40d1'/>
</ownedComment>
<memberEnd xmi:idref='I175beefm1040b3ac253mm40d7'/>
<memberEnd xmi:idref='I175beefm1040b3ac253mm40d4'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I10ad419m106c6ab6f8emm2b03' name='remark-appears-in-scope' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000156' body='&lt;p&gt;represents the relationship of a Remark to the Schema that lexically contains it.&lt;/p&gt;'>
<annotatedElement xmi:idref='I10ad419m106c6ab6f8emm2b03'/>
</ownedComment>
<memberEnd xmi:idref='I10ad419m106c6ab6f8emm2b09'/>
<memberEnd xmi:idref='I10ad419m106c6ab6f8emm2b06'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I10ad419m106c6ab6f8emm2ae0' name='remark-describes-element' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000157' body='&lt;p&gt;represents the relationship between a Remark and the NamedElement(s) it describes.
While a tagged remark is formally associated with one or more NamedElements, a processor may also ascribe a given un-tagged Remark to a given NamedElement, based on its lexical position.&lt;/p&gt;
&lt;note&gt;See 7.1.6.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I10ad419m106c6ab6f8emm2ae0'/>
</ownedComment>
<memberEnd xmi:idref='I10ad419m106c6ab6f8emm2ae6'/>
<memberEnd xmi:idref='I10ad419m106c6ab6f8emm2ae3'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I10ad419m106c6ab6f8emm2aaa' name='remark-describes-schema' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000158' body='&lt;p&gt;represents the relationship between a Schema and the Remarks, if any, that constitute its in-schema documentation.  
If the Scope (.appears-in) of the Remark is a different Schema, the Remark only applies to the Schema as-interfaced.&lt;/p&gt;
&lt;note&gt;See 7.1.6.3 of ISO 10303-11:2004.  Technically the Schema is a named element of the EXPRESS language, but it has no defined Scope.&lt;/note&gt;'>
<annotatedElement xmi:idref='I10ad419m106c6ab6f8emm2aaa'/>
</ownedComment>
<memberEnd xmi:idref='I10ad419m106c6ab6f8emm2ab0'/>
<memberEnd xmi:idref='I10ad419m106c6ab6f8emm2aad'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm799f' name='redeclaration-refines-attribute' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000159' body='&lt;p&gt;&lt;/p&gt;
'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm799f'/>
</ownedComment>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm799c'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm799c' name='__inv_original-attribute' type='I167e3a5m10018e5d720mm79c9' association='I167e3a5m10018e5d720mm799f' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00015a' body='&lt;p&gt;represents the relationship between an Attribute and a redeclaration of that Attribute in a subtype of the declaring entity&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm799c'/>
</ownedComment>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7993'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1eaf25dm106bd879899mm2d43' name='redeclaration-refines-role' isDerived='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00015b' body='&lt;p&gt;Represents the relationship between a Redeclaration whose .restricted-type is an EntityType (or a SelectType whose select-list contains EntityTypes) and the Relationship Roles associated with the .original-attribute.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2d43'/>
</ownedComment>
<memberEnd xmi:idref='I1eaf25dm106bd879899mm2d49'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1eaf25dm106bd879899mm2d49' name='__inv_refined-role' type='I167e3a5m10018e5d720mm79c9' association='I1eaf25dm106bd879899mm2d43' visibility='public' isDerived='true' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1eaf25dm106bd879899mm2d46'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I88cf9em1096f16eabcmm1384' name='redeclaration-refines-redeclaration' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00015c' body='&lt;p&gt;This relationship is present only when a Redeclaration is stated as a refinement of another redeclared attribute.  
It relates the Redeclaration to the previous Redeclaration.&lt;/p&gt;
&lt;note&gt;Note: In general, redeclaring a redeclared attribute is not semantically different from redeclaring the original attibute, because Clause 9.2.3.4 requires all Redeclarations inherited by an EntityInstance to be simultaneously valid.  
However, the redeclaration of a redeclared attribute must be an explicit restriction of the redeclared type and other properties, which makes the semantic intent easier to determine.&lt;/note&gt;
&lt;note&gt;See 9.2.3.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I88cf9em1096f16eabcmm1384'/>
</ownedComment>
<memberEnd xmi:idref='I88cf9em1096f16eabcmm138a'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I88cf9em1096f16eabcmm138a' name='__inv_refines' type='I167e3a5m10018e5d720mm79c9' association='I88cf9em1096f16eabcmm1384' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I88cf9em1096f16eabcmm1387'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I88cf9em1096f16eabcmm112a' name='schema-element-is-interfaced-element' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00015d' body='&lt;p&gt;represents a use of the SchemaElement in some Schema other than the one in which it is defined.  
Only a SchemaElement whose scope is a Schema can be referenced as an InterfacedElement.&lt;/p&gt;'>
<annotatedElement xmi:idref='I88cf9em1096f16eabcmm112a'/>
</ownedComment>
<memberEnd xmi:idref='I88cf9em1096f16eabcmm1130'/>
<memberEnd xmi:idref='I88cf9em1096f16eabcmm112d'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I88cf9em1096f16eabcmmff1' name='redeclaration-specifies-upper-bound' isDerived='true' visibility='public'>
<memberEnd xmi:idref='I88cf9em1096f16eabcmmff7'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I88cf9em1096f16eabcmmff7' name='__inv_upper-bound' type='I167e3a5m10018e5d720mm79c9' association='I88cf9em1096f16eabcmmff1' visibility='public' isDerived='true'>
</ownedEnd>
<memberEnd xmi:idref='I88cf9em1096f16eabcmmff4'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I88cf9em1096f16eabcmmf3d' name='redeclaration-specifies-lower-bound' isDerived='true' visibility='public'>
<memberEnd xmi:idref='I88cf9em1096f16eabcmmf43'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I88cf9em1096f16eabcmmf43' name='__inv_lower-bound' type='I167e3a5m10018e5d720mm79c9' association='I88cf9em1096f16eabcmmf3d' visibility='public' isDerived='true'>
</ownedEnd>
<memberEnd xmi:idref='I88cf9em1096f16eabcmmf40'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I16a90c9m10843ceeb02mm1f03' name='type-has-fundamental-type' isDerived='true' visibility='public'>
<memberEnd xmi:idref='I16a90c9m10843ceeb02mm1f09'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I16a90c9m10843ceeb02mm1f09' name='__inv_fundamental-type' type='I167e3a5m10240564a77mm7c95' association='I16a90c9m10843ceeb02mm1f03' visibility='public' isDerived='true' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I16a90c9m10843ceeb02mm1f06'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1003cfd8422mm7865' name='expression-evaluates-to-Instance' visibility='public'>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7862'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7862' name='__inv_evaluation' type='I167e3a5m10018e5d720mm7ad9' association='I17779e3m1003cfd8422mm7865' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7857'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I118958em102d5a77152mm7cf2' name='common-element-has-local-scope' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00015e' body='&lt;p&gt;represents the relationship between an AlgorithmScope and the CommonElements that are defined in it. 
This is a refinement of the (abstract) element-defined-in-scope relationship.&lt;/p&gt;
&lt;note&gt;See clause 10 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I118958em102d5a77152mm7cf2'/>
</ownedComment>
<memberEnd xmi:idref='I118958em102d5a77152mm7cef'/>
<memberEnd xmi:idref='I118958em102d5a77152mm7ce4'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm7b41' name='InverseAttribute-inverts-ExplicitAttribute' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00015f' body='&lt;p&gt;represents the relationship of an inverse attribute of one entity data type to the explicit attribute (InvertibleAttribute) of another entity data type that models the Relationship from which the inverse attribute is derived.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7b41'/>
</ownedComment>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7b3e'/>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7b35'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1b9bbe8m10bd611c411mm15f3' name='entity-used-in-attribute' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000160' body='&lt;p&gt;represents the relationship between the EntityType and the InvertibleAttributes (of other EntityTypes) that establish relationships to it.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1b9bbe8m10bd611c411mm15f3'/>
</ownedComment>
<memberEnd xmi:idref='I1b9bbe8m10bd611c411mm15f9'/>
<memberEnd xmi:idref='I1b9bbe8m10bd611c411mm15f6'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1eaf25dm106bd879899mm2d1e' name='InvertibleAttribute-models-role' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000161' body='&lt;p&gt;represents the relationship between an InvertibleAttribute and the RangeRole it defines.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2d1e'/>
</ownedComment>
<memberEnd xmi:idref='I1eaf25dm106bd879899mm2d24'/>
<memberEnd xmi:idref='I1eaf25dm106bd879899mm2d21'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='Idf804em10bd9891f14mm1667' name='InvertibleAttribute-creates-relationship' isDerived='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000162' body='&lt;p&gt;represents the relationship between an InvertibleAttribute and the Relatiionship between EntityTypes that it models.&lt;/p&gt;'>
<annotatedElement xmi:idref='Idf804em10bd9891f14mm1667'/>
</ownedComment>
<memberEnd xmi:idref='Idf804em10bd9891f14mm166d'/>
<memberEnd xmi:idref='Idf804em10bd9891f14mm166a'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1233bdcm108256b20abmm26d9' name='expression-text-has-context' visibility='public'>
<memberEnd xmi:idref='I1233bdcm108256b20abmm26df'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1233bdcm108256b20abmm26df' name='__inv_interpretation-context' type='I167e3a5m10018e5d720mm7ad9' association='I1233bdcm108256b20abmm26d9' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1233bdcm108256b20abmm26dc'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm7de8' name='aggregation-has-member-type' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7de5'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7de5' name='__inv_member-type' type='I808680m1128bdf3bcfm8b1' association='I167e3a5m10018e5d720mm7de8' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7ddc'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I9ced84m109b2851e95mm120d' name='local-element-has-local-scope' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000163' body='&lt;p&gt;represents the relationship between a LocalScope and the LocalElements that are defined in it.  
(A LocalScope that is an AlgorithmScope may also be the scope of CommonElements.)&lt;/p&gt;
&lt;note&gt;Note:  This relationship is very much conceptual.  Not every kind of LocalElement can be defined in every LocalScope.  
In fact, only NamedVariables can be defined in every LocalScope.&lt;/note&gt;
&lt;note&gt;See Clause 10.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I9ced84m109b2851e95mm120d'/>
</ownedComment>
<memberEnd xmi:idref='I9ced84m109b2851e95mm1213'/>
<memberEnd xmi:idref='I9ced84m109b2851e95mm1210'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1003cfd8422mm7847' name='Instance-of-type' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000164' body='represents the abstract relationship between Instances and the DataTypes they instantiate.  For each subtype of DataType, the refined relationship to its instances is also modeled.'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7847'/>
</ownedComment>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7844'/>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7839'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm7d46' name='attribute-has-data-type' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000165' body='&lt;p&gt;represents the relationship between an Attribute and the AttributeType that characterizes all values of the Attribute. &lt;/p&gt;
&lt;note&gt;See 9.2.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7d46'/>
</ownedComment>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7d43'/>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7d3a'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm7983' name='redeclaration-specifies-type' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7980'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7980' name='__inv_restricted-type' type='I167e3a5m10018e5d720mm79c9' association='I167e3a5m10018e5d720mm7983' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7977'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='If8093fm102ff7b3af0mm43eb' name='type-has-constraints' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000166' body='&lt;p&gt;an abstract relationship, represents the association between an AttributeType and a DomainConstraint that restricts the value domain of the AttributeType&lt;/p&gt;
&lt;note&gt;See 8.1.6, 8.1.7, 8.2, and 9.1  of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='If8093fm102ff7b3af0mm43eb'/>
</ownedComment>
<memberEnd xmi:idref='If8093fm102ff7b3af0mm43f1'/>
<memberEnd xmi:idref='If8093fm102ff7b3af0mm43ee'/>
</ownedMember>
<ownedRule xmi:type='cmof:Constraint' xmi:id='ix_00000e' name='InvertibleAttribute.creates-relationship.derivation'>
<constrainedElement xmi:idref='I1b9bbe8m10bd611c411mm1618'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_000167' language='OCL' body='self-&gt;creates-relationship = self-&gt;models-role-&gt;in-relationship;'/>
</ownedRule>
<ownedRule xmi:type='cmof:Constraint' xmi:id='ix_00000d' name='Relationship.based-on.derivation'>
<constrainedElement xmi:idref='I1eaf25dm106bd879899mm2df4'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_000168' language='OCL' body='self-&gt;based-on = self-&gt;range-&gt;domain-view;'/>
</ownedRule>
<ownedRule xmi:type='cmof:Constraint' xmi:id='ix_00000c' name='EntityType.attributes.derivation'>
<constrainedElement xmi:idref='I167e3a5m10018e5d720mm7f96'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_000169' language='OCL' body='self-&gt;attributes = declares.declares + subtype-of.declares.declares'/>
</ownedRule>
<ownedRule xmi:type='cmof:Constraint' xmi:id='ix_00000b' name='EntityType.plays-domain-role.derivation'>
<constrainedElement xmi:idref='I167e3a5m10018e5d720mm7f96'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_00016a' language='OCL' body='self-&gt;plays-domain-role = ((self-&gt;attributes) * extent(InvertibleAttribute))-&gt;inverse-&gt;models-rolecreates-relationship-&gt;domain'/>
</ownedRule>
<ownedRule xmi:type='cmof:Constraint' xmi:id='ix_00000a' name='DomainRole.domain.derivation'>
<constrainedElement xmi:idref='I13ceab3m106c229c32emm2c07'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_00016b' language='OCL' body='self-&gt;domain = self-&gt;in-relationship-&gt;range-&gt;domain-view-&gt;owning-entity'/>
</ownedRule>
<ownedRule xmi:type='cmof:Constraint' xmi:id='ix_000009' name='EntityType.plays-range-role.derivation'>
<constrainedElement xmi:idref='I167e3a5m10018e5d720mm7f96'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_00016c' language='OCL' body='self-&gt;plays-range-role = self-&gt;used-in-&gt;models-role;'/>
</ownedRule>
<ownedRule xmi:type='cmof:Constraint' xmi:id='ix_000008' name='RangeRole.range.derivation'>
<constrainedElement xmi:idref='I13ceab3m106c229c32emm2c1f'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_00016d' language='OCL' body='self-&gt;range = self-&gt;domain-view-&gt;range-type;'/>
</ownedRule>
<ownedRule xmi:type='cmof:Constraint' xmi:id='ix_000007' name='InterfacedElement.interfacing-schema.derivation'>
<constrainedElement xmi:idref='I88cf9em1096f16eabcmm1203'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_00016e' language='OCL' body='self-&gt;interfacing-schema = self-&gt;included-in-&gt;interfacing-schema'/>
</ownedRule>
<ownedRule xmi:type='cmof:Constraint' xmi:id='ix_000006' name='Schema.interfaced-elements.derivation'>
<constrainedElement xmi:idref='I167e3a5m10018e5d720mm790f'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_00016f' language='OCL' body='self-&gt;interfaced-elements = self-&gt;interfaces-&gt;interfaced-elements;'/>
</ownedRule>
<ownedRule xmi:type='cmof:Constraint' xmi:id='ix_000005' name='ParametricElement.namespace.derivation'>
<constrainedElement xmi:idref='I808680m1128bdf3bcfmc5f'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_000170' language='OCL' body='self-&gt;namespace = self-&gt;source-&gt;namespace;'/>
</ownedRule>
<ownedRule xmi:type='cmof:Constraint' xmi:id='ix_000004' name='InterfacedElement.kind.derivation'>
<constrainedElement xmi:idref='I88cf9em1096f16eabcmm1203'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_000171' language='OCL' body='self-&gt;kind = self-&gt;included-in-&gt;kind;'/>
</ownedRule>
<ownedRule xmi:type='cmof:Constraint' xmi:id='ix_000003' name='DomainRole.id.derivation'>
<constrainedElement xmi:idref='I13ceab3m106c229c32emm2c07'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_000172' language='OCL' body='self-&gt;id = self-&gt;range-view-&gt;id'/>
</ownedRule>
<ownedRule xmi:type='cmof:Constraint' xmi:id='ix_000002' name='RangeRole.id.derivation'>
<constrainedElement xmi:idref='I13ceab3m106c229c32emm2c1f'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_000173' language='OCL' body='self-&gt;id = self-&gt;domain-view-&gt;id'/>
</ownedRule>
<ownedRule xmi:type='cmof:Constraint' xmi:id='ix_000001' name='SingleEntityType.id.derivation'>
<constrainedElement xmi:idref='I1c21ed3m103f6d4f890mm43c6'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_000174' language='OCL' body='self-&gt;id = self-&gt;derived-from-&gt;id'/>
</ownedRule>

</ownedMember>
<ownedMember xmi:id='I17779e3m1026e8ed5e9mm7d71' xmi:type='cmof:Package' name='Instances' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000175' body='The Instances Package contains the model of instances that conform to the EXPRESS types. This package is needed to
support many of the concepts in EXPRESS rules.'>
<annotatedElement xmi:idref='I17779e3m1026e8ed5e9mm7d71'/>
</ownedComment>
<packageMerge xmi:type='cmof:PackageMerge' xmi:id='_16_0_1_852026a_1253921210968_410418_679'>
<mergedPackage xmi:type='cmof:Package' xmi:idref='_16_0_1_852026a_1253921107156_154143_662'/>
</packageMerge>
<packageImport xmi:type='cmof:PackageImport' xmi:id='_14_0_852026a_1203968159421_618504_4990'>
<importedPackage xmi:type='cmof:Package' xmi:idref='I17779e3m1026e8ed5e9mm7d82'/>
</packageImport>
<ownedMember xmi:type='cmof:PrimitiveType' xmi:id='_14_0_852026a_1203975043203_787289_5622' name='EntityName' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000176' body='&lt;p&gt;represents the unique underlying identity of an entity instance, expressed as some kind of identifier.  
The nature of this identifier is not defined in EXPRESS, but it is stated that this identifier is not necessarily constructed from any group of modeled attribute values.  
Each EntityName is unique within a Population, but the actual namespace of an EntityName is not specified in Part 11.&lt;/p&gt;
&lt;note&gt;See clause 5 of ISO 10303-11:2004.&lt;/note&gt;
'>
<annotatedElement xmi:idref='_14_0_852026a_1203975043203_787289_5622'/>
</ownedComment>
<general xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#String'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1026e8ed5e9mm73c0' name='Constant' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000177' body='&lt;p&gt;a CommonElement that denotes a single instance value throughout each of its life cycles.  The instance value is described by an Expression that evaluates to the value to be used in each instantiation of the Constant.&lt;/p&gt;
&lt;p&gt;
For a Constant that is defined as a SchemaElement, the value is unchanged across all algorithms and rules, and over all corresponding populations.  It is a constant and names a specific Instance.  Its :value expression may only refer to Instances and other Constants.  A Constant defined in an AlgorithmScope, however, assumes a value for a given invocation of the Algorithm or Rule, but may assume different values for different invocations.  Its :value expression may refer to parameters of the Algorithm or to elements of the population.
&lt;/p&gt;
&lt;note&gt;Note: &quot;Constant&quot; is a reserved word in EXPRESS; if this metamodel is converted to EXPRESS, this class must be renamed.&lt;/note&gt;
&lt;note&gt;See clause 9.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1026e8ed5e9mm73c0'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I118958em102d5a77152mm7d06'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1025f5930bdmm7eb6' name='value-expression' type='I167e3a5m10018e5d720mm7ad9' association='I17779e3m1025f5930bdmm7ec2' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000178' body='&lt;p&gt;represents the Expression that specifies the value of the Constant for a given lifetime.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1025f5930bdmm7eb6'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1160e64m10462d0e89emm35f8' name='actual-value' type='I17779e3m1003cfd8422mm7b5c' association='I1160e64m10462d0e89emm35f5' visibility='public' isDerived='true' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000179' body='&lt;p&gt;represents the value resulting from evaluating the value-expression. 
This value may only be computable for a given population, or it may require computational capabilities a given agent does not have.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1160e64m10462d0e89emm35f8'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1026e8ed5e9mm7396' name='data-type' type='I167e3a5m10240564a77mm7c95' association='I17779e3m1026e8ed5e9mm73a4' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00017a' body='&lt;p&gt;represents the relationship between the Constant and the DataType of the Instance denoted by the Constant.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1026e8ed5e9mm7396'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7e2b' name='SimpleValue' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00017b' body='&lt;p&gt;a ConcreteValue that consists of a single atomic information unit of a data type defined in the EXPRESS language itself. &lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7e2b'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1026e8ed5e9mm7ba1'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1b9bbe8m10bde875f93mm14d2' name='name' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#String'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00017c' body='&lt;p&gt;the representation of the value, assumed to be a character string.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1b9bbe8m10bde875f93mm14d2'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1003cfd8422mm795b' name='SpecializedValue' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00017d' body='&lt;p&gt;a TypedInstance that is a value of a SpecializedType; every SpecializedInstance is represented by some ConcreteValue.&lt;/p&gt;
'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm795b'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I118958em102d5a77152mm7fe6'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7925' name='of-type' type='I167e3a5m10018e5d720mm7eca' association='I17779e3m1003cfd8422mm7928' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00017e' body='&lt;p&gt;represents the relationship between a SpecializedValue and its data type.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7925'/>
</ownedComment>
<subsettedProperty xmi:id='I17779e3m1003cfd8422mm7839'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7938' name='fundamental-value' type='I17779e3m1026e8ed5e9mm7ba1' association='I17779e3m1003cfd8422mm7946' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00017f' body='&lt;p&gt;represents the relationship between a SpecializedInstance and the &quot;fundamental&quot; ConcreteValue that is used to represent that Instance.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7938'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1003cfd8422mm7c10' name='ARRAYValue' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000180' body='&lt;p&gt;an AggregateValue, representing a value of an EXPRESS ARRAY data type: a set of pairs of the form (index value, domain value) where the index value is selected from a finite range of integers, and each such value occurs in exactly one pair, and the domain value is an instance of the member-type of the ARRAY.&lt;/p&gt;
'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7c10'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1003cfd8422mm7b92'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7ba3' name='of-type' type='I167e3a5m10018e5d720mm7dcf' association='I17779e3m1003cfd8422mm7baf' visibility='public' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000181' body='&lt;p&gt;represents the relationship between the ARRAYValue and the ARRAYTypes of which it is an instance.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7ba3'/>
</ownedComment>
<subsettedProperty xmi:id='I17779e3m1003cfd8422mm7839'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I14a3da8m1040ae784acmm4265' name='member-slot' type='I118958em102d5a77152mm7f3d' association='I14a3da8m1040ae784acmm4262' visibility='public' aggregation='composite' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000182' body='&lt;p&gt;represents the relationship between an ArrayValue and each of its distinct slots for member values.&lt;/p&gt;'>
<annotatedElement xmi:idref='I14a3da8m1040ae784acmm4265'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1003cfd8422mm7c45' name='BAGValue' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000183' body='&lt;p&gt;an AggregateValue, representing a value of an EXPRESS BAG data type: a collection of instances of the member-type of the BAG, in which a given instance can appear more than once.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7c45'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1003cfd8422mm7b92'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7bd3' name='of-type' type='I17779e3m1001f33ccb7mm7ccf' association='I17779e3m1003cfd8422mm7bdf' visibility='public' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000184' body='&lt;p&gt;represents the relationship between the BAGValue and the BAGTypes of which it is an instance.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7bd3'/>
</ownedComment>
<subsettedProperty xmi:id='I17779e3m1003cfd8422mm7839'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I14a3da8m1040ae784acmm432c' name='member-slot' type='I14a3da8m1040ae784acmm4359' association='I14a3da8m1040ae784acmm4329' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000185' body='&lt;p&gt;represents the relationship between a BagValue and each of its distinct member values.  
Each distinct member value is represented by a BagMember (slot) that counts its occurrences in the bag.&lt;/p&gt;'>
<annotatedElement xmi:idref='I14a3da8m1040ae784acmm432c'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1003cfd8422mm7d98' name='BooleanValue' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000186' body='&lt;p&gt;a SimpleValue,  a value of the EXPRESS data type BOOLEAN: TRUE, FALSE&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7d98'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1003cfd8422mm7d7f'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1003cfd8422mm7c2a' name='LISTValue' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000187' body='&lt;p&gt;an AggregateValue, representing a value of an EXPRESS LIST data type: a sequence of instances of the member-type of the LIST.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7c2a'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1003cfd8422mm7b92'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7bbb' name='of-type' type='I17779e3m1001f33ccb7mm7c9b' association='I17779e3m1003cfd8422mm7bc7' visibility='public' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000188' body='&lt;p&gt;represents the relationship between the LISTValue and the LISTTypes of which it is an instance.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7bbb'/>
</ownedComment>
<subsettedProperty xmi:id='I17779e3m1003cfd8422mm7839'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I14a3da8m1040ae784acmm423a' name='member-slot' type='I118958em102d5a77152mm7edd' association='I14a3da8m1040ae784acmm4237' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000189' body='&lt;p&gt;represents the relationship between a ListValue and each of its distinct slots for member values.  
Each member-slot represents a position in the ListValue.&lt;/p&gt;'>
<annotatedElement xmi:idref='I14a3da8m1040ae784acmm423a'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1003cfd8422mm7d7f' name='LogicalValue' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00018a' body='&lt;p&gt;a SimpleValue,  a value of the EXPRESS data type LOGICAL: TRUE, UNKNOWN, FALSE.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7d7f'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7e2b'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1242150849359_155833_1861' name='of-type' type='I17779e3m10283aab711mm7dd0' association='_16_0_1_852026a_1242150849359_200605_1860' visibility='public' upper='*'>
<subsettedProperty xmi:id='I17779e3m1003cfd8422mm7839'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1003cfd8422mm7d1b' name='NumberValue' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00018b' body='&lt;p&gt;a SimpleValue,  a value of the EXPRESS data type NUMBER: any numeric value with its mathematical interpretation.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7d1b'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7e2b'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1242149301796_769613_1554' name='of-type' type='I17779e3m10283aab711mm7de8' association='_16_0_1_852026a_1242149301796_717745_1553' visibility='public' upper='*'>
<subsettedProperty xmi:id='I17779e3m1003cfd8422mm7839'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1003cfd8422mm7d4d' name='RealValue' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00018c' body='&lt;p&gt;a SimpleValue,  a value of the EXPRESS data type REAL: supposedly a mathematical &quot;real&quot; value, but properly a computational fixed or floating-point value.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7d4d'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1003cfd8422mm7d1b'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1003cfd8422mm7d66' name='IntegerValue' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00018d' body='&lt;p&gt;a SimpleValue,  a value of the EXPRESS data type INTEGER: any mathematical integer value.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7d66'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1003cfd8422mm7d4d'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1003cfd8422mm7d33' name='StringValue' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00018e' body='&lt;p&gt;a SimpleValue, a value of the EXPRESS data type STRING: a sequence of character codes from the ISO 10646-1 Basic Multilanguage Plane.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7d33'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7e2b'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1242149634359_605710_1704' name='of-type' type='I167e3a5m10240564a77mm7f94' association='_16_0_1_852026a_1242149634359_527236_1703' visibility='public' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00018f' body='the StringType(s) that are instantiated in the StringValue.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1242149634359_605710_1704'/>
</ownedComment>
<subsettedProperty xmi:id='I17779e3m1003cfd8422mm7839'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1003cfd8422mm7db0' name='BinaryValue' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000190' body='&lt;p&gt;an AggregateValue, representing a value of an EXPRESS BAG data type: a collection of instances of the member-type of the BAG, in which a given instance can appear more than once.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7db0'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7e2b'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1242148755078_269192_1404' name='of-type' type='I167e3a5m10240564a77mm7f6b' association='_16_0_1_852026a_1242148755078_11523_1403' visibility='public' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000191' body='the BinaryType(s) that are instantiated in the BinaryValue.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1242148755078_269192_1404'/>
</ownedComment>
<subsettedProperty xmi:id='I17779e3m1003cfd8422mm7839'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1003cfd8422mm7b92' name='AggregateValue' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000192' body='&lt;p&gt;a ConcreteValue that is composite, consisting of a collection of Instances from a given member DataType.&lt;/p&gt;
'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7b92'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1026e8ed5e9mm7ba1'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1003cfd8422mm7e2b' name='SETValue' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000193' body='&lt;p&gt;an AggregateValue representing a value of a SET data type.&lt;/p&gt;  
&lt;note&gt;Note: A SETValue can be viewed as a specialization of a BAGValue in which the &quot;count&quot; value for each BagMember is 1. 
But technically, the conversion of the SETValue to the corresponding BAGValue is a coercion, because the behavior of the resulting BAGValue is different.  
For example, the union of two SETValues is different from the union of the corresponding BAGValues.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7e2b'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1003cfd8422mm7b92'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7bed' name='of-type' type='I17779e3m1001f33ccb7mm7cb5' association='I17779e3m1003cfd8422mm7bfb' visibility='public' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000194' body='&lt;p&gt;represents the relationship between the SETValue and the SETTypes of which it is an instance.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7bed'/>
</ownedComment>
<subsettedProperty xmi:id='I17779e3m1003cfd8422mm7839'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7b31' name='member-value' type='I17779e3m1003cfd8422mm7b5c' association='I17779e3m1003cfd8422mm7b3f' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000195' body='&lt;p&gt;represents the relationship between a SETValue and the Instances that appear in it.  
Any given Instance can take this role at most once for any given SetValue.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7b31'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m1024a81540emm7a58' name='PartialEntityValue' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000196' body='&lt;p&gt;an Instance that is a collection of Attributes (of SingleEntityTypes) with associated values.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m1024a81540emm7a58'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1003cfd8422mm7b5c'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m1024a81540emm7a39' name='of-type' type='I167e3a5m1024a81540emm7d31' association='I167e3a5m1024a81540emm7a45' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000197' body='&lt;p&gt;represents the relationship between a PartialEntityValue and the PartialEntityType that identifies the collection of SingleEntityTypes for which the PartialEntityValue provides values.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m1024a81540emm7a39'/>
</ownedComment>
<subsettedProperty xmi:id='I17779e3m1003cfd8422mm7839'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1cdecf7m1040faf3bf2mm3ed4' name='components' type='I1cdecf7m1040faf3bf2mm411e' association='I1cdecf7m1040faf3bf2mm3ed1' visibility='public' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000198' body='&lt;p&gt;the SingleEntityValues that make up the PartialEntityValue. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1cdecf7m1040faf3bf2mm3ed4'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I118958em102d5a77152mm7fe6' name='TypedInstance' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000199' body='&lt;p&gt;an abstract classifier, a subtype of Instance comprising those Instances that are instances of a NamedType.
Only a TypedInstance can instantiate a SelectType.&lt;/p&gt;'>
<annotatedElement xmi:idref='I118958em102d5a77152mm7fe6'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1003cfd8422mm7b5c'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1241582639812_955776_722' name='satisfies-type' type='I167e3a5m10018e5d720mm7eb5' association='_16_0_1_852026a_1241582639812_659926_721' visibility='public' isDerived='true' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00019a' body='&lt;p&gt;represents the relationship between a TypedInstance and the SelectTypes of which it is an allowable instance.&lt;/p&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1241582639812_955776_722'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1241582240828_972545_709' name='of-type' type='I167e3a5m10018e5d720mm7fd9' association='_16_0_1_852026a_1241582240781_64712_706' visibility='public' isAbstract='true' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00019b' body='&lt;p&gt;represents the relationship between a TypedInstance and the NamedTypes of which it is an instance.  A TypedInstance can only be an instance of NamedTypes.&lt;/p&gt;
'>
<annotatedElement xmi:idref='_16_0_1_852026a_1241582240828_972545_709'/>
</ownedComment>
<subsettedProperty xmi:id='I17779e3m1003cfd8422mm7839'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I118958em102d5a77152mm7f3d' name='ArrayMember' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00019c' body='&lt;p&gt;Represents a single element of an ARRAYValue seen as a relation.  It maps one index-value to one value of the base data type (the &quot;member&quot; value).  In the case of an ARRAY OF OPTIONAL, the member-value need not be present.&lt;/p&gt;'>
<annotatedElement xmi:idref='I118958em102d5a77152mm7f3d'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em102d5a77152mm7f30' name='index' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Integer'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00019d' body='&lt;p&gt;represents the index value to which the ArrayMember corresponds. 
In a given ARRAYValue, there is exactly one ArrayMember that corresponds to each index value.&lt;/p&gt;'>
<annotatedElement xmi:idref='I118958em102d5a77152mm7f30'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em102d5a77152mm7ef2' name='member-value' type='I17779e3m1003cfd8422mm7b5c' association='I118958em102d5a77152mm7efe' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00019e' body='&lt;p&gt;for a given ARRAYValue, represents the relationship between an index value (represented by an ArrayMember) and the Instance value that is the image of that index value in the base type. &lt;/p&gt;'>
<annotatedElement xmi:idref='I118958em102d5a77152mm7ef2'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I118958em102d5a77152mm7edd' name='ListMember' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00019f' body='&lt;p&gt;represents one position in a ListValue and the instance of the member-type in that position.&lt;/p&gt;'>
<annotatedElement xmi:idref='I118958em102d5a77152mm7edd'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em102d5a77152mm7ed0' name='position' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Integer'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001a0' body='&lt;p&gt;the ordinal identifier for the position in the sequence.&lt;/p&gt;'>
<annotatedElement xmi:idref='I118958em102d5a77152mm7ed0'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em102d5a77152mm7e90' name='member-value' type='I17779e3m1003cfd8422mm7b5c' association='I118958em102d5a77152mm7e9e' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001a1' body='&lt;p&gt;represents the relationship between a position in a LISTValue (represented by a ListMember) and the Instance that appears in that position.&lt;/p&gt;'>
<annotatedElement xmi:idref='I118958em102d5a77152mm7e90'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I14a3da8m1040ae784acmm4359' name='BagMember' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001a2' body='&lt;p&gt;Represents the relationship between a BAGValue and one value of the base data type (the &quot;member&quot; value).  It has a &quot;count&quot; attribute that represents the number of times the given member-value occurs in the BAGValue.&lt;/p&gt;'>
<annotatedElement xmi:idref='I14a3da8m1040ae784acmm4359'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I14a3da8m1040ae784acmm4342' name='count' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Integer'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001a3' body='&lt;p&gt;represents the relationship between a BagMember and the number of occurrences of the member-value that it represents, i.e. the number of occurrences of that member-value in the bag. &lt;/p&gt;'>
<annotatedElement xmi:idref='I14a3da8m1040ae784acmm4342'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I14a3da8m1040ae784acmm4303' name='member-value' type='I17779e3m1003cfd8422mm7b5c' association='I14a3da8m1040ae784acmm4300' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001a4' body='&lt;p&gt;represents the relationship between a BagMember and the Instance that it includes, one or more times, in the BAGValue.&lt;/p&gt;'>
<annotatedElement xmi:idref='I14a3da8m1040ae784acmm4303'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I14a3da8m1040ae784acmm42dd' name='GenericAggregate' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001a5' body='&lt;p&gt;An AggregateValue representing the output of an AggregateInitializer.  
It is interpreted as a LIST value whose member-type is GENERIC, but actually constrained to the common DataType of all the Expressions in the Initializer.
It can be coerced to an ARRAY, BAG, SET or LIST value of the appropriate member-type, according to the context of its use.&lt;/p&gt;
&lt;note&gt;Note:  Certain GenericAggregate values have a syntactic parse as a LIST of instances, but no clear semantics as to data type;  this is a defect in Part 11.&lt;/note&gt;
&lt;note&gt;See 12.9 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I14a3da8m1040ae784acmm42dd'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1003cfd8422mm7c2a'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1cdecf7m1040faf3bf2mm4131' name='EntityValue' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001a6' body='&lt;p&gt;A PartialEntityValue that completely describes an Instance of some EntityType(s)&lt;/p&gt;'>
<annotatedElement xmi:idref='I1cdecf7m1040faf3bf2mm4131'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m1024a81540emm7a58'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1cdecf7m1040faf3bf2mm3e93' name='corresponds to' type='I167e3a5m10018e5d720mm7f96' association='I1cdecf7m1040faf3bf2mm3e90' visibility='public' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001a7' body='&lt;p&gt;represents the EntityType(s) whose complete modeled description comprises a set of Attributes that is contained in the EntityValue.  
The complete modeled description of an EntityType is a set of SingleEntityTypes, and the EntityValue contains SingleEntityValues corresponding to each of them.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1cdecf7m1040faf3bf2mm3e93'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1cdecf7m1040faf3bf2mm405c' name='describes' type='I1160e64m10462d0e89emm33fd' association='I1cdecf7m1040faf3bf2mm4056' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001a8' body='&lt;p&gt;represents the EntityInstances, if any, whose current state is described by the EntityValue.  
This direction of the association is only significant when the EntityValue is used as the means of identification of a particular EntityInstance.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1cdecf7m1040faf3bf2mm405c'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1cdecf7m1040faf3bf2mm411e' name='SingleEntityValue' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001a9' body='&lt;p&gt;A collection of values for the explicit Attributes of exactly one SingleEntityType.&lt;/p&gt;
&lt;note&gt;Note:  A SingleEntityValue is not an Instance; it is a part of a PartialEntityValue.  
It cannot be the result of an Expression, nor can it be the value of any EXPRESS concept.  
The result of a PartialEntityConstructor is the .equivalent PartialEntityValue.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1cdecf7m1040faf3bf2mm411e'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1cdecf7m1040faf3bf2mm3f4a' name='of-type' type='I1c21ed3m103f6d4f890mm43c6' association='I1cdecf7m1040faf3bf2mm3f47' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001aa' body='&lt;p&gt;represents the relationship between a SingleEntityValue and the SingleEntityType that declares the Attributes whose values are contained in the SingleEntityValue.&lt;/p&gt;
&lt;note&gt;While the relationship between a SingleEntityValue and a SingleEntityType appears to be an Instance-to-Type relationship, it is not treated as such in the metamodel, 
because SingleEntityValues are not Instances – they can only appear as components of a PartialEntityValue. &lt;/note&gt;'>
<annotatedElement xmi:idref='I1cdecf7m1040faf3bf2mm3f4a'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1160e64m10462d0e89emm35cd' name='equivalent' type='I167e3a5m1024a81540emm7a58' association='I1160e64m10462d0e89emm35ca' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001ab' body='&lt;p&gt;represents the relationship between a SingleEntityValue and the PartialEntityValue that consists of exactly that one SingleEntityValue.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1160e64m10462d0e89emm35cd'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1160e64m10462d0e89emm350f' name='properties' type='I1160e64m10462d0e89emm35a6' association='I1160e64m10462d0e89emm350c' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001ac' body='&lt;p&gt;represents the relationship of the SingleEntityValue to the AttributeValue assignments it comprises.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1160e64m10462d0e89emm350f'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1cdecf7m1040faf3bf2mm3e69' name='SingleLeafInstance' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001ad' body='&lt;p&gt;An EntityInstance that is completely characterized by a single EntityType (and all its supertypes) that is declared in the governing Schema&lt;/p&gt;
&lt;note&gt;This concept does not appear in Part 11, but is the &quot;characterized instance&quot; that is the basis for the &quot;internal mapping&quot; in ISO 10303-21:2002.&lt;/note&gt;
'>
<annotatedElement xmi:idref='I1cdecf7m1040faf3bf2mm3e69'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1160e64m10462d0e89emm33fd'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7fc8' name='characterizing-type' type='I167e3a5m10018e5d720mm7f96' association='I17779e3m1003cfd8422mm7fd6' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001ae' body='&lt;p&gt;represents the unique EntityType classifier that has (defines or inherits) exactly all of the Attributes present in the representation of the EntityInstance.  Not every EntityInstance has a characterizing-type -- it may be an &quot;instance-of&quot; two or more EntityTypes for which the intersection is not explicitly modeled, but permitted by the model to be non-empty.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7fc8'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1cdecf7m1040faf3bf2mm3e52' name='MultiLeafInstance' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001af' body='&lt;p&gt;A (complex) EntityInstance that is a valid instance of more than one EntityType and whose state includes more SingleEntityValues than are declared for, or inherited by, any named EntityType defined in the governing Schema.
The subtype/supertype graph corresponding to such an EntityInstance has multiple &quot;leaf&quot; nodes.&lt;/p&gt;
&lt;note&gt;This concept appears in Part 11 only in 3.3.12, but it appears in ISO 10303-21:2002 as an &quot;uncharacterized instance&quot; whose representation requires the &quot;external mapping&quot;.&lt;/note&gt;
'>
<annotatedElement xmi:idref='I1cdecf7m1040faf3bf2mm3e52'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1160e64m10462d0e89emm33fd'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1160e64m10462d0e89emm35a6' name='AttributeValue' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001b0' body='&lt;p&gt;represents the assignment of a value to a given Attribute of the EntityType corresponding to the SingleEntityValue.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1160e64m10462d0e89emm35a6'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1160e64m10462d0e89emm34bd' name='actual-value' type='I17779e3m1003cfd8422mm7b5c' association='I1160e64m10462d0e89emm34ba' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001b1' body='&lt;p&gt;represents the value assigned to the Attribute by the AttributeValue.  If the Attribute is declared OPTIONAL, it is possible that no value is assigned.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1160e64m10462d0e89emm34bd'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1160e64m10462d0e89emm34e6' name='attribute' type='I167e3a5m10018e5d720mm7b23' association='I1160e64m10462d0e89emm34e3' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001b2' body='&lt;p&gt;represents the relationship between the AttributeValue assignment and the ExplicitAttribute to which it assigns a value.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1160e64m10462d0e89emm34e6'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1160e64m10462d0e89emm33fd' name='EntityInstance' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001b3' body='&lt;p&gt;a TaggedInstance that represents an EXPRESS entity instance -- an instance of an entity data type, a view of an object that incorporates those properties and relationships that are significant to some particular purpose(s).
The EntityInstance is distinct from the EntityValue -- a collection of information about the object that represents those properties and relationships.&lt;/p&gt;
&lt;note&gt;See clause 5 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1160e64m10462d0e89emm33fd'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I118958em102d5a77152mm7fe6'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1160e64m10462d0e89emm330f' name='id' type='_14_0_852026a_1203975043203_787289_5622' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001b4' body='&lt;p&gt;represents a nominal identifier for an EntityInstance that distinguishes it from other EntityInstances. 
The nature of this identifier is not defined in EXPRESS, but it is stated that this identifier is not necessarily constructed from any group of modeled attribute values.  
Each EntityName is unique within a Population, but the actual namespace of an EntityName is not specified in Part 11.&lt;/p&gt;
&lt;note&gt;See clause 5 of ISO 10303-11:2004.&lt;/note&gt;
'>
<annotatedElement xmi:idref='I1160e64m10462d0e89emm330f'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7fe9' name='of-type' type='I167e3a5m10018e5d720mm7f96' association='I17779e3m1003cfd8422mm7ff7' visibility='public' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001b5' body='&lt;p&gt;represents the relationship between an EntityInstance and each of the EntityType classifiers it satisfies.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7fe9'/>
</ownedComment>
<subsettedProperty xmi:id='I17779e3m1003cfd8422mm7839'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1cdecf7m1040faf3bf2mm4059' name='state' type='I1cdecf7m1040faf3bf2mm4131' association='I1cdecf7m1040faf3bf2mm4056' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001b6' body='&lt;p&gt;represents the relationship between the EntityInstance and the EntityValue that describes the current state of the Instance (in terms of its modeled properties) at any given time. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1cdecf7m1040faf3bf2mm4059'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I5e593m10998272245mm1106' name='TypeName' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001b7' body='&lt;p&gt;A TypeName is a reference to a DataType that has the form of a StringValue.  
It is an instance of StringType TYPE.  
TypeNames are produced as the result-type of the UnaryOperator TypeOf.  
They have reserved syntax and reserved interpretation.&lt;/p&gt;
&lt;note&gt;Note:  The result of TypeOf is only well-defined for NamedTypes defined in the Schema, although it can also produce EXPRESS keywords.  
Some problems arise with interfaced NamedTypes, and NamedTypes defined in AlgorithmScopes.&lt;/note&gt;
&lt;note&gt;See Clause 15.25 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I5e593m10998272245mm1106'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1003cfd8422mm7d33'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1286c71m10a1909d8b9mmaf7' name='represents' type='I118958em102d5a77152mm7ca6' association='_15_5_852026a_1236032064796_114216_16696' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001b8' body='&lt;p&gt;the (structured) ScopedId for the NamedType, of which the TypeName is a String representation.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1286c71m10a1909d8b9mmaf7'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I5e593m10998272245mm1003' name='refers-to' type='I167e3a5m10018e5d720mm7fd9' association='I5e593m10998272245mm1000' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001b9' body='&lt;p&gt;represents the relationship between a TypeName and the NamedType to which it refers.&lt;/p&gt;'>
<annotatedElement xmi:idref='I5e593m10998272245mm1003'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I5e593m10998272245mm10f3' name='RoleName' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001ba' body='&lt;p&gt;A RoleName is a reference to an Attribute that has the form of a StringValue.  
It is an instance of StringType ROLE.  
RoleNames are produced as the result-type of the UnaryOperator RolesOf, and used as the formal parameter type for UsedIn.  
They have reserved syntax and reserved interpretation.&lt;/p&gt;
&lt;note&gt;Note:  The result of RolesOf is only well-defined for Attributes of EntityTypes defined in the Schema.  
Some problems arise with interfaced EntityTypes, renamed Attributes, and attributes of EntityTypes defined in AlgorithmScopes.&lt;/note&gt;
&lt;note&gt;See Clause 15.25 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I5e593m10998272245mm10f3'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1003cfd8422mm7d33'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1286c71m10a1909d8b9mmae3' name='represents' type='I118958em102d5a77152mm7ca6' association='_15_5_852026a_1236032095859_839563_16765' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001bb' body='&lt;p&gt;represents the relationship between the RoleName -- a StringValue -- and the (structured) TypeScopedId for the Attribute, of which it is a representation.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1286c71m10a1909d8b9mmae3'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I5e593m10998272245mmfcd' name='refers-to' type='I167e3a5m10018e5d720mm7d99' association='I5e593m10998272245mmfca' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001bc' body='&lt;p&gt;represents the relationship between a RoleName and the Attribute to which it refers.&lt;/p&gt;'>
<annotatedElement xmi:idref='I5e593m10998272245mmfcd'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7926' name='Population' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001bd' body='&lt;p&gt;represents the collection of all entity instances (instances of NamedTypes?) over which the LocalRules and GlobalRules of a schema are to be evaluated&lt;/p&gt;
&lt;note&gt;See clause 5 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7926'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1025f5930bdmm7def' name='composition' type='I17779e3m1003cfd8422mm7b5c' association='I17779e3m1025f5930bdmm7dfb' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001be' body='&lt;p&gt;represents the relationship between a Population and the Instances the make it up.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1025f5930bdmm7def'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm78e8' name='governing-schema' type='I167e3a5m10018e5d720mm790f' association='I167e3a5m10018e5d720mm78eb' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001bf' body='&lt;p&gt;represents the relationship between a Population and a Schema that governs  (models, describes) it.&lt;/p&gt;
&lt;note&gt;See 9.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm78e8'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm780f' name='extents' type='I167e3a5m10018e5d720mm7830' association='I167e3a5m10018e5d720mm781b' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001c0' body='&lt;p&gt;the collection of Extents of EntityTypes that make up the Population.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm780f'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1fe40d5m10bde1ca5c0mm15d5' name='Indeterminate' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001c1' body='&lt;p&gt;The class that contains only the INDETERMINATE object.&lt;/p&gt;
&lt;note&gt;See 14.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1fe40d5m10bde1ca5c0mm15d5'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1003cfd8422mm7b5c'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7830' name='Extent' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001c2' body='&lt;p&gt;the collection of all Instances in a given Population that satisfy the specified EntityType.
That is, Extent is the SetValue that is the intersection of EntityType.instances and  Population.composition&lt;/p&gt;
&lt;note&gt;See 9.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7830'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1003cfd8422mm7e2b'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1026e8ed5e9mm771f' name='id' type='I118958em102d5a77152mm7ca6' visibility='public' isDerived='true'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001c3' body='&lt;p&gt;the identifier for the EntityType, used as a name for the Extent within the body of the Rule.&lt;/p&gt;
&lt;note&gt;See 9.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1026e8ed5e9mm771f'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7800' name='for-type' type='I167e3a5m10018e5d720mm7f96' association='I167e3a5m10018e5d720mm7803' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001c4' body='&lt;p&gt;represents the relationship between an Extent and the EntityType to which it corresponds.&lt;/p&gt;
&lt;note&gt;See 9.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7800'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1160e64m106bcd084e1mm3243' name='content' type='I1160e64m10462d0e89emm33fd' association='I1160e64m106bcd084e1mm3240' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001c5' body='&lt;p&gt;represents the relationship between an Extent (within a Population) and the EntityInstances it contains.
Extent is a SetValue and Extent.content is just the relationship between that SetValue and its members.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1160e64m106bcd084e1mm3243'/>
</ownedComment>
<subsettedProperty xmi:id='I17779e3m1003cfd8422mm7b31'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7818' name='within-population' type='I167e3a5m10018e5d720mm7926' association='I167e3a5m10018e5d720mm781b' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001c6' body='&lt;p&gt;represents the relationship between an Extent and the Population from which the Set of instances is drawn.&lt;/p&gt;
&lt;note&gt;See 9.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7818'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1025f5930bdmm7ec2' name='expression-specifies-constant-value' visibility='public'>
<memberEnd xmi:idref='I17779e3m1025f5930bdmm7ebf'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1025f5930bdmm7ebf' name='__inv_value-expression' type='I17779e3m1026e8ed5e9mm73c0' association='I17779e3m1025f5930bdmm7ec2' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1025f5930bdmm7eb6'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1160e64m10462d0e89emm35f5' name='constant-has-value' isDerived='true' visibility='public'>
<memberEnd xmi:idref='I1160e64m10462d0e89emm35fb'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1160e64m10462d0e89emm35fb' name='__inv_actual-value' type='I17779e3m1026e8ed5e9mm73c0' association='I1160e64m10462d0e89emm35f5' visibility='public' isDerived='true' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1160e64m10462d0e89emm35f8'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1026e8ed5e9mm73a4' name='constant-has-type' visibility='public'>
<memberEnd xmi:idref='I17779e3m1026e8ed5e9mm73a1'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1026e8ed5e9mm73a1' name='__inv_data-type' type='I17779e3m1026e8ed5e9mm73c0' association='I17779e3m1026e8ed5e9mm73a4' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1026e8ed5e9mm7396'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1242150849359_200605_1860' name='value-of-LogicType' visibility='public'>
<memberEnd xmi:idref='_16_0_1_852026a_1242150849359_467380_1862'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1242150849359_467380_1862' name='__inv_of-type' type='I17779e3m1003cfd8422mm7d7f' association='_16_0_1_852026a_1242150849359_200605_1860' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='_16_0_1_852026a_1242150849359_155833_1861'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1242149634359_527236_1703' name='value-of-StringType' visibility='public'>
<memberEnd xmi:idref='_16_0_1_852026a_1242149634359_780576_1705'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1242149634359_780576_1705' name='__inv_of-type' type='I17779e3m1003cfd8422mm7d33' association='_16_0_1_852026a_1242149634359_527236_1703' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='_16_0_1_852026a_1242149634359_605710_1704'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1242149301796_717745_1553' name='value-of-NumericType' visibility='public'>
<memberEnd xmi:idref='_16_0_1_852026a_1242149301796_848229_1555'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1242149301796_848229_1555' name='__inv_of-type' type='I17779e3m1003cfd8422mm7d1b' association='_16_0_1_852026a_1242149301796_717745_1553' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='_16_0_1_852026a_1242149301796_769613_1554'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1242148755078_11523_1403' name='value-of-BinaryType' visibility='public'>
<memberEnd xmi:idref='_16_0_1_852026a_1242148755078_504036_1405'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1242148755078_504036_1405' name='__inv_of-type' type='I17779e3m1003cfd8422mm7db0' association='_16_0_1_852026a_1242148755078_11523_1403' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='_16_0_1_852026a_1242148755078_269192_1404'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1cdecf7m1040faf3bf2mm3e90' name='EntityValue-corresponds-to-EntityType' visibility='public'>
<memberEnd xmi:idref='I1cdecf7m1040faf3bf2mm3e96'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1cdecf7m1040faf3bf2mm3e96' name='__inv_corresponds to' type='I1cdecf7m1040faf3bf2mm4131' association='I1cdecf7m1040faf3bf2mm3e90' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1cdecf7m1040faf3bf2mm3e93'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1241582639812_659926_721' name='value-of-SelectType' isDerived='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001c7' body='&lt;p&gt;represents the derived relationship between a TypedInstance and the SelectTypes that it instantiates.&lt;/p&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1241582639812_659926_721'/>
</ownedComment>
<memberEnd xmi:idref='_16_0_1_852026a_1241582639812_213802_723'/>
<memberEnd xmi:idref='_16_0_1_852026a_1241582639812_955776_722'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1241582240781_64712_706' name='instance-of-NamedType' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001c8' body='&lt;p&gt;represents the relationship between a TypedInstance and the NamedTypes that it instantiates.&lt;/p&gt;
&lt;note&gt;This relationship is modeled for documentary purposes.  It is used in deriving the relationship between a TypedInstance and a SelectType.&lt;/note&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1241582240781_64712_706'/>
</ownedComment>
<memberEnd xmi:idref='_16_0_1_852026a_1241582240828_972545_709'/>
<memberEnd xmi:idref='_16_0_1_852026a_1241582240828_699332_708'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_15_5_852026a_1236032095859_839563_16765' name='RoleName-represents-id' visibility='public'>
<memberEnd xmi:idref='I1286c71m10a1909d8b9mmae3'/>
<memberEnd xmi:idref='_15_5_852026a_1236032095859_439920_16766'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='_15_5_852026a_1236032095859_439920_16766' name='__inv_represents' type='I5e593m10998272245mm10f3' association='_15_5_852026a_1236032095859_839563_16765'>
</ownedEnd>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_15_5_852026a_1236032064796_114216_16696' name='TypeName-represents-id' visibility='public'>
<memberEnd xmi:idref='I1286c71m10a1909d8b9mmaf7'/>
<memberEnd xmi:idref='_15_5_852026a_1236032064796_15953_16697'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='_15_5_852026a_1236032064796_15953_16697' name='__inv_represents' type='I5e593m10998272245mm1106' association='_15_5_852026a_1236032064796_114216_16696'>
</ownedEnd>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1003cfd8422mm7928' name='value-of-SpecializedType' visibility='public'>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7925'/>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm791c'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm791c' name='__inv_of-type' type='I17779e3m1003cfd8422mm795b' association='I17779e3m1003cfd8422mm7928' visibility='public' lower='0' upper='*'>
</ownedEnd>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1003cfd8422mm7baf' name='value-of-ArrayType' visibility='public'>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7bac'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7bac' name='__inv_of-type' type='I17779e3m1003cfd8422mm7c10' association='I17779e3m1003cfd8422mm7baf' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7ba3'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1003cfd8422mm7bdf' name='value-of-BagType' visibility='public'>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7bdc'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7bdc' name='__inv_of-type' type='I17779e3m1003cfd8422mm7c45' association='I17779e3m1003cfd8422mm7bdf' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7bd3'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1003cfd8422mm7bc7' name='value-of-ListType' visibility='public'>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7bc4'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7bc4' name='__inv_of-type' type='I17779e3m1003cfd8422mm7c2a' association='I17779e3m1003cfd8422mm7bc7' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7bbb'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1003cfd8422mm7bfb' name='value-of-SetType' visibility='public'>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7bf8'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7bf8' name='__inv_of-type' type='I17779e3m1003cfd8422mm7e2b' association='I17779e3m1003cfd8422mm7bfb' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7bed'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I118958em102d5a77152mm7efe' name='ARRAYmember-has-value' visibility='public'>
<memberEnd xmi:idref='I118958em102d5a77152mm7efb'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I118958em102d5a77152mm7efb' name='__inv_member-value' type='I118958em102d5a77152mm7f3d' association='I118958em102d5a77152mm7efe' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I118958em102d5a77152mm7ef2'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I118958em102d5a77152mm7e9e' name='LISTmember-has-value' visibility='public'>
<memberEnd xmi:idref='I118958em102d5a77152mm7e9b'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I118958em102d5a77152mm7e9b' name='__inv_member-value' type='I118958em102d5a77152mm7edd' association='I118958em102d5a77152mm7e9e' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I118958em102d5a77152mm7e90'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m1024a81540emm7a45' name='value-of-PartialEntityType' visibility='public'>
<memberEnd xmi:idref='I167e3a5m1024a81540emm7a42'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m1024a81540emm7a42' name='__inv_of-type' type='I167e3a5m1024a81540emm7a58' association='I167e3a5m1024a81540emm7a45' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m1024a81540emm7a39'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I14a3da8m1040ae784acmm4329' name='BAGvalue-has-slot' visibility='public'>
<memberEnd xmi:idref='I14a3da8m1040ae784acmm432f'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I14a3da8m1040ae784acmm432f' name='__inv_member-slot' type='I17779e3m1003cfd8422mm7c45' association='I14a3da8m1040ae784acmm4329' visibility='public'>
</ownedEnd>
<memberEnd xmi:idref='I14a3da8m1040ae784acmm432c'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I14a3da8m1040ae784acmm4300' name='BAGmember-has-value' visibility='public'>
<memberEnd xmi:idref='I14a3da8m1040ae784acmm4306'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I14a3da8m1040ae784acmm4306' name='__inv_member-value' type='I14a3da8m1040ae784acmm4359' association='I14a3da8m1040ae784acmm4300' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I14a3da8m1040ae784acmm4303'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1003cfd8422mm7b3f' name='member-is-value' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001c9' body='&lt;p&gt;represents the relationship between a SetValue and an instance of the member-type that appears in the SetValue.  One can regard this relationship as a refinement of BagValue.member-slot.member-value.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7b3f'/>
</ownedComment>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7b3c'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7b3c' name='__inv_member-value' type='I17779e3m1003cfd8422mm7e2b' association='I17779e3m1003cfd8422mm7b3f' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7b31'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I14a3da8m1040ae784acmm4262' name='ARRAYvalue-has-slot' visibility='public'>
<memberEnd xmi:idref='I14a3da8m1040ae784acmm4268'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I14a3da8m1040ae784acmm4268' name='__inv_member-slot' type='I17779e3m1003cfd8422mm7c10' association='I14a3da8m1040ae784acmm4262' visibility='public'>
</ownedEnd>
<memberEnd xmi:idref='I14a3da8m1040ae784acmm4265'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I14a3da8m1040ae784acmm4237' name='LISTvalue-has-slot' visibility='public'>
<memberEnd xmi:idref='I14a3da8m1040ae784acmm423d'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I14a3da8m1040ae784acmm423d' name='__inv_member-slot' type='I17779e3m1003cfd8422mm7c2a' association='I14a3da8m1040ae784acmm4237' visibility='public'>
</ownedEnd>
<memberEnd xmi:idref='I14a3da8m1040ae784acmm423a'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1cdecf7m1040faf3bf2mm3f47' name='value-of-SingleEntityType' visibility='public'>
<memberEnd xmi:idref='I1cdecf7m1040faf3bf2mm3f4d'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1cdecf7m1040faf3bf2mm3f4d' name='__inv_of-type' type='I1cdecf7m1040faf3bf2mm411e' association='I1cdecf7m1040faf3bf2mm3f47' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1cdecf7m1040faf3bf2mm3f4a'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1cdecf7m1040faf3bf2mm3ed1' name='SingleEntityValue-in-PartialEntityValue' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001ca' body='&lt;p&gt;represents the relationship between a SingleEntityValue and the PartialEntityValue of which it is a component.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1cdecf7m1040faf3bf2mm3ed1'/>
</ownedComment>
<memberEnd xmi:idref='I1cdecf7m1040faf3bf2mm3ed7'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1cdecf7m1040faf3bf2mm3ed7' name='__inv_components' type='I167e3a5m1024a81540emm7a58' association='I1cdecf7m1040faf3bf2mm3ed1' visibility='public'>
</ownedEnd>
<memberEnd xmi:idref='I1cdecf7m1040faf3bf2mm3ed4'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1003cfd8422mm7fd6' name='Instance-has-characterizing-type' visibility='public'>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7fd3'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7fd3' name='__inv_characterizing-type' type='I1cdecf7m1040faf3bf2mm3e69' association='I17779e3m1003cfd8422mm7fd6' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7fc8'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1160e64m10462d0e89emm35ca' name='SingleEntityValue-has-equivalent' visibility='public'>
<memberEnd xmi:idref='I1160e64m10462d0e89emm35d0'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1160e64m10462d0e89emm35d0' name='__inv_equivalent' type='I1cdecf7m1040faf3bf2mm411e' association='I1160e64m10462d0e89emm35ca' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I1160e64m10462d0e89emm35cd'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1160e64m10462d0e89emm350c' name='SingleEntityValue-includes-AttributeValue' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001cb' body='&lt;p&gt;represents the relationship of the SingleEntityValue to the AttributeValue assignments it comprises.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1160e64m10462d0e89emm350c'/>
</ownedComment>
<memberEnd xmi:idref='I1160e64m10462d0e89emm3512'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1160e64m10462d0e89emm3512' name='__inv_properties' type='I1cdecf7m1040faf3bf2mm411e' association='I1160e64m10462d0e89emm350c' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001cc' body='&lt;p&gt;represents the relationship between an AttributeValue and the SingleEntityValue in which it occurs.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1160e64m10462d0e89emm3512'/>
</ownedComment>
</ownedEnd>
<memberEnd xmi:idref='I1160e64m10462d0e89emm350f'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1160e64m10462d0e89emm34ba' name='Attribute-has-value' visibility='public'>
<memberEnd xmi:idref='I1160e64m10462d0e89emm34c0'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1160e64m10462d0e89emm34c0' name='__inv_actual-value' type='I1160e64m10462d0e89emm35a6' association='I1160e64m10462d0e89emm34ba' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1160e64m10462d0e89emm34bd'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1cdecf7m1040faf3bf2mm4056' name='entity-value-describes-state' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001cd' body='&lt;p&gt;represents the relationship between an EntityInstance and the EntityValue that describes the current state of the Instance (in terms of its modeled properties) at any given time.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1cdecf7m1040faf3bf2mm4056'/>
</ownedComment>
<memberEnd xmi:idref='I1cdecf7m1040faf3bf2mm405c'/>
<memberEnd xmi:idref='I1cdecf7m1040faf3bf2mm4059'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1003cfd8422mm7ff7' name='instance-of-EntityType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001ce' body='&lt;p&gt;represents the relationship between an EntityInstance and each of the EntityType classifiers it satisfies.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7ff7'/>
</ownedComment>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7ff4'/>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7fe9'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I5e593m10998272245mm1000' name='TypeName-refers-to-NamedType' visibility='public'>
<memberEnd xmi:idref='I5e593m10998272245mm1006'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I5e593m10998272245mm1006' name='__inv_refers-to' type='I5e593m10998272245mm1106' association='I5e593m10998272245mm1000' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I5e593m10998272245mm1003'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I5e593m10998272245mmfca' name='RoleName-refers-to-Attribute' visibility='public'>
<memberEnd xmi:idref='I5e593m10998272245mmfd0'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I5e593m10998272245mmfd0' name='__inv_refers-to' type='I5e593m10998272245mm10f3' association='I5e593m10998272245mmfca' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I5e593m10998272245mmfcd'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1025f5930bdmm7dfb' name='population-includes-instance' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001cf' body='&lt;p&gt;represents the relationship between an Instance and the Populations in which it appears&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1025f5930bdmm7dfb'/>
</ownedComment>
<memberEnd xmi:idref='I17779e3m1025f5930bdmm7df8'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1025f5930bdmm7df8' name='__inv_composition' type='I167e3a5m10018e5d720mm7926' association='I17779e3m1025f5930bdmm7dfb' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001d0' body='&lt;p&gt;represents the relationship between an Instance and the Populations in which it appears.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1025f5930bdmm7df8'/>
</ownedComment>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1025f5930bdmm7def'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm78eb' name='schema-describes-population' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001d1' body='&lt;p&gt;represents the relationship between a Schema and the Populations that it describes (models).&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm78eb'/>
</ownedComment>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm78e8'/>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm78df'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm78df' name='__inv_governing-schema' type='I167e3a5m10018e5d720mm7926' association='I167e3a5m10018e5d720mm78eb' visibility='public' lower='0' upper='*'>
</ownedEnd>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1160e64m10462d0e89emm34e3' name='value-for-Attribute' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001d2' body='&lt;p&gt;represents the relationship between the Attribute of the EntityType and its value in a given EntityInstance.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1160e64m10462d0e89emm34e3'/>
</ownedComment>
<memberEnd xmi:idref='I1160e64m10462d0e89emm34e9'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1160e64m10462d0e89emm34e9' name='__inv_attribute' type='I1160e64m10462d0e89emm35a6' association='I1160e64m10462d0e89emm34e3' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1160e64m10462d0e89emm34e6'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1003cfd8422mm7946' name='value-specializes-value' visibility='public'>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7943'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7943' name='__inv_fundamental-value' type='I17779e3m1003cfd8422mm795b' association='I17779e3m1003cfd8422mm7946' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7938'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm781b' name='extent-within-population' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001d3' body='&lt;p&gt;&lt;/p&gt;
'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm781b'/>
</ownedComment>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7818'/>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm780f'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm7803' name='extent-of-EntityType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001d4' body='&lt;p&gt;&lt;/p&gt;
'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7803'/>
</ownedComment>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7800'/>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm77f7'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1160e64m106bcd084e1mm3240' name='extent-includes-instances' visibility='public'>
<memberEnd xmi:idref='I1160e64m106bcd084e1mm3246'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1160e64m106bcd084e1mm3246' name='__inv_content' type='I167e3a5m10018e5d720mm7830' association='I1160e64m106bcd084e1mm3240' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1160e64m106bcd084e1mm3243'/>
</ownedMember>
<ownedRule xmi:type='cmof:Constraint' xmi:id='ix_000010' name='Constant.actual-value.derivation'>
<constrainedElement xmi:idref='I17779e3m1026e8ed5e9mm73c0'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_0001d5' language='OCL' body='self-&gt;actual-value = self-&gt;value-expression-&gt;evaluation;'/>
</ownedRule>
<ownedRule xmi:type='cmof:Constraint' xmi:id='ix_00000f' name='Extent.id.derivation'>
<constrainedElement xmi:idref='I167e3a5m10018e5d720mm7830'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_0001d6' language='OCL' body='self-&gt;id = self-&gt;for-type-&gt;id'/>
</ownedRule>

</ownedMember>
<ownedMember xmi:id='I17779e3m1026e8ed5e9mm7d65' xmi:type='cmof:Package' name='Expressions' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001d7' body='The Expressions Package contains a model of expressions that includes all details of value manipulation that are
described in Clause 12 of ISO 10303-11.'>
<annotatedElement xmi:idref='I17779e3m1026e8ed5e9mm7d65'/>
</ownedComment>
<packageImport xmi:type='cmof:PackageImport' xmi:id='_14_0_852026a_1203968255640_210081_5038'>
<importedPackage xmi:type='cmof:Package' xmi:idref='I17779e3m1026e8ed5e9mm7d57'/>
</packageImport>
<packageImport xmi:type='cmof:PackageImport' xmi:id='_14_0_852026a_1203968203812_847566_5022'>
<importedPackage xmi:type='cmof:Package' xmi:idref='I17779e3m1026e8ed5e9mm7d82'/>
</packageImport>
<packageImport xmi:type='cmof:PackageImport' xmi:id='_14_0_852026a_1203968189343_341257_5006'>
<importedPackage xmi:type='cmof:Package' xmi:idref='I17779e3m1026e8ed5e9mm7d71'/>
</packageImport>
<ownedMember xmi:type='cmof:Enumeration' xmi:id='_14_0_852026a_1204219272656_840630_197' name='UnaryOperator' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001d8' body='&lt;p&gt;Conceptual EXPRESS language element representing the interpretation of a unary operation symbol in the context of the operand datatype.   Instances of this class are distinct operations, such as numeric-negation, boolean-negation, real-square-root, absolute-value, etc.   Some UnaryOperators are denoted by &quot;built-in functions&quot; in EXPRESS syntax.&lt;/p&gt; &lt;note&gt;See ISO 10303-11.2:2004 clause 12 and some elements of clause 15.&lt;/note&gt;'>
<annotatedElement xmi:idref='_14_0_852026a_1204219272656_840630_197'/>
</ownedComment>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1983' name='VALUE' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001d9' body='&lt;p&gt;For a STRING operand, returns the NUMBER value resulting from interpreting the operand as the representation of a numeric value, or Indeterminate, if no such interpretation can be made.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1983'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m197f' name='TAN' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001da' body='&lt;p&gt;For a NUMBER operand, returns the mathematical tangent of the value of the operand.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m197f'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m197b' name='SQRT' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001db' body='&lt;p&gt; For a NUMBER operand, returns the mathematical square root of the value of the operand, or Indeterminate if it is negative.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m197b'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1977' name='SIN' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001dc' body='&lt;p&gt;For a NUMBER operand, returns the mathematical sine of the value of the operand. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1977'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1973' name='LOG10' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001dd' body='&lt;p&gt;For a NUMBER operand, returns the logarithm to the base 10 of the value of the operand, which for an INTEGER value is the number of decimal digit characters required to represent it.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1973'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m196f' name='LOG2' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001de' body='&lt;p&gt;For a NUMBER operand, returns the logarithm to the base 2 of the value of the operand, which for an INTEGER value is the number of bits required to represent it. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m196f'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m196b' name='LOG' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001df' body='&lt;p&gt;For a NUMBER operand, returns the Napierian logarithm of the value of the operand.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m196b'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1967' name='EXP' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001e0' body='&lt;p&gt;For a NUMBER operand, returns the mathematical exponential function of the value of the operand. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1967'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1963' name='COS' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001e1' body='&lt;p&gt;For a NUMBER operand, returns the mathematical cosine of the value of the operand. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1963'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m195f' name='ATAN' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001e2' body='&lt;p&gt;For a NUMBER operand, returns the mathematical arctangent of the value of the operand. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m195f'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m195b' name='ASIN' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001e3' body='&lt;p&gt;For a NUMBER operand, returns the mathematical arcsine of the value of the operand.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m195b'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1957' name='ACOS' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001e4' body='&lt;p&gt;For a NUMBER operand, returns the mathematical arccosine of the value of the operand. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1957'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1953' name='RolesOf' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001e5' body='&lt;p&gt;For an EntityInstance operand, returns a set of RoleName values representing all the distinct Attributes (RangeRoles) which the operand plays in the Population. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1953'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m194f' name='TypeOf' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001e6' body='&lt;p&gt;Returns a Set of TypeName values representing the data types of which the operand is an instance.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m194f'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m194b' name='ValueUnique' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001e7' body='&lt;p&gt;For an operand that is an AggregateValue, returns true if no two members of the operand are Equal or EntityValueEqual.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m194b'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1947' name='LoIndex' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001e8' body='&lt;p&gt;For an operand that is an AggregateValue, returns the smallest valid index-value for the value. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1947'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1943' name='HiIndex' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001e9' body='&lt;p&gt;For an operand that is an AggregateValue, returns the largest valid index-value for the value.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1943'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m193f' name='LoBound' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001ea' body='&lt;p&gt;For an operand whose data type is an aggregation type, returns the declared lower-bound value for the size of the values, or for an ARRAY, the declared minimum index-value.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m193f'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m193b' name='HiBound' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001eb' body='&lt;p&gt;For an operand whose data type is an aggregation type, returns the declared upper-bound value for the size of the values, or for an ARRAY, the declared maximum index-value. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m193b'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1937' name='SizeOf' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001ec' body='&lt;p&gt;For an operand that is an AggregateValue, returns the number of members in the value.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1937'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1933' name='BinaryLength' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001ed' body='&lt;p&gt;For an operand that is a BinaryValue, returns the number of bits in the value.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1933'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m192f' name='StringLength' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001ee' body='&lt;p&gt;For an operand that is a StringValue, returns the number of characters in the value.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m192f'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m192b' name='EXISTS' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001ef' body='&lt;p&gt;Returns false if the operand is Indeterminate (?), else true.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m192b'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1927' name='ODD' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001f0' body='&lt;p&gt;For an operand that is an INTEGERValue, returns false if the value is exactly divisible by 2 and true otherwise. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1927'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1923' name='NOT' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001f1' body='&lt;p&gt;For an operand that is a LogicalValue, returns true if the value is false, unknown if the value is unknown, and false if the value is true. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1923'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m191f' name='ABS' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001f2' body='&lt;p&gt;For a NUMBER operand, returns the magnitude (absolute value) of the value of the operand. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m191f'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m191b' name='Negate' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001f3' body='&lt;p&gt;For a NUMBER operand, returns the additive inverse of the value of the operand. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m191b'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1917' name='Identity' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001f4' body='&lt;p&gt;Returns the value of the operand.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1917'/>
</ownedComment>
</ownedLiteral>
</ownedMember>
<ownedMember xmi:type='cmof:Enumeration' xmi:id='_14_0_852026a_1204218697531_562292_129' name='BinaryOperator' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001f5' body='&lt;p&gt;Conceptual EXPRESS language element representing the interpretation of a binary operation symbol in the context of the operand datatypes.   Instances of this class are distinct operations, such as number-addition, set-union, string-compare-equal, etc.   Some BinaryOperators are denoted by &quot;built-in functions&quot; in EXPRESS syntax.&lt;/p&gt; &lt;note&gt;See ISO 10303-11.2:2004 clause 12 and some elements of clause 15.&lt;/note&gt;'>
<annotatedElement xmi:idref='_14_0_852026a_1204218697531_562292_129'/>
</ownedComment>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1a1f' name='NVL' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001f6' body='&lt;p&gt;If the value of the first operand is Indeterminate (?), returns the value of the second operand; else returns the value of the first operand. &lt;/p&gt;  &lt;note&gt;See ISO 10303-11:2004 clause 15.18.&lt;/note&gt; '>
<annotatedElement xmi:idref='I1be4050m1186127a343m1a1f'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1a1b' name='EntityConstructor' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001f7' body='&lt;p&gt;For two operands that are PartialEntityValues, returns the PartialEntityValue that contains all of the SingleEntityValues that were present in either operand.  This operation is referred to in EXPRESS as the &quot;complex entity constructor&quot; (||).&lt;/p&gt; &lt;note&gt;See ISO 10303-11:2004 clause 12.10&lt;/note&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1a1b'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1a17' name='BinaryAppend' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001f8' body='&lt;p&gt;Returns the BinaryValue whose bits are the bits of the value of the first operand, which must be a BinaryValue, in that order, followed by the bits of the value of the second operand, which must be a BinaryValue, in that order. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1a17'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1a13' name='StringAppend' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001f9' body='&lt;p&gt;Returns the StringValue whose characters are the characters of the value of the first operand, which must be a StringValue, in that order, followed by the characters of the value of the second operand, which must be a StringValue, in that order. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1a13'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1a0f' name='SetAdd' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001fa' body='&lt;p&gt;Returns the SetValue that is the union of the value of the first operand, which must be a SetValue, with the SetValue comprising exactly one member equal (or InstanceEqual) to the value of the second operand.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1a0f'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1a0b' name='BagRemove' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001fb' body='&lt;p&gt;Returns the BagValue resulting from subtracting one from the count of occurrences of the value of the second operand in the first operand, which must be a BagValue.  If the first operand contains no occurrences of the value of the second operand, returns the value of the first operand.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1a0b'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1a07' name='BagAdd' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001fc' body='&lt;p&gt;Returns the BagValue resulting from adding one to the count of occurrences of the value of the second operand in the first operand, which must be a BagValue. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1a07'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1a03' name='ListAddLast' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001fd' body='&lt;p&gt;Returns the ListValue whose members are the members of the value of the first operand, which must be a ListValue, in that order, followed by the value of the second operand. .&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1a03'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19ff' name='ListAddFirst' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001fe' body='&lt;p&gt;Returns the ListValue whose first member is the value of the second operand and whose subsequent members are the members of the value of the first operand, which must be a ListValue, in that order.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19ff'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19fb' name='ListAppend' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0001ff' body='&lt;p&gt;Returns the ListValue whose members are the members of the value of the first operand, which must be a ListValue, in that order, followed by the members of the value of the second operand, which must be a ListValue, in that order.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19fb'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19f7' name='Difference' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000200' body='&lt;p&gt;For two SET operands with a common member type, returns the SET value containing all members of the first operand except for those that are also members of the second operand.   For two BAG operands with a common member type, returns the BAG value in which the number of occurrences of each value of the member type is the number of its occurrences in the first operand minus the number of its occurences in the second operand, but not less than zero. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19f7'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19f3' name='BagUnion' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000201' body='&lt;p&gt;For two BAG operands with a common member type, returns the BAG value in which the number of occurrences of each value of the member type is the sum of the number of its occurrences in the two operands.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19f3'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19ef' name='SetUnion' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000202' body='&lt;p&gt;For two SET operands with a common member type, returns the mathematical union of the two sets.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19ef'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19eb' name='Intersection' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000203' body='&lt;p&gt;For two SET operands with a common member type, returns the mathematical intersection of the two sets.  For two BAG operands with a common member type, returns the BAG value in which the number of occurrences of each value of the member type is the smaller of the number of its occurrences in the two operands.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19eb'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19e7' name='Subset' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000204' body='&lt;p&gt;Returns true if every member of the value of the first operand (which must be an AggregateValue) is IN the value of the second operand (which must be an AggregateValue); else false. .&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19e7'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19e3' name='Exponent' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000205' body='&lt;p&gt;For two NUMBER operands, returns the the value of the first raised to the power specified by the value of the second. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19e3'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19df' name='LIKE' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000206' body='&lt;p&gt;Returns true if both operands are StringValues and the value of the first operand is a match for the pattern that is the value of the second operand.   For the interpretation of the pattern, see ISO 10303-11:2004 clause 12.2.5. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19df'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19db' name='ValueIn' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000207' body='&lt;p&gt;Returns true if the value of the first operand is Equal to the value of any member of the second operand (which must be an AggregateValue); else false.   If the first operand is an EntityInstance, &quot;is Equal to&quot; is interpreted as &quot;is EntityValueEqual to&quot;.&lt;/p&gt; &lt;note&gt;See ISO 10303-11:2004 clause 15.28.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19db'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19d7' name='IN' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000208' body='&lt;p&gt;Returns true if the value of the first operand is Equal to the value of any member of the second operand (which must be an AggregateValue); else false.  If the first operand is an EntityInstance, &quot;is Equal to&quot; is interpreted as &quot;is InstanceEqual to&quot;. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19d7'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19d3' name='EntityValueNotEqual' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000209' body='&lt;p&gt;If both operands are of a common data type and that data type is an entity data type, returns true if the value of any attribute of the first operand is NotEqual to (or EntityValueNotEqual to) the value of that attribute of the second operand, else false.   If both operands are of a common data type and that data type is an aggregation type whose members are entity instances, returns true if the operands are of different sizes, or if for any of the corresponding members of the two operands, the value of any attribute of the member of the first operand is NotEqual to (or EntityValueNotEqual to) the value of that attribute of the member of the second operand, else false.   If the common data type is anything else, this operator is equivalent to NotEqual.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19d3'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19cf' name='EntityValueEqual' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00020a' body='&lt;p&gt;If both operands are of a common data type and that data type is an entity data type, returns false if the value of any attribute of the first operand is NotEqual to (or EntityValueNotEqual to) the value of that attribute of the second operand, else true.   If both operands are of a common data type and that data type is an aggregation type whose members are entity instances, returns false if the operands are of different sizes, or if for any of the corresponding members of the two operands, the value of any attribute of the member of the first operand is NotEqual to (or EntityValueNotEqual to) the value of that attribute of the member of the second operand, else true.   If the common data type is anything else, this operator is equivalent to Equal.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19cf'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19cb' name='InstanceNotEqual' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00020b' body='&lt;p&gt;If both operands are of a common data type and that data type is an entity data type, returns true if the operands refer to distinct individuals, else false.   If both operands are of a common data type and that data type is an aggregation type whose members are entity instances, returns true if the operands are of different sizes, or if any of the corresponding members of the two operands refer to different individuals, else false.   If the common data type is anything else, this operator is equivalent to NotEqual.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19cb'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19c7' name='InstanceEqual' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00020c' body='&lt;p&gt;If both operands are of a common data type and that data type is an entity data type, returns true if both operands refer to the same individual, else false.   If both operands are of a common data type and that data type is an aggregation type whose members are entity instances, returns false if the operands are of different sizes, or if any of the corresponding members of the two operands refer to different individuals, else true.   If the common data type is anything else, this operator is equivalent to Equal.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19c7'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19c3' name='NotLess' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00020d' body='&lt;p&gt;Returns true if both operands are of a common data type and the value of the first operand is greater than or equal to the value of the second operand, as defined for that type, else false.   For the definition of &quot;is greater than or equal to&quot;, see ISO 10303-11:2004 clause 12.2.1. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19c3'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19bf' name='Less' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00020e' body='&lt;p&gt;Returns true if both operands are of a common data type and the value of the first operand is less than the value of the second operand, as defined for that type, else false.   For the definition of &quot;is less than &quot;, see ISO 10303-11:2004 clause 12.2.1. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19bf'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19bb' name='NotGreater' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00020f' body='&lt;p&gt;Returns true if both operands are of a common data type and the value of the first operand is less than or equal to the value of the second operand, as defined for that type, else false.   For the definition of &quot;is less than or equal to&quot;, see ISO 10303-11:2004 clause 12.2.1.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19bb'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19b7' name='Greater' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000210' body='&lt;p&gt;Returns true if both operands are of a common data type and the value of the first operand is greater than the value of the second operand, as defined for that type, else false.   For the definition of &quot;is greater than&quot;, see ISO 10303-11:2004 clause 12.2.1.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19b7'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19b3' name='NotEqual' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000211' body='&lt;p&gt;Returns true if both operands are of a common data type and unequal in value, as defined for that type, else false.   For the definition of &quot;equal in value&quot;, see ISO 10303-11:2004 clause 12.2.1.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19b3'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19af' name='Equal' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000212' body='&lt;p&gt;Definition: Returns true if both operands are of a common data type and equal in value, as defined for that type, else false.   For the definition of &quot;equal in value&quot;, see ISO 10303-11:2004 clause 12.2.1. .&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19af'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19ab' name='XOR' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000213' body='&lt;p&gt;Returns true if one operand is true and one is false, unknown if either is unknown, and false otherwise.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19ab'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19a7' name='OR' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000214' body='&lt;p&gt;Returns true if either operand is true, unknown if both are unknown, and false if both are false. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19a7'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m19a3' name='AND' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000215' body='&lt;p&gt;Returns true if both operands are true, unknown if both are unknown, and false if either is false. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m19a3'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m199f' name='MOD' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000216' body='&lt;p&gt;For two INTEGER operands, returns the remainder of dividing the value of the first by the value of the second.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m199f'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m199b' name='DIV' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000217' body='&lt;p&gt;For two INTEGER operands, returns the integral part of the quotient of dividing the value of the first by the value of the second.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m199b'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1997' name='Divide' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000218' body='&lt;p&gt;For two NUMBER operands, returns the quotient of dividing the value of the first by the value of the second. .&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1997'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m1993' name='Multiply' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000219' body='&lt;p&gt;Returns the arithmetic product of two NUMBER operands.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m1993'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m198f' name='Subtract' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00021a' body='&lt;p&gt;For two NUMBER operands, returns the result of subtracting the value of the second from the value of the first. .&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m198f'/>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type='cmof:EnumerationLiteral' xmi:id='I1be4050m1186127a343m198b' name='Add' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00021b' body='&lt;p&gt;Returns the arithmetic sum of two NUMBER operands.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1be4050m1186127a343m198b'/>
</ownedComment>
</ownedLiteral>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='_16_0_1_852026a_1248904199250_822221_654' name='IndeterminateRef' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00021c' body='a Primary Expression consisting of the symbol &quot;?&quot;, which always evaluates to the INDETERMINATE value
'>
<annotatedElement xmi:idref='_16_0_1_852026a_1248904199250_822221_654'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1001f33ccb7mm7d67'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='_16_0_1_852026a_1247080307437_46176_1032' name='PassByValue' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00021d' body='An ActualParameter that is passed “by value”.  At the time of Algorithm invocation, the actual value Expression is evaluated and the resulting value is assigned to the InParameter – the local Variable within the invocation that corresponds to the formal parameter.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1247080307437_46176_1032'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm74a1'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1247080557140_662566_1061' name='actual-value' type='I167e3a5m10018e5d720mm7ad9' association='_16_0_1_852026a_1247080557125_336231_1059' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00021e' body='&lt;p&gt;the Expression that specifies the value to be passed to the InParameter.  This is the Expression that is syntactically the actual_parameter when the corresponding formal parameter is an InParameter.  
The actual-value shall evaluate to either an instance of an InstantiableType or Indeterminate.
&lt;/p&gt;
&lt;note&gt;See 12.8 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1247080557140_662566_1061'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1247080763296_370836_1097' name='for-parameter' type='I1cdecf7m11243159c16m30e' association='_16_0_1_852026a_1247080763296_520110_1096' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00021f' body='the formal parameter to which the actual value is passed.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1247080763296_370836_1097'/>
</ownedComment>
<subsettedProperty xmi:id='I167e3a5m10018e5d720mm73bd'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7644' name='Operation' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000220' body='&lt;p&gt;an abstract subclass of Expression; represents the result of a well-defined mathematical operation or character manipulation.&lt;/p&gt;
&lt;note&gt;See clause 12 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7644'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7ad9'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm759c' name='FunctionCall' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000221' body='&lt;p&gt;an Expression that represents the instance resulting from the invocation of a Function with zero or more Expression operands called &amp;quot;actual parameters&amp;quot;.&lt;/p&gt;
&lt;note&gt;See 12.8 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm759c'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7ad9'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1026e8ed5e9mm7753' name='returns-result' type='I17779e3m1026e8ed5e9mm77ec' association='I17779e3m1026e8ed5e9mm7761' visibility='public' isDerived='true'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000222' body='&lt;p&gt;represents the relationship between the FunctionCall and the formal definition of the FunctionResult, which describes the instance that results from the FunctionCall.&lt;/p&gt;
&lt;note&gt;See 12.8 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1026e8ed5e9mm7753'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7389' name='invokes-function' type='I17779e3m1025f5930bdmm7e33' association='I167e3a5m10018e5d720mm7395' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000223' body='&lt;p&gt;represents the relationship between the FunctionCall and the formal definition of the Function invoked.&lt;/p&gt;
&lt;note&gt;See 12.8 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7389'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm73f3' name='actual-parameters' type='I167e3a5m10018e5d720mm74a1' association='I167e3a5m10018e5d720mm73ff' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000224' body='&lt;p&gt;represents the relationship between a FunctionCall and the specifications for the values of its actual parameters.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm73f3'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7589' name='UnaryOperation' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000225' body='&lt;p&gt;an Operation representing the result of a well-defined mathematical operation on a single Expression operand.  
A UnaryOperation models a use of a UnaryOperator with a particular operand.&lt;/p&gt;
&lt;note&gt;See clause 12 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7589'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7644'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I16a90c9m109b188a816mm102e' name='operator' type='_14_0_852026a_1204219272656_840630_197' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000226' body='&lt;p&gt;Represents the conceptual operation that is actually being performed by the UnaryOperation.&lt;/p&gt;
&lt;note&gt;See ISO 10303-11.2:2004, clause 12.&lt;/note&gt;'>
<annotatedElement xmi:idref='I16a90c9m109b188a816mm102e'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7514' name='unary-operand' type='I167e3a5m10018e5d720mm7ad9' association='I167e3a5m10018e5d720mm7522' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000227' body='&lt;p&gt;represents the operand Expression that produces the input to a UnaryOperation.&lt;/p&gt;
&lt;note&gt;See clause 12 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7514'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7576' name='BinaryOperation' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000228' body='&lt;p&gt;an Operation representing the result of a well-defined mathematical operation or character manipulation on two Expression operands, which are distinguished.  
An instance of BinaryOperation represents a usage of a value of BinaryOperator with a specific left and right operand.&lt;/p&gt;
&lt;note&gt;See clause 12 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7576'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7644'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I16a90c9m109b188a816mm1042' name='operator' type='_14_0_852026a_1204218697531_562292_129' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000229' body='&lt;p&gt;Represents the conceptual operation that is actually being performed by the BinaryOperation.&lt;/p&gt;
&lt;note&gt;See ISO 10303-11.2:2004, clause 12.&lt;/note&gt;'>
<annotatedElement xmi:idref='I16a90c9m109b188a816mm1042'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm74dc' name='right-operand' type='I167e3a5m10018e5d720mm7ad9' association='I167e3a5m10018e5d720mm74e8' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00022a' body='&lt;p&gt;represents the operand Expression that produces one input to a BinaryOperation, distinguished (if needed) as the &quot;right&quot; operand in the definition of the operation.&lt;/p&gt;
&lt;note&gt;See clause 12 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm74dc'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm74f8' name='left-operand' type='I167e3a5m10018e5d720mm7ad9' association='I167e3a5m10018e5d720mm7504' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00022b' body='&lt;p&gt;represents the operand Expression that produces one input to a BinaryOperation, distinguished (if needed) as the &quot;left&quot; operand in the definition of the operation&lt;/p&gt;
&lt;note&gt;See clause 12 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm74f8'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1001f33ccb7mm7f1b' name='QueryExpression' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00022c' body='&lt;p&gt;an Expression representing the (aggregate) instance that results from extracting from the value of the aggregate-operand (an Expression yielding an aggregate value) the corresponding collection of member instances that satisfy a given select-condition.  
Every QueryExpression is also the LocalScope for the QueryVariable that designates members of the aggregate value in the select-condition.&lt;/p&gt;
&lt;note&gt;See 12.6.7 of ISO 10303-11:2004.&lt;/note&gt;
'>
<annotatedElement xmi:idref='I17779e3m1001f33ccb7mm7f1b'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I118958em102d5a77152mm7d2d'/>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7ad9'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1001f33ccb7mm7ef3' name='select-condition' type='I167e3a5m10018e5d720mm7ad9' association='I17779e3m1001f33ccb7mm7f01' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00022d' body='&lt;p&gt;represents the relationship between a Query expression and the Logical Expression that defines admissibility of members in the Query result.  
This Expression is treated as a kind of &quot;function definition&quot; having a single Parameter which is the Query variable.  
The .select-condition &quot;function&quot; is invoked once for each member value of the .aggregate-value.&lt;/p&gt;
&lt;note&gt;See Clause 12.6.7 of ISO 10303-11:2004.&lt;/note&gt;
&lt;note&gt;The Expression that formulates the select-condition is owned by the QueryExpression.  It is not treated as reusable.&lt;/note&gt;
'>
<annotatedElement xmi:idref='I17779e3m1001f33ccb7mm7ef3'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1001f33ccb7mm7eb9' name='aggregate-operand' type='I167e3a5m10018e5d720mm7ad9' association='I17779e3m1001f33ccb7mm7ec7' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00022e' body='&lt;p&gt;represents the operand Expression whose result is the aggregate value from which members will be extracted by the Query operation.&lt;/p&gt;
&lt;note&gt;See 12.6.7 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1001f33ccb7mm7eb9'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11258908206m401' name='query-variable' type='I1fe40d5m11258908206mma' association='I1fe40d5m11258908206m404' visibility='public' aggregation='composite'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00022f' body='&lt;p&gt;the QueryVariable associated with the QueryExpression.  
The QueryVariable ranges over the member elements of the aggregate-operand,  &lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11258908206m401'/>
</ownedComment>
<subsettedProperty xmi:id='I9ced84m109b2851e95mm1213'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1001f33ccb7mm7d67' name='Primary' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000230' body='&lt;p&gt;an abstract subclass of Expression representing a specific Instance, or the current value of an object that has a simple lexical designation.&lt;/p&gt;
&lt;note&gt;See 12.7 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1001f33ccb7mm7d67'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7ad9'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7563' name='PartialEntityConstructor' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000231' body='&lt;p&gt;represents the EXPRESS &quot;partial entity constructor&quot; named for a &quot;single entity data type&quot;.  It takes one actual parameter (AttributeBinding) for each ExplicitAttribute in the group of Attributes identified by the SingleEntityType, and binds the values to the ExplicitAttributes in order of their occurrence in the entity_declaration.  The result is a PartialEntityValue of the partial entity data type that consists of exactly that one single entity data type. &lt;/p&gt;
&lt;note&gt;See 9.2.6 of ISO 10303-11:2004 (revised by TC#1).&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7563'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7ad9'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I15e8a8fm10add07ada2mm1704' name='id' type='_14_0_852026a_1203973938843_871362_5468' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000232' body='&lt;p&gt;Represents the identifier for the PartialEntityConstructor, which is the identifier for the SingleEntityType to which it refers.&lt;/p&gt;'>
<annotatedElement xmi:idref='I15e8a8fm10add07ada2mm1704'/>
</ownedComment>
<subsettedProperty xmi:id='I1fe40d5m11233374625m75'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7442' name='bindings' type='I167e3a5m10018e5d720mm7464' association='I167e3a5m10018e5d720mm744e' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000233' body='&lt;p&gt;represents the relationship between the PartialEntityConstructor and the set of AttributeBindings it comprises.&lt;/p&gt;
&lt;note&gt;See 9.2.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7442'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em102c66626a0mm7c73' name='attribute-group' type='I1c21ed3m103f6d4f890mm43c6' association='I118958em102c66626a0mm7c81' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000234' body='&lt;p&gt;represents the relationship between the PartialEntityConstructor and the SingleEntityType that defines it, i.e. the list of explicit attributes,.&lt;/p&gt;
&lt;note&gt;See 9.2.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I118958em102c66626a0mm7c73'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7776' name='result-value' type='I167e3a5m1024a81540emm7a58' association='I17779e3m1003cfd8422mm7782' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000235' body='&lt;p&gt;represents the instance that results from the partial entity constructor.  
If the expression can be evaluated without regard to any actual population (&quot;compile time&quot;), this value shall be present, but not otherwise.&lt;/p&gt;
&lt;note&gt;See 9.2.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm7776'/>
</ownedComment>
<subsettedProperty xmi:id='I17779e3m1003cfd8422mm7857'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7464' name='AttributeBinding' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000236' body='&lt;p&gt;represents the assignment of a specific value to one Attribute in the group that comprises the PartialEntityType.&lt;/p&gt;
&lt;note&gt;See 9.2.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7464'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em102c66626a0mm7cab' name='position' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Integer'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000237' body='&lt;p&gt;represents the position of the AttributeBinding in the constructor (and thus the association with the explicit attribute).&lt;/p&gt;
&lt;note&gt;See 9.2.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I118958em102c66626a0mm7cab'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm72a9' name='attribute-value' type='I167e3a5m10018e5d720mm7ad9' association='I167e3a5m10018e5d720mm72b7' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000238' body='&lt;p&gt;represents the value to be assigned to the explicit attribute by the AttributeBinding, as the result of the Expression.&lt;/p&gt;
&lt;note&gt;See 9.2.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm72a9'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7422' name='attribute' type='I167e3a5m10018e5d720mm7b23' association='I167e3a5m10018e5d720mm7430' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000239' body='&lt;p&gt;represents the explicit attribute to which the AttributeBinding assigns a value.  Position is used to identify the attribute.&lt;/p&gt;
&lt;note&gt;See 9.2.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7422'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1001f33ccb7mm7fb3' name='MemberBinding' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00023a' body='&lt;p&gt;represents the placement of a member value in a particular position in the GenericAggregate value resulting from the aggregate initializer.  
Unless the member value has a repetition count, the member binding associates the .member-value with one .to-slot ListMember in the GenericAggregate.  
If the member value has a repetition count (that is not a literal &quot;1&quot;), the MemberBinding associates the .member-value with one or more consecutive ListMembers in the GenericAggregate.  
If the member value has a repetition count that cannot be evaluated without a given population (i.e. at &quot;compile time&quot;), the relationship between the MemberBinding and ListMembers is not specified.  
When the AggregateInitializer contains any MemberBinding with such a repetition, the relationship between subsequent MemberBindings and ListMembers cannot be determined without a given population.&lt;/p&gt;
&lt;note&gt;See 12.9 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1001f33ccb7mm7fb3'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1001f33ccb7mm7fa6' name='position' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Integer'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00023b' body='&lt;p&gt;Represents the ordinal position of the MemberBinding specification in the AggregateInitializer.  
When no MemberBinding in the AggregateInitializer has a represented .repetition value, MemberBinding.position and .to-slot.position will coincide.  
Otherwise, the relationship between the two .position values will depend on the .repetition values, and may not be determinable without a given Population. &lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1001f33ccb7mm7fa6'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1001f33ccb7mm7f68' name='member-value' type='I167e3a5m10018e5d720mm7ad9' association='I17779e3m1001f33ccb7mm7f74' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00023c' body='&lt;p&gt;represents the member value to be assigned to the MemberBinding position in the aggregate value, as the result of the Expression.&lt;/p&gt;
&lt;note&gt;See 12.9 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1001f33ccb7mm7f68'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1d4ea6cm1092c37cf59mm19fd' name='repetition' type='I1d4ea6cm1092c37cf59mm1a64' association='I1d4ea6cm1092c37cf59mm19fa' visibility='public' aggregation='composite' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00023d' body='&lt;p&gt;represents the relationship between the MemberBinding and an associated RepeatCount, if any.  
If the repetition count for the .member-value is implicitly 1, or explicitly a literal &quot;1&quot;, this relationship shall not appear.  
In all other cases, this relationship shall appear.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1d4ea6cm1092c37cf59mm19fd'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1003cfd8422mm77f2' name='AggregateInitializer' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00023e' body='&lt;p&gt;represents the EXPRESS &quot;aggregate initializer&quot;.   It produces a value of type AGGREGATE OF GENERIC, by binding a sequence of member values to positions in the generic aggregate value. &lt;/p&gt;&lt;/p&gt;
&lt;note&gt;See 12.9 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm77f2'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7ad9'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm775e' name='result-value' type='I14a3da8m1040ae784acmm42dd' association='I17779e3m1003cfd8422mm776a' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00023f' body='&lt;p&gt;represents the aggregate value that results from the aggregate initializer.  
If the AggregateInitializer expression can be evaluated without regard to any actual population (&quot;compile time&quot;), this value shall be present, but not otherwise.&lt;/p&gt;
&lt;note&gt;See 12.9 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm775e'/>
</ownedComment>
<subsettedProperty xmi:id='I17779e3m1003cfd8422mm7857'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm77cc' name='bindings' type='I17779e3m1001f33ccb7mm7fb3' association='I17779e3m1003cfd8422mm77d8' visibility='public' aggregation='composite' lower='0' upper='*' isOrdered='true'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000240' body='&lt;p&gt;represents the relationship between the AggregateInitializer and the set of MemberBindings it comprises.&lt;/p&gt;
&lt;note&gt;See 12.9 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1003cfd8422mm77cc'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm762c' name='AttributeRef' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000241' body='&lt;p&gt;a Selector expression that returns the value of a given Attribute of a given entity instance&lt;/p&gt;
&lt;note&gt;See 12.7.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm762c'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1286c71m10a1909d8b9mm1152'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I88485fm106cc8fc6camm2a87' name='id' type='_14_0_852026a_1203973938843_871362_5468' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000242' body='&lt;p&gt;Represents the identifier that is the content of the reference.&lt;/p&gt;'>
<annotatedElement xmi:idref='I88485fm106cc8fc6camm2a87'/>
</ownedComment>
<subsettedProperty xmi:id='I1fe40d5m11233374625m75'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm715b' name='refers-to' type='I167e3a5m10018e5d720mm7d99' association='I167e3a5m10018e5d720mm7169' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000243' body='&lt;p&gt;represents the relationship between the AttributeReference and the Attribute to which it refers.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm715b'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm75f7' name='IndexOperation' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000244' body='&lt;p&gt;an Expression that returns a value &quot;extracted from&quot; a given base value.&lt;/p&gt;
'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm75f7'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7ad9'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1001f33ccb7mm7fea' name='base-value' type='I167e3a5m10018e5d720mm7ad9' association='I17779e3m1001f33ccb7mm7ff6' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000245' body='&lt;p&gt;represents the base value from which the result value is to be extracted.  
For an AggregateIndex, the base-value Expression must evaluate to an AggregateValue.  
For a BinaryIndex, the base-value Expression must evaluate to a BINARY value.  
For a StringIndex, the base-value Expression must evaluate to a STRING Value.&lt;/p&gt;
'>
<annotatedElement xmi:idref='I17779e3m1001f33ccb7mm7fea'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm75c2' name='ParameterRef' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000246' body='&lt;p&gt;a Primary Expression that returns the current value associated with a given Parameter. 
A ParameterRef is only permitted within the body of an Algorithm. 
For an InParameter, the associated value is the current value of the InParameter (as a Variable).  
For a VARParameter, the associated value  is the current value in the object to which the VarParameter refers.&lt;/p&gt;
&lt;p&gt;A ParameterRef is a subclass of VariableRef, because every Parameter is a NamedVariable 
and a ParameterRef is a reference to the value of the Parameter seen as a variable in the body of the Algorithm.&lt;/p&gt;
&lt;note&gt;See 12.7.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm75c2'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm75af'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm707e' name='refers-to' type='I167e3a5m10018e5d720mm748a' association='I167e3a5m10018e5d720mm708c' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000247' body='&lt;p&gt;the formal Parameter to which the ParameterRef refers.
If the formal Parameter is an InParameter, the ParameterRef refers to its current value.  
If the formal Parameter is a VarParameter, the ParameterRef refers to the current value of its referent.&lt;/p&gt;
&lt;note&gt;See 12.7.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm707e'/>
</ownedComment>
<subsettedProperty xmi:id='I167e3a5m10018e5d720mm7045'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm75af' name='VariableRef' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000248' body='&lt;p&gt;a Primary Expression that returns the value currently associated with a given NamedVariable. 
NamedVariables include LocalVariables, QueryVariables, ControlVariables, AliasVariables.  
They also include Parameters and FunctionResults seen as variables within the body of the Algorithm.
A VariableRef that refers-to a QueryVariable may occur anywhere within expressions in the owning Query. 
A VariableRef that refers-to a ControlVariable may occur anywhere within the RepeatStatement that defines the ControlVariable.
A VariableRef that refers-to an AliasVariable may occur anywhere within the AliasStatement.
A VariableRef that refers-to a LocalVariable may occur anywhere within the AlgorithmScope in which it is defined:
 - For a GlobalRule, it may occur anywhere within the body of the GlobalRule, or within the NamedRules contained in the GlobalRule.
 - For an Algorithm, it may occur within the body of an Algorithm.
A VariableRef that refers to a Parameter or FunctionResult may occur anywhere within the body of the Algorithm.
The value associated with a VariableRef that refers to VARVariable (an AliasVariable or a VARParameter) 
is the current value in the object  to which the VARVariable refers. 
The value associated with any other VariableRef is the current value in the Variable to which the VariableRef refers.&lt;/p&gt;
&lt;note&gt;See 12.7.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm75af'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1001f33ccb7mm7d67'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I88485fm106cc8fc6camm29ed' name='id' type='_14_0_852026a_1203973938843_871362_5468' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000249' body='&lt;p&gt;Represents the identifier that is the content of the reference.  
It can be the identifier for a LocalVariable, a Parameter, or a FunctionResult.&lt;/p&gt;'>
<annotatedElement xmi:idref='I88485fm106cc8fc6camm29ed'/>
</ownedComment>
<subsettedProperty xmi:id='I1fe40d5m11233374625m75'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7045' name='refers-to' type='I1fe40d5m11258908206mmbf' association='I167e3a5m10018e5d720mm7051' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00024a' body='&lt;p&gt;represents the relationship between the VariableReference and the local Variable to which it refers.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7045'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm75e4' name='GroupRef' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00024b' body='&lt;p&gt;a Selector that returns a PartialEntityValue consisting of the values of the Attributes of a given entity instance that constitute a given SingleEntityType.&lt;/p&gt;
&lt;note&gt;See 12.7.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm75e4'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1286c71m10a1909d8b9mm1152'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I88485fm106cc8fc6camm2a02' name='id' type='_14_0_852026a_1203973938843_871362_5468' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00024c' body='&lt;p&gt;Represents the identifier that is the content of the reference.&lt;/p&gt;'>
<annotatedElement xmi:idref='I88485fm106cc8fc6camm2a02'/>
</ownedComment>
<subsettedProperty xmi:id='I1fe40d5m11233374625m75'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1cb7a1m1025a904406mm7f31' name='refers-to' type='I1c21ed3m103f6d4f890mm43c6' association='I1cb7a1m1025a904406mm7f3d' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00024d' body='&lt;p&gt;represents the relationship between the GroupReference and the SingleEntityType (group of Attributes) to which it refers.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1cb7a1m1025a904406mm7f31'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1cb7a1m1025a904406mm7f1e' name='ConstantRef' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00024e' body='&lt;p&gt;a Primary Expression that returns the (current) value of a given Constant.  
The .id attribute refers to an identifier for a Constant defined in, or interfaced into, the schema.&lt;/p&gt;
&lt;note&gt;See 12.7.1 of ISO 10303-11:2004.&lt;/note&gt;
&lt;note&gt;Note: A reference to an EXPRESS &quot;Built-in Constant&quot; is considered to be a Literal, not a ConstantRef.&lt;/note&gt;
'>
<annotatedElement xmi:idref='I1cb7a1m1025a904406mm7f1e'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1001f33ccb7mm7d67'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I88485fm106cc8fc6camm2a5e' name='id' type='_14_0_852026a_1203973938843_871362_5468' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00024f' body='&lt;p&gt;Represents the identifier that is the content of the Reference.&lt;/p&gt;'>
<annotatedElement xmi:idref='I88485fm106cc8fc6camm2a5e'/>
</ownedComment>
<subsettedProperty xmi:id='I1fe40d5m11233374625m75'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em1028474ff9emm7fa8' name='refers-to' type='I17779e3m1026e8ed5e9mm73c0' association='I118958em1028474ff9emm7fb6' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000250' body='&lt;p&gt;represents the Constant referred to by a ConstantRef.&lt;/p&gt;
&lt;note&gt;See 12.7.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I118958em1028474ff9emm7fa8'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1cb7a1m1025a904406mm7f04' name='Literal' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000251' body='&lt;p&gt;a Primary Expression consisting of a symbol that denotes a specific value of a SimpleType.  
The .text attribute of Expression is the representation of the value.&lt;/p&gt;
&lt;note&gt;See 7.5 of ISO 10303-11:2004.&lt;/note&gt;
&lt;note&gt;References to the built-in constants – E, PI, TRUE, FALSE, UNKNOWN – are considered to be Literals whose :text is the keyword.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1cb7a1m1025a904406mm7f04'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1001f33ccb7mm7d67'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em102c66626a0mm7eec' name='refers-to' type='I167e3a5m10018e5d720mm7e2b' association='I118958em102c66626a0mm7efa' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000252' body='&lt;p&gt;represents the SimpleValue to which the Literal refers. &lt;/p&gt;
&lt;p&gt;
Every Literal refers to a SimpleValue in all cases; making it a SpecializedValue requires a (implicit) Coercion. 
This relationship is modeled as implicit, because it specializes Expression.evaluation.&lt;/p&gt;
&lt;note&gt;See 7.5 of ISO 10303-11:2004.&lt;/note&gt;
&lt;note&gt;Although every Literal refers to exactly one SimpleValue, it is not usually necessary to instantiate either the SimpleValue or the relationship.&lt;/note&gt;'>
<annotatedElement xmi:idref='I118958em102c66626a0mm7eec'/>
</ownedComment>
<subsettedProperty xmi:id='I17779e3m1003cfd8422mm7857'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I118958em102c66626a0mm7f2f' name='EnumItemRef' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000253' body='&lt;p&gt;a Primary Expression that returns an EnumerationItem (value)&lt;/p&gt;
&lt;note&gt;See 12.7.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I118958em102c66626a0mm7f2f'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1001f33ccb7mm7d67'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I88485fm106cc8fc6camm2a73' name='id' type='_14_0_852026a_1203973938843_871362_5468' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000254' body='&lt;p&gt;Represents the identifier that is the content of the reference.&lt;/p&gt;'>
<annotatedElement xmi:idref='I88485fm106cc8fc6camm2a73'/>
</ownedComment>
<subsettedProperty xmi:id='I1fe40d5m11233374625m75'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em1028474ff9emm7fe6' name='refers-to' type='I167e3a5m10018e5d720mm7e66' association='I118958em1028474ff9emm7ff4' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000255' body='&lt;p&gt;represents the EnumerationItem value referred to by an EnumItemRef.  
This relationship is modeled as implicit, because it specializes Expression.evaluation&lt;/p&gt;
&lt;note&gt;See 12.7.1 of ISO 10303-11:2004.&lt;/note&gt;
'>
<annotatedElement xmi:idref='I118958em1028474ff9emm7fe6'/>
</ownedComment>
<subsettedProperty xmi:id='I17779e3m1003cfd8422mm7857'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1eaf25dm106bd879899mm2aa0' name='ExtentRef' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000256' body='&lt;p&gt;a Primary Expression denoting the extent of a NamedType (almost always an entity data type), that is, the set of instances of that data type that appear in the population. 
This type of Primary is only permitted in an Expression that states a Rule.&lt;/p&gt;
&lt;note&gt;See 9.6 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2aa0'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1001f33ccb7mm7d67'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I88485fm106cc8fc6camm2a18' name='id' type='_14_0_852026a_1203973938843_871362_5468' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000257' body='&lt;p&gt;Represents the identifier that is the content of the reference.&lt;/p&gt;'>
<annotatedElement xmi:idref='I88485fm106cc8fc6camm2a18'/>
</ownedComment>
<subsettedProperty xmi:id='I1fe40d5m11233374625m75'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1eaf25dm106bd879899mm2a4d' name='refers-to' type='I167e3a5m10018e5d720mm7fd9' association='I1eaf25dm106bd879899mm2a4a' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000258' body='&lt;p&gt;represents the relationship between the Extent Reference and the NamedType to which the .id value refers.  
The value returned is the Extent of that NamedType within the (current) Population.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1eaf25dm106bd879899mm2a4d'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1b8aeb1m1082034fde6mm288e' name='Coercion' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000259' body='&lt;p&gt;an Operation representing the conversion of the operand to a specific data type (InstantiableType).  
This operation is implicit in a number of EXPRESS expressions, notably:&lt;br&gt;
- in converting between a defined data type and its fundamental type (on which the operations are defined), and &lt;br&gt;
- in converting an EntityValue to an EntityInstance of the corresponding EntityType.&lt;br&gt;
In most cases, the Coercion does not change the &quot;value&quot; of the operand; rather the Coercion maps the value to the corresponding value of the related data type.&lt;/p&gt;
&lt;note&gt;See clause 12 of ISO 10303-11:2004, and the proposed revision to clause 12.10.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1b8aeb1m1082034fde6mm288e'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7644'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1b8aeb1m1082034fde6mm27fc' name='target-type' type='I1fe40d5m11266e8346cmbb4' association='I1b8aeb1m1082034fde6mm27f9' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00025a' body='&lt;p&gt;represents the data type to which the operand of the Coercion is to be converted.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1b8aeb1m1082034fde6mm27fc'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1b8aeb1m1082034fde6mm2873' name='operand' type='I167e3a5m10018e5d720mm7ad9' association='I1b8aeb1m1082034fde6mm2870' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00025b' body='&lt;p&gt;represents the Expression whose result is to be converted to the target-type by the Coercion operation.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1b8aeb1m1082034fde6mm2873'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='Ia75974m1082615da82mm20c7' name='AggregateIndex' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00025c' body='&lt;p&gt;an IndexOperation that returns the value of a specified member of a given AggregateValue.  
.base-value evaluates to the AggregateValue.  
.index-value evaluates to the &quot;position&quot; of the member to be extracted.  
The interpretation of the .index-value depends on the kind of AggregateValue (Indexed, Ordered, Unordered).&lt;/p&gt;
&lt;note&gt;See 12.6.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='Ia75974m1082615da82mm20c7'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm75f7'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7009' name='index-value' type='I167e3a5m10018e5d720mm7ad9' association='I167e3a5m10018e5d720mm7019' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00025d' body='&lt;p&gt;represents the (Integer) index value designating the member whose value is to be extracted.  
The interpretation of the index value depends on the kind of AggregateValue.&lt;/p&gt;
&lt;note&gt;See 12.6.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7009'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='Ia75974m1082615da82mm20b4' name='StringIndex' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00025e' body='&lt;p&gt;An IndexOperation that returns a substring of one or more characters (codes) from a STRING value.  
.base-value is the STRING value.  
.first-code designates the position of the first character (code) to be extracted.  
.last-code designates the position of the last character (code) to be extracted.  
.last-code has no value if only one character is to be extracted.&lt;/p&gt;
&lt;note&gt;See clause 12.5.1. of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='Ia75974m1082615da82mm20b4'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm75f7'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='Ia75974m1082615da82mm2035' name='last-code' type='I167e3a5m10018e5d720mm7ad9' association='Ia75974m1082615da82mm2032' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00025f' body='&lt;p&gt;represents the (postive integer) value that designates the position of the last character (code) to be extracted.  
.last-code has no value if only one character (code) is to be extracted.&lt;/p&gt;'>
<annotatedElement xmi:idref='Ia75974m1082615da82mm2035'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='Ia75974m1082615da82mm205b' name='first-code' type='I167e3a5m10018e5d720mm7ad9' association='Ia75974m1082615da82mm2058' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000260' body='&lt;p&gt;represents the (postive integer) value that designates the position of the first character (code) to be extracted.&lt;/p&gt;'>
<annotatedElement xmi:idref='Ia75974m1082615da82mm205b'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='Ia75974m1082615da82mm20a1' name='BinaryIndex' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000261' body='&lt;p&gt;An IndexOperation that returns a substring of one or more bits from a BINARY value.  
.base-value is the BINARY value.  
.first-bit designates the position of the first bit to be extracted.  
.last-bit designates the position of the last bit to be extracted.  
.last-bit has no value if only one bit is to be extracted.&lt;/p&gt;
&lt;note&gt;See clause 12.3.1. of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='Ia75974m1082615da82mm20a1'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm75f7'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='Ia75974m1082615da82mm1fe3' name='last-bit' type='I167e3a5m10018e5d720mm7ad9' association='Ia75974m1082615da82mm1fe0' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000262' body='&lt;p&gt;represents the (postive integer) value that designates the position of the last bit to be extracted.  
.last-bit has no value if only one bit is to be extracted.&lt;/p&gt;'>
<annotatedElement xmi:idref='Ia75974m1082615da82mm1fe3'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='Ia75974m1082615da82mm2009' name='first-bit' type='I167e3a5m10018e5d720mm7ad9' association='Ia75974m1082615da82mm2006' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000263' body='&lt;p&gt;represents the (postive integer) value that designates the position of the first bit to be extracted.&lt;/p&gt;'>
<annotatedElement xmi:idref='Ia75974m1082615da82mm2009'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='Ia75974m1082615da82mm1f79' name='UsedInRef' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000264' body='&lt;p&gt;a Selector expression that returns the Set of EntityInstances for which the given entity instance is in the range of the specified Attribute.  
In effect, it returns the value of the corresponding inverse attribute for the given entity instance.&lt;/p&gt;
&lt;note&gt;See clause 15.26 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='Ia75974m1082615da82mm1f79'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1286c71m10a1909d8b9mm1152'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='Ia75974m1082615da82mm1f2e' name='inverse-of' type='I167e3a5m10018e5d720mm7d99' association='Ia75974m1082615da82mm1f2b' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000265' body='&lt;p&gt;represents the relationship between the UsedIn Reference and the Attribute designated by the .id value.  
The UsedIn Reference effectively produces the &quot;inverse&quot; of this Attribute.&lt;/p&gt;'>
<annotatedElement xmi:idref='Ia75974m1082615da82mm1f2e'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1d4ea6cm1092c37cf59mm1a64' name='RepeatCount' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000266' body='&lt;p&gt;A specification for repeating a given initial value into n consecutive ListMember slots, where n is the .count value.  
The repetition value is specified by the .derivation expression.  
If that expression is, or evaluates to, a constant (without regard to a Population), the value of .count is that constant.&lt;/p&gt;
&lt;note&gt;See 12.9 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1d4ea6cm1092c37cf59mm1a64'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1d4ea6cm1092c37cf59mm1a4c' name='count' visibility='public' lower='0'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Integer'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000267' body='&lt;p&gt;The number of actual ListMembers that are to be filled with the member-value.  
If the .derivation expression evaluates to a constant, without regard to population, .count has a value; otherwise not.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1d4ea6cm1092c37cf59mm1a4c'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1d4ea6cm1092c37cf59mm1a23' name='derivation' type='I167e3a5m10018e5d720mm7ad9' association='I1d4ea6cm1092c37cf59mm1a20' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000268' body='&lt;p&gt;represents the relationship between the RepeatCount and the Expression that denotes the value of the RepeatCount.  
This relationship shall be present whenever the specification for the RepeatCount is not an integer literal.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1d4ea6cm1092c37cf59mm1a23'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='Ie20459m109465a669dmmfb4' name='SELFRef' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000269' body='&lt;p&gt;A Primary Expression consisting of the symbol SELF.  
It refers to the value of each instance (in any Population) of the data type being defined by the declaration in which it appears.  
SELF is only a valid Symbol in a DomainRule.&lt;/p&gt;
&lt;note&gt;See clause 14.5 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='Ie20459m109465a669dmmfb4'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m1001f33ccb7mm7d67'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1286c71m10a1909d8b9mm1152' name='Selector' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00026a' body='&lt;p&gt;A FullExpression that returns the value of one or more Attributes of an EntityInstance.&lt;/p&gt;
&lt;note&gt;This concept does not appear in Part 11 per se, but the three subclasses all appear in Part 11 and have this property.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1286c71m10a1909d8b9mm1152'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7ad9'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm712a' name='entity-instance' type='I167e3a5m10018e5d720mm7ad9' association='I167e3a5m10018e5d720mm7138' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00026b' body='&lt;p&gt;represents the entity instance from which the Selector extracts the value of the named Attribute(s).&lt;/p&gt;
&lt;note&gt;See 12.7.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm712a'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm74a1' name='ActualParameter' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00026c' body='&lt;p&gt;represents the substitution of the actual parameter instance for the formal parameter and, where required, the substitution of the data type of the actual parameter for the GeneralizedType of the formal parameter and any derivatives.
ActualParameter is an abstraction of two different parameter-passing mechanisms:  PassByValue and PassByReference.  When the corresponding formal Parameter is an InParameter, the ActualParameter shall be a PassByValue. When the corresponding formal Parameter is a VARParameter, the ActualParameter shall be a PassByReference. &lt;/p&gt;  
&lt;note&gt;See 12.8 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm74a1'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em102c66626a0mm7c56' name='position' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Integer'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00026d' body='&lt;p&gt;represents the position in which the ActualParameter occurs in the sequence associated with the FunctionCall (used to associate the ActualParameter with a formal parameter).&lt;/p&gt;
&lt;note&gt;See 12.8 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I118958em102c66626a0mm7c56'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm73bd' name='formal-parameter' type='I167e3a5m10018e5d720mm748a' association='I167e3a5m10018e5d720mm73cb' visibility='public' isDerived='true'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00026e' body='&lt;p&gt;represents the formal parameter to which the ActualParameter corresponds.&lt;/p&gt;
&lt;note&gt;See 12.8 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm73bd'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm73fc' name='in-FunctionCall' type='I167e3a5m10018e5d720mm759c' association='I167e3a5m10018e5d720mm73ff' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00026f' body='&lt;p&gt;the FunctionCall, if any, that contains the ActualParameter.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm73fc'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0m4be' name='in-ProcedureCall' type='I1aabda3m10c7e3ba3f0mm1423' association='I1aabda3m10c7e3ba3f0m4c4' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000270' body='&lt;p&gt;the ProcedureCall, if any, in which the ActualParameter appears.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0m4be'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1fe40d5m11258908206mma' name='QueryVariable' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000271' body='&lt;p&gt;a Variable that ranges over the member elements of the aggregate-operand in evaluating a the QueryExpression. 
The scope of a QueryVariable is the QueryExpression, that is, all references to it occur in the select-condition of the QueryExpression. 
The data-type of a QueryVariable is implicitly the data type of the member-element of the aggregate operand.&lt;/p&gt;
&lt;note&gt;See 12.6.7 of ISO 10303-11:2004.&lt;/note&gt;
&lt;note&gt;Although QueryVariable is modeled as a subclass of Variable, it is syntactically impossible for a QueryVariable to be the referent of a VariableCell.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11258908206mma'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1fe40d5m11233374625mm13b'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11258908206m3fe' name='namespace' type='I17779e3m1001f33ccb7mm7f1b' association='I1fe40d5m11258908206m404' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000272' body='&lt;p&gt;the QueryExpression in which the QueryVariable is defined.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11258908206m3fe'/>
</ownedComment>
<subsettedProperty xmi:id='I9ced84m109b2851e95mm1210'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1247080504296_712453_1051' name='ActualParameter-is-referent' visibility='public'>
<memberEnd xmi:idref='_16_0_1_852026a_1247080504296_615599_1052'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1247080504296_615599_1052' name='__inv_actual-referent' type='_16_0_1_852026a_1247080261328_388051_1011' association='_16_0_1_852026a_1247080504296_712453_1051' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='_16_0_1_852026a_1247080504296_798430_1053'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm7051' name='id-refers-to-NamedVariable' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000273' body='&lt;p&gt;represents the Variable to which the VariableRef refers.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7051'/>
</ownedComment>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm704e'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm704e' name='__inv_refers-to' type='I167e3a5m10018e5d720mm75af' association='I167e3a5m10018e5d720mm7051' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000274' body='&lt;p&gt;represents the Variable to which the VariableRef refers.&lt;/p&gt;
&lt;note&gt;See 12.7.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm704e'/>
</ownedComment>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7045'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm72b7' name='AttributeBinding-has-value' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm72b4'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm72b4' name='__inv_attribute-value' type='I167e3a5m10018e5d720mm7464' association='I167e3a5m10018e5d720mm72b7' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm72a9'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm7019' name='AggregateIndex-has-index-value' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7016'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7016' name='__inv_index-value' type='Ia75974m1082615da82mm20c7' association='I167e3a5m10018e5d720mm7019' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7009'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm7522' name='UnaryOperation-has-operand' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm751f'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm751f' name='__inv_unary-operand' type='I167e3a5m10018e5d720mm7589' association='I167e3a5m10018e5d720mm7522' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7514'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='Ia75974m1082615da82mm2032' name='StringIndex-has-last-code' visibility='public'>
<memberEnd xmi:idref='Ia75974m1082615da82mm2038'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='Ia75974m1082615da82mm2038' name='__inv_last-code' type='Ia75974m1082615da82mm20b4' association='Ia75974m1082615da82mm2032' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='Ia75974m1082615da82mm2035'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='Ia75974m1082615da82mm2058' name='StringIndex-has-first-code' visibility='public'>
<memberEnd xmi:idref='Ia75974m1082615da82mm205e'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='Ia75974m1082615da82mm205e' name='__inv_first-code' type='Ia75974m1082615da82mm20b4' association='Ia75974m1082615da82mm2058' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='Ia75974m1082615da82mm205b'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm7138' name='Selector-extracts-from-Entity' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7135'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7135' name='__inv_entity-instance' type='I1286c71m10a1909d8b9mm1152' association='I167e3a5m10018e5d720mm7138' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm712a'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1d4ea6cm1092c37cf59mm1a20' name='RepeatCount-has-derivation' visibility='public'>
<memberEnd xmi:idref='I1d4ea6cm1092c37cf59mm1a26'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1d4ea6cm1092c37cf59mm1a26' name='__inv_derivation' type='I1d4ea6cm1092c37cf59mm1a64' association='I1d4ea6cm1092c37cf59mm1a20' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1d4ea6cm1092c37cf59mm1a23'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1001f33ccb7mm7f01' name='query-has-select-condition' visibility='public'>
<memberEnd xmi:idref='I17779e3m1001f33ccb7mm7efe'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1001f33ccb7mm7efe' name='__inv_select-condition' type='I17779e3m1001f33ccb7mm7f1b' association='I17779e3m1001f33ccb7mm7f01' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1001f33ccb7mm7ef3'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1001f33ccb7mm7ec7' name='query-has-aggregate-operand' visibility='public'>
<memberEnd xmi:idref='I17779e3m1001f33ccb7mm7ec4'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1001f33ccb7mm7ec4' name='__inv_aggregate-operand' type='I17779e3m1001f33ccb7mm7f1b' association='I17779e3m1001f33ccb7mm7ec7' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1001f33ccb7mm7eb9'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1001f33ccb7mm7f74' name='MemberBinding-has-value' visibility='public'>
<memberEnd xmi:idref='I17779e3m1001f33ccb7mm7f71'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1001f33ccb7mm7f71' name='__inv_member-value' type='I17779e3m1001f33ccb7mm7fb3' association='I17779e3m1001f33ccb7mm7f74' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1001f33ccb7mm7f68'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1001f33ccb7mm7ff6' name='IndexOp-has-base-value' visibility='public'>
<memberEnd xmi:idref='I17779e3m1001f33ccb7mm7ff3'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1001f33ccb7mm7ff3' name='__inv_base-value' type='I167e3a5m10018e5d720mm75f7' association='I17779e3m1001f33ccb7mm7ff6' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1001f33ccb7mm7fea'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1b8aeb1m1082034fde6mm27f9' name='Coercion-has-target-type' visibility='public'>
<memberEnd xmi:idref='I1b8aeb1m1082034fde6mm27ff'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1b8aeb1m1082034fde6mm27ff' name='__inv_target-type' type='I1b8aeb1m1082034fde6mm288e' association='I1b8aeb1m1082034fde6mm27f9' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1b8aeb1m1082034fde6mm27fc'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1b8aeb1m1082034fde6mm2870' name='Coercion-has-operand' visibility='public'>
<memberEnd xmi:idref='I1b8aeb1m1082034fde6mm2876'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1b8aeb1m1082034fde6mm2876' name='__inv_operand' type='I1b8aeb1m1082034fde6mm288e' association='I1b8aeb1m1082034fde6mm2870' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1b8aeb1m1082034fde6mm2873'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm74e8' name='BinaryOperation-has-right-operand' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm74e5'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm74e5' name='__inv_right-operand' type='I167e3a5m10018e5d720mm7576' association='I167e3a5m10018e5d720mm74e8' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm74dc'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm7504' name='BinaryOperation-has-left-operand' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7501'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7501' name='__inv_left-operand' type='I167e3a5m10018e5d720mm7576' association='I167e3a5m10018e5d720mm7504' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm74f8'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='Ia75974m1082615da82mm1fe0' name='BinaryIndex-has-last-bit' visibility='public'>
<memberEnd xmi:idref='Ia75974m1082615da82mm1fe6'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='Ia75974m1082615da82mm1fe6' name='__inv_last-bit' type='Ia75974m1082615da82mm20a1' association='Ia75974m1082615da82mm1fe0' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='Ia75974m1082615da82mm1fe3'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='Ia75974m1082615da82mm2006' name='BinaryIndex-has-first-bit' visibility='public'>
<memberEnd xmi:idref='Ia75974m1082615da82mm200c'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='Ia75974m1082615da82mm200c' name='__inv_first-bit' type='Ia75974m1082615da82mm20a1' association='Ia75974m1082615da82mm2006' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='Ia75974m1082615da82mm2009'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1003cfd8422mm776a' name='initializer-produces-result' visibility='public'>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7767'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm7767' name='__inv_result-value' type='I17779e3m1003cfd8422mm77f2' association='I17779e3m1003cfd8422mm776a' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm775e'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm744e' name='constructor-includes-bindings' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000275' body='&lt;p&gt;represents the explicit attribute to which the AttributeBinding assigns a value&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm744e'/>
</ownedComment>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm744b'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm744b' name='__inv_bindings' type='I167e3a5m10018e5d720mm7563' association='I167e3a5m10018e5d720mm744e' visibility='public'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7442'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm7430' name='AttributeBinding-for-Attribute' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm742d'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm742d' name='__inv_attribute' type='I167e3a5m10018e5d720mm7464' association='I167e3a5m10018e5d720mm7430' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7422'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1003cfd8422mm77d8' name='initializer-includes-binding' visibility='public'>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm77d5'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm77d5' name='__inv_bindings' type='I17779e3m1003cfd8422mm77f2' association='I17779e3m1003cfd8422mm77d8' visibility='public'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm77cc'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm7169' name='AttributeRef-refers-to-Attribute' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7166'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7166' name='__inv_refers-to' type='I167e3a5m10018e5d720mm762c' association='I167e3a5m10018e5d720mm7169' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm715b'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm708c' name='id-refers-to-Parameter' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7089'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7089' name='__inv_refers-to' type='I167e3a5m10018e5d720mm75c2' association='I167e3a5m10018e5d720mm708c' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm707e'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1026e8ed5e9mm7761' name='FunctionCall-returns-result' isDerived='true' visibility='public'>
<memberEnd xmi:idref='I17779e3m1026e8ed5e9mm775e'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1026e8ed5e9mm775e' name='__inv_returns-result' type='I167e3a5m10018e5d720mm759c' association='I17779e3m1026e8ed5e9mm7761' visibility='public' isDerived='true' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1026e8ed5e9mm7753'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm7395' name='FunctionCall-invokes-function' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7392'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm7392' name='__inv_invokes-function' type='I167e3a5m10018e5d720mm759c' association='I167e3a5m10018e5d720mm7395' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm7389'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I118958em1028474ff9emm7ff4' name='id-refers-to-EnumItem' visibility='public'>
<memberEnd xmi:idref='I118958em1028474ff9emm7ff1'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I118958em1028474ff9emm7ff1' name='__inv_refers-to' type='I118958em102c66626a0mm7f2f' association='I118958em1028474ff9emm7ff4' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I118958em1028474ff9emm7fe6'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I118958em1028474ff9emm7fb6' name='id-refers-to-Constant' visibility='public'>
<memberEnd xmi:idref='I118958em1028474ff9emm7fb3'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I118958em1028474ff9emm7fb3' name='__inv_refers-to' type='I1cb7a1m1025a904406mm7f1e' association='I118958em1028474ff9emm7fb6' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I118958em1028474ff9emm7fa8'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='Ia75974m1082615da82mm1f2b' name='UsedInRef-inverts-Attribute' visibility='public'>
<memberEnd xmi:idref='Ia75974m1082615da82mm1f31'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='Ia75974m1082615da82mm1f31' name='__inv_inverse-of' type='Ia75974m1082615da82mm1f79' association='Ia75974m1082615da82mm1f2b' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='Ia75974m1082615da82mm1f2e'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1d4ea6cm1092c37cf59mm19fa' name='MemberBinding-has-repetition' visibility='public'>
<memberEnd xmi:idref='I1d4ea6cm1092c37cf59mm1a00'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1d4ea6cm1092c37cf59mm1a00' name='__inv_repetition' type='I17779e3m1001f33ccb7mm7fb3' association='I1d4ea6cm1092c37cf59mm19fa' visibility='public'>
</ownedEnd>
<memberEnd xmi:idref='I1d4ea6cm1092c37cf59mm19fd'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1eaf25dm106bd879899mm2a4a' name='id-refers-to-NamedType' visibility='public'>
<memberEnd xmi:idref='I1eaf25dm106bd879899mm2a50'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1eaf25dm106bd879899mm2a50' name='__inv_refers-to' type='I1eaf25dm106bd879899mm2aa0' association='I1eaf25dm106bd879899mm2a4a' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1eaf25dm106bd879899mm2a4d'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1cb7a1m1025a904406mm7f3d' name='GroupRef-refers-to-SingleEntityType' visibility='public'>
<memberEnd xmi:idref='I1cb7a1m1025a904406mm7f3a'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1cb7a1m1025a904406mm7f3a' name='__inv_refers-to' type='I167e3a5m10018e5d720mm75e4' association='I1cb7a1m1025a904406mm7f3d' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1cb7a1m1025a904406mm7f31'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I118958em102c66626a0mm7c81' name='constructor-refers-to-SingleEntityType' visibility='public'>
<memberEnd xmi:idref='I118958em102c66626a0mm7c7e'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I118958em102c66626a0mm7c7e' name='__inv_attribute-group' type='I167e3a5m10018e5d720mm7563' association='I118958em102c66626a0mm7c81' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I118958em102c66626a0mm7c73'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1003cfd8422mm7782' name='constructor-produces-result' visibility='public'>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm777f'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I17779e3m1003cfd8422mm777f' name='__inv_result-value' type='I167e3a5m10018e5d720mm7563' association='I17779e3m1003cfd8422mm7782' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I17779e3m1003cfd8422mm7776'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I118958em102c66626a0mm7efa' name='Literal-refers-to-value' visibility='public'>
<memberEnd xmi:idref='I118958em102c66626a0mm7ef7'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I118958em102c66626a0mm7ef7' name='__inv_refers-to' type='I1cb7a1m1025a904406mm7f04' association='I118958em102c66626a0mm7efa' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I118958em102c66626a0mm7eec'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm73ff' name='call-provides-actual-parameters' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000276' body='&lt;p&gt;represents the relationship between a FunctionCall and the specifications for the values of its actual parameters.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm73ff'/>
</ownedComment>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm73fc'/>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm73f3'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm73cb' name='actual-parameter-
corresponds-to-
formal-parameter' isDerived='true' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm73c8'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm73c8' name='__inv_formal-parameter' type='I167e3a5m10018e5d720mm74a1' association='I167e3a5m10018e5d720mm73cb' visibility='public' isDerived='true' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm73bd'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1fe40d5m11258908206m404' name='scope-of-variable-is-query' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000277' body='&lt;p&gt;represents the (1-to-1) relationship between the QueryVariable and the QueryExpression in which it is defined.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11258908206m404'/>
</ownedComment>
<memberEnd xmi:idref='I1fe40d5m11258908206m3fe'/>
<memberEnd xmi:idref='I1fe40d5m11258908206m401'/>
</ownedMember>
<ownedRule xmi:type='cmof:Constraint' xmi:id='ix_000011' name='FunctionCall.returns-result.derivation'>
<constrainedElement xmi:idref='I167e3a5m10018e5d720mm759c'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_000278' language='OCL' body='self-&gt;returns-result = self-&gt;invokes-function-&gt;result'/>
</ownedRule>
</ownedMember>
<ownedMember xmi:id='I17779e3m1026e8ed5e9mm7d57' xmi:type='cmof:Package' name='Algorithms' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000279' body='The Algorithms Package contains the model of function and procedure definitions. This model is needed to support
Expressions, and some of its features are used in Global Rules.'>
<annotatedElement xmi:idref='I17779e3m1026e8ed5e9mm7d57'/>
</ownedComment>
<packageImport xmi:type='cmof:PackageImport' xmi:id='_14_0_852026a_1203968324296_673946_5086'>
<importedPackage xmi:type='cmof:Package' xmi:idref='I17779e3m1026e8ed5e9mm7d82'/>
</packageImport>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm748a' name='Parameter' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00027a' body='&lt;p&gt;a formal parameter -- the formal description of an operand -- of a Procedure or Function.  
Parameters are of two kinds:&lt;/p&gt;
&lt;ls&gt;
&lt;li&gt;InParameters, to which the values of the corresponding ActualParameters are passed by value
&lt;li&gt;VARParameters, to which the corresponding ActualParameters are passed by reference
&lt;/ls&gt;
&lt;p&gt;A Parameter is actually a NamedVariable whose scope is the Algorithm, 
and in each invocation of the Algorithm its (initial) value is set from the value or reference provided as the actual parameter.  
The formal-parameter-type of the Parameter constrains the types/values of the corresponding actual parameters.  
As a NamedVariable, it also has a VariableType, which is its data type for the purpose of operations within the body of the Algorithm.&lt;/p&gt;
&lt;note&gt;See 9.5.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm748a'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='_16_0_1_852026a_1251998454140_122583_1487'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I118958em102c66626a0mm7cbe' name='position' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Integer'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00027b' body='&lt;p&gt;A positive integer value designating the ordinal position of the Parameter in the formal-parameter-list for the Algorithm that is its .namespace.  
The position is used to associate ActualParameters with the formal Parameter.&lt;/p&gt;
&lt;note&gt;See 9.5.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I118958em102c66626a0mm7cbe'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm72e5' name='formal-parameter-type' type='I14a75bbm102da9bec90mm7e19' association='I167e3a5m10018e5d720mm72f3' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00027c' body='&lt;p&gt;the specification for the required data type of the actual parameters that correspond to the formal Parameter; 
the data type that represents the allowable values of the Parameter, or the requirements placed on the data type of the Parameter.&lt;/p&gt;
&lt;note&gt;See 9.5.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm72e5'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm73ae' name='namespace' type='I167e3a5m10018e5d720mm74c7' association='I167e3a5m10018e5d720mm73b1' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00027d' body='&lt;p&gt;represents the relationship between the Parameter and the Algorithm of which it is a formal parameter, and therefore the Algorithm which is the namespace for its .id. &lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm73ae'/>
</ownedComment>
<subsettedProperty xmi:id='I9ced84m109b2851e95mm1210'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1025f5930bdmm7e33' name='Function' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00027e' body='&lt;p&gt;an Algorithm that returns a single Instance and can appear in an Expression.&lt;/p&gt;
&lt;note&gt;Note: &quot;Function&quot; is a reserved word in EXPRESS; if this metamodel is converted to EXPRESS, this class must be renamed.&lt;/note&gt;
&lt;note&gt;See 9.5.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1025f5930bdmm7e33'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm74c7'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m10023cc289dmm7d7c' name='result' type='I17779e3m1026e8ed5e9mm77ec' association='I17779e3m10023cc289dmm7d8a' visibility='public' aggregation='composite'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00027f' body='&lt;p&gt;represents the relationship between a Function and its FunctionResult.&lt;/p&gt;
&lt;note&gt;See 9.5.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m10023cc289dmm7d7c'/>
</ownedComment>
<subsettedProperty xmi:id='I9ced84m109b2851e95mm1213'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1025f5930bdmm7e1b' name='Procedure' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000280' body='&lt;p&gt;an Algorithm that is executed as an action in a FunctionBody.&lt;/p&gt;
&lt;note&gt;Note: &quot;Procedure&quot; is a reserved word in EXPRESS; if this metamodel is converted to EXPRESS, this class must be renamed.&lt;/note&gt;
&lt;note&gt;See 9.5.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1025f5930bdmm7e1b'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm74c7'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm74c7' name='Algorithm' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000281' body='&lt;p&gt;a CommonElement that represents an operation or process that transforms information.  Every Algorithm is either a Procedure or a Function.  Every Algorithm is also an AlgorithmScope, in that it may define CommonElements and local ModelElements.&lt;/p&gt;
&lt;note&gt;See 9.5 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm74c7'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I118958em102d5a77152mm7d06'/>
<general xmi:type='cmof:Class' xmi:idref='I17779e3m102ef760d6emm7fc2'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I808680m1128bdf3bcfm81c' name='actual-types' type='I14a3da8m1067f761adfmm33b3' association='I808680m1128bdf3bcfm822' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000282' body='&lt;p&gt;the set of ActualTypes that are defined in the Algorithm.  
subsets LocalScope.local-elements.&lt;/p&gt;'>
<annotatedElement xmi:idref='I808680m1128bdf3bcfm81c'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm73a5' name='formal-parameters' type='I167e3a5m10018e5d720mm748a' association='I167e3a5m10018e5d720mm73b1' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000283' body='&lt;p&gt;represents the relationship between the Algorithm and its formal parameters.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm73a5'/>
</ownedComment>
<subsettedProperty xmi:id='I9ced84m109b2851e95mm1213'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I14a75bbm102da9bec90mm7dde' name='body' type='I1507ef7m10811c3e7aemm2949' association='I14a75bbm102da9bec90mm7de1' visibility='public' aggregation='composite' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000284' body='&lt;p&gt;represents the relationship between a (conceptual) Algorithm and a definition of the Algorithm as a Statement.  
In most cases, the Statement is a StatementBlock -- a sequence of actions to be performed.  
The body of the Algorithm is modeled as optional (0..1).  Support for the body is not a requirement for the support of Algorithms.&lt;/p&gt;
&lt;note&gt;See 9.5 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I14a75bbm102da9bec90mm7dde'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I17779e3m1026e8ed5e9mm77ec' name='FunctionResult' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000285' body='&lt;p&gt;the formal parameter representing the result Instance that is returned by the invocation of a Function.  
Within the body of the Function, the FunctionResult is a Variable that is denoted by the Algorithm identifier.  
Upon termination of the execution of the function-body, the (current) value of that Variable is returned.&lt;/p&gt;
&lt;note&gt;See 9.5.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m1026e8ed5e9mm77ec'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1fe40d5m11233374625mm13b'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m10023cc289dmm7d87' name='namespace' type='I17779e3m1025f5930bdmm7e33' association='I17779e3m10023cc289dmm7d8a' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000286' body='&lt;p&gt;the Function that is the AlgorithmScope in which the Function name refers to the FunctionResult.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m10023cc289dmm7d87'/>
</ownedComment>
<subsettedProperty xmi:id='I9ced84m109b2851e95mm1210'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I167e3a5m10018e5d720mm7360' name='LocalVariable' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000287' body='&lt;p&gt;a Variable that is declared as LOCAL to an Algorithm or GlobalRule and given an Identifier, and possibly an initial value, in the declaration.  
A FunctionResult is a special case that is implicitly declared to be a LocalVariable in the FUNCTION declaration.&lt;/p&gt;
&lt;note&gt;See 9.5.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm7360'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1fe40d5m11233374625mm13b'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I17779e3m1001f33ccb7mm7e9f' name='namespace' type='I17779e3m102ef760d6emm7fc2' association='I17779e3m1001f33ccb7mm7eab' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000288' body='&lt;p&gt;represents the relationship between the LocalVariable and the AlgorithmScope in which it is defined.
This is a refinement of the NamedElement.namespace relationship.
The lifetime of a LocalVariable is exactly equal to the lifetime of the algorithm invocation or the GlobalRule evaluation that has the AlgorithmScope.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1001f33ccb7mm7e9f'/>
</ownedComment>
<subsettedProperty xmi:id='I9ced84m109b2851e95mm1210'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1d4ea6cm1092c37cf59mm1bb9' name='initial-value' type='I167e3a5m10018e5d720mm7ad9' association='I1d4ea6cm1092c37cf59mm1bb6' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000289' body='&lt;p&gt;represents the relationship between the Variable and the Expression that specifies its initial-value on entry to the FunctionBody, 
which may be the body of an Algorithm or a GlobalRule&lt;/p&gt;'>
<annotatedElement xmi:idref='I1d4ea6cm1092c37cf59mm1bb9'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1507ef7m10811c3e7aemm2949' name='Statement' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00028a' body='&lt;p&gt;An EXPRESS Statement, a directive to perform a certain set of operations.&lt;/p&gt;
&lt;note&gt;See Clause 13 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1507ef7m10811c3e7aemm2949'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1507ef7m10811c3e7aemm290e' name='text' type='_14_0_852026a_1203973376187_525723_5444' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00028b' body='&lt;p&gt;Represents the EXPRESS statement verbatim.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1507ef7m10811c3e7aemm290e'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I14a75bbm102da9bec90mm7dd5' name='implements' type='I167e3a5m10018e5d720mm74c7' association='I14a75bbm102da9bec90mm7de1' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00028c' body='&lt;p&gt;represents the relationship between a FunctionBody and the Algorithm for which it specifies an implementation.'>
<annotatedElement xmi:idref='I14a75bbm102da9bec90mm7dd5'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm141b' name='controlled-by' type='I1aabda3m10c7e3ba3f0mm1421' association='I1aabda3m10c7e3ba3f0mm1413' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00028d' body='&lt;p&gt;the RepeatStatement that controls the iterated execution of the actions of the Statement.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm141b'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm13ed' name='in-block' type='I1aabda3m10c7e3ba3f0mm1467' association='I1aabda3m10c7e3ba3f0mm13e5' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00028e' body='&lt;p&gt;represents the relationship between a Statement and the StatementBlock, if any, in which it occurs.&lt;/p&gt;
&lt;note&gt;This relationship is needed for ESCAPE statements and SKIP statements, whose interpretation requires a path back to the REPEAT statement that owns them.  
It may also be needed to associate a RETURN statement with the FunctionBody that includes it.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm13ed'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1fe40d5m11233374625mm13b' name='Variable' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00028f' body='&lt;p&gt;an object that exists during an invocation of an Algorithm or the evaluation of a GlobalRule and contains an Instance of a specified data type.  
(In essence, the variable-type of a Variable specifies the structure of the object that contains the value.)  
During execution of the Algorithm or the body of the GlobalRule, the Instance contained in a Variable can change. Variables can be the objects of assignments or the referents of VARExpressions, and they have declared or implied data types that constrain their allowable values.  &lt;/p&gt;
&lt;note&gt;See 9.5.4 of ISO 10303-11:2004.&lt;/note&gt;
&lt;note&gt;Part 11 uses the term &quot;variable&quot; to denote any of several kinds of objects that hold values, 
including LocalVariables, FunctionResults, Parameters, aggregate elements, and ExplicitAttributes in EntityValues.  
In this specification the term &quot;Variable&quot; is restricted to LocalVariables, FunctionResults, and InParameters.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11233374625mm13b'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1fe40d5m11258908206mmbf'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1254340588234_714652_664' name='variable-type' type='I1fe40d5m11266e8346cmbb4' association='_16_0_1_852026a_1254340588218_280851_662' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000290' body='&lt;p&gt;the data type of the Variable – the type of the values that the Variable can contain.&lt;/p&gt;
&lt;p&gt;In any given invocation, the data type of the Variable is an InstantiableType. If the data type of the Variable is specified as an InstantiableType, it is fixed for all invocations. If the data type of the Variable is specified as an ActualType, the actual data type varies from invocation to invocation, according to the data type of an actual parameter. If the Variable is an InParameter and its formal parameter type is a GeneralizedType, the variable-type is the corresponding ActualType.
&lt;/p&gt;
&lt;note&gt;See 9.5.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1254340588234_714652_664'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1cdecf7m11243159c16m30e' name='InParameter' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000291' body='&lt;p&gt;a formal parameter to a Procedure or Function to which the ActualParameter is passed &quot;by value&quot;.  
During an invocation of the Algorithm, the InParameter is a Variable that is initially set to the value of the corresponding ActualParameter,  
and its variable-type is the data type of the ActualParameter.  
The value of an InParameter can be changed during the execution of the Algorithm.  
The value of the corresponding actual parameter does not change.&lt;/p&gt;
&lt;note&gt;An InParameter has a formal-parameter-type, which is the type specification to which the oorresponding ActualParameters are required to conform, 
and a variable-type, which is the type specification for the Variable created to hold the value during invocation of the Algorithm.  When the formal-parameter-type is an InstantiableType, the variable-type is the same type.  When the formal parameter-type is a GeneralizedType, the variable-type is the corresponding ActualType.&lt;/note&gt;
&lt;note&gt;See 9.5.3 of ISO 10303-11:2004.&lt;/note&gt;
'>
<annotatedElement xmi:idref='I1cdecf7m11243159c16m30e'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1fe40d5m11233374625mm13b'/>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm748a'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1cdecf7m11243159c16m38d' name='VARParameter' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000292' body='&lt;p&gt;A formal parameter to a Procedure that is used as a reference to the Variable that is the ActualParameter in a given invocation.  
That is, a VARParameter represents a parameter that is &quot;passed by reference&quot;.
During an invocation of the Algorithm, theVARParameter is a VARVariable whose referent is specified by the VARExpression that is the corresponding ActualParameter.   All references to a VARParameter (in Statements and Expressions) refer to its referent.&lt;/p&gt;
&lt;p&gt;As a Parameter, the VARParameter has a formal-parameter-type, which is the type specification to which the corresponding ActualParameters are required to conform. As a VARVariable, its data type is the type of its referent.  &lt;/p&gt;
&lt;note&gt;See 9.5.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1cdecf7m11243159c16m38d'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm748a'/>
<general xmi:type='cmof:Class' xmi:idref='I1fe40d5m11266e8346cm330'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1fe40d5m11258908206mmbf' name='NamedVariable' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000293' body='&lt;p&gt;Any EXPRESS syntactic variable: A LocalVariable, a QueryVariable, an increment ControlVariable, or an AliasVariable, or a Parameter or FunctionResult.  
A NamedVariable is a NamedElement and always has a name/identifier.  
Each kind of NamedVariable has a different scope, but the scope of every NamedVariable is a LocalScope.  
Every NamedVariable is either a Variable or a VARVariable.
&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11258908206mmbf'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I9ced84m109b2851e95mm1237'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1fe40d5m11277a9188em350' name='ActualAGGREGATEType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000294' body='&lt;p&gt;an ActualType that is an aggregation type whose structure is specified by an ParametricStructure, 
which refers to the structure of a (component of) an actual parameter.
The .label attribute is used to determine the ParametricStructure to which it refers.
The member-type of the ActualAGGREGATEType can be any VariableType (Instantiable or Actual) 
and need not have any relationship to the member type of the corresponding actual parameter.&lt;/p&gt;
&lt;note&gt;See 9.5.3.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11277a9188em350'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I14a3da8m1067f761adfmm33b3'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I808680m1128bdf3bcfmce1' name='label' type='_14_0_852026a_1203973938843_871362_5468' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000295' body='&lt;p&gt;Represents the EXPRESS type_label on the AGGREGATE type, which is used to associate it with the ParametricStructure that defines that identifier. &lt;/p&gt;
&lt;note&gt;The label on the ActualAGGREGATEType is not a definition of that symbol; it is a reference to the occurrence of that symbol as a label on a component of a formal parameter type that defines the label in the Algorithm namespace as the id for a ParametricStructure that defines what the actual structure is for each invocation. More than one ActualAGGREGATEType can have the same label and refer to the same structure.
&lt;/note&gt;'>
<annotatedElement xmi:idref='I808680m1128bdf3bcfmce1'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11277a9188em699' name='lower-bound' type='I167e3a5m10240564a77mm7d09' association='I1fe40d5m11277a9188em69c' visibility='public' aggregation='composite' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000296' body='&lt;p&gt;represents a lower-bound constraint on aggregate values that are instances of the actual aggregation type corresponding to the AGGREGATE type.  
If the lower-bound constraint is present, the number of members of the aggregate value shall be greater than or equal to this value.  
If the lower-bound is not present or evaluates to zero, there is no constraint.  
Unless the lower-bound specified for the AGGREGATE type is an explicit &quot;0&quot;, this constraint shall appear.&lt;/p&gt;
&lt;note&gt;See 9.5.3.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11277a9188em699'/>
</ownedComment>
<subsettedProperty xmi:id='If8093fm102ff7b3af0mm43ee'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11277a9188em725' name='member-type' type='I1fe40d5m11266e8346cmbb4' association='I1fe40d5m11277a9188em728' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000297' body='&lt;p&gt;represents the type of the components of the actual aggregation type that has the structure that corresponds to the AGGREGATE type.  
The type of the members may be an InstantiableType or an ActualType derived from a ParameterType.&lt;/p&gt;
&lt;note&gt;See 9.5.3.1 of ISO 10303-11:2004.&lt;/note&gt;
'>
<annotatedElement xmi:idref='I1fe40d5m11277a9188em725'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11277a9188em6c0' name='upper-bound' type='I167e3a5m10240564a77mm7d09' association='I1fe40d5m11277a9188em6c3' visibility='public' aggregation='composite' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000298' body='&lt;p&gt;represents an upper-bound constraint on aggregate values that are instances of the actual aggregation type corresponding to the AGGREGATE type.  
If the upper-bound constraint is present and does not evaluate to indeterminate (&quot;?&quot;), the number of members of the aggregate value shall be less than or equal to this value.  
If the upper-bound is not present or evaluates to indeterminate, there is no constraint.  
Unless the upper-bound specified for the AGGREGATE type is an explicit &quot;?&quot;, this constraint shall appear.&lt;/p&gt;
&lt;note&gt;See 9.5.3.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11277a9188em6c0'/>
</ownedComment>
<subsettedProperty xmi:id='If8093fm102ff7b3af0mm43ee'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11277a9188emb3f' name='refers-to' type='I808680m1128bdf3bcfmb03' association='I1fe40d5m11277a9188emb42' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_000299' body='&lt;p&gt;the ParametricStructure that defines the identifier that corresponds to the :label on the ActualAGGREGATEType. When instantiated, the ActualAGGREGATEType will have the structure of the component of the datatype of the ActualParameter that corresponds to this ParametricStructure.
&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11277a9188emb3f'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1fe40d5m11277a9188em363' name='ActualGenericType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00029a' body='&lt;p&gt;an ActualType that refers to a ParametricType – the data type, or the member-type, of an actual parameter. 
The :label attribute is used to determine the ParametricType to which it refers.
&lt;/p&gt;
&lt;note&gt;See 9.5.3.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11277a9188em363'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I14a3da8m1067f761adfmm33b3'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1255732391703_263455_1288' name='isEntity' visibility='public' isDerived='true'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Boolean'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I808680m1128bdf3bcfmd06' name='label' type='_14_0_852026a_1203973938843_871362_5468' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00029b' body='&lt;p&gt;Represents the &quot;type_label&quot; on the GENERIC or GENERIC_ENTITY type, which is used to associate it with the ActualDataType.&lt;/p&gt;Represents the EXPRESS type_label on the GENERIC or GENERIC_ENTITY keyword, which is used to associate it with the ParametricType that defines that type_label. &lt;/p&gt;
&lt;notee&gt;The label on the ActualGenericType is not a definition of that symbol; it is a reference to the occurrence of that symbol as a label on a component of a formal parameter type. &lt;/note&gt;
'>
<annotatedElement xmi:idref='I808680m1128bdf3bcfmd06'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11277a9188emb1a' name='refers-to' type='I808680m1128bdf3bcfmb16' association='I1fe40d5m11277a9188emb1d' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00029c' body='&lt;p&gt;the ParametricType that defines the identifier that corresponds to the :label on the ActualGenericType. When instantiated, the actual type will be the (component of the) datatype of the actual parameter that corresponds to this ParametricType.
&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11277a9188emb1a'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1fe40d5m11277a9188em376' name='ActualAggregationType' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00029d' body='&lt;p&gt;An aggregation type whose member-type is an ActualType.
An ActualAggregationType differs from an InstantiableAggregationType in that the data type of its components is dynamically specified.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11277a9188em376'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm7f61'/>
<general xmi:type='cmof:Class' xmi:idref='I14a3da8m1067f761adfmm33b3'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11277a9188em65f' name='member-type' type='I14a3da8m1067f761adfmm33b3' association='I1fe40d5m11277a9188em662' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00029e' body='&lt;p&gt;represents the ActualType that is the the type of the component elements of the ActualAggregationType.&lt;/p&gt;
&lt;note&gt;If the member-type were not itself an ActualType, the ActualAggregationType would be an Instantiable AggregationType.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11277a9188em65f'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1fe40d5m11277a9188em42e' name='ActualARRAYType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_00029f' body='&lt;p&gt;An ActualAggregationType whose structure is an ARRAY with defined lower and upper bounds on the index.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11277a9188em42e'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1fe40d5m11277a9188em376'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11277a9188em4b6' name='isOptional' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Boolean'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002a0' body='&lt;p&gt;True if the member type is declared to be OPTIONAL in the syntactic designation for the ARRAYType; False otherwise.  
When isOptional is True, any instance of the ARRAYType is permitted to have members whose value is unspecified (&quot;?&quot;).&lt;/p&gt;
&lt;note&gt;See 8.2.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11277a9188em4b6'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11277a9188em5ab' name='lo-index' type='I118958em102c66626a0mm7e02' association='I1fe40d5m11277a9188em5ae' visibility='public' aggregation='composite'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002a1' body='&lt;p&gt;represents the lower bound on the Integer index-range of each value of the ActualARRAYType.&lt;/p&gt;
&lt;note&gt;See 8.2.1 and 15.11 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11277a9188em5ab'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11277a9188em5d2' name='hi-index' type='I118958em102c66626a0mm7e02' association='I1fe40d5m11277a9188em5d5' visibility='public' aggregation='composite'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002a2' body='&lt;p&gt;represents the upper bound on the Integer index-range of each value of the ActualARRAYType.&lt;/p&gt;
&lt;note&gt;See 8.2.1 and 15.11 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11277a9188em5d2'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1fe40d5m11277a9188em441' name='ActualBAGType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002a3' body='&lt;p&gt;An ActualAggregationType whose structure is a BAG.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11277a9188em441'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1fe40d5m11277a9188em376'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1fe40d5m11277a9188em454' name='ActualLISTType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002a4' body='&lt;p&gt;An ActualAggregationType whose structure is a LIST.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11277a9188em454'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1fe40d5m11277a9188em376'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1fe40d5m11277a9188em467' name='ActualSETType' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002a5' body='&lt;p&gt;An ActualAggregationType whose structure is a SET.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11277a9188em467'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1fe40d5m11277a9188em376'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1fe40d5m11266e8346cm330' name='VARVariable' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002a6' body='A VARVariable represents a “pointer” that functions as a reference to a “cell” – a Variable, or a part of a Variable – during the execution of an Algorithm.

A VARVariable is a NamedVariable, but it is not a Variable. Unlike a Variable, it does not itself hold an Instance. Instead, it points to a cell that holds an Instance. The cell to which a VARVariable refers is called its referent. The referent of a VARVariable can be anything to which a VARExpression (see 13.10.5) can refer. The referent of a VARVariable is fixed at the time the instance of the VARVariable is created.

There are two kinds of VARVariables: VARParameter and AliasVariable.
&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11266e8346cm330'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1fe40d5m11258908206mmbf'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1254340588218_280851_662' name='variable-has-type' visibility='public'>
<memberEnd xmi:idref='_16_0_1_852026a_1254340588234_751649_663'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1254340588234_751649_663' name='__inv_variable-type' type='I1fe40d5m11233374625mm13b' association='_16_0_1_852026a_1254340588218_280851_662' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='_16_0_1_852026a_1254340588234_714652_664'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I808680m1128bdf3bcfm822' name='scope-of-actual-type' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002a7' body='&lt;p&gt;the relationship between an ActualType and the Algorithm that is its scope.&lt;/p&gt;'>
<annotatedElement xmi:idref='I808680m1128bdf3bcfm822'/>
</ownedComment>
<memberEnd xmi:idref='I808680m1128bdf3bcfm81c'/>
<memberEnd xmi:idref='I808680m1128bdf3bcfm81f'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm73b1' name='algorithm-has-parameters' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002a8' body='&lt;p&gt;represents the relationship between an Algorithm and its formal parameters.&lt;/p&gt;'>
<annotatedElement xmi:idref='I167e3a5m10018e5d720mm73b1'/>
</ownedComment>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm73ae'/>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm73a5'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m10023cc289dmm7d8a' name='function-has-result' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002a9' body='&lt;p&gt; represents the relationship between a Function and its FunctionResult.&lt;/p&gt;
&lt;note&gt;See 9.5.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I17779e3m10023cc289dmm7d8a'/>
</ownedComment>
<memberEnd xmi:idref='I17779e3m10023cc289dmm7d87'/>
<memberEnd xmi:idref='I17779e3m10023cc289dmm7d7c'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I167e3a5m10018e5d720mm72f3' name='parameter-has-type' visibility='public'>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm72f0'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I167e3a5m10018e5d720mm72f0' name='__inv_formal-parameter-type' type='I167e3a5m10018e5d720mm748a' association='I167e3a5m10018e5d720mm72f3' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I167e3a5m10018e5d720mm72e5'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1fe40d5m11277a9188em5ae' name='ActualArray-has-lo-index' visibility='public'>
<memberEnd xmi:idref='I1fe40d5m11277a9188em5a8'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1fe40d5m11277a9188em5a8' name='__inv_lo-index' type='I1fe40d5m11277a9188em42e' association='I1fe40d5m11277a9188em5ae' visibility='public'>
</ownedEnd>
<memberEnd xmi:idref='I1fe40d5m11277a9188em5ab'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1fe40d5m11277a9188em5d5' name='ActualArray-has-hi-index' visibility='public'>
<memberEnd xmi:idref='I1fe40d5m11277a9188em5cf'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1fe40d5m11277a9188em5cf' name='__inv_hi-index' type='I1fe40d5m11277a9188em42e' association='I1fe40d5m11277a9188em5d5' visibility='public'>
</ownedEnd>
<memberEnd xmi:idref='I1fe40d5m11277a9188em5d2'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1fe40d5m11277a9188em662' name='ActualAggregation-has-member' visibility='public'>
<memberEnd xmi:idref='I1fe40d5m11277a9188em65c'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1fe40d5m11277a9188em65c' name='__inv_member-type' type='I1fe40d5m11277a9188em376' association='I1fe40d5m11277a9188em662' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1fe40d5m11277a9188em65f'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1fe40d5m11277a9188em69c' name='ActualAggregate-has-lo-bound' visibility='public'>
<memberEnd xmi:idref='I1fe40d5m11277a9188em696'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1fe40d5m11277a9188em696' name='__inv_lower-bound' type='I1fe40d5m11277a9188em350' association='I1fe40d5m11277a9188em69c' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I1fe40d5m11277a9188em699'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1fe40d5m11277a9188em728' name='ActualAggregate-has-member' visibility='public'>
<memberEnd xmi:idref='I1fe40d5m11277a9188em722'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1fe40d5m11277a9188em722' name='__inv_member-type' type='I1fe40d5m11277a9188em350' association='I1fe40d5m11277a9188em728' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1fe40d5m11277a9188em725'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1fe40d5m11277a9188em6c3' name='ActualAggregate-has-hi-bound' visibility='public'>
<memberEnd xmi:idref='I1fe40d5m11277a9188em6bd'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1fe40d5m11277a9188em6bd' name='__inv_upper-bound' type='I1fe40d5m11277a9188em350' association='I1fe40d5m11277a9188em6c3' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I1fe40d5m11277a9188em6c0'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1fe40d5m11277a9188emb1d' name='ActualGenericType-refers-to-parametric' visibility='public'>
<memberEnd xmi:idref='I1fe40d5m11277a9188emb17'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1fe40d5m11277a9188emb17' name='__inv_refers-to' type='I1fe40d5m11277a9188em363' association='I1fe40d5m11277a9188emb1d' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1fe40d5m11277a9188emb1a'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1fe40d5m11277a9188emb42' name='ActualAggregate-refers-to-parametric' visibility='public'>
<memberEnd xmi:idref='I1fe40d5m11277a9188emb3c'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1fe40d5m11277a9188emb3c' name='__inv_refers-to' type='I1fe40d5m11277a9188em350' association='I1fe40d5m11277a9188emb42' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1fe40d5m11277a9188emb3f'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I14a75bbm102da9bec90mm7de1' name='algorithm-has-body' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002aa' body='&lt;p&gt;represents the relationship between a (conceptual) Algorithm and a definition of the Algorithm as a StatementBlock -- a sequence of actions to be performed.&lt;/p&gt;
&lt;note&gt;See 9.5 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I14a75bbm102da9bec90mm7de1'/>
</ownedComment>
<memberEnd xmi:idref='I14a75bbm102da9bec90mm7dde'/>
<memberEnd xmi:idref='I14a75bbm102da9bec90mm7dd5'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1d4ea6cm1092c37cf59mm1bb6' name='variable-has-initial-value' visibility='public'>
<memberEnd xmi:idref='I1d4ea6cm1092c37cf59mm1bbc'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1d4ea6cm1092c37cf59mm1bbc' name='__inv_initial-value' type='I167e3a5m10018e5d720mm7360' association='I1d4ea6cm1092c37cf59mm1bb6' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1d4ea6cm1092c37cf59mm1bb9'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I17779e3m1001f33ccb7mm7eab' name='variable-defined-in-scope' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002ab' body='&lt;p&gt;represents the relationship between the LocalVariable and the AlgorithmScope in which it is defined.
This is a refinement of the NamedElement.namespace relationship.&lt;/p&gt;'>
<annotatedElement xmi:idref='I17779e3m1001f33ccb7mm7eab'/>
</ownedComment>
<memberEnd xmi:idref='I17779e3m1001f33ccb7mm7ea8'/>
<memberEnd xmi:idref='I17779e3m1001f33ccb7mm7e9f'/>
</ownedMember>
<ownedRule xmi:type='cmof:Constraint' xmi:id='ix_000012' name='ActualGenericType.isEntity.derivation'>
<constrainedElement xmi:idref='I1fe40d5m11277a9188em363'/>
<specification xmi:type='cmof:OpaqueExpression' xmi:id='ix_0002ac' language='OCL' body='self-&gt;isEntity = self-&gt;refers-to-&gt;isEntity'/>
</ownedRule>
</ownedMember>
<ownedMember xmi:id='I1cdecf7m106c2b92447mm2bde' xmi:type='cmof:Package' name='Express2' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002ad' body='The Express2 Package contains nothing in its own right. It imports everything defined in the metamodel, and thus serves
as the package that models the entire EXPRESS language.'>
<annotatedElement xmi:idref='I1cdecf7m106c2b92447mm2bde'/>
</ownedComment>
<packageImport xmi:type='cmof:PackageImport' xmi:id='_14_0_852026a_1203968427390_490121_5134'>
<importedPackage xmi:type='cmof:Package' xmi:idref='I17779e3m1026e8ed5e9mm7d91'/>
</packageImport>
<packageImport xmi:type='cmof:PackageImport' xmi:id='_14_0_852026a_1203968436031_492695_5150'>
<importedPackage xmi:type='cmof:Package' xmi:idref='I10ad419m10c7e2db123mm14c2'/>
</packageImport>
</ownedMember>
<ownedMember xmi:id='I10ad419m10c7e2db123mm14c2' xmi:type='cmof:Package' name='Statements' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002ae' body='The Statements Package contains a model of the executable statements that may be contained in the body of functions and
procedures. It contains all of the concepts in Clause 13 of ISO 10303-11.'>
<annotatedElement xmi:idref='I10ad419m10c7e2db123mm14c2'/>
</ownedComment>
<packageImport xmi:type='cmof:PackageImport' xmi:id='_14_0_852026a_1203968281125_644645_5054'>
<importedPackage xmi:type='cmof:Package' xmi:idref='I17779e3m1026e8ed5e9mm7d65'/>
</packageImport>
<packageImport xmi:type='cmof:PackageImport' xmi:id='_14_0_852026a_1203968303187_755320_5070'>
<importedPackage xmi:type='cmof:Package' xmi:idref='I17779e3m1026e8ed5e9mm7d57'/>
</packageImport>
<ownedMember xmi:type='cmof:Class' xmi:id='_16_0_1_852026a_1247080261328_388051_1011' name='PassByReference' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002af' body='An ActualParameter that is passed “by reference”.  At the time of Algorithm invocation, the actual referent VARExpression is evaluated to identify a cell and that cell becomes the referent of the VARParameter during execution of the Algorithm.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1247080261328_388051_1011'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I167e3a5m10018e5d720mm74a1'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1247080504296_798430_1053' name='actual-referent' type='I1aabda3m10c7e3ba3f0mm1311' association='_16_0_1_852026a_1247080504296_712453_1051' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002b0' body='&lt;p&gt;the VARExpression that denotes the referent object to be associated with the formal (VAR) Parameter during the invocation.&lt;/p&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1247080504296_798430_1053'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1247080605968_288234_1071' name='for-parameter' type='I1cdecf7m11243159c16m38d' association='_16_0_1_852026a_1247080605968_774500_1070' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002b1' body='the formal parameter to which the actual referent is assigned.'>
<annotatedElement xmi:idref='_16_0_1_852026a_1247080605968_288234_1071'/>
</ownedComment>
<subsettedProperty xmi:id='I167e3a5m10018e5d720mm73bd'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1aabda3m10c7e3ba3f0mm148d' name='AliasStatement' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002b2' body='&lt;p&gt;Represents an EXPRESS ALIAS statement. An ALIAS statement introduces a NamedVariable (the alias variable) to represent the result of a VARExpression (the referent). 

The AliasVariable is not a Variable, and the interpretation is not assignment.  The ALIAS statement creates a VARVariable that is persistently associated with the cell specified by the VARExpression over changes in the content of that cell during execution of the body. Within the body of the ALIAS statement, any assignment to the AliasVariable assigns the value to the referent cell, and any VariableRef that refers to the AliasVariable refers to the current value in that cell.
&lt;/p&gt;
&lt;note&gt;See Clause 13.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm148d'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1507ef7m10811c3e7aemm2949'/>
<general xmi:type='cmof:Class' xmi:idref='I118958em102d5a77152mm7d2d'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1240432113093_223022_1243' name='referent' type='I1aabda3m10c7e3ba3f0mm1311' association='_16_0_1_852026a_1240432112765_204396_1241' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002b3' body='&lt;p&gt;the VARExpression that specifies the referent of the AliasVariable -- 
the cell to which the AliasVariable refers during execution of the body of the ALIAS statement.&lt;/p&gt;'>
<annotatedElement xmi:idref='_16_0_1_852026a_1240432113093_223022_1243'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm144d' name='body' type='I1507ef7m10811c3e7aemm2949' association='I1aabda3m10c7e3ba3f0mm144b' visibility='public' aggregation='composite'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002b4' body='&lt;p&gt;the Statement (or StatementBlock) specifying the action to be taken by the AliasStatement.&lt;/p&gt;
&lt;note&gt;The AliasStatement has the effect of &quot;fixing&quot; the referent of the alias-variable, 
in the case in which the Statement is a StatementBlock that includes actions that alter the values of elements of the VARExpression. &lt;/note&gt;
'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm144d'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm135f' name='alias-variable' type='I1cdecf7m11243159c16m154' association='I1aabda3m10c7e3ba3f0mm135d' visibility='public' aggregation='composite'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002b5' body='&lt;p&gt;the AliasVariable that is introduced by the AliasStatement and bound to the :referent.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm135f'/>
</ownedComment>
<subsettedProperty xmi:id='I9ced84m109b2851e95mm1213'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1aabda3m10c7e3ba3f0mm1489' name='Assignment' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002b6' body='&lt;p&gt;Represents an EXPRESS assignment statement.  
An Assignment causes the value of the .recipient location  to become equal to the result of the .assigned-value Expression.&lt;/p&gt;
&lt;note&gt;See Clause 13.3 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1489'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1507ef7m10811c3e7aemm2949'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm13d7' name='assigned-value' type='I167e3a5m10018e5d720mm7ad9' association='I1aabda3m10c7e3ba3f0mm13d5' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002b7' body='&lt;p&gt;the Expression whose result is the value to be assigned.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm13d7'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm12e7' name='variable' type='I1aabda3m10c7e3ba3f0mm1311' association='I1aabda3m10c7e3ba3f0mm12e5' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002b8' body='&lt;p&gt;the VARfExpression that designates the object whose value is to be replaced.&lt;/p&gt;
&lt;note&gt;The VARExpression must not refer to an object that is part of the state of an EntityInstance in the Population.  
It may, however, refer to an object that holds (a reference to) an EntityInstance.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm12e7'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1aabda3m10c7e3ba3f0mm1481' name='CaseAction' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002b9' body='&lt;p&gt;represents a possible action to be taken, together with the .label-values that identify the case and enable it to be selected.  
Among the cases for a given CaseStatement, one CaseAction may be designated the &quot;default&quot; action, which is taken if no other action meets the selection criteria.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1481'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm1483' name='isDefault' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Boolean'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002ba' body='&lt;p&gt;True if this CaseAction represents the default action to be taken if no other case label matches the value of the .selection-expression; otherwise False.&lt;/p&gt;
'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1483'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm145b' name='action' type='I1507ef7m10811c3e7aemm2949' association='I1aabda3m10c7e3ba3f0mm1459' visibility='public' aggregation='composite' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002bb' body='&lt;p&gt;the Statement (or StatementBlock) that defines the actions, if any, to be executed if that case is selected.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm145b'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm13bb' name='label-value' type='I167e3a5m10018e5d720mm7ad9' association='I1aabda3m10c7e3ba3f0mm13b9' visibility='public' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002bc' body='&lt;p&gt;an Expression whose result is a case label.  When the value of the .selection-expression matches the value of the Expression (which is often a Literal), the associated CaseAction defines the action to be taken by the CaseStatement.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm13bb'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1aabda3m10c7e3ba3f0mm147d' name='CaseStatement' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002bd' body='&lt;p&gt;represents an EXPRESS CASE statement.  
The CASE statement selects and executes a single CaseAction (from a list of CaseActions), based on the value of a selection-expression.  
The .cases are considered in order, and the first CaseAction whose label-value matches the value of the .selection-expression is the action that is taken.  
If no CaseAction has a label-value that matches the value of the .selection-expression, the CaseAction for which .isDefault is true, if any, is taken; otherwise, 
no action is taken.&lt;/p&gt;
&lt;note&gt;See Clause 13.4 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm147d'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1507ef7m10811c3e7aemm2949'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm1471' name='cases' type='I1aabda3m10c7e3ba3f0mm1481' association='I1aabda3m10c7e3ba3f0mm146f' visibility='public' aggregation='composite' upper='*' isOrdered='true'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002be' body='&lt;p&gt;represents the possible actions to be taken, in order of consideration, each labeled by one or more values.  &lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1471'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm13c9' name='selection-expression' type='I167e3a5m10018e5d720mm7ad9' association='I1aabda3m10c7e3ba3f0mm13c7' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002bf' body='&lt;p&gt;the Expression that is used to choose the CaseAction to be taken&lt;/p&gt;
'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm13c9'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1aabda3m10c7e3ba3f0mm1443' name='ControlStatement' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002c0' body='&lt;p&gt;an abstract class representing EXPRESS statements whose action is &quot;transfer of control&quot;, i.e., a change in the sequence of execution..  
This class was introduced primarily to simplify the metamodel diagram.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1443'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1507ef7m10811c3e7aemm2949'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1aabda3m10c7e3ba3f0mm1441' name='IfStatement' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002c1' body='&lt;p&gt;represents an EXPRESS IF...THEN...ELSE statement.&lt;/p&gt;
&lt;note&gt;See Clause 13.7 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1441'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1507ef7m10811c3e7aemm2949'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm1435' name='then-actions' type='I1507ef7m10811c3e7aemm2949' association='I1aabda3m10c7e3ba3f0mm1433' visibility='public' aggregation='composite'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002c2' body='&lt;p&gt;the Statement (or StatementBlock) specifying the actions to be taken when the condition is true.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1435'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm1427' name='else-actions' type='I1507ef7m10811c3e7aemm2949' association='I1aabda3m10c7e3ba3f0mm1425' visibility='public' aggregation='composite' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002c3' body='&lt;p&gt;the Statement (or StatementBlock) specifying the actions to be taken when the condition is False.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1427'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm13ad' name='if-condition' type='I167e3a5m10018e5d720mm7ad9' association='I1aabda3m10c7e3ba3f0mm13ab' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002c4' body='&lt;p&gt;an Expression that defines the condition used to determine whether to perform the &quot;then-actions&quot; or the &quot;else-actions&quot;.&lt;/p&gt;
&lt;note&gt;The if-condition is wholly owned by the IfStatement.  It is not treated as reusable.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm13ad'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1aabda3m10c7e3ba3f0mm1423' name='ProcedureCall' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002c5' body='&lt;p&gt;Represents an EXPRESS procedure call statement.&lt;/p&gt;
&lt;note&gt;See Clause 13.8 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1423'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1507ef7m10811c3e7aemm2949'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0m4c1' name='actual-parameters' type='I167e3a5m10018e5d720mm74a1' association='I1aabda3m10c7e3ba3f0m4c4' visibility='public' aggregation='composite' lower='0' upper='*'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002c6' body='&lt;p&gt;the ActualParameters to be passed at the time of invocation. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0m4c1'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0m48c' name='invokes' type='I17779e3m1025f5930bdmm7e1b' association='I1aabda3m10c7e3ba3f0m48f' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002c7' body='&lt;p&gt;the Procedure that is invoked by the ProcedureCall.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0m48c'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1aabda3m10c7e3ba3f0mm1421' name='RepeatStatement' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002c8' body='&lt;p&gt;Represents an EXPRESS REPEAT statement.  
The RepeatStatement defines an iteration.  
The execution of the repeated-body occurs zero or more times depending on the associated controls, which may be any combination of &lt;br&gt;
&lt;ls&gt;
&lt;li&gt;a variable-control (IncrementControl)&lt;/li&gt;
&lt;li&gt;a while-expression&lt;/li&gt;
&lt;li&gt;an until-expression&lt;/li&gt;
&lt;/ls&gt;
&lt;p&gt;If no control is specified, the iteration continues until an EscapeStatement is executed.&lt;/p&gt;
&lt;note&gt;See Clause 13.9 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1421'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I118958em102d5a77152mm7d2d'/>
<general xmi:type='cmof:Class' xmi:idref='I1507ef7m10811c3e7aemm2949'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm1415' name='body' type='I1507ef7m10811c3e7aemm2949' association='I1aabda3m10c7e3ba3f0mm1413' visibility='public' aggregation='composite'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002c9' body='&lt;p&gt;the Statement that specifies the actions to be iterated.  
When the EXPRESS text for the body includes multiple statements, the body Statement is a StatementBlock.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1415'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm1391' name='while-expression' type='I167e3a5m10018e5d720mm7ad9' association='I1aabda3m10c7e3ba3f0mm138f' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002ca' body='&lt;p&gt;the Boolean Expression that specifies the condition for reiterating the repeated-body.  
If the value returned by the while-expression is False, the iteration is terminated.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1391'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm1383' name='until-expression' type='I167e3a5m10018e5d720mm7ad9' association='I1aabda3m10c7e3ba3f0mm1381' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002cb' body='&lt;p&gt;the Boolean Expression that specifies a condition for terminating the iteration.  
If the value returned by the while-expression is True, the iteration is terminated.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1383'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm1373' name='control-variable' type='I1aabda3m10c7e3ba3f0mm137f' association='I1aabda3m10c7e3ba3f0mm1371' visibility='public' aggregation='composite' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002cc' body='&lt;p&gt;the specification for the control variable, if any, and its initial and final values.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1373'/>
</ownedComment>
<subsettedProperty xmi:id='I9ced84m109b2851e95mm1213'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1aabda3m10c7e3ba3f0mm1411' name='ReturnStatement' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002cd' body='&lt;p&gt;Represents an EXPRESS RETURN statement.  
A RETURN statement terminates the execution of a ProcedureCall or FunctionCall.  
In the case of a FunctionCall, the RepeatStatement also specifies the value that is to be the actual result of the FunctionCall. &lt;/p&gt;
&lt;note&gt;See Clause 13.9 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1411'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1aabda3m10c7e3ba3f0mm1443'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm139f' name='return-value' type='I167e3a5m10018e5d720mm7ad9' association='I1aabda3m10c7e3ba3f0mm139d' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002ce' body='&lt;p&gt;An Expression that specifies the value to be returned as the Function result.  
If this is not provided on a Return from a FunctionCall, the value of the FunctionResult variable is returned.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm139f'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1aabda3m10c7e3ba3f0mm140f' name='SkipStatement' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002cf' body='&lt;p&gt;Represents an EXPRESS SKIP statement.
A SKIP statement is always contained within the body of a RepeatStatement.
Execution of a SKIP statement results in continuing the control flow with the &quot;increment and test&quot; operations of the RepeatStatement, skipping any intervening actions.&lt;/p&gt;
&lt;note&gt;See Clause 13.11 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm140f'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1aabda3m10c7e3ba3f0mm1443'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1aabda3m10c7e3ba3f0mm140d' name='NullStatement' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002d0' body='&lt;p&gt;Represents an EXPRESS Null statement.
A NullStatement is just a syntactic placeholder, made necessary by grammar rules that require the presence at least 1 statement.  
It has the semantics: Take no action.  
It is modeled here, solely to permit reconstruction of the Express Text.&lt;/p&gt;
&lt;note&gt;See Clause 13.1 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm140d'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1aabda3m10c7e3ba3f0mm1443'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1aabda3m10c7e3ba3f0mm1401' name='EscapeStatement' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002d1' body='&lt;p&gt;Represents an EXPRESS ESCAPE statement.
An ESCAPE statement is always contained within the body of a RepeatStatement.
Execution of an ESCAPE statement results in terminating the repetitiion of the repeated-body and continuing the control flow with the statement following the RepeatStatement,.&lt;/p&gt;
&lt;note&gt;See Clause 13.11 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1401'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1aabda3m10c7e3ba3f0mm1443'/>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1aabda3m10c7e3ba3f0mm137f' name='ControlVariable' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002d2' body='&lt;p&gt;the specification for the control variable, if any, for the Repeat statement.  
The IncrementControl introduces the variable, whose scope is the RepeatStatement.  
It specifies the initial value, a bound-value, and possibly an increment value.  &lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm137f'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1fe40d5m11233374625mm13b'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm1333' name='initial-value' type='I167e3a5m10018e5d720mm7ad9' association='I1aabda3m10c7e3ba3f0mm1331' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002d3' body='&lt;p&gt;the Expression that specifies the value to be assigned to the control-variable before the first interation.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1333'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm1317' name='increment' type='I167e3a5m10018e5d720mm7ad9' association='I1aabda3m10c7e3ba3f0mm1315' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002d4' body='&lt;p&gt;the Expression whose value is added to the value of the control-variable at the end of each iteration.&lt;/p&gt;
&lt;note&gt;When the EXPRESS syntax does not specify an increment value, the Expression is a Literal referring to the Integer value 1.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1317'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm1325' name='bound-value' type='I167e3a5m10018e5d720mm7ad9' association='I1aabda3m10c7e3ba3f0mm1323' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002d5' body='&lt;p&gt;the Expression whose value, taken together with the initial-value, specifies the bounds of a set of real numbers.  
Iteration of the repeated-body of the RepeatStatement terminates when the value of the control-variable lies outside that set. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1325'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm1379' name='namespace' type='I1aabda3m10c7e3ba3f0mm1421' association='I1aabda3m10c7e3ba3f0mm1371' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002d6' body='&lt;p&gt;the RepeatStatement whose execution is controlled by the IncrementControl.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1379'/>
</ownedComment>
<subsettedProperty xmi:id='I9ced84m109b2851e95mm1210'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1aabda3m10c7e3ba3f0mm1311' name='VARExpression' isAbstract='true' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002d7' body='&lt;p&gt;an expression that refers to a cell – a place – that contains a value. 

Unlike Primary Expressions, Index Expressions and Selector Expressions, which are similar in structure, a VARExpression formally refers to the cell that holds an Instance, rather than to the Instance itself. The cell to which a VARExpression refers is called its referent. The type of a VARExpression is “reference to cell containing” the data type of the referent cell. The referent of a VARExpression can be:&lt;br&gt;
&lt;ls&gt;
&lt;li&gt;a LocalVariable
&lt;li&gt;an InParameter or FunctionResult
&lt;li&gt;a member of a cell whose data type is an AggregationType
&lt;li&gt;an ExplicitAttribute slot in a cell that contains an EntityValue or PartialEntityValue
&lt;li&gt;a SingleEntityType that is part of the content model of another object
&lt;li&gt;an ExplicitAttribute of an EntityInstance that is the value of another object
&lt;li&gt;the cells that contain a SingleEntityValue in a cell that contains an EntityValue or PartialEntityValue
&lt;li&gt;the cell that is the referent of an AliasVariable or a VARParameter.
&lt;/ls&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1311'/>
</ownedComment>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11266e8346cm52e' name='text' type='_14_0_852026a_1203973376187_525723_5444' visibility='public' lower='0'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002d8' body='&lt;p&gt;the lexical representation of the VARExpression. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11266e8346cm52e'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1fe40d5m11233374625mm545' name='AliasRef' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002d9' body='&lt;p&gt;A VARExpression consisting only of the identifier for a VARVariable, i.e. an AliasVariable, or a VARParameter.  
The referent of the AliasRef VARExpression is the referent of the VARVariable designated by the .refers-to relationship.
&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11233374625mm545'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1aabda3m10c7e3ba3f0mm1311'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11266e8346cm5ba' name='id' type='_14_0_852026a_1203973938843_871362_5468' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002da' body='&lt;p&gt;the lexical text of the identifier for the Parameter, subsets VARExpression.text&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11266e8346cm5ba'/>
</ownedComment>
<subsettedProperty xmi:id='I1fe40d5m11266e8346cm52e'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11233374625mm204' name='refers-to' type='I1fe40d5m11266e8346cm330' association='I1fe40d5m11233374625mm201' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002db' body='&lt;p&gt;the AliasVariable or VARParameter whose referent is the referent of the AliasRef. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11233374625mm204'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1fe40d5m11233374625mm532' name='VariableCell' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002dc' body='&lt;p&gt;A VARExpression that consists only of the identifier for a Variable.  
The Variable is designated by the .referent relationship.
The referent of the VariableCell
VARExpression is the cell that instantiates that Variable (as distinct from the value of that Variable).  
&lt;/p&gt;
&lt;note&gt;A VARExpression that consists of the identifier for an AliasVariable or a VARParameter is a VARCell, not a VariableCell.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11233374625mm532'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1aabda3m10c7e3ba3f0mm1311'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11266e8346cm5a2' name='id' type='_14_0_852026a_1203973938843_871362_5468' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002dd' body='&lt;p&gt;the lexical text of the identifier for the NamedVariable, subsets VARExpression.text&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11266e8346cm5a2'/>
</ownedComment>
<subsettedProperty xmi:id='I1fe40d5m11266e8346cm52e'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11233374625mm1df' name='referent' type='I1fe40d5m11233374625mm13b' association='I1fe40d5m11233374625mm1dc' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002de' body='&lt;p&gt;the Variable whose instantiation is the referent object of the VariableCell VARExpression. &lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11233374625mm1df'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1fe40d5m11233374625mm51f' name='MemberCell' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002df' body='A VARExpression that represents a reference to a cell that is a member of a cell whose datatype is an aggregation data type.

The cell that is the referent of the :base-aggregate VARExpression shall have a datatype that is an aggregation data type.  The referent of the MemberCell is the member of that cell that is designated by the index or position value that is the result of the :index-value Expression.'>
<annotatedElement xmi:idref='I1fe40d5m11233374625mm51f'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1aabda3m10c7e3ba3f0mm1311'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11233374625mm2fc' name='index-value' type='I167e3a5m10018e5d720mm7ad9' association='I1fe40d5m11233374625mm2f9' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002e0' body='&lt;p&gt;the index or position value used to identify the member cell within the aggregate cell.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11233374625mm2fc'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11233374625mm2cd' name='base-aggregate' type='I1aabda3m10c7e3ba3f0mm1311' association='I1fe40d5m11233374625mm2ca' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002e1' body='&lt;p&gt;the VARExpression that identifies the aggregate cell that contains the referent member cell.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11233374625mm2cd'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1fe40d5m11233374625mm50c' name='AttributeCell' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002e2' body='&lt;p&gt;A VARExpression whose referent is a cell (or “slot”) containing the value of one ExplicitAttribute in an EntityValue or PartialEntityValue.
&lt;/p&gt; 
&lt;p&gt;The referent of the :base-entity VARExpression shall be a cell that holds an EntityValue or PartialEntityValue that has a “slot” for the ExplicitAttribute that is the :referent of the AttributeCell.  The cell/slot in the referent of the :base-entity that corresponds to that ExplicitAttribute is the referent of the AttributeCell.&lt;/p&gt;
&lt;note.&gt; An EntityInstance in the Population is considered to be a cell that holds an EntityValue.  
And therefore, an EntityInstance can be the referent of the base-entity.  
But it is not possible to change the value of an Attribute of an EntityInstance in the Population.&lt;/note&gt;  
&lt;note&gt;An “entity-valued object” -- a Variable, Attribute, or aggregation member whose data type is an EntityType 
(or a SelectType whose select-list contains EntityTypes) -- may contain EntityInstances from the Population, 
or contain EntityValues that correspond to the EntityType, without reference to Instances in the Population.  
When the base-entity of an AttributeCell is an entity-valued object, 
it is not always clear whether it contains an EntityInstance, which is then the referent, 
or an EntityValue, which makes the entity-valued object the referent.
&lt;/note&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11233374625mm50c'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1aabda3m10c7e3ba3f0mm1311'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11266e8346cm5d2' name='id' type='_14_0_852026a_1203973938843_871362_5468' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002e3' body='&lt;p&gt;the lexical text of the identifier for the Attribute, subsets VARExpression.text&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11266e8346cm5d2'/>
</ownedComment>
<subsettedProperty xmi:id='I1fe40d5m11266e8346cm52e'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11233374625mm2a8' name='referent' type='I167e3a5m10018e5d720mm7b23' association='I1fe40d5m11233374625mm2a5' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002e4' body='&lt;p&gt;the ExplicitAttribute whose slot in the referent of the base-entity is the referent of the AttributeCell VARExpression.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11233374625mm2a8'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11233374625mm254' name='base-entity' type='I1aabda3m10c7e3ba3f0mm1311' association='I1fe40d5m11233374625mm251' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002e5' body='&lt;p&gt;the VARExpression that identifies the cell that contains the EntityValue or PartialEntityValue that contains the referent of the AttributeCell.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11233374625mm254'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1fe40d5m11233374625mm4f9' name='GroupCell' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002e6' body='&lt;p&gt;A VARExpression whose referent is the group of cells (or “slots”) for the ExplicitAttributes that constitute a SingleEntityType within a cell that holds an EntityValue.&lt;/p&gt;
&lt;p&gt;The referent of the :base-entity VARExpression shall be a cell that holds an EntityValue or PartialEntityValue that includes a SingleEntityValue for the SingleEntityType that is the :referent of the GroupCell.  The group of cells/slots in the referent of the :base-entity that corresponds to that SingleEntityType is the referent of the GroupCell.&lt;/p&gt;
&lt;note.&gt; An EntityInstance in the Population is considered to be an object that holds an EntityValue.  
And therefore, an EntityInstance can be the referent of the base-entity.  
But it is not possible to change the value of an Attribute of an EntityInstance in the Population.&lt;/note&gt;  
&lt;note&gt;An “entity-valued object” -- a Variable, Attribute, or aggregation member whose data type is an EntityType 
(or a SelectType whose select-list contains EntityTypes) -- may contain EntityInstances from the Population, 
or contain EntityValues that correspond to the EntityType, without reference to Instances in the Population.  
When the base-entity of an GroupCell is an entity-valued object, 
it is not always clear whether it contains an EntityInstance, which is then the referent, 
or an EntityValue, which makes the entity-valued object the referent.
&lt;/note&gt;
'>
<annotatedElement xmi:idref='I1fe40d5m11233374625mm4f9'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1aabda3m10c7e3ba3f0mm1311'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11266e8346cm5e8' name='id' type='_14_0_852026a_1203973938843_871362_5468' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002e7' body='&lt;p&gt;the lexical text of the identifier for the SingleEntityType, subsets VARExpression.text&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11266e8346cm5e8'/>
</ownedComment>
<subsettedProperty xmi:id='I1fe40d5m11266e8346cm52e'/>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11233374625mm27d' name='referent' type='I1c21ed3m103f6d4f890mm43c6' association='I1fe40d5m11233374625mm27a' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002e8' body='&lt;p&gt;the SingleEntityType denoting the attribute group that is the referent of the GroupCell.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11233374625mm27d'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1fe40d5m11233374625mm229' name='base-entity' type='I1aabda3m10c7e3ba3f0mm1311' association='I1fe40d5m11233374625mm226' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002e9' body='&lt;p&gt;the VARExpression that identifies the cell that contains the EntityValue or PartialEntityValue that contains the referent of the GroupCell.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1fe40d5m11233374625mm229'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1cdecf7m11243159c16m154' name='AliasVariable' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002ea' body='&lt;p&gt;a NamedVariable that is created by an ALIAS statement, and whose scope is the body of the ALIAS statement.  
An Alias Variable is a VARVariable: it does not hold an Instance; it refers to a cell that holds an Instance.  
The referent of the AliasVariable is specified by the value of the VARExpression assigned to it by the ALIAS statement.&lt;/p&gt;
&lt;note&gt;See Clause 13.2 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1cdecf7m11243159c16m154'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1fe40d5m11266e8346cm330'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm1365' name='namespace' type='I1aabda3m10c7e3ba3f0mm148d' association='I1aabda3m10c7e3ba3f0mm135d' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002eb' body='&lt;p&gt;the AliasStatement that is the scope of the AliasVariable.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1365'/>
</ownedComment>
<subsettedProperty xmi:id='I9ced84m109b2851e95mm1210'/>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Class' xmi:id='I1aabda3m10c7e3ba3f0mm1467' name='StatementBlock' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002ec' body='&lt;p&gt;represents a sequence of Statements to be executed in the given order.  
In EXPRESS syntax, a number of constructs contain a statement or sequence of statements, 
and a &quot;compound statement&quot; is a statement that begins with BEGIN and ends with END and contains a sequence of statements.
All such sequences have the semantics of the StatementBlock.
The BEGIN/END case is here modeled as .delimited = True.&lt;/p&gt;
&lt;note&gt;See Clause 13.5 of ISO 10303-11:2004.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1467'/>
</ownedComment>
<general xmi:type='cmof:Class' xmi:idref='I1507ef7m10811c3e7aemm2949'/>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm1469' name='delimited' visibility='public'>
<type xmi:type='cmof:PrimitiveType' href='http://schema.omg.org/spec/UML/2.2/uml.xml#Boolean'/>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002ed' body='&lt;p&gt;Is true if the StatementBlock was delimited by BEGIN and END tokens, false if it is implicit in the body of some other Statement.&lt;/p&gt;
&lt;note&gt;The sole purpose of this attribute is to be able to reconstruct the source EXPRESS text properly.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1469'/>
</ownedComment>
</ownedAttribute>
<ownedAttribute xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm13e7' name='body-statements' type='I1507ef7m10811c3e7aemm2949' association='I1aabda3m10c7e3ba3f0mm13e5' visibility='public' aggregation='composite' lower='0' upper='*' isOrdered='true'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002ee' body='&lt;p&gt;represents the relationship of a StatementBlock to the Statements of which the sequence consists.&lt;/p&gt;
&lt;note&gt;Every EXPRESS syntax whose semantics is a StatementBlock requires the body to consist of at least 1 statement, but it may consist solely of a Null statement.  
This model permits the body to be (semantically) empty -- the single Null statement need not be modeled.  
Even the EXPRESS text reconstruction is clear without the existence of a NullStatement in this case.&lt;/note&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm13e7'/>
</ownedComment>
</ownedAttribute>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1247080763296_520110_1096' name='value-for-PassByValue' visibility='public'>
<memberEnd xmi:idref='_16_0_1_852026a_1247080763312_816978_1098'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1247080763312_816978_1098' name='__inv_for-parameter' type='_16_0_1_852026a_1247080307437_46176_1032' association='_16_0_1_852026a_1247080763296_520110_1096' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='_16_0_1_852026a_1247080763296_370836_1097'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1247080605968_774500_1070' name='referent-for-PassByReference' visibility='public'>
<memberEnd xmi:idref='_16_0_1_852026a_1247080605968_848959_1072'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1247080605968_848959_1072' name='__inv_for-parameter' type='_16_0_1_852026a_1247080261328_388051_1011' association='_16_0_1_852026a_1247080605968_774500_1070' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='_16_0_1_852026a_1247080605968_288234_1071'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1fe40d5m11233374625mm1dc' name='VariableCell-referent' visibility='public'>
<memberEnd xmi:idref='I1fe40d5m11233374625mm1e2'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1fe40d5m11233374625mm1e2' name='__inv_referent' type='I1fe40d5m11233374625mm532' association='I1fe40d5m11233374625mm1dc' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1fe40d5m11233374625mm1df'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0mm139d' name='return-returns-value' visibility='public'>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm13a5'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm13a5' name='__inv_return-value' type='I1aabda3m10c7e3ba3f0mm1411' association='I1aabda3m10c7e3ba3f0mm139d' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm139f'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0mm138f' name='repeat-has-while-control' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002ef' body='&lt;p&gt;represents the relationship between the RepeatStatement and its While control expression, if any.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm138f'/>
</ownedComment>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm1397'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm1397' name='__inv_while-expression' type='I1aabda3m10c7e3ba3f0mm1421' association='I1aabda3m10c7e3ba3f0mm138f' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm1391'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0mm1381' name='repeat-has-until-control' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002f0' body='&lt;p&gt;represents the relationship between the RepeatStatement and its Until control expression, if any.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1381'/>
</ownedComment>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm1389'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm1389' name='__inv_until-expression' type='I1aabda3m10c7e3ba3f0mm1421' association='I1aabda3m10c7e3ba3f0mm1381' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm1383'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0mm1331' name='control-initial-value' visibility='public'>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm1339'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm1339' name='__inv_initial-value' type='I1aabda3m10c7e3ba3f0mm137f' association='I1aabda3m10c7e3ba3f0mm1331' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm1333'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0mm1315' name='control-increment-value' visibility='public'>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm131d'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm131d' name='__inv_increment' type='I1aabda3m10c7e3ba3f0mm137f' association='I1aabda3m10c7e3ba3f0mm1315' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm1317'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0mm1323' name='control-bound-value' visibility='public'>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm132b'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm132b' name='__inv_bound-value' type='I1aabda3m10c7e3ba3f0mm137f' association='I1aabda3m10c7e3ba3f0mm1323' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm1325'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0mm13d5' name='assignment-of-value' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002f1' body='&lt;p&gt;represents the relationship between the AssignmentStatement and the value to be assigned.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm13d5'/>
</ownedComment>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm13dd'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm13dd' name='__inv_assigned-value' type='I1aabda3m10c7e3ba3f0mm1489' association='I1aabda3m10c7e3ba3f0mm13d5' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm13d7'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='_16_0_1_852026a_1240432112765_204396_1241' name='alias-bound-to-reference' visibility='public'>
<memberEnd xmi:idref='_16_0_1_852026a_1240432113093_326788_1242'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='_16_0_1_852026a_1240432113093_326788_1242' name='__inv_referent' type='I1aabda3m10c7e3ba3f0mm148d' association='_16_0_1_852026a_1240432112765_204396_1241' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='_16_0_1_852026a_1240432113093_223022_1243'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0mm1371' name='repeat-has-increment-control' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002f2' body='&lt;p&gt;represents the relationship between the RepeatStatement and its IncrementControl, if any.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1371'/>
</ownedComment>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm1379'/>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm1373'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0mm12e5' name='assignment-to-variable' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002f3' body='&lt;p&gt;represents the relationship between the Assignment statement and the recipient location.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm12e5'/>
</ownedComment>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm12ed'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm12ed' name='__inv_variable' type='I1aabda3m10c7e3ba3f0mm1489' association='I1aabda3m10c7e3ba3f0mm12e5' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm12e7'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0m48f' name='call-invokes-procedure' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002f4' body='&lt;p&gt;represents the relationship between the ProcedureCall statement and the Procedure it invokes.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0m48f'/>
</ownedComment>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0m489'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0m489' name='__inv_invokes' type='I1aabda3m10c7e3ba3f0mm1423' association='I1aabda3m10c7e3ba3f0m48f' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0m48c'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0m4c4' name='procedure-call-provides-actual-parameters' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002f5' body='&lt;p&gt;represents the relationship between the ProcedureCall statement and the ActualParameters to be passed at the time of invocation.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0m4c4'/>
</ownedComment>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0m4be'/>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0m4c1'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1fe40d5m11233374625mm2f9' name='MemberCell-has-index' visibility='public'>
<memberEnd xmi:idref='I1fe40d5m11233374625mm2ff'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1fe40d5m11233374625mm2ff' name='__inv_index-value' type='I1fe40d5m11233374625mm51f' association='I1fe40d5m11233374625mm2f9' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1fe40d5m11233374625mm2fc'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1fe40d5m11233374625mm2ca' name='MemberCell-has-base-aggregate' visibility='public'>
<memberEnd xmi:idref='I1fe40d5m11233374625mm2d0'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1fe40d5m11233374625mm2d0' name='__inv_base-aggregate' type='I1fe40d5m11233374625mm51f' association='I1fe40d5m11233374625mm2ca' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I1fe40d5m11233374625mm2cd'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1fe40d5m11233374625mm2a5' name='AttributeCell-referent' visibility='public'>
<memberEnd xmi:idref='I1fe40d5m11233374625mm2ab'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1fe40d5m11233374625mm2ab' name='__inv_referent' type='I1fe40d5m11233374625mm50c' association='I1fe40d5m11233374625mm2a5' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1fe40d5m11233374625mm2a8'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1fe40d5m11233374625mm27a' name='GroupCell-referent' visibility='public'>
<memberEnd xmi:idref='I1fe40d5m11233374625mm280'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1fe40d5m11233374625mm280' name='__inv_referent' type='I1fe40d5m11233374625mm4f9' association='I1fe40d5m11233374625mm27a' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1fe40d5m11233374625mm27d'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1fe40d5m11233374625mm251' name='AttributeCell-has-base-entity' visibility='public'>
<memberEnd xmi:idref='I1fe40d5m11233374625mm257'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1fe40d5m11233374625mm257' name='__inv_base-entity' type='I1fe40d5m11233374625mm50c' association='I1fe40d5m11233374625mm251' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I1fe40d5m11233374625mm254'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1fe40d5m11233374625mm226' name='GroupCell-has-base-entity' visibility='public'>
<memberEnd xmi:idref='I1fe40d5m11233374625mm22c'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1fe40d5m11233374625mm22c' name='__inv_base-entity' type='I1fe40d5m11233374625mm4f9' association='I1fe40d5m11233374625mm226' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I1fe40d5m11233374625mm229'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0mm135d' name='alias-binds-variable' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002f6' body='&lt;p&gt;represents the relationship between the AliasStatement and the AliasVariable it defines.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm135d'/>
</ownedComment>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm1365'/>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm135f'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0mm146f' name='statement-has-case' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002f7' body='&lt;p&gt;represents the relationship between the CaseStatement and the sequence of choices of actions to be taken.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm146f'/>
</ownedComment>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm1477'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm1477' name='__inv_cases' type='I1aabda3m10c7e3ba3f0mm147d' association='I1aabda3m10c7e3ba3f0mm146f' visibility='public'>
</ownedEnd>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm1471'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0mm144b' name='alias-has-body' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002f8' body='&lt;p&gt;represents the relationship between the AliasStatement and the Statement (which may be a StatementBlock) of the actions to be taken.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm144b'/>
</ownedComment>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm1453'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm1453' name='__inv_body' type='I1aabda3m10c7e3ba3f0mm148d' association='I1aabda3m10c7e3ba3f0mm144b' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm144d'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0mm1459' name='action-in-case' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002f9' body='&lt;p&gt;represents the relationship between a CaseAction and the action (CompoundStatement) to be executed if that case is selected.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1459'/>
</ownedComment>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm1461'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm1461' name='__inv_action' type='I1aabda3m10c7e3ba3f0mm1481' association='I1aabda3m10c7e3ba3f0mm1459' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm145b'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0mm13e5' name='block-sequences-statements' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002fa' body='&lt;p&gt;represents the relationship of a StatementBlock to the Statements of which the sequence consists.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm13e5'/>
</ownedComment>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm13ed'/>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm13e7'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0mm1433' name='if-then-actions' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002fb' body='&lt;p&gt;represents the relationship between the IfStatement and the actions to be taken when the condition is true.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1433'/>
</ownedComment>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm143b'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm143b' name='__inv_then-actions' type='I1aabda3m10c7e3ba3f0mm1441' association='I1aabda3m10c7e3ba3f0mm1433' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm1435'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0mm1425' name='if-else-actions' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002fc' body='&lt;p&gt;represents the relationship between the IfStatement and the actions to be taken when the condition is False.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1425'/>
</ownedComment>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm142d'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm142d' name='__inv_else-actions' type='I1aabda3m10c7e3ba3f0mm1441' association='I1aabda3m10c7e3ba3f0mm1425' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm1427'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0mm1413' name='repeat-has-body' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002fd' body='&lt;p&gt;represents the relationship between a RepeatStatement and the Statement (or StatementBlock) that specifies the actions to be iterated.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm1413'/>
</ownedComment>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm141b'/>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm1415'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0mm13c7' name='case-selected-by-expression' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002fe' body='&lt;p&gt;represents the relationship between the CaseStatement and the selection-expression that is used to choose the CaseAction to be taken.&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm13c7'/>
</ownedComment>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm13cf'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm13cf' name='__inv_selection-expression' type='I1aabda3m10c7e3ba3f0mm147d' association='I1aabda3m10c7e3ba3f0mm13c7' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm13c9'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0mm13b9' name='case-labeled-by-value' visibility='public'>
<ownedComment xmi:type='cmof:Comment' xmi:id='ix_0002ff' body='&lt;p&gt;represents the relationship between a CaseAction and the label values that enable that case to be selected (by matching the value of the selection expression).&lt;/p&gt;'>
<annotatedElement xmi:idref='I1aabda3m10c7e3ba3f0mm13b9'/>
</ownedComment>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm13c1'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm13c1' name='__inv_label-value' type='I1aabda3m10c7e3ba3f0mm1481' association='I1aabda3m10c7e3ba3f0mm13b9' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm13bb'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1aabda3m10c7e3ba3f0mm13ab' name='if-has-decision-condition' visibility='public'>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm13b3'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1aabda3m10c7e3ba3f0mm13b3' name='__inv_if-condition' type='I1aabda3m10c7e3ba3f0mm1441' association='I1aabda3m10c7e3ba3f0mm13ab' visibility='public' lower='0'>
</ownedEnd>
<memberEnd xmi:idref='I1aabda3m10c7e3ba3f0mm13ad'/>
</ownedMember>
<ownedMember xmi:type='cmof:Association' xmi:id='I1fe40d5m11233374625mm201' name='AliasRef-to-VARVariable' visibility='public'>
<memberEnd xmi:idref='I1fe40d5m11233374625mm207'/>
<ownedEnd xmi:type='cmof:Property' xmi:id='I1fe40d5m11233374625mm207' name='__inv_refers-to' type='I1fe40d5m11233374625mm545' association='I1fe40d5m11233374625mm201' visibility='public' lower='0' upper='*'>
</ownedEnd>
<memberEnd xmi:idref='I1fe40d5m11233374625mm204'/>
</ownedMember>
</ownedMember>
</cmof:Package>
</xmi:XMI>
