archetype modeling language (aml) for cimi
DESCRIPTION
Archetype Modeling Language (AML) for CIMI. UML for Archetypes Status update April 11, 2013. AML Objectives. UML Style Guide and profile for archetype modeling Representation of ADL structures, constraints, and ontology Independent of reference model selection - PowerPoint PPT PresentationTRANSCRIPT
Archetype Modeling Language (AML) for CIMI
UML for ArchetypesStatus updateApril 11, 2013
January 2013 Archetype Modeling Language for CIMI 2
AML Objectives
• UML Style Guide and profile for archetype modeling Representation of ADL structures, constraints, and ontology
• Independent of reference model selection CIMI, openEHR, iso13606, CEM, others
• Define UML stereotypes, as necessary, to extend UML language
Most archetype structure already supported by UML Primary addition: Terminology bindings (meaning and value
set constraints)
January 2013 Archetype Modeling Language for CIMI 3
AML RFP Status with OMG
• Submission postponed until September• Additional status update from Harold Solbrig
January 2013 Archetype Modeling Language for CIMI 4
Benefits of UML: Model Transformation
Design AML profiles to simplify implementation and use• Model-to-Model
XSD Ecore and Java AOM CEM/ CDL CDA
• Model-to-Text ADL DITA (for publishing documentation)
• Mapping To C-CDA
January 2013 Archetype Modeling Language for CIMI 5
AML Core Profile
January 2013 Archetype Modeling Language for CIMI 6
AML Terminology Profile (meaning)
January 2013 Archetype Modeling Language for CIMI 7
AML Terminology Profile (value sets)
January 2013 Archetype Modeling Language for CIMI 8
Example Model-to-Model transform (using ATL)--- Transform ResolvedValueSet to to XSD enumeration with documentation and appinforule ResolvedValueSet {
fromvalueSet : AMLTerm!ResolvedValueSet
tooutEnum : UML!Enumeration (
name <- valueSet.getName(),ownedComment <- valueSetURI,ownedLiteral <- valueSet.getMembers()
),
valueSetURI : UML!Comment (-- TODO XSD appinfobody <- valueSet.uri
)}
January 2013 Archetype Modeling Language for CIMI 9
ValueSetMember -> XSD enumeration facetrule ValueSetMember {
fromvalueSetMember : AMLTerm!ValueSetMember
toliteral : UML!EnumerationLiteral (
name <- valueSetMember.getName(),ownedComment <- designation,ownedComment <- conceptURI
),
designation : UML!Comment (body <- valueSetMember.designation
),conceptURI : UML!Comment (
body <- valueSetMember.uri)
do {designation.applyStereotype('XMLSchema::Documentation');conceptURI.applyStereotype('XMLSchema::AppInfo');
}}
January 2013 Archetype Modeling Language for CIMI 10
CIMI Archetypes with Terminology Bindings
January 2013 Archetype Modeling Language for CIMI 11
SNOMED CT references in UML, from CTS2
January 2013 Archetype Modeling Language for CIMI 12
BACKUP SLIDES
January 2013 Archetype Modeling Language for CIMI 13
Archetypes in openEHR Workbench
January 2013 Archetype Modeling Language for CIMI 14
UML Table Editor for AML
January 2013 Archetype Modeling Language for CIMI 15
Reference Model
January 2013 Archetype Modeling Language for CIMI 16
Entry – Cluster – Element
January 2013 Archetype Modeling Language for CIMI 17
Pattern Archetype in ADLdefinition
ENTRY [at0000] matches {data matches {
-- Result (in UML: nested, or inner, class)CLUSTER [at0002] occurrences matches {1} matches {
items matches { ITEM [at0003] occurrences matches {*} matches {*} -- value ITEM [at0004] occurrences matches {0..1} matches {*} --
reference range}
}
-- archetype slot, re-use a shared archetype for Body Locationallow_archetype CLUSTER [at0005] occurrences matches {*} matches {
include archetype_id/value matches {/cimi-RM-
CLUSTER\.body_location\.v*/}}
}
January 2013 Archetype Modeling Language for CIMI 18
Body Location CLUSTER Archetypedefinition
CLUSTER [at0000] matches {items matches {
ELEMENT [at0001] occurrences matches {0..1} matches {value matches {
CODED_TEXT matches {*}}
}ELEMENT [at0002] occurrences matches {0..1} matches {
value matches {PLAIN_TEXT matches {*}
}}
}}
January 2013 Archetype Modeling Language for CIMI 19
Pattern Archetype in UML
January 2013 Archetype Modeling Language for CIMI 20
Clinical Archetype (extends Pattern)definition
ENTRY [at0000.1] matches {-- redefine Result (using path to inherited CLUSTER)/data[at0002]/items matches {
-- “heart rate value” is subset of Result value-- ELEMENT with Quantity value is specialization of Result ITEMELEMENT [at0003.2] occurrences matches {0..1} matches { value matches { QUANTITY matches {
units matches {CODED_TEXT matches { terminology_id matches {
TERMINOLOGY_ID matches { value matches {"local"}}
} term_id matches {"at0.5"}}
January 2013 Archetype Modeling Language for CIMI 21
Clinical Archetype (extends Pattern)