Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
404 changes: 202 additions & 202 deletions org.omg.sysml/model/KerML.genmodel

Large diffs are not rendered by default.

9,312 changes: 4,662 additions & 4,650 deletions org.omg.sysml/model/KerML_only.uml

Large diffs are not rendered by default.

6,092 changes: 3,055 additions & 3,037 deletions org.omg.sysml/model/KerML_only_xmi.uml

Large diffs are not rendered by default.

3,746 changes: 1,873 additions & 1,873 deletions org.omg.sysml/model/SysML.ecore

Large diffs are not rendered by default.

888 changes: 444 additions & 444 deletions org.omg.sysml/model/SysML.genmodel

Large diffs are not rendered by default.

22,120 changes: 11,066 additions & 11,054 deletions org.omg.sysml/model/SysML.uml

Large diffs are not rendered by default.

882 changes: 441 additions & 441 deletions org.omg.sysml/model/SysML_clean.genmodel

Large diffs are not rendered by default.

12,944 changes: 6,472 additions & 6,472 deletions org.omg.sysml/model/SysML_only.uml

Large diffs are not rendered by default.

7,220 changes: 3,610 additions & 3,610 deletions org.omg.sysml/model/SysML_only_xmi.uml

Large diffs are not rendered by default.

12,796 changes: 6,407 additions & 6,389 deletions org.omg.sysml/model/SysML_xmi.uml

Large diffs are not rendered by default.

1,574 changes: 787 additions & 787 deletions org.omg.sysml/model/kerml.ecore

Large diffs are not rendered by default.

4,794 changes: 2,397 additions & 2,397 deletions org.omg.sysml/model/sysml_clean.ecore

Large diffs are not rendered by default.

14 changes: 7 additions & 7 deletions org.omg.sysml/model/types.ecore
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,6 @@
<details key="settingDelegates" value="http://www.omg.org/spec/SysML"/>
<details key="invocationDelegates" value="http://www.omg.org/spec/SysML"/>
</eAnnotations>
<eClassifiers xsi:type="ecore:EDataType" name="Boolean" instanceClassName="boolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Boolean is used for logical expressions, consisting of the predefined values true and false."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="Integer" instanceClassName="int">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Integer is a primitive type representing integer values."/>
Expand All @@ -24,14 +19,19 @@
<details key="documentation" value="Real is a primitive type representing the mathematical concept of real."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="String" instanceClassName="java.lang.String">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="String is a sequence of characters in some suitable character set used to display information about the model. Character sets may include non-Roman alphabets and characters."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="UnlimitedNatural" instanceClassName="int">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="UnlimitedNatural is a primitive type representing unlimited natural values."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="String" instanceClassName="java.lang.String">
<eClassifiers xsi:type="ecore:EDataType" name="Boolean" instanceClassName="boolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="String is a sequence of characters in some suitable character set used to display information about the model. Character sets may include non-Roman alphabets and characters."/>
<details key="documentation" value="Boolean is used for logical expressions, consisting of the predefined values true and false."/>
</eAnnotations>
</eClassifiers>
</ecore:EPackage>
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
* intersection(f2.ownedRedefinition.redefinedFeature)->
* intersection(features)->isEmpty()))
* let features : OrderedSet(Feature) = instantiatedType.feature->
* select(visibility = VisibilityKind::public) in
* select(owningMembership.visibility = VisibilityKind::public) in
* result.ownedFeature->forAll(f |
* f.ownedRedefinition.redefinedFeature->
* intersection(features)->size() = 1)
Expand Down
21 changes: 13 additions & 8 deletions org.omg.sysml/syntax-gen/org/omg/sysml/lang/sysml/Feature.java
Original file line number Diff line number Diff line change
Expand Up @@ -101,19 +101,24 @@
* redefinesFromLibrary('Transfers::Transfer::source::targetInput'))
*
* owningType <> null and
* not owningFeatureMembership.
* oclIsKindOf(ReturnParameterMembership) and
* (owningType.oclIsKindOf(Behavior) or
* owningType.oclIsKindOf(Step) and
* not owningType.oclIsKindOf(InvocationExpression)) implies
* let i : Integer =
* owningType.oclIsKindOf(Step) and
* (owningType.oclIsKindOf(InvocationExpression) implies
* not ownedRedefinition->exists(not isImplied))
* implies
* let i : Integer =
* owningType.ownedFeature->select(direction <> null)->
* reject(owningFeatureMembership.
* oclIsKindOf(ReturnParameterMembership) in
* oclIsKindOf(ReturnParameterMembership))->
* indexOf(self) in
* owningType.ownedSpecialization.general->
* forAll(supertype |
* let ownedParameters : Sequence(Feature) =
* let ownedParameters : Sequence(Feature) =
* supertype.ownedFeature->select(direction <> null)->
* reject(owningFeatureMembership.
* oclIsKindOf(ReturnParameterMembership) in
* oclIsKindOf(ReturnParameterMembership)) in
* ownedParameters->size() >= i implies
* redefines(ownedParameters->at(i))
* ownedTyping.type->exists(selectByKind(Structure)) implies
Expand Down Expand Up @@ -221,15 +226,16 @@
* The following features are supported:
* </p>
* <ul>
* <li>{@link org.omg.sysml.lang.sysml.Feature#getOwningFeatureMembership <em>Owning Feature Membership</em>}</li>
* <li>{@link org.omg.sysml.lang.sysml.Feature#getOwningType <em>Owning Type</em>}</li>
* <li>{@link org.omg.sysml.lang.sysml.Feature#getEndOwningType <em>End Owning Type</em>}</li>
* <li>{@link org.omg.sysml.lang.sysml.Feature#isUnique <em>Is Unique</em>}</li>
* <li>{@link org.omg.sysml.lang.sysml.Feature#isOrdered <em>Is Ordered</em>}</li>
* <li>{@link org.omg.sysml.lang.sysml.Feature#getType <em>Type</em>}</li>
* <li>{@link org.omg.sysml.lang.sysml.Feature#getOwnedRedefinition <em>Owned Redefinition</em>}</li>
* <li>{@link org.omg.sysml.lang.sysml.Feature#getOwnedSubsetting <em>Owned Subsetting</em>}</li>
* <li>{@link org.omg.sysml.lang.sysml.Feature#isComposite <em>Is Composite</em>}</li>
* <li>{@link org.omg.sysml.lang.sysml.Feature#isEnd <em>Is End</em>}</li>
* <li>{@link org.omg.sysml.lang.sysml.Feature#getEndOwningType <em>End Owning Type</em>}</li>
* <li>{@link org.omg.sysml.lang.sysml.Feature#getOwnedTyping <em>Owned Typing</em>}</li>
* <li>{@link org.omg.sysml.lang.sysml.Feature#getFeaturingType <em>Featuring Type</em>}</li>
* <li>{@link org.omg.sysml.lang.sysml.Feature#getOwnedTypeFeaturing <em>Owned Type Featuring</em>}</li>
Expand All @@ -245,7 +251,6 @@
* <li>{@link org.omg.sysml.lang.sysml.Feature#getCrossFeature <em>Cross Feature</em>}</li>
* <li>{@link org.omg.sysml.lang.sysml.Feature#getDirection <em>Direction</em>}</li>
* <li>{@link org.omg.sysml.lang.sysml.Feature#getOwnedCrossSubsetting <em>Owned Cross Subsetting</em>}</li>
* <li>{@link org.omg.sysml.lang.sysml.Feature#getOwningFeatureMembership <em>Owning Feature Membership</em>}</li>
* <li>{@link org.omg.sysml.lang.sysml.Feature#isNonunique <em>Is Nonunique</em>}</li>
* </ul>
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ public interface InstantiationExpression extends Expression {
* <p>Return the <code>Type</code> to act as the <code>instantiatedType</code> for this <code>InstantiationExpression</code>. By default, this is the <code>memberElement</code> of the first <code>ownedMembership</code> that is not a <code>FeatureMembership</code>, which must be a <code>Type</code>.</p>
*
* <p><b>Note.</b> This operation is overridden in the subclass <code>OperatorExpression</code>.</p>
* let members : Sequence(Type) = ownedMembership->
* let members : Sequence(Element) = ownedMembership->
* reject(oclIsKindOf(FeatureMembership)).memberElement in
* if members->isEmpty() or not members->first().oclIsKindOf(Type) then null
* else typeMembers->first().oclAsType(Type)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,11 +34,19 @@
* -- Including "Anything" accounts for implicit featuringType of Features
* -- with no explicit featuringType.
* let redefiningFeaturingTypes: Set(Type) =
* redefiningFeature.featuringTypes->asSet()->including(anythingType) in
* if redefiningFeature.isVariable then Set{redefiningFeature.owningType}
* else redefiningFeature.featuringTypes->asSet()->including(anythingType)
* endif in
* let redefinedFeaturingTypes: Set(Type) =
* redefinedFeature.featuringTypes->asSet()->including(anythingType) in
* if redefinedFeature.isVariable then Set{redefinedFeature.owningType}
* else redefinedFeature.featuringTypes->asSet()->including(anythingType)
* endif in
* redefiningFeaturingTypes <> redefinedFeaturingType
* featuringType->forAll(t |
* let featuringTypes : Sequence(Type) =
* if redefiningFeature.isVariable then Sequence{redefiningFeature.owningType}
* else redefiningFeature.featuringType
* endif in
* featuringTypes->forAll(t |
* let direction : FeatureDirectionKind = t.directionOf(redefinedFeature) in
* ((direction = FeatureDirectionKind::_'in' or
* direction = FeatureDirectionKind::out) implies
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,9 @@
*
* subsettingFeature.canAccess(subsettedFeature)
* subsettedFeature.isUnique implies subsettingFeature.isUnique
* subsettedFeature.isConstant implies subsettingFeature.isConstant
* subsettedFeature.isPortion implies subsettingFeature.isPortion
* subsettedFeature.isConstant and subsettingFeature.isVariable implies
* subsettingFeature.isConstant
*
* <!-- end-model-doc -->
*
* <p>
Expand Down
Loading