Repository for developing the Archetype Modeling Language (AML) specification. The actual specification is being assembled in the specification project, where the packages within the document correspond to the sections in the submission itself. The specification consists of:
## AML Object Model A description of the AML requirements along with a model that shows how they would be represented in vanilla UML.AML Object Model Itself (File: AMLObjectModel.mdzip)
A "vanilla" UML model that documents the goals of the AML project. Note that the diagrams for this package have been moved to the specification.mdzip package, so this is pure clases.
- Archetype - models Archetype, ArchetypeLibrary, ArchetypeVersion, SourceArchetype and FlatArchetype
- Reference Metamodel - models the subset of the UML Model that is applicable to archetypes. This includes subpackages for the "primitive types" that are used to bridge the archetype/UML metamodel, the subset of the UML metamodel that AML can be applied to.
- Constraint Model - models the various ADL constraints
- Terminology Binding - models the terminology/model linkage. Currently includes a TerminologyServices package that should probably be removed from the final submission
- Rules - models for the ADL rules section
- Metadata - models for the ADL metadata sections. Note: this needs to be completed
AML Object Model Examples (File:AOMExamples.mdzip)
Example Instances of the AML Object Model. At the moment this package is full of artifacts from the original RSA rendering.
- CommonDataTypeInstances -- a library of various shared "data types" such as multiplicities, designations, etc.
- Features -- represents a 1-1 mapping to the ADL 1.5 Features archetypes. Each feature in this package is reduced to a reasonable minimum, converted to use the CIMI 2.02 Reference Model and the salient section is then shown as in instance diagram with the same concept name.
- Reference Models -- representations of example reference models as instances of the Reference Metamodel artifacts ( RMMClass, RMMProperty, etc.)
- RSA Artifacts -- model instances left over from the RSA modelling. Unfortuantely, all of the diagrams were lost, so we anticipate that this package will be jettisoned as soon as we are comfortable with the new set of models.
- ArchetypeProfile.mdzip) -- ArchetypeLibrary, Archetype, ArchetypeVersion and ReferenceModelImport profiles
- APCustomization
- APExamples
- ReferenceModelProfile
- Classes for linking Reference Model types to AML types (e.g. Date, Time, String, Duration, etc).
- AMLType, ArchetypeId and ArchetypeVesionId -- abstract types that need to be made concrete for an AML to archetype link
- AMLDataType, Infrastructure and runtime -- stereotypes to add to the Reference Model to indicate classes and properties that cannot be constrained. AMLDataType also provides the link between a Reference Model type and the AML type
- There is currently no customization supplied for the RM profile.
- CIMIv2.0.2 -- CIMI v2.0.2 Reference Model with Reference Model Profile applied
The heart of the matter, constraints, which specify the actual archetypes
- ConstraintProfile.mdzip
- PrimitiveTypeConstraints diagram -- linkage of the "primitive" types and their constraints
- Constraints diagram-- ObjectConstraint and its speciailzations, PrimitiveObjectConstraint, EnumerationConstraint, ComplexObjectConstraint
- AttributeConstraints diagram-- AttributeConstraint and its specializations, DataTypeConstraint, SingularAttributeConstraint and AttributeCollectionConstraint.
- EnumerationConstraints diagram -- enumeration constraints and terminology binding linkage (EnumeratedValueDomain and PermissibleValue)
- ProxyConstraints diagram -- ObjectConstraintProxy, ArchetypeRootProxy
- TerminologyConstraints diagram -- ConceptReference, ConceptReferenceConstraint
- CPCustomization.mdzip
- CPExamples.mdzip
Connecting enumerations, identifiers, value sets, etc. to terminological resources. Note: This package still has corresponding profiles for each of the classes below. The should be removed as soon as the class/stereotyped element issue is addressed.
- TerminologyProfile.mdzip
- TerminologyProfile diagram -- the ResourceReference class and its specializations, ConceptReference, CodeSystemReference, CodeSystemVersionReference, ValueSetReference and ValueSetDefinitionReference
- DesignatableItem, IdentifiedItem and DescribedItem stereotypes for the ADL identifiers and term/description tuples.
- ScopedIdentifier, KnownNamespace, NamespaceInstance, Language and ArchetypeType stereotypes for scoping namespaces for identifiers and terminology items.
- PermissibleValue and EnumeratedValueDomain stereotypes for terminology binding sections
- URI diagram -- an excerpt from the CTS2 URI model, identifying the PersistentURI types
- TBCustomization
- TBExamples
FOPL rules for non-hierarchical constraints (Future)
Metadata profile specifically for ADL. Note: We still need to create abstract classes along the same line as the ArchetypeId that will allow for other metadata models
- ArchetypeMetadataProfile.mdzip -- AuthoredResource stereotype and the accompanying ResourceTranslation, TranslationDetails, Description, ResourceDescription, etc. classes
- AMPCustomization.mdzip
- AMPExamples.mdzip
This profile implements the ADL terminology section.
- AML-sample-archetypes -- The set of ADL 1.5.1 archetypes used to test the AML Object Model and corresponding stereotypes
- Images -- Images used in the various customizations
- report -- submission template
- archive -- historical relics and anciallary resources
- ReferenceDocuments -- Copies of useful reference documents