
7.2 Abstract Syntax Figure 7.2 shows the package dependencies of the Kernel packages. Figure 7.2 - Subpackages of the Classes package and their dependencies 24 UML Superstructure Specification, v2.4 Package Kernel Figure 7.3 - Root diagram of the Kernel package UML Superstructure Specification, v2.4 25 Figure 7.4 - Namespaces diagram of the Kernel package 26 UML Superstructure Specification, v2.4 Figure 7.5 - Multiplicities diagram of the Kernel package . TypedElement PackageableElement {ordered, subsets ownedElement} + operand ValueSpecification * 0..1 Expression OpaqueExpression LiteralSpecification InstanceValue symbol : String body : String {ordered, nonunique} * language : String {ordered} + instanceValue + expression {subsets owner} 1 + instance LiteralNull LiteralInteger LiteralString InstanceSpecification LiteralBoolean LiteralReal LiteralUnlimitedNatura l Figure 7.6 - Expressions diagram of the Kernel package UML Superstructure Specification, v2.4 27 Figure 7.7 - Constraints diagram of the Kernel package Figure 7.8 - Instances diagram of the Kernel package 28 UML Superstructure Specification, v2.4 {readOnly, union} RedefinableElement + /redefinedElement * * + redefinableElement Type Namespace {readOnly, subsets member} + /inheritedMember * NamedElement Classifier {subsets redefinedElement} * + classifie r + isAbstract : Boolean = false + redefinedClassifier {subsets memberNamespace} + isFinalSpecialization : Boolean = false * * RedefinableElement + redefinableElement * + isLeaf : Boolean = false * + /redefinitionContext + classifier {readOnly, union} {subsets redefinableElement} {readOnly, union, subsets member} + /general + /feature * Feature * + isStatic : Boolean = false * + /featuringClassifier * {readOnly, union, subsets memberNamespace} StructuralFeature DirectedRelationship {readOnly, union, subsets redefinableElement, {subsets target} subsets feature} + general + /attribute 0..1 Property 1 * + classifier + generalization 1 + specific * {subsets redefinitionContext, {subsets source, {subsets directedRelationship} subsets featuringClassifier} subsets owner} Generalization * + isSubstitutable : Boolean [0..1] = true + generalization {subsets directedRelationship, subsets ownedElement} Figure 7.9 - Classifiers diagram of the Kernel package UML Superstructure Specification, v2.4 29 {readOnly, union} + /member + memberNamespace NamedElement Namespace * * {readOnly, union,{readOnly, union, subsets RedefinableElement subsets member}memberNamespace} + /feature + /featuringClassifier Feature Classifier + isStatic : Boolean = false * * 0..1 + /ownedMember Namespace NamedElement + /namespace * MultiplicityElement MultiplicityElement TypedElement TypedElement {ordered, subsets ownedMember} StructuralFeature BehavioralFeature 0..1 + ownedParameter Parameter + isReadOnly : Boolean = false + direction : ParameterDirectionKind = in + ownerFormalParam * + /default : String [0..1] {readOnly} {subsets namespace} * + raisedException Type + behavioralFeature * Figure 7.10 - Features diagram of the Kernel package 30 UML Superstructure Specification, v2.4 + /namespace + /ownedMember Namespace NamedElement 0..1 * TypedElement {subsets namespace} {ordered, subsets ownedMember} Type + raisedException * + ownerFormalParam + ownedParameter BehavioralFeature Parameter * + behavioralFeature 0..1 * + direction : ParameterDirectionKind = in + /default : String [0..1] {readOnly} {ordered, redefines ownedParameter} {redefines raisedException} 0..1 + ownedParameter Operation + raisedException * + isQuery : Boolean = false + operation * + /isOrdered : Boolean = false {readOnly} {subsets ownerFormalParam} * + operation + /isUnique : Boolean = true {readOnly} + /lower : Integer [0..1] = 1 {readOnly} {subsets behavioralFeature} + owningParameter + /upper : UnlimitedNatural [0..1] = 1 {readOnly} 0..1 {subsets context} {subsets ownedRule} Constraint {subsets owner} {readOnly} + preContext + precondition + /type * 0..1 * {subsets ownedElement} 0..1 + operation {subsets context} {subsets ownedRule} 0..1 + defaultValue + bodyContext + bodyCondition {subsets redefinedElement} ValueSpecification + redefinedOperation 0..1 0..1 1 {subsets ownedElement} {subsets context} {subsets ownedRule} * + specification + postContext + postcondition * 0..1 * 0..1 + operation {subsets redefinableElement} {subsets namespace} {subsets ownedMember} + owningConstraint + context + ownedRule {subsets owner} Namespace 0..1 * Figure 7.11 - Operations diagram of the Kernel package UML Superstructure Specification, v2.4 31 Classifier {subsets namespace, subsets {ordered, subsets ownedMember, redefinitionContext} subsets redefinableElement} + class + nestedClassifier Class Classifier 0..1 * {subsets featuringClassifier, {ordered, subsets feature, subsets redefinitionContext, subsets redefinableElement, subsets namespace} subsets ownedMember} + class + ownedOperation Operation 0..1 * {ordered, readOnly, Relationship Classifier {redefines general} subsets relatedElement} {subsets relationship} + /endType + association * + /superClass Type Association * + class 1..* * + isDerived : Boolean = false 0..1 {subsets classifier} 0..1 0..1 + class + association + owningAssociation 0..1 + association {subsets classifier, subsets namespace} {subsets memberNamespace} {subsets association, {subsets owningAssociation} subsets featuringClassifier, StructuralFeature subsets namespace, subsets redefinitionContext} {ordered, subsets member} 2..* + memberEnd {ordered, subsets attribute, {subsets ownedEnd} Property * subsets ownedMember} + navigableOwnedEnd + ownedAttribute + isDerived : Boolean = false + isReadOnly : Boolean = false {redefines isReadOnly} + isDerivedUnion : Boolean = false * * + /default : String [0..1] + aggregation : AggregationKind = none + /isComposite : Boolean + ownedEnd * + isID : Boolean = false {ordered, subsets memberEnd, subsets feature, subsets ownedMember, subsets redefinableElement} + redefinedProperty {subsets redefinedElement} + subsettedProperty {subsets redefinableElement} + property * * * + owningProperty 0..1 0..1 + /opposite 0..1 {subsets owner} «enumeration» {subsets ownedElement} AggregationKind + defaultValue none shared ValueSpecification composite 0..1 Figure 7.12 - Classes diagram of the Kernel package 32 UML Superstructure Specification, v2.4 Classifier + classifie r + instanceSpecification InstanceSpecification * * {readOnly, union, subsets memberNamespace} {readOnly, union, subsets member} + /featuringClassifier + /feature Feature * * StructuralFeature {subsets redefinitionContext, {readOnly, union, subsets subsets featuringClassifier} redefinableElement, subsets feature} + classifie r + /attribute Property 0..1 * {subsets classifier, {ordered, subsets attribute, subsets namespace} subsets ownedMember} DataType + datatype + ownedAttribute 0..1 * {subsets featuringClassifier, subsets redefinitionContext, {ordered, subsets feature, BehavioralFeature subsets namespace} subsets redefinableElement, subsets ownedMember} + datatype + ownedOperation Operation 0..1 * {subsets namespace} {ordered, subsets ownedMember} + enumeration + ownedLiteral PrimitiveType Enumeration EnumerationLiteral 1 * 1 * + /classifie r + enumerationLiteral {redefines classifier} {redefines instanceSpecification} Figure 7.13 - DataTypes diagram of the Kernel package UML Superstructure Specification, v2.4 33 Namespace PackageableElement {subsets namespace} {subsets ownedMember} + owningPackage + packagedElement Package PackageableElement URI : String [0..1] 0..1 * {subsets owningPackage} {subsets packagedElement} + package + /ownedType Type 0..1 * {subsets source, DirectedRelationship subsets owner} {subsets directedRelationship, + receivingPackage subsets ownedElement} + packageMerge PackageMerge 1 * {subsets target} {subsets directedRelationship} + mergedPackage + packageMerge 1 * {subsets packagedElement} + /nestedPackage * 0..1 + nestingPackage {subsets owningPackage} Figure 7.14 - The Packages diagram of the Kernel package 34 UML Superstructure Specification, v2.4 Package Dependencies 1..* * Element DirectedRelationship (from Kernel) (from Kernel) + /source + directedRelationship 1..* * + /target + directedRelationship PackageableElement (from Dependencies) {subsets source} {subsets directedRelationship} NamedElement + client + clientDependency Dependency (from Dependencies) 1..* * 1..* * + supplier + supplierDependency {subsets target} {subsets directedRelationship} Usage 0..1 Abstraction Namespace (from Dependencies) + abstraction Realization {subsets owner} {subsets client, {subsets clientDependency, subsets owner} subsets ownedElement} Classifier Substitution (from Dependencies) + substitutingClassifier + substitution 1 * {subsets ownedElement} + mapping 0..1 OpaqueExpression 1 * (from Kernel) + contract + substitution {subsets supplier} {subsets supplierDependency} Figure 7.15 - Contents of Dependencies package UML Superstructure Specification, v2.4 35 Package Interfaces {ordered, subsets redefinableElement, + redefinedClassifier Classifier subsets ownedMember} (from Kernel) + nestedClassifier * * * StructuralFeature (from Kernel) + classifie r {readOnly, union} + classifie r Property + /attribute Classifie r (from Interfaces) (from Interfaces) * 0..1 {ordered, subsets attribute, {subsets classifier, {subsets redefinitionContext, subsets ownedMember} subsets namespace} subsets namespace} + interface + ownedAttribute + interface Interface 0..1 * 0..1 {subsets redefinedClassifier} + redefinedInterface BehavioralFeature {ordered, subsets feature, {subsets featuringClassifier,
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages14 Page
-
File Size-