|
29 | 29 | <ownedMemberElement xsi:type="sysml:Class"/> |
30 | 30 | </ownedMembership> |
31 | 31 | <ownedMembership memberName="vehicle1" memberElement="//@ownedMembership.5/@ownedMemberElement"> |
32 | | - <ownedElement xsi:type="sysml:Comment" body="/** 
	 * 'vehicle1' is a package-owned feature of type Vehicle.
	 * It is not marked as a "part", because that is only
	 * valid in the context of a nested feature.
	 */" commentedElement="//@ownedMembership.5/@ownedMemberElement"/> |
33 | 32 | <ownedMemberElement xsi:type="sysml:Feature" type="//@ownedMembership.0/@ownedMemberElement"> |
34 | 33 | <ownedMembership xsi:type="sysml:FeatureMembership" memberName="mass" memberFeature="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.0/@ownedFeatureElement"> |
35 | | - <ownedElement xsi:type="sysml:Comment" body="/**
		 * This redefines the 'mass' feature from Vehicle to give
		 * it a fixed value.
		 */" commentedElement="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.0/@ownedFeatureElement"/> |
36 | 34 | <ownedFeatureElement> |
37 | 35 | <ownedElement xsi:type="sysml:Redefinition" redefiningFeature="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.0/@ownedFeatureElement" redefinedFeature="//@ownedMembership.0/@ownedMemberElement/@ownedMembership.0/@ownedFeatureElement"/> |
38 | 36 | <value xsi:type="sysml:LiteralInteger" value="1000"/> |
39 | 37 | </ownedFeatureElement> |
40 | 38 | </ownedMembership> |
41 | 39 | <ownedMembership xsi:type="sysml:FeatureMembership" memberName="frontAxleAssembly" memberFeature="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement" isPart="true"> |
42 | | - <ownedElement xsi:type="sysml:Comment" body="/**
		 * 'frontAxleAssembly' is a nested feature of feature 'vehicle1'.
		 * It is marked as a "part", which indicates that it is a
		 * composite part of the containing feature.
		 * 
		 * (And similarly for 'rearAxleAssembly'.)
		 */" commentedElement="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement"/> |
43 | 40 | <ownedFeatureElement type="//@ownedMembership.1/@ownedMemberElement"> |
44 | 41 | <ownedMembership xsi:type="sysml:FeatureMembership" memberName="frontAxle" memberFeature="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement/@ownedMembership.0/@ownedFeatureElement" isPart="true"> |
45 | 42 | <ownedFeatureElement type="//@ownedMembership.2/@ownedMemberElement"/> |
46 | 43 | </ownedMembership> |
47 | 44 | <ownedMembership xsi:type="sysml:FeatureMembership" memberName="frontWheel" memberFeature="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement/@ownedMembership.1/@ownedFeatureElement" isPart="true"> |
48 | | - <ownedElement xsi:type="sysml:Comment" body="/** 
			 * 'frontWheel' is a nested feature of type 'Wheel' with
			 * multiplicity "2". This means that this axle assembly
			 * must have exactly two wheels. However, there is still
			 * only one 'frontWheel' feature. The feature is "ordered",
			 * so that the first wheel can be distinguished from the
			 * second.
			 */" commentedElement="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement/@ownedMembership.1/@ownedFeatureElement"/> |
49 | 45 | <ownedFeatureElement isOrdered="true" type="//@ownedMembership.4/@ownedMemberElement"> |
50 | 46 | <upper xsi:type="sysml:LiteralInteger" value="2"/> |
51 | 47 | </ownedFeatureElement> |
|
67 | 63 | </ownedMemberElement> |
68 | 64 | </ownedMembership> |
69 | 65 | <ownedMembership memberName="vehicle1_c1" memberElement="//@ownedMembership.6/@ownedMemberElement"> |
70 | | - <ownedElement xsi:type="sysml:Comment" body="/**
	 * 'vehicle1_c1' is a redefinition of 'vehicle1'.
	 */" commentedElement="//@ownedMembership.6/@ownedMemberElement"/> |
71 | 66 | <ownedMemberElement xsi:type="sysml:Feature"> |
72 | 67 | <ownedElement xsi:type="sysml:Redefinition" redefiningFeature="//@ownedMembership.6/@ownedMemberElement" redefinedFeature="//@ownedMembership.5/@ownedMemberElement"/> |
73 | 68 | <ownedImport importedPackage="//@ownedMembership.5/@ownedMemberElement"/> |
74 | 69 | <ownedImport importedPackage="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement"/> |
75 | 70 | <ownedImport importedPackage="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement"/> |
76 | 71 | <ownedMembership xsi:type="sysml:FeatureMembership" memberName="mass" memberFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.0/@ownedFeatureElement"> |
77 | | - <ownedElement xsi:type="sysml:Comment" body="/**
		 * The 'mass' value is redefined again to a new value.
		 */" commentedElement="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.0/@ownedFeatureElement"/> |
78 | 72 | <ownedFeatureElement> |
79 | 73 | <ownedElement xsi:type="sysml:Redefinition" redefiningFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.0/@ownedFeatureElement" redefinedFeature="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.0/@ownedFeatureElement"/> |
80 | 74 | <value xsi:type="sysml:LiteralInteger" value="2000"/> |
81 | 75 | </ownedFeatureElement> |
82 | 76 | </ownedMembership> |
83 | | - <ownedMembership xsi:type="sysml:FeatureMembership" memberFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement" isPart="true"> |
84 | | - <ownedElement xsi:type="sysml:Comment" body="/**
		 * 'frontAxleAssembly' must be redefined in order to redefine and
		 * subset its composite parts. 
		 */" commentedElement="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement"/> |
85 | | - <ownedFeatureElement> |
| 77 | + <ownedMembership xsi:type="sysml:FeatureMembership" memberName="frontAxleAssembly_c1" memberFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement" isPart="true"> |
| 78 | + <ownedFeatureElement type="//@ownedMembership.1/@ownedMemberElement"> |
86 | 79 | <ownedElement xsi:type="sysml:Redefinition" redefiningFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement" redefinedFeature="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement"/> |
87 | | - <ownedMembership xsi:type="sysml:FeatureMembership" memberFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement/@ownedMembership.0/@ownedFeatureElement" isPart="true"> |
88 | | - <ownedElement xsi:type="sysml:Comment" body="/**
			 * This redefines the part 'frontAxle' to have type 'FrontAxle',
			 * without changing the name of the part.
			 */" commentedElement="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement/@ownedMembership.0/@ownedFeatureElement"/> |
| 80 | + <ownedMembership xsi:type="sysml:FeatureMembership" memberName="frontAxle_c1" memberFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement/@ownedMembership.0/@ownedFeatureElement" isPart="true"> |
89 | 81 | <ownedFeatureElement type="//@ownedMembership.3/@ownedMemberElement"> |
90 | 82 | <ownedElement xsi:type="sysml:Redefinition" redefiningFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement/@ownedMembership.0/@ownedFeatureElement" redefinedFeature="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement/@ownedMembership.0/@ownedFeatureElement"/> |
91 | 83 | </ownedFeatureElement> |
92 | 84 | </ownedMembership> |
93 | 85 | <ownedMembership xsi:type="sysml:FeatureMembership" memberName="frontWheel_1" memberFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement/@ownedMembership.1/@ownedFeatureElement" isPart="true"> |
94 | | - <ownedElement xsi:type="sysml:Comment" body="/**
			 * 'frontWheel_1' is a separate feature from 'frontWheel',
			 * but it essentially provides an alternate name specifically
			 * for the first of the two front wheels, as given by the
			 * expression frontWheel[1].
			 * 
			 * (And similarly for 'frontWheel_2'.)
			 */" commentedElement="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement/@ownedMembership.1/@ownedFeatureElement"/> |
95 | | - <ownedFeatureElement> |
| 86 | + <ownedFeatureElement type="//@ownedMembership.4/@ownedMemberElement"> |
96 | 87 | <ownedElement xsi:type="sysml:Subset" subsettedFeature="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement/@ownedMembership.1/@ownedFeatureElement" subsettingFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement/@ownedMembership.1/@ownedFeatureElement"/> |
97 | 88 | <value xsi:type="sysml:SequenceAccessExpression"> |
98 | 89 | <primary xsi:type="sysml:ElementReferenceExpression" referent="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement/@ownedMembership.1/@ownedFeatureElement"/> |
|
101 | 92 | </ownedFeatureElement> |
102 | 93 | </ownedMembership> |
103 | 94 | <ownedMembership xsi:type="sysml:FeatureMembership" memberName="frontWheel_2" memberFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement/@ownedMembership.2/@ownedFeatureElement" isPart="true"> |
104 | | - <ownedFeatureElement> |
| 95 | + <ownedFeatureElement type="//@ownedMembership.4/@ownedMemberElement"> |
105 | 96 | <ownedElement xsi:type="sysml:Subset" subsettedFeature="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement/@ownedMembership.1/@ownedFeatureElement" subsettingFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement/@ownedMembership.2/@ownedFeatureElement"/> |
106 | 97 | <value xsi:type="sysml:SequenceAccessExpression"> |
107 | 98 | <primary xsi:type="sysml:ElementReferenceExpression" referent="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.1/@ownedFeatureElement/@ownedMembership.1/@ownedFeatureElement"/> |
|
111 | 102 | </ownedMembership> |
112 | 103 | </ownedFeatureElement> |
113 | 104 | </ownedMembership> |
114 | | - <ownedMembership xsi:type="sysml:FeatureMembership" memberFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement" isPart="true"> |
115 | | - <ownedElement xsi:type="sysml:Comment" body="/**
		 * 'rearAxleAssembly' must be redefined in order to add new subsetted
		 * features. However, 'rearAxle' is inherited without redefinition.
		 */" commentedElement="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement"/> |
116 | | - <ownedFeatureElement> |
| 105 | + <ownedMembership xsi:type="sysml:FeatureMembership" memberName="rearAxleAssembly_c1" memberFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement" isPart="true"> |
| 106 | + <ownedFeatureElement type="//@ownedMembership.1/@ownedMemberElement"> |
117 | 107 | <ownedElement xsi:type="sysml:Redefinition" redefiningFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement" redefinedFeature="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement"/> |
118 | | - <ownedMembership xsi:type="sysml:FeatureMembership" memberName="rearWheel_1" memberFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement/@ownedMembership.0/@ownedFeatureElement" isPart="true"> |
119 | | - <ownedFeatureElement> |
120 | | - <ownedElement xsi:type="sysml:Subset" subsettedFeature="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement/@ownedMembership.1/@ownedFeatureElement" subsettingFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement/@ownedMembership.0/@ownedFeatureElement"/> |
| 108 | + <ownedMembership xsi:type="sysml:FeatureMembership" memberName="rearAxle_c1" memberFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement/@ownedMembership.0/@ownedFeatureElement" isPart="true"> |
| 109 | + <ownedFeatureElement type="//@ownedMembership.2/@ownedMemberElement"> |
| 110 | + <ownedElement xsi:type="sysml:Redefinition" redefiningFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement/@ownedMembership.0/@ownedFeatureElement" redefinedFeature="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement/@ownedMembership.0/@ownedFeatureElement"/> |
| 111 | + </ownedFeatureElement> |
| 112 | + </ownedMembership> |
| 113 | + <ownedMembership xsi:type="sysml:FeatureMembership" memberName="rearWheel_1" memberFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement/@ownedMembership.1/@ownedFeatureElement" isPart="true"> |
| 114 | + <ownedFeatureElement type="//@ownedMembership.4/@ownedMemberElement"> |
| 115 | + <ownedElement xsi:type="sysml:Subset" subsettedFeature="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement/@ownedMembership.1/@ownedFeatureElement" subsettingFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement/@ownedMembership.1/@ownedFeatureElement"/> |
121 | 116 | <value xsi:type="sysml:SequenceAccessExpression"> |
122 | 117 | <primary xsi:type="sysml:ElementReferenceExpression" referent="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement/@ownedMembership.1/@ownedFeatureElement"/> |
123 | 118 | <index xsi:type="sysml:LiteralInteger" value="1"/> |
124 | 119 | </value> |
125 | 120 | </ownedFeatureElement> |
126 | 121 | </ownedMembership> |
127 | | - <ownedMembership xsi:type="sysml:FeatureMembership" memberName="rearWheel_2" memberFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement/@ownedMembership.1/@ownedFeatureElement" isPart="true"> |
128 | | - <ownedFeatureElement> |
129 | | - <ownedElement xsi:type="sysml:Subset" subsettedFeature="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement/@ownedMembership.1/@ownedFeatureElement" subsettingFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement/@ownedMembership.1/@ownedFeatureElement"/> |
| 122 | + <ownedMembership xsi:type="sysml:FeatureMembership" memberName="rearWheel_2" memberFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement/@ownedMembership.2/@ownedFeatureElement" isPart="true"> |
| 123 | + <ownedFeatureElement type="//@ownedMembership.4/@ownedMemberElement"> |
| 124 | + <ownedElement xsi:type="sysml:Subset" subsettedFeature="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement/@ownedMembership.1/@ownedFeatureElement" subsettingFeature="//@ownedMembership.6/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement/@ownedMembership.2/@ownedFeatureElement"/> |
130 | 125 | <value xsi:type="sysml:SequenceAccessExpression"> |
131 | 126 | <primary xsi:type="sysml:ElementReferenceExpression" referent="//@ownedMembership.5/@ownedMemberElement/@ownedMembership.2/@ownedFeatureElement/@ownedMembership.1/@ownedFeatureElement"/> |
132 | 127 | <index xsi:type="sysml:LiteralInteger" value="2"/> |
|
0 commit comments