From 6a5dbc94843060b3a5e51bc89bbf9bde58c8342a Mon Sep 17 00:00:00 2001 From: wolandscat Date: Mon, 8 Apr 2024 18:20:08 -0600 Subject: [PATCH 01/19] Refactoring to separate out RM-specific code from generic. --- .../archie/adl14/ADL14NodeIDConverter.java | 4 +- .../adlparser/treewalkers/ADLListener.java | 2 +- .../nedap/archie/aom/ArchetypeConstraint.java | 4 +- .../com/nedap/archie/aom/CArchetypeRoot.java | 2 +- .../java/com/nedap/archie/aom/CAttribute.java | 5 +- .../java/com/nedap/archie/aom/CObject.java | 2 +- .../nedap/archie/aom/OperationalTemplate.java | 5 +- .../com/nedap/archie/aom/utils/AOMUtils.java | 6 +- .../archie/definitions/AdlDefinitions.java | 6 +- .../com/nedap/archie/query/AOMPathQuery.java | 5 +- .../nedap/archie/rminfo/ModelInfoLookup.java | 4 +- archie-utils/build.gradle | 1 - ...aming.java => ArchieTypeNameResolver.java} | 8 +-- .../json/ArchieTypeResolverBuilder.java | 8 +-- .../archie/json/DontSerializePathMixin.java | 2 +- .../java/com/nedap/archie/xml/JAXBUtil.java | 53 +--------------- base/build.gradle | 1 + .../com/nedap/archie/apath}/APathQuery.java | 10 +--- .../com/nedap/archie/apath}/PathSegment.java | 2 +- .../com/nedap/archie/apath}/PathUtil.java | 2 +- .../com/nedap/archie/base/OpenEHRBase.java | 3 + .../java/com/nedap/archie/base}/RMObject.java | 3 +- .../definitions/AdlCodeDefinitions.java | 2 + .../java/org/openehr/bmm/core/BmmModel.java | 4 +- openehr-rm/build.gradle | 1 + .../modelconstraints/RMConstraintImposer.java | 4 +- .../definitions/OpenEhrDefinitions.java | 32 ++++++++++ .../archie/rm/archetyped/Archetyped.java | 2 +- .../archie/rm/archetyped/FeederAudit.java | 2 +- .../rm/archetyped/FeederAuditDetails.java | 2 +- .../com/nedap/archie/rm/archetyped/Link.java | 2 +- .../nedap/archie/rm/archetyped/Locatable.java | 2 +- .../nedap/archie/rm/archetyped/Pathable.java | 16 ++--- .../archie/rm/changecontrol/Contribution.java | 2 +- .../archie/rm/changecontrol/Version.java | 2 +- .../rm/changecontrol/VersionedObject.java | 2 +- .../nedap/archie/rm/datatypes/CodePhrase.java | 2 +- .../nedap/archie/rm/datavalues/DataValue.java | 2 +- .../archie/rm/datavalues/TermMapping.java | 3 +- .../datavalues/quantity/ReferenceRange.java | 2 +- .../java/com/nedap/archie/rm/ehr/Ehr.java | 2 +- .../nedap/archie/rm/generic/AuditDetails.java | 2 +- .../archie/rm/generic/Participation.java | 2 +- .../nedap/archie/rm/generic/PartyProxy.java | 2 +- .../archie/rm/generic/RevisionHistory.java | 2 +- .../rm/generic/RevisionHistoryItem.java | 2 +- .../rm/security/AccessControlSettings.java | 2 +- .../rm/support/identification/ObjectId.java | 2 +- .../rm/support/identification/ObjectRef.java | 2 +- .../archie/rm/support/identification/UID.java | 2 +- .../support/identification/VersionTreeId.java | 2 +- ...foLookup.java => OpenEhrRmInfoLookup.java} | 15 +++-- ...java => OpenEhrRmUpdatedValueHandler.java} | 12 ++-- .../com/nedap/archie/rmutil/PathableUtil.java | 8 +-- .../json/OpenEhrRmJacksonUtil.java | 10 ++-- .../json/OpenEhrRmObjectMapperProvider.java | 18 +++--- .../odin/CodePhraseSerializer.java | 2 +- .../odin/ItemMapToListConverter.java | 3 +- .../odin/OdinParsingClusterMixin.java | 2 +- .../odin/OdinParsingDvTextMixin.java | 2 +- .../odin/OdinParsingItemTreeMixin.java | 2 +- .../odin/TermMappingMapToListConverter.java | 3 +- .../serialisation/xml/OpenEhrRmJAXBUtil.java | 60 +++++++++++++++++++ .../rm/changecontrol/ContributionTest.java | 4 +- .../rm/composition/CompositionTest.java | 10 ++-- .../rm/composition/ObservationTest.java | 4 +- .../nedap/archie/rm/ehr/EhrStatusTest.java | 4 +- .../java/com/nedap/archie/rm/ehr/EhrTest.java | 4 +- .../com/nedap/archie/query/RMPathQuery.java | 3 +- .../AOMComparedWithBmmTest.java | 2 - .../RMComparedWithBmmTest.java | 4 +- .../DefinitionStructureValidation.java | 4 +- .../archie/flattener/CAttributeFlattener.java | 6 +- .../archie/query/UniqueNodePathBuilder.java | 2 +- .../DummyRulesPrimitiveObjectParent.java | 4 +- .../evaluators/BinaryOperatorEvaluator.java | 4 +- .../archie/adl14/ConversionConfigForTest.java | 4 +- .../archie/adl14/LargeSetOfADL14sTest.java | 5 -- .../archie/adlparser/RMPathQueryTest.java | 18 +++--- .../aom/AttributeTupleConstraintsTest.java | 20 +++---- .../aom/TerminologyCodeConstraintsTest.java | 30 +++++----- .../ArchetypeValidatorTest.java | 4 +- .../BigArchetypeValidatorTest.java | 5 +- .../CKMArchetypeValidatorTest.java | 13 +--- .../ExampleJsonInstanceGeneratorTest.java | 14 ++--- .../archie/creation/RMObjectCreatorTest.java | 4 +- .../nedap/archie/flattener/FlattenerTest.java | 8 +-- .../OperationalTemplateCreatorTest.java | 6 +- .../flattener/SiblingOrderFlattenerTest.java | 8 +-- .../com/nedap/archie/json/AOMJacksonTest.java | 43 ++++++------- .../archie/json/JacksonRMRoundTripTest.java | 17 +++--- .../com/nedap/archie/json/RMJacksonTest.java | 19 +++--- .../flat/ArchetypeParsePostProcessorTest.java | 4 +- .../json/flat/FlatJsonGeneratorTest.java | 20 +++---- .../nedap/archie/paths/PathSegmentTest.java | 1 + .../archie/query/RMObjectAttributesTest.java | 4 +- .../archie/query/RMQueryContextTest.java | 10 ++-- ...Test.java => openEhrRMInfoLookupTest.java} | 6 +- .../RmObjectValidatorTest.java | 6 +- .../ValidateArchetypedTest.java | 6 +- .../invariants/InvariantTestUtil.java | 10 ++-- .../datavalues/DvEhrUriInvariantTest.java | 4 +- .../datavalues/DvParsableInvariantTest.java | 4 +- .../ArchetypeSlotValidationTest.java | 16 ++--- .../RMPrimitiveObjectValidationTest.java | 6 +- .../validations/RMTupleValidationTest.java | 6 +- .../nedap/archie/rmutil/PathableUtilTest.java | 8 +-- .../rules/evaluation/BinaryOperatorTest.java | 4 +- .../FixableAssertionsCheckerTest.java | 6 +- .../rules/evaluation/FunctionsTest.java | 5 +- .../ParsedRulesEvaluationJaxbTest.java | 6 +- .../evaluation/ParsedRulesEvaluationTest.java | 10 ++-- .../adl/DefaultValueSerializerTest.java | 12 ++-- .../com/nedap/archie/testutil/TestUtil.java | 6 +- .../archie/xml/JAXBAOMRoundTripTest.java | 5 +- .../com/nedap/archie/xml/JAXBAOMTest.java | 26 ++++---- .../nedap/archie/xml/JAXBRMRoundTripTest.java | 9 +-- .../java/com/nedap/archie/xml/JAXBRMTest.java | 27 +++++---- utils/build.gradle | 4 -- 119 files changed, 453 insertions(+), 432 deletions(-) rename base/src/main/java/com/nedap/archie/definitions/OpenEhrDefinitions.java => aom/src/main/java/com/nedap/archie/definitions/AdlDefinitions.java (86%) rename archie-utils/src/main/java/com/nedap/archie/json/{OpenEHRTypeNaming.java => ArchieTypeNameResolver.java} (90%) rename {utils/src/main/java/com/nedap/archie/query => base/src/main/java/com/nedap/archie/apath}/APathQuery.java (95%) rename {utils/src/main/java/com/nedap/archie/paths => base/src/main/java/com/nedap/archie/apath}/PathSegment.java (98%) rename {utils/src/main/java/com/nedap/archie/paths => base/src/main/java/com/nedap/archie/apath}/PathUtil.java (97%) rename {openehr-rm/src/main/java/com/nedap/archie/rm => base/src/main/java/com/nedap/archie/base}/RMObject.java (88%) create mode 100644 openehr-rm/src/main/java/com/nedap/archie/definitions/OpenEhrDefinitions.java rename openehr-rm/src/main/java/com/nedap/archie/rminfo/{ArchieRMInfoLookup.java => OpenEhrRmInfoLookup.java} (97%) rename openehr-rm/src/main/java/com/nedap/archie/rminfo/{UpdatedValueHandler.java => OpenEhrRmUpdatedValueHandler.java} (95%) rename archie-utils/src/main/java/com/nedap/archie/json/JacksonUtil.java => openehr-rm/src/main/java/com/nedap/archie/serialisation/json/OpenEhrRmJacksonUtil.java (95%) rename archie-utils/src/main/java/com/nedap/archie/json/ArchieRMObjectMapperProvider.java => openehr-rm/src/main/java/com/nedap/archie/serialisation/json/OpenEhrRmObjectMapperProvider.java (86%) rename {archie-utils/src/main/java/com/nedap/archie => openehr-rm/src/main/java/com/nedap/archie/serialisation}/odin/CodePhraseSerializer.java (94%) rename {archie-utils/src/main/java/com/nedap/archie => openehr-rm/src/main/java/com/nedap/archie/serialisation}/odin/ItemMapToListConverter.java (89%) rename {archie-utils/src/main/java/com/nedap/archie => openehr-rm/src/main/java/com/nedap/archie/serialisation}/odin/OdinParsingClusterMixin.java (86%) rename {archie-utils/src/main/java/com/nedap/archie => openehr-rm/src/main/java/com/nedap/archie/serialisation}/odin/OdinParsingDvTextMixin.java (87%) rename {archie-utils/src/main/java/com/nedap/archie => openehr-rm/src/main/java/com/nedap/archie/serialisation}/odin/OdinParsingItemTreeMixin.java (86%) rename {archie-utils/src/main/java/com/nedap/archie => openehr-rm/src/main/java/com/nedap/archie/serialisation}/odin/TermMappingMapToListConverter.java (88%) create mode 100644 openehr-rm/src/main/java/com/nedap/archie/serialisation/xml/OpenEhrRmJAXBUtil.java rename tools/src/test/java/com/nedap/archie/rminfo/{ArchieRMInfoLookupTest.java => openEhrRMInfoLookupTest.java} (96%) diff --git a/aom/src/main/java/com/nedap/archie/adl14/ADL14NodeIDConverter.java b/aom/src/main/java/com/nedap/archie/adl14/ADL14NodeIDConverter.java index 6a3120117..c367cde1e 100644 --- a/aom/src/main/java/com/nedap/archie/adl14/ADL14NodeIDConverter.java +++ b/aom/src/main/java/com/nedap/archie/adl14/ADL14NodeIDConverter.java @@ -18,8 +18,8 @@ import com.nedap.archie.aom.utils.AOMUtils; import com.nedap.archie.aom.utils.NodeIdUtil; import com.nedap.archie.base.Cardinality; -import com.nedap.archie.paths.PathSegment; -import com.nedap.archie.query.APathQuery; +import com.nedap.archie.apath.PathSegment; +import com.nedap.archie.apath.APathQuery; import com.nedap.archie.rminfo.MetaModels; import com.nedap.archie.rules.Assertion; import com.nedap.archie.rules.BinaryOperator; diff --git a/aom/src/main/java/com/nedap/archie/adlparser/treewalkers/ADLListener.java b/aom/src/main/java/com/nedap/archie/adlparser/treewalkers/ADLListener.java index 3c077371e..9a75f2cd7 100644 --- a/aom/src/main/java/com/nedap/archie/adlparser/treewalkers/ADLListener.java +++ b/aom/src/main/java/com/nedap/archie/adlparser/treewalkers/ADLListener.java @@ -20,7 +20,7 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.regex.Pattern; -import static com.nedap.archie.definitions.OpenEhrDefinitions.*; +import static com.nedap.archie.definitions.AdlDefinitions.*; /** * ANTLR listener for an ADLS file. Uses the listener construction for the topmost elements, switches to custom treewalker diff --git a/aom/src/main/java/com/nedap/archie/aom/ArchetypeConstraint.java b/aom/src/main/java/com/nedap/archie/aom/ArchetypeConstraint.java index ac7e01b30..792c8175d 100644 --- a/aom/src/main/java/com/nedap/archie/aom/ArchetypeConstraint.java +++ b/aom/src/main/java/com/nedap/archie/aom/ArchetypeConstraint.java @@ -1,8 +1,8 @@ package com.nedap.archie.aom; import com.fasterxml.jackson.annotation.JsonIgnore; -import com.nedap.archie.paths.PathSegment; -import com.nedap.archie.paths.PathUtil; +import com.nedap.archie.apath.PathSegment; +import com.nedap.archie.apath.PathUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlTransient; diff --git a/aom/src/main/java/com/nedap/archie/aom/CArchetypeRoot.java b/aom/src/main/java/com/nedap/archie/aom/CArchetypeRoot.java index 61beee64d..687e3489e 100644 --- a/aom/src/main/java/com/nedap/archie/aom/CArchetypeRoot.java +++ b/aom/src/main/java/com/nedap/archie/aom/CArchetypeRoot.java @@ -1,6 +1,6 @@ package com.nedap.archie.aom; -import com.nedap.archie.paths.PathSegment; +import com.nedap.archie.apath.PathSegment; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlType; diff --git a/aom/src/main/java/com/nedap/archie/aom/CAttribute.java b/aom/src/main/java/com/nedap/archie/aom/CAttribute.java index 2a35c3bdf..1bd6628e6 100644 --- a/aom/src/main/java/com/nedap/archie/aom/CAttribute.java +++ b/aom/src/main/java/com/nedap/archie/aom/CAttribute.java @@ -5,9 +5,8 @@ import com.nedap.archie.aom.utils.AOMUtils; import com.nedap.archie.base.Cardinality; import com.nedap.archie.base.MultiplicityInterval; -import com.nedap.archie.definitions.AdlCodeDefinitions; -import com.nedap.archie.paths.PathSegment; -import com.nedap.archie.query.APathQuery; +import com.nedap.archie.apath.PathSegment; +import com.nedap.archie.apath.APathQuery; import com.nedap.archie.rminfo.RMProperty; import javax.annotation.Nullable; diff --git a/aom/src/main/java/com/nedap/archie/aom/CObject.java b/aom/src/main/java/com/nedap/archie/aom/CObject.java index 1cfe838ab..cf6015e17 100644 --- a/aom/src/main/java/com/nedap/archie/aom/CObject.java +++ b/aom/src/main/java/com/nedap/archie/aom/CObject.java @@ -8,7 +8,7 @@ import com.nedap.archie.aom.utils.ConformanceCheckResult; import com.nedap.archie.archetypevalidator.ErrorType; import com.nedap.archie.base.MultiplicityInterval; -import com.nedap.archie.paths.PathSegment; +import com.nedap.archie.apath.PathSegment; import com.nedap.archie.rminfo.RMProperty; import org.openehr.utils.message.I18n; diff --git a/aom/src/main/java/com/nedap/archie/aom/OperationalTemplate.java b/aom/src/main/java/com/nedap/archie/aom/OperationalTemplate.java index 9e5a23cf0..78f9cfc91 100644 --- a/aom/src/main/java/com/nedap/archie/aom/OperationalTemplate.java +++ b/aom/src/main/java/com/nedap/archie/aom/OperationalTemplate.java @@ -9,10 +9,8 @@ import com.nedap.archie.aom.terminology.ArchetypeTerm; import com.nedap.archie.aom.terminology.ArchetypeTerminology; import com.nedap.archie.aom.utils.AOMUtils; -import com.nedap.archie.paths.PathSegment; +import com.nedap.archie.apath.PathSegment; import com.nedap.archie.xml.adapters.ArchetypeTerminologyAdapter; -import com.nedap.archie.xml.adapters.StringDictionaryUtil; -import com.nedap.archie.xml.types.StringDictionaryItem; import com.nedap.archie.xml.types.XmlArchetypeTerminology; import javax.xml.bind.annotation.XmlElement; @@ -22,7 +20,6 @@ import java.net.URISyntaxException; import java.util.ArrayList; import java.util.Collections; -import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; diff --git a/aom/src/main/java/com/nedap/archie/aom/utils/AOMUtils.java b/aom/src/main/java/com/nedap/archie/aom/utils/AOMUtils.java index 047cf0d82..cd4feccb7 100644 --- a/aom/src/main/java/com/nedap/archie/aom/utils/AOMUtils.java +++ b/aom/src/main/java/com/nedap/archie/aom/utils/AOMUtils.java @@ -13,10 +13,10 @@ import com.nedap.archie.aom.primitives.CString; import com.nedap.archie.aom.terminology.ValueSet; import com.nedap.archie.definitions.AdlCodeDefinitions; -import com.nedap.archie.paths.PathSegment; -import com.nedap.archie.paths.PathUtil; +import com.nedap.archie.apath.PathSegment; +import com.nedap.archie.apath.PathUtil; import com.nedap.archie.query.AOMPathQuery; -import com.nedap.archie.query.APathQuery; +import com.nedap.archie.apath.APathQuery; import com.nedap.archie.query.PartialMatch; import com.nedap.archie.rminfo.*; import com.nedap.archie.rules.Assertion; diff --git a/base/src/main/java/com/nedap/archie/definitions/OpenEhrDefinitions.java b/aom/src/main/java/com/nedap/archie/definitions/AdlDefinitions.java similarity index 86% rename from base/src/main/java/com/nedap/archie/definitions/OpenEhrDefinitions.java rename to aom/src/main/java/com/nedap/archie/definitions/AdlDefinitions.java index 5ad34c78c..5e752834a 100644 --- a/base/src/main/java/com/nedap/archie/definitions/OpenEhrDefinitions.java +++ b/aom/src/main/java/com/nedap/archie/definitions/AdlDefinitions.java @@ -26,11 +26,7 @@ * * Created by cnanjo on 6/2/16. */ -public class OpenEhrDefinitions extends BasicDefinitions { - public static final String LOCAL_TERMINOLOGY_ID = "local"; - public static final String EHR_SCHEME = "ehr"; - - // Metadata +public class AdlDefinitions extends BasicDefinitions { public static final String ADL_VERSION = "adl_version"; public static final String BUILD_UID = "build_uid"; public static final String CONTROLLED = "controlled"; diff --git a/aom/src/main/java/com/nedap/archie/query/AOMPathQuery.java b/aom/src/main/java/com/nedap/archie/query/AOMPathQuery.java index 82857dc09..ea226f278 100644 --- a/aom/src/main/java/com/nedap/archie/query/AOMPathQuery.java +++ b/aom/src/main/java/com/nedap/archie/query/AOMPathQuery.java @@ -7,8 +7,9 @@ import com.nedap.archie.aom.CComplexObject; import com.nedap.archie.aom.CComplexObjectProxy; import com.nedap.archie.aom.CObject; -import com.nedap.archie.paths.PathSegment; -import com.nedap.archie.paths.PathUtil; +import com.nedap.archie.apath.APathQuery; +import com.nedap.archie.apath.PathSegment; +import com.nedap.archie.apath.PathUtil; import java.util.ArrayList; import java.util.Collections; diff --git a/aom/src/main/java/com/nedap/archie/rminfo/ModelInfoLookup.java b/aom/src/main/java/com/nedap/archie/rminfo/ModelInfoLookup.java index a0c0bc795..6f2a75723 100644 --- a/aom/src/main/java/com/nedap/archie/rminfo/ModelInfoLookup.java +++ b/aom/src/main/java/com/nedap/archie/rminfo/ModelInfoLookup.java @@ -4,8 +4,8 @@ import com.nedap.archie.aom.CObject; import com.nedap.archie.aom.CPrimitiveObject; import com.nedap.archie.base.MultiplicityInterval; -import com.nedap.archie.paths.PathSegment; -import com.nedap.archie.query.APathQuery; +import com.nedap.archie.apath.PathSegment; +import com.nedap.archie.apath.APathQuery; import java.lang.reflect.Field; import java.util.Collection; diff --git a/archie-utils/build.gradle b/archie-utils/build.gradle index 64817f40d..07b737416 100644 --- a/archie-utils/build.gradle +++ b/archie-utils/build.gradle @@ -3,5 +3,4 @@ description = "Utils for the Archie OpenEHR library" dependencies { api project(':base') api project(':aom') - api project(':openehr-rm') } \ No newline at end of file diff --git a/archie-utils/src/main/java/com/nedap/archie/json/OpenEHRTypeNaming.java b/archie-utils/src/main/java/com/nedap/archie/json/ArchieTypeNameResolver.java similarity index 90% rename from archie-utils/src/main/java/com/nedap/archie/json/OpenEHRTypeNaming.java rename to archie-utils/src/main/java/com/nedap/archie/json/ArchieTypeNameResolver.java index 2732f248b..308e93c1c 100644 --- a/archie-utils/src/main/java/com/nedap/archie/json/OpenEHRTypeNaming.java +++ b/archie-utils/src/main/java/com/nedap/archie/json/ArchieTypeNameResolver.java @@ -7,7 +7,6 @@ import com.fasterxml.jackson.databind.type.TypeFactory; import com.nedap.archie.base.OpenEHRBase; import com.nedap.archie.rminfo.ArchieAOMInfoLookup; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; import com.nedap.archie.rminfo.ModelInfoLookup; import com.nedap.archie.rminfo.RMTypeInfo; @@ -19,14 +18,15 @@ * The AOM class CComplexObject will get the type name "C_COMPLEX_OBJECT" * The RM class DvDateTime will get the type name "DV_DATE_TIME" */ -public class OpenEHRTypeNaming extends ClassNameIdResolver { +public class ArchieTypeNameResolver extends ClassNameIdResolver { - private ModelInfoLookup rmInfoLookup = ArchieRMInfoLookup.getInstance(); + private ModelInfoLookup rmInfoLookup; private ModelInfoLookup aomInfoLookup; - protected OpenEHRTypeNaming(boolean standardsCompliantExpressionClassNames) { + public ArchieTypeNameResolver(ModelInfoLookup rmInfoLookup, boolean standardsCompliantExpressionClassNames) { super(TypeFactory.defaultInstance().constructType(OpenEHRBase.class), TypeFactory.defaultInstance()); aomInfoLookup = ArchieAOMInfoLookup.getInstance(standardsCompliantExpressionClassNames); + this.rmInfoLookup = rmInfoLookup; } public JsonTypeInfo.Id getMechanism() { diff --git a/archie-utils/src/main/java/com/nedap/archie/json/ArchieTypeResolverBuilder.java b/archie-utils/src/main/java/com/nedap/archie/json/ArchieTypeResolverBuilder.java index 48c63de37..b62d771a1 100644 --- a/archie-utils/src/main/java/com/nedap/archie/json/ArchieTypeResolverBuilder.java +++ b/archie-utils/src/main/java/com/nedap/archie/json/ArchieTypeResolverBuilder.java @@ -6,8 +6,8 @@ import com.nedap.archie.aom.RulesSection; import com.nedap.archie.base.OpenEHRBase; import com.nedap.archie.rminfo.ArchieAOMInfoLookup; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; import com.nedap.archie.rminfo.RMTypeInfo; +import com.nedap.archie.rminfo.ReflectionModelInfoLookup; import java.util.ArrayList; import java.util.HashSet; @@ -20,15 +20,14 @@ */ public class ArchieTypeResolverBuilder extends ObjectMapper.DefaultTypeResolverBuilder { - private Set> classesToNotAddTypeProperty; - public ArchieTypeResolverBuilder(ArchieJacksonConfiguration configuration) { + public ArchieTypeResolverBuilder(ReflectionModelInfoLookup rmInfoLookup, ArchieJacksonConfiguration configuration) { super(ObjectMapper.DefaultTyping.NON_FINAL, BasicPolymorphicTypeValidator.builder() .allowIfBaseType(OpenEHRBase.class).build()); classesToNotAddTypeProperty = new HashSet<>(); if (!configuration.isAlwaysIncludeTypeProperty()) { - List allTypes = new ArrayList<>(ArchieRMInfoLookup.getInstance().getAllTypes()); + List allTypes = new ArrayList<>(rmInfoLookup.getAllTypes()); allTypes.addAll(ArchieAOMInfoLookup.getInstance().getAllTypes()); for (RMTypeInfo type : allTypes) { if (type.getDirectDescendantClasses().isEmpty()) { @@ -49,4 +48,5 @@ public ArchieTypeResolverBuilder(ArchieJacksonConfiguration configuration) { public boolean useForType(JavaType t) { return (OpenEHRBase.class.isAssignableFrom(t.getRawClass()) && !classesToNotAddTypeProperty.contains(t.getRawClass())); } + } diff --git a/archie-utils/src/main/java/com/nedap/archie/json/DontSerializePathMixin.java b/archie-utils/src/main/java/com/nedap/archie/json/DontSerializePathMixin.java index dc05ea039..c7adc9145 100644 --- a/archie-utils/src/main/java/com/nedap/archie/json/DontSerializePathMixin.java +++ b/archie-utils/src/main/java/com/nedap/archie/json/DontSerializePathMixin.java @@ -1,7 +1,7 @@ package com.nedap.archie.json; import com.fasterxml.jackson.annotation.JsonIgnore; -import com.nedap.archie.paths.PathSegment; +import com.nedap.archie.apath.PathSegment; import java.util.List; diff --git a/archie-utils/src/main/java/com/nedap/archie/xml/JAXBUtil.java b/archie-utils/src/main/java/com/nedap/archie/xml/JAXBUtil.java index 8b2c4c8ee..87254a137 100644 --- a/archie-utils/src/main/java/com/nedap/archie/xml/JAXBUtil.java +++ b/archie-utils/src/main/java/com/nedap/archie/xml/JAXBUtil.java @@ -1,19 +1,12 @@ package com.nedap.archie.xml; import com.google.common.collect.Lists; -import com.nedap.archie.aom.AuthoredResource; -import com.nedap.archie.aom.LanguageSection; -import com.nedap.archie.aom.ResourceDescription; -import com.nedap.archie.aom.ResourceDescriptionItem; -import com.nedap.archie.aom.TranslationDetails; +import com.nedap.archie.aom.*; import com.nedap.archie.aom.terminology.ArchetypeTerminology; import com.nedap.archie.rminfo.ArchieAOMInfoLookup; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; import com.nedap.archie.xml.types.XmlResourceDescriptionItem; - import javax.xml.bind.JAXBContext; import javax.xml.bind.JAXBException; -import java.util.ArrayList; import java.util.List; /** @@ -21,38 +14,6 @@ */ public class JAXBUtil { - private static JAXBContext archieJaxbContext; - - /** - * Get the JAXBContext to work with archie reference model objects. - * - * Can marshal and unmarshal reference model object trees. - * - * @return - */ - public static JAXBContext getArchieJAXBContext() { - if(archieJaxbContext == null) { - initArchieJaxbContext(); - } - return archieJaxbContext; - } - - private static synchronized void initArchieJaxbContext() { - if(archieJaxbContext == null) { - try { - List> classes = new ArrayList<>(); - classes.addAll(ArchieAOMInfoLookup.getInstance().getRmTypeNameToClassMap().values()); - classes.addAll(ArchieRMInfoLookup.getInstance().getRmTypeNameToClassMap().values()); - //extra classes from the adapters package that are not directly referenced.\ - classes.add(XmlResourceDescriptionItem.class); - removeClasses(classes); - archieJaxbContext = JAXBContext.newInstance(classes.toArray(new Class[0])); - } catch (JAXBException e) { - throw new RuntimeException(e);//programmer error, tests will fail - } - } - } - public static synchronized JAXBContext createAOMContext() { try { List> classes = Lists.newArrayList(ArchieAOMInfoLookup.getInstance().getRmTypeNameToClassMap().values()); @@ -65,22 +26,12 @@ public static synchronized JAXBContext createAOMContext() { } } - public static synchronized JAXBContext createRMContext() { - try { - List> classes = Lists.newArrayList(ArchieRMInfoLookup.getInstance().getRmTypeNameToClassMap().values()); - removeClasses(classes); - return JAXBContext.newInstance(classes.toArray(new Class[0])); - } catch (JAXBException e) { - throw new RuntimeException(e);//programmer error, tests will fail - } - } - /** * Removes all classes that are in the RM/AOM, but not used in the XML. In all of these cases, * custom mappers have been made to map these classes to XML-specific variants * @param classes */ - private static void removeClasses(List> classes) { + protected static void removeClasses(List> classes) { removeAllInstances(classes, ResourceDescription.class); removeAllInstances(classes, ResourceDescriptionItem.class); removeAllInstances(classes, LanguageSection.class); diff --git a/base/build.gradle b/base/build.gradle index db69568f7..39b9a290b 100644 --- a/base/build.gradle +++ b/base/build.gradle @@ -3,4 +3,5 @@ description = "Base classes for an OpenEHR implementation" dependencies { //only for the xpath grammar. perhaps include it here? api project(':grammars') + api project(':utils') } \ No newline at end of file diff --git a/utils/src/main/java/com/nedap/archie/query/APathQuery.java b/base/src/main/java/com/nedap/archie/apath/APathQuery.java similarity index 95% rename from utils/src/main/java/com/nedap/archie/query/APathQuery.java rename to base/src/main/java/com/nedap/archie/apath/APathQuery.java index 5332a0d12..e50815336 100644 --- a/utils/src/main/java/com/nedap/archie/query/APathQuery.java +++ b/base/src/main/java/com/nedap/archie/apath/APathQuery.java @@ -1,19 +1,15 @@ -package com.nedap.archie.query; +package com.nedap.archie.apath; import com.google.common.base.Joiner; -import com.google.common.collect.Lists; -import com.nedap.archie.paths.PathSegment; - import com.nedap.archie.adlparser.antlr.XPathLexer; import com.nedap.archie.adlparser.antlr.XPathParser; import com.nedap.archie.adlparser.antlr.XPathParser.*; import org.antlr.v4.runtime.ANTLRInputStream; import org.antlr.v4.runtime.CommonTokenStream; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.util.*; +import java.util.ArrayList; +import java.util.List; import java.util.regex.Pattern; /** diff --git a/utils/src/main/java/com/nedap/archie/paths/PathSegment.java b/base/src/main/java/com/nedap/archie/apath/PathSegment.java similarity index 98% rename from utils/src/main/java/com/nedap/archie/paths/PathSegment.java rename to base/src/main/java/com/nedap/archie/apath/PathSegment.java index 3472c358b..a344102b9 100644 --- a/utils/src/main/java/com/nedap/archie/paths/PathSegment.java +++ b/base/src/main/java/com/nedap/archie/apath/PathSegment.java @@ -1,4 +1,4 @@ -package com.nedap.archie.paths; +package com.nedap.archie.apath; import com.google.common.base.Joiner; diff --git a/utils/src/main/java/com/nedap/archie/paths/PathUtil.java b/base/src/main/java/com/nedap/archie/apath/PathUtil.java similarity index 97% rename from utils/src/main/java/com/nedap/archie/paths/PathUtil.java rename to base/src/main/java/com/nedap/archie/apath/PathUtil.java index bd9cdc4a8..fa58beef4 100644 --- a/utils/src/main/java/com/nedap/archie/paths/PathUtil.java +++ b/base/src/main/java/com/nedap/archie/apath/PathUtil.java @@ -1,4 +1,4 @@ -package com.nedap.archie.paths; +package com.nedap.archie.apath; import com.nedap.archie.definitions.AdlCodeDefinitions; diff --git a/base/src/main/java/com/nedap/archie/base/OpenEHRBase.java b/base/src/main/java/com/nedap/archie/base/OpenEHRBase.java index f1492e4fd..75c8b17a1 100644 --- a/base/src/main/java/com/nedap/archie/base/OpenEHRBase.java +++ b/base/src/main/java/com/nedap/archie/base/OpenEHRBase.java @@ -3,6 +3,9 @@ /** * Common base class for all archetypeconstraints and RMObject * Created by pieter.bos on 19/04/16. + * + * This allows a common treatment of all object structures, whether archetypes or RM objects + * as a node tree for generic purposes such as JSON generation. */ public class OpenEHRBase { } diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/RMObject.java b/base/src/main/java/com/nedap/archie/base/RMObject.java similarity index 88% rename from openehr-rm/src/main/java/com/nedap/archie/rm/RMObject.java rename to base/src/main/java/com/nedap/archie/base/RMObject.java index d14092f27..5fc543f9d 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/RMObject.java +++ b/base/src/main/java/com/nedap/archie/base/RMObject.java @@ -1,7 +1,6 @@ -package com.nedap.archie.rm; +package com.nedap.archie.base; import com.esotericsoftware.kryo.kryo5.Kryo; -import com.nedap.archie.base.OpenEHRBase; import com.nedap.archie.util.KryoUtil; import java.io.Serializable; diff --git a/base/src/main/java/com/nedap/archie/definitions/AdlCodeDefinitions.java b/base/src/main/java/com/nedap/archie/definitions/AdlCodeDefinitions.java index 3a2919fde..952ff863e 100644 --- a/base/src/main/java/com/nedap/archie/definitions/AdlCodeDefinitions.java +++ b/base/src/main/java/com/nedap/archie/definitions/AdlCodeDefinitions.java @@ -1,6 +1,8 @@ package com.nedap.archie.definitions; public class AdlCodeDefinitions { + public static final String LOCAL_TERMINOLOGY_ID = "local"; + /** * String leader of ‘identifier’ codes, i.e. codes used to identify archetype nodes. */ diff --git a/bmm/src/main/java/org/openehr/bmm/core/BmmModel.java b/bmm/src/main/java/org/openehr/bmm/core/BmmModel.java index 8c751ccb6..6edcc2b1a 100644 --- a/bmm/src/main/java/org/openehr/bmm/core/BmmModel.java +++ b/bmm/src/main/java/org/openehr/bmm/core/BmmModel.java @@ -1,7 +1,7 @@ package org.openehr.bmm.core; -import com.nedap.archie.paths.PathSegment; -import com.nedap.archie.query.APathQuery; +import com.nedap.archie.apath.PathSegment; +import com.nedap.archie.apath.APathQuery; import org.openehr.bmm.persistence.validation.BasicDefinitions; import org.openehr.bmm.persistence.validation.BmmDefinitions; diff --git a/openehr-rm/build.gradle b/openehr-rm/build.gradle index b9427b505..31d982bdc 100644 --- a/openehr-rm/build.gradle +++ b/openehr-rm/build.gradle @@ -5,5 +5,6 @@ dependencies { api project(':aom') //modelInfoLookup depends on CPrimitiveObject to convert from AOM objects to RM objects. So we need this dependency, at least for now api project(':path-queries') api project(':utils') + implementation project(path: ':archie-utils') testImplementation project(':archie-utils') } \ No newline at end of file diff --git a/openehr-rm/src/main/java/com/nedap/archie/adlparser/modelconstraints/RMConstraintImposer.java b/openehr-rm/src/main/java/com/nedap/archie/adlparser/modelconstraints/RMConstraintImposer.java index 1ef7de80b..a07d80c58 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/adlparser/modelconstraints/RMConstraintImposer.java +++ b/openehr-rm/src/main/java/com/nedap/archie/adlparser/modelconstraints/RMConstraintImposer.java @@ -1,6 +1,6 @@ package com.nedap.archie.adlparser.modelconstraints; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; /** * Constraints imposer for the Archie reference model implementation. @@ -10,7 +10,7 @@ public class RMConstraintImposer extends ReflectionConstraintImposer { public RMConstraintImposer() { - super(ArchieRMInfoLookup.getInstance()); + super(OpenEhrRmInfoLookup.getInstance()); } } diff --git a/openehr-rm/src/main/java/com/nedap/archie/definitions/OpenEhrDefinitions.java b/openehr-rm/src/main/java/com/nedap/archie/definitions/OpenEhrDefinitions.java new file mode 100644 index 000000000..4039baf43 --- /dev/null +++ b/openehr-rm/src/main/java/com/nedap/archie/definitions/OpenEhrDefinitions.java @@ -0,0 +1,32 @@ +package com.nedap.archie.definitions; + +/* + * #%L + * OpenEHR - Java Model Stack + * %% + * Copyright (C) 2016 - 2017 Cognitive Medical Systems + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + * Author: Claude Nanjo + */ + +/** + * Inheritance class to provide access to constants defined in other packages. + * + * Created by cnanjo on 6/2/16. + */ +public class OpenEhrDefinitions extends BasicDefinitions { + public static final String EHR_SCHEME = "ehr"; + +} \ No newline at end of file diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Archetyped.java b/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Archetyped.java index 5c9ed3d6c..602f20aa4 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Archetyped.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Archetyped.java @@ -1,6 +1,6 @@ package com.nedap.archie.rm.archetyped; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import com.nedap.archie.rm.support.identification.ArchetypeID; import com.nedap.archie.rminfo.Invariant; import com.nedap.archie.rmutil.InvariantUtil; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/FeederAudit.java b/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/FeederAudit.java index 5295fcd32..9ffebcea0 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/FeederAudit.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/FeederAudit.java @@ -1,6 +1,6 @@ package com.nedap.archie.rm.archetyped; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import com.nedap.archie.rm.datavalues.DvIdentifier; import com.nedap.archie.rm.datavalues.encapsulated.DvEncapsulated; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/FeederAuditDetails.java b/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/FeederAuditDetails.java index 54d7e4061..33a808e9c 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/FeederAuditDetails.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/FeederAuditDetails.java @@ -1,6 +1,6 @@ package com.nedap.archie.rm.archetyped; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import com.nedap.archie.rm.datastructures.ItemStructure; import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; import com.nedap.archie.rm.generic.PartyIdentified; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Link.java b/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Link.java index 3f7e9bf78..31ac97485 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Link.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Link.java @@ -1,6 +1,6 @@ package com.nedap.archie.rm.archetyped; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import com.nedap.archie.rm.datavalues.DvEHRURI; import com.nedap.archie.rm.datavalues.DvText; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Locatable.java b/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Locatable.java index a06c3401e..b719f2c09 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Locatable.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Locatable.java @@ -1,7 +1,7 @@ package com.nedap.archie.rm.archetyped; import com.fasterxml.jackson.annotation.JsonIgnore; -import com.nedap.archie.paths.PathSegment; +import com.nedap.archie.apath.PathSegment; import com.nedap.archie.rm.datavalues.DvText; import com.nedap.archie.rm.support.identification.UIDBasedId; import com.nedap.archie.rminfo.Invariant; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Pathable.java b/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Pathable.java index 9e623c048..d5b3b061a 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Pathable.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Pathable.java @@ -1,12 +1,12 @@ package com.nedap.archie.rm.archetyped; import com.fasterxml.jackson.annotation.JsonIgnore; -import com.nedap.archie.paths.PathSegment; -import com.nedap.archie.paths.PathUtil; +import com.nedap.archie.apath.PathSegment; +import com.nedap.archie.apath.PathUtil; import com.nedap.archie.query.RMObjectWithPath; import com.nedap.archie.query.RMPathQuery; -import com.nedap.archie.rm.RMObject; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.base.RMObject; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.PropertyType; import com.nedap.archie.rminfo.RMProperty; import com.nedap.archie.rminfo.RMPropertyIgnore; @@ -47,15 +47,15 @@ public Pathable(@Nullable Pathable parent, @Nullable String parentAttributeName) } public Object itemAtPath(String s) { - return new RMPathQuery(s).find(ArchieRMInfoLookup.getInstance(), this); + return new RMPathQuery(s).find(OpenEhrRmInfoLookup.getInstance(), this); } public Object itemAtPathMatchSpecialisedNodes(String s) { - return new RMPathQuery(s, true).find(ArchieRMInfoLookup.getInstance(), this); + return new RMPathQuery(s, true).find(OpenEhrRmInfoLookup.getInstance(), this); } public List itemsAtPath(String s) { - List objects = new RMPathQuery(s).findList(ArchieRMInfoLookup.getInstance(), this); + List objects = new RMPathQuery(s).findList(OpenEhrRmInfoLookup.getInstance(), this); List result = new ArrayList<>(); for (RMObjectWithPath object : objects) { result.add(object.getObject()); @@ -64,7 +64,7 @@ public List itemsAtPath(String s) { } public List itemsAtPathMatchSpecialisedNodes(String s) { - List objects = new RMPathQuery(s, true).findList(ArchieRMInfoLookup.getInstance(), this); + List objects = new RMPathQuery(s, true).findList(OpenEhrRmInfoLookup.getInstance(), this); List result = new ArrayList<>(); for (RMObjectWithPath object : objects) { result.add(object.getObject()); diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/Contribution.java b/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/Contribution.java index fdf7256ad..28b614d98 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/Contribution.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/Contribution.java @@ -1,6 +1,6 @@ package com.nedap.archie.rm.changecontrol; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import com.nedap.archie.rm.generic.AuditDetails; import com.nedap.archie.rm.support.identification.HierObjectId; import com.nedap.archie.rm.support.identification.ObjectId; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/Version.java b/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/Version.java index 82de0b8f4..c2920d6ec 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/Version.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/Version.java @@ -1,6 +1,6 @@ package com.nedap.archie.rm.changecontrol; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import com.nedap.archie.rm.datavalues.DvCodedText; import com.nedap.archie.rm.generic.AuditDetails; import com.nedap.archie.rm.support.identification.ObjectId; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/VersionedObject.java b/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/VersionedObject.java index 8ad17baf6..e2e9ce70a 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/VersionedObject.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/VersionedObject.java @@ -1,7 +1,7 @@ package com.nedap.archie.rm.changecontrol; import com.fasterxml.jackson.annotation.JsonAlias; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; import com.nedap.archie.rm.support.identification.HierObjectId; import com.nedap.archie.rm.support.identification.ObjectId; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datatypes/CodePhrase.java b/openehr-rm/src/main/java/com/nedap/archie/rm/datatypes/CodePhrase.java index 52ccb676b..a25a735a1 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datatypes/CodePhrase.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/datatypes/CodePhrase.java @@ -1,6 +1,6 @@ package com.nedap.archie.rm.datatypes; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import com.nedap.archie.rm.support.identification.TerminologyId; import com.nedap.archie.rminfo.Invariant; import com.nedap.archie.rmutil.InvariantUtil; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DataValue.java b/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DataValue.java index b9efbad31..9e3c17a56 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DataValue.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DataValue.java @@ -1,6 +1,6 @@ package com.nedap.archie.rm.datavalues; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/TermMapping.java b/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/TermMapping.java index 02adb4e07..687f7fc56 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/TermMapping.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/TermMapping.java @@ -1,7 +1,7 @@ package com.nedap.archie.rm.datavalues; import com.google.common.collect.Sets; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import com.nedap.archie.rm.datatypes.CodePhrase; import com.nedap.archie.rminfo.Invariant; import com.nedap.archie.rmutil.InvariantUtil; @@ -12,7 +12,6 @@ import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlType; import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; -import java.util.HashSet; import java.util.Objects; import java.util.Set; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/ReferenceRange.java b/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/ReferenceRange.java index 8bd953043..026372384 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/ReferenceRange.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/ReferenceRange.java @@ -1,6 +1,6 @@ package com.nedap.archie.rm.datavalues.quantity; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import com.nedap.archie.rm.datavalues.DvText; import com.nedap.archie.rminfo.Invariant; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/ehr/Ehr.java b/openehr-rm/src/main/java/com/nedap/archie/rm/ehr/Ehr.java index 3889fa98a..6d0d8aad3 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/ehr/Ehr.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/ehr/Ehr.java @@ -1,6 +1,6 @@ package com.nedap.archie.rm.ehr; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; import com.nedap.archie.rm.support.identification.HierObjectId; import com.nedap.archie.rm.support.identification.ObjectId; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/AuditDetails.java b/openehr-rm/src/main/java/com/nedap/archie/rm/generic/AuditDetails.java index f0dd68309..96a93761f 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/AuditDetails.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/generic/AuditDetails.java @@ -1,7 +1,7 @@ package com.nedap.archie.rm.generic; import com.fasterxml.jackson.annotation.JsonAlias; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import com.nedap.archie.rm.datavalues.DvCodedText; import com.nedap.archie.rm.datavalues.DvText; import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/Participation.java b/openehr-rm/src/main/java/com/nedap/archie/rm/generic/Participation.java index 71105ef87..435760956 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/Participation.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/generic/Participation.java @@ -1,6 +1,6 @@ package com.nedap.archie.rm.generic; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import com.nedap.archie.rm.datavalues.DvCodedText; import com.nedap.archie.rm.datavalues.DvText; import com.nedap.archie.rm.datavalues.quantity.DvInterval; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/PartyProxy.java b/openehr-rm/src/main/java/com/nedap/archie/rm/generic/PartyProxy.java index 01f0e756a..5717ddd7d 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/PartyProxy.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/generic/PartyProxy.java @@ -1,6 +1,6 @@ package com.nedap.archie.rm.generic; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import com.nedap.archie.rm.support.identification.PartyRef; import javax.annotation.Nullable; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/RevisionHistory.java b/openehr-rm/src/main/java/com/nedap/archie/rm/generic/RevisionHistory.java index 11c3ab2e6..74753f896 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/RevisionHistory.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/generic/RevisionHistory.java @@ -1,6 +1,6 @@ package com.nedap.archie.rm.generic; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/RevisionHistoryItem.java b/openehr-rm/src/main/java/com/nedap/archie/rm/generic/RevisionHistoryItem.java index 9750ec402..f0801e90b 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/RevisionHistoryItem.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/generic/RevisionHistoryItem.java @@ -1,6 +1,6 @@ package com.nedap.archie.rm.generic; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import com.nedap.archie.rm.support.identification.ObjectVersionId; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/security/AccessControlSettings.java b/openehr-rm/src/main/java/com/nedap/archie/rm/security/AccessControlSettings.java index d8f799024..4f03a4df2 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/security/AccessControlSettings.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/security/AccessControlSettings.java @@ -1,6 +1,6 @@ package com.nedap.archie.rm.security; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import javax.xml.bind.annotation.XmlType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/ObjectId.java b/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/ObjectId.java index e73f310bb..1f61e1992 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/ObjectId.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/ObjectId.java @@ -1,6 +1,6 @@ package com.nedap.archie.rm.support.identification; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/ObjectRef.java b/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/ObjectRef.java index e68969791..637996391 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/ObjectRef.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/ObjectRef.java @@ -1,6 +1,6 @@ package com.nedap.archie.rm.support.identification; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import com.nedap.archie.rminfo.Invariant; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/UID.java b/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/UID.java index 7df1a62ed..5e4f0fa69 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/UID.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/UID.java @@ -1,7 +1,7 @@ package com.nedap.archie.rm.support.identification; import com.google.common.base.Strings; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import com.nedap.archie.rminfo.Invariant; import java.util.Objects; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/VersionTreeId.java b/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/VersionTreeId.java index d7f502359..98d0f6cd6 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/VersionTreeId.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/VersionTreeId.java @@ -2,7 +2,7 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import com.google.common.base.Strings; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import com.nedap.archie.rminfo.Invariant; import com.nedap.archie.rminfo.RMProperty; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rminfo/ArchieRMInfoLookup.java b/openehr-rm/src/main/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookup.java similarity index 97% rename from openehr-rm/src/main/java/com/nedap/archie/rminfo/ArchieRMInfoLookup.java rename to openehr-rm/src/main/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookup.java index 36554bca0..99be0bb12 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rminfo/ArchieRMInfoLookup.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookup.java @@ -1,6 +1,5 @@ package com.nedap.archie.rminfo; -import com.fasterxml.jackson.databind.ObjectMapper; import com.nedap.archie.aom.*; import com.nedap.archie.aom.primitives.CBoolean; import com.nedap.archie.aom.primitives.CDate; @@ -13,7 +12,7 @@ import com.nedap.archie.aom.primitives.CTime; import com.nedap.archie.base.Interval; import com.nedap.archie.base.terminology.TerminologyCode; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import com.nedap.archie.rm.archetyped.Archetyped; import com.nedap.archie.rm.archetyped.FeederAudit; import com.nedap.archie.rm.archetyped.FeederAuditDetails; @@ -77,13 +76,13 @@ /** * Created by pieter.bos on 02/02/16. */ -public class ArchieRMInfoLookup extends ReflectionModelInfoLookup { +public class OpenEhrRmInfoLookup extends ReflectionModelInfoLookup { public static final String RM_VERSION = "1.1.0"; - private static ArchieRMInfoLookup instance; + private static OpenEhrRmInfoLookup instance; - private ArchieRMInfoLookup() { + private OpenEhrRmInfoLookup() { super(new ArchieModelNamingStrategy(), RMObject.class); } @@ -230,9 +229,9 @@ protected boolean isNullable(Class clazz, Method getMethod, Field field) { return super.isNullable(clazz, getMethod, field); } - public static ArchieRMInfoLookup getInstance() { + public static OpenEhrRmInfoLookup getInstance() { if(instance == null) { - instance = new ArchieRMInfoLookup(); + instance = new OpenEhrRmInfoLookup(); } return instance; } @@ -352,7 +351,7 @@ public Object clone(Object rmObject) { */ @Override public Map pathHasBeenUpdated(Object rmObject, Archetype archetype, String pathOfParent, Object parent) { - return UpdatedValueHandler.pathHasBeenUpdated(rmObject, archetype, pathOfParent, parent); + return OpenEhrRmUpdatedValueHandler.pathHasBeenUpdated(rmObject, archetype, pathOfParent, parent); } @Override diff --git a/openehr-rm/src/main/java/com/nedap/archie/rminfo/UpdatedValueHandler.java b/openehr-rm/src/main/java/com/nedap/archie/rminfo/OpenEhrRmUpdatedValueHandler.java similarity index 95% rename from openehr-rm/src/main/java/com/nedap/archie/rminfo/UpdatedValueHandler.java rename to openehr-rm/src/main/java/com/nedap/archie/rminfo/OpenEhrRmUpdatedValueHandler.java index 1242d9a94..2e63926e5 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rminfo/UpdatedValueHandler.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rminfo/OpenEhrRmUpdatedValueHandler.java @@ -8,7 +8,7 @@ import com.nedap.archie.aom.terminology.ArchetypeTerminology; import com.nedap.archie.aom.utils.AOMUtils; import com.nedap.archie.base.Interval; -import com.nedap.archie.query.APathQuery; +import com.nedap.archie.apath.APathQuery; import com.nedap.archie.query.RMObjectWithPath; import com.nedap.archie.query.RMPathQuery; import com.nedap.archie.rm.archetyped.Archetyped; @@ -27,9 +27,9 @@ import java.util.List; import java.util.Map; -public class UpdatedValueHandler { +public class OpenEhrRmUpdatedValueHandler { - private static final Logger logger = LoggerFactory.getLogger(UpdatedValueHandler.class); + private static final Logger logger = LoggerFactory.getLogger(OpenEhrRmUpdatedValueHandler.class); public static Map pathHasBeenUpdated(Object rmObject, Archetype archetype, String pathOfParent, Object parent) { if(parent instanceof CodePhrase) { @@ -59,7 +59,7 @@ private static Map fixDvOrdinalOrDvScale(Object rmObject, Archet Map result = new HashMap<>(); RMPathQuery rmPathQuery = new RMPathQuery(pathOfParent.replace("/symbol/defining_code", "")); - DvOrdered ordered = rmPathQuery.find(ArchieRMInfoLookup.getInstance(), rmObject); + DvOrdered ordered = rmPathQuery.find(OpenEhrRmInfoLookup.getInstance(), rmObject); Number value; CAttribute symbolAttribute = archetype.itemAtPath(pathOfParent.replace("/symbol/defining_code", "/symbol"));//TODO: remove all numeric indices from path! if (symbolAttribute != null) { @@ -103,7 +103,7 @@ private static Map fixDvOrdinalOrDvScale(Object rmObject, Archet private static Map fixDvCodedText(Object rmObject, Archetype archetype, String pathOfParent) throws XPathExpressionException { String path = pathOfParent.replace("/defining_code", ""); RMPathQuery rmPathQuery = new RMPathQuery(path); - DvCodedText codedText = rmPathQuery.find(ArchieRMInfoLookup.getInstance(), rmObject); + DvCodedText codedText = rmPathQuery.find(OpenEhrRmInfoLookup.getInstance(), rmObject); Archetyped details = findLastArchetypeDetails(rmObject, pathOfParent); ArchetypeTerm termDefinition; if(details != null && archetype instanceof OperationalTemplate) { @@ -149,7 +149,7 @@ public static Archetyped findLastArchetypeDetails(Object rmObject, String path) for(int i = query.getPathSegments().size();i > 0; i--) { String subpath = Joiner.on("").join(query.getPathSegments().subList(0, i)); - List list = new RMPathQuery(subpath).findList(ArchieRMInfoLookup.getInstance(), rmObject); + List list = new RMPathQuery(subpath).findList(OpenEhrRmInfoLookup.getInstance(), rmObject); for(RMObjectWithPath objectWithPath:list) { Object object = objectWithPath.getObject(); if(object instanceof Locatable) { diff --git a/openehr-rm/src/main/java/com/nedap/archie/rmutil/PathableUtil.java b/openehr-rm/src/main/java/com/nedap/archie/rmutil/PathableUtil.java index 79e68914e..c5c02a02e 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rmutil/PathableUtil.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rmutil/PathableUtil.java @@ -1,10 +1,10 @@ package com.nedap.archie.rmutil; -import com.nedap.archie.paths.PathSegment; -import com.nedap.archie.paths.PathUtil; +import com.nedap.archie.apath.PathSegment; +import com.nedap.archie.apath.PathUtil; import com.nedap.archie.query.RMObjectAttributes; import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ModelInfoLookup; import java.util.ArrayList; @@ -36,7 +36,7 @@ private static PathSegment getUniquePathSegment(Pathable pathable) { Pathable parent = pathable.getParent(); String parentAttributeName = unindexedPathSegment.getNodeName(); - ModelInfoLookup modelInfoLookup = ArchieRMInfoLookup.getInstance(); + ModelInfoLookup modelInfoLookup = OpenEhrRmInfoLookup.getInstance(); Object attributeValue = RMObjectAttributes.getAttributeValueFromRMObject(parent, parentAttributeName, modelInfoLookup); Integer index = null; diff --git a/archie-utils/src/main/java/com/nedap/archie/json/JacksonUtil.java b/openehr-rm/src/main/java/com/nedap/archie/serialisation/json/OpenEhrRmJacksonUtil.java similarity index 95% rename from archie-utils/src/main/java/com/nedap/archie/json/JacksonUtil.java rename to openehr-rm/src/main/java/com/nedap/archie/serialisation/json/OpenEhrRmJacksonUtil.java index 4ab54fb90..beb13c150 100644 --- a/archie-utils/src/main/java/com/nedap/archie/json/JacksonUtil.java +++ b/openehr-rm/src/main/java/com/nedap/archie/serialisation/json/OpenEhrRmJacksonUtil.java @@ -1,4 +1,4 @@ -package com.nedap.archie.json; +package com.nedap.archie.serialisation.json; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonTypeInfo; @@ -21,8 +21,10 @@ import com.nedap.archie.aom.CPrimitiveObject; import com.nedap.archie.aom.RulesSection; import com.nedap.archie.aom.primitives.CTemporal; +import com.nedap.archie.json.*; import com.nedap.archie.rm.archetyped.Pathable; import com.nedap.archie.rm.support.identification.ArchetypeID; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rules.Operator; import com.nedap.archie.rules.OperatorKind; @@ -37,7 +39,7 @@ * * Created by pieter.bos on 30/06/16. */ -public class JacksonUtil { +public class OpenEhrRmJacksonUtil { //threadsafe, can be cached private static final ConcurrentHashMap objectMapperByConfiguration = new ConcurrentHashMap<>(); @@ -134,8 +136,8 @@ public static void configureObjectMapper(ObjectMapper objectMapper, ArchieJackso objectMapper.enable(MapperFeature.USE_BASE_TYPE_AS_DEFAULT_IMPL); - TypeResolverBuilder typeResolverBuilder = new ArchieTypeResolverBuilder(configuration) - .init(JsonTypeInfo.Id.NAME, new OpenEHRTypeNaming(configuration.isStandardsCompliantExpressions())) + TypeResolverBuilder typeResolverBuilder = new ArchieTypeResolverBuilder(OpenEhrRmInfoLookup.getInstance(), configuration) + .init(JsonTypeInfo.Id.NAME, new ArchieTypeNameResolver(OpenEhrRmInfoLookup.getInstance(), configuration.isStandardsCompliantExpressions())) .typeProperty(configuration.getTypePropertyName()) .typeIdVisibility(true) .inclusion(JsonTypeInfo.As.PROPERTY); diff --git a/archie-utils/src/main/java/com/nedap/archie/json/ArchieRMObjectMapperProvider.java b/openehr-rm/src/main/java/com/nedap/archie/serialisation/json/OpenEhrRmObjectMapperProvider.java similarity index 86% rename from archie-utils/src/main/java/com/nedap/archie/json/ArchieRMObjectMapperProvider.java rename to openehr-rm/src/main/java/com/nedap/archie/serialisation/json/OpenEhrRmObjectMapperProvider.java index add643dfb..e91bdd46f 100644 --- a/archie-utils/src/main/java/com/nedap/archie/json/ArchieRMObjectMapperProvider.java +++ b/openehr-rm/src/main/java/com/nedap/archie/serialisation/json/OpenEhrRmObjectMapperProvider.java @@ -1,4 +1,4 @@ -package com.nedap.archie.json; +package com.nedap.archie.serialisation.json; import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.databind.DeserializationContext; @@ -8,25 +8,25 @@ import com.fasterxml.jackson.databind.PropertyNamingStrategy; import com.fasterxml.jackson.databind.deser.DeserializationProblemHandler; import com.fasterxml.jackson.databind.module.SimpleModule; -import com.nedap.archie.odin.CodePhraseSerializer; -import com.nedap.archie.odin.OdinParsingClusterMixin; -import com.nedap.archie.odin.OdinParsingItemTreeMixin; +import com.nedap.archie.json.ArchieJacksonConfiguration; +import com.nedap.archie.serialisation.odin.CodePhraseSerializer; +import com.nedap.archie.serialisation.odin.OdinParsingClusterMixin; +import com.nedap.archie.serialisation.odin.OdinParsingItemTreeMixin; import com.nedap.archie.rm.datastructures.Cluster; import com.nedap.archie.rm.datastructures.ItemTree; import com.nedap.archie.rm.datatypes.CodePhrase; import com.nedap.archie.rminfo.RMObjectMapperProvider; import com.nedap.archie.serializer.odin.AdlOdinToJsonConverter; -import org.openehr.bmm.v2.persistence.jackson.BmmJacksonUtil; import org.openehr.odin.jackson.ODINMapper; import java.io.IOException; -public class ArchieRMObjectMapperProvider implements RMObjectMapperProvider { +public class OpenEhrRmObjectMapperProvider implements RMObjectMapperProvider { @Override public ObjectMapper getInputOdinObjectMapper() { ObjectMapper odinMapper = new ObjectMapper(); - JacksonUtil.configureObjectMapper(odinMapper); + OpenEhrRmJacksonUtil.configureObjectMapper(odinMapper); odinMapper.setPropertyNamingStrategy(PropertyNamingStrategy.SNAKE_CASE); //keywords = <"value"> is indistinguishable from keywords = <"value1", "value2"> odinMapper.enable(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY); @@ -63,7 +63,7 @@ public ObjectMapper getOutputOdinObjectMapper() { ArchieJacksonConfiguration config = ArchieJacksonConfiguration.createStandardsCompliant(); config.setAlwaysIncludeTypeProperty(false); config.setSerializeEmptyCollections(false); - JacksonUtil.configureObjectMapper(odinMapper, config); + OpenEhrRmJacksonUtil.configureObjectMapper(odinMapper, config); SimpleModule odinRmSupport = new SimpleModule(); //TODO: check if this covers all native odin types, together with the types already included in the default OdinMapper @@ -78,6 +78,6 @@ public ObjectMapper getJsonObjectMapper() { ArchieJacksonConfiguration config = ArchieJacksonConfiguration.createStandardsCompliant(); config.setAlwaysIncludeTypeProperty(false); config.setSerializeEmptyCollections(false); - return JacksonUtil.getObjectMapper(config); + return OpenEhrRmJacksonUtil.getObjectMapper(config); } } diff --git a/archie-utils/src/main/java/com/nedap/archie/odin/CodePhraseSerializer.java b/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/CodePhraseSerializer.java similarity index 94% rename from archie-utils/src/main/java/com/nedap/archie/odin/CodePhraseSerializer.java rename to openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/CodePhraseSerializer.java index 8687b2b61..2c69e2dfe 100644 --- a/archie-utils/src/main/java/com/nedap/archie/odin/CodePhraseSerializer.java +++ b/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/CodePhraseSerializer.java @@ -1,4 +1,4 @@ -package com.nedap.archie.odin; +package com.nedap.archie.serialisation.odin; import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.databind.JsonSerializer; diff --git a/archie-utils/src/main/java/com/nedap/archie/odin/ItemMapToListConverter.java b/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/ItemMapToListConverter.java similarity index 89% rename from archie-utils/src/main/java/com/nedap/archie/odin/ItemMapToListConverter.java rename to openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/ItemMapToListConverter.java index c78006b94..72d6c8481 100644 --- a/archie-utils/src/main/java/com/nedap/archie/odin/ItemMapToListConverter.java +++ b/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/ItemMapToListConverter.java @@ -1,10 +1,11 @@ -package com.nedap.archie.odin; +package com.nedap.archie.serialisation.odin; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.type.TypeFactory; import com.fasterxml.jackson.databind.util.Converter; +import com.nedap.archie.odin.BaseMapToListConverter; import com.nedap.archie.rm.datastructures.Item; import java.util.ArrayList; diff --git a/archie-utils/src/main/java/com/nedap/archie/odin/OdinParsingClusterMixin.java b/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/OdinParsingClusterMixin.java similarity index 86% rename from archie-utils/src/main/java/com/nedap/archie/odin/OdinParsingClusterMixin.java rename to openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/OdinParsingClusterMixin.java index b5370630b..7bb0e24f7 100644 --- a/archie-utils/src/main/java/com/nedap/archie/odin/OdinParsingClusterMixin.java +++ b/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/OdinParsingClusterMixin.java @@ -1,4 +1,4 @@ -package com.nedap.archie.odin; +package com.nedap.archie.serialisation.odin; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.nedap.archie.rm.datastructures.Item; diff --git a/archie-utils/src/main/java/com/nedap/archie/odin/OdinParsingDvTextMixin.java b/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/OdinParsingDvTextMixin.java similarity index 87% rename from archie-utils/src/main/java/com/nedap/archie/odin/OdinParsingDvTextMixin.java rename to openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/OdinParsingDvTextMixin.java index 58b6d738a..2f9a521f8 100644 --- a/archie-utils/src/main/java/com/nedap/archie/odin/OdinParsingDvTextMixin.java +++ b/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/OdinParsingDvTextMixin.java @@ -1,4 +1,4 @@ -package com.nedap.archie.odin; +package com.nedap.archie.serialisation.odin; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.nedap.archie.rm.datavalues.TermMapping; diff --git a/archie-utils/src/main/java/com/nedap/archie/odin/OdinParsingItemTreeMixin.java b/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/OdinParsingItemTreeMixin.java similarity index 86% rename from archie-utils/src/main/java/com/nedap/archie/odin/OdinParsingItemTreeMixin.java rename to openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/OdinParsingItemTreeMixin.java index 46b28bbbd..4d1b54ff0 100644 --- a/archie-utils/src/main/java/com/nedap/archie/odin/OdinParsingItemTreeMixin.java +++ b/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/OdinParsingItemTreeMixin.java @@ -1,4 +1,4 @@ -package com.nedap.archie.odin; +package com.nedap.archie.serialisation.odin; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.nedap.archie.rm.datastructures.Item; diff --git a/archie-utils/src/main/java/com/nedap/archie/odin/TermMappingMapToListConverter.java b/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/TermMappingMapToListConverter.java similarity index 88% rename from archie-utils/src/main/java/com/nedap/archie/odin/TermMappingMapToListConverter.java rename to openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/TermMappingMapToListConverter.java index 949bab9ae..fd5f4c28f 100644 --- a/archie-utils/src/main/java/com/nedap/archie/odin/TermMappingMapToListConverter.java +++ b/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/TermMappingMapToListConverter.java @@ -1,9 +1,10 @@ -package com.nedap.archie.odin; +package com.nedap.archie.serialisation.odin; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.type.TypeFactory; import com.fasterxml.jackson.databind.util.Converter; +import com.nedap.archie.odin.BaseMapToListConverter; import com.nedap.archie.rm.datavalues.TermMapping; import java.util.List; diff --git a/openehr-rm/src/main/java/com/nedap/archie/serialisation/xml/OpenEhrRmJAXBUtil.java b/openehr-rm/src/main/java/com/nedap/archie/serialisation/xml/OpenEhrRmJAXBUtil.java new file mode 100644 index 000000000..093032267 --- /dev/null +++ b/openehr-rm/src/main/java/com/nedap/archie/serialisation/xml/OpenEhrRmJAXBUtil.java @@ -0,0 +1,60 @@ +package com.nedap.archie.serialisation.xml; + +import com.google.common.collect.Lists; +import com.nedap.archie.rminfo.ArchieAOMInfoLookup; +import com.nedap.archie.xml.JAXBUtil; +import com.nedap.archie.xml.types.XmlResourceDescriptionItem; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import javax.xml.bind.JAXBContext; +import javax.xml.bind.JAXBException; +import java.util.ArrayList; +import java.util.List; + +/** + * Created by pieter.bos on 06/05/16. + */ +public class OpenEhrRmJAXBUtil extends JAXBUtil { + + private static JAXBContext jaxbContext; + + /** + * Get the JAXBContext to work with archie reference model objects. + * + * Can marshal and unmarshal reference model object trees. + * + * @return + */ + public static JAXBContext getArchieJAXBContext() { + if(jaxbContext == null) { + initJaxbContext(); + } + return jaxbContext; + } + + private static synchronized void initJaxbContext() { + if(jaxbContext == null) { + try { + List> classes = new ArrayList<>(); + classes.addAll(ArchieAOMInfoLookup.getInstance().getRmTypeNameToClassMap().values()); + classes.addAll(OpenEhrRmInfoLookup.getInstance().getRmTypeNameToClassMap().values()); + //extra classes from the adapters package that are not directly referenced.\ + classes.add(XmlResourceDescriptionItem.class); + removeClasses(classes); + jaxbContext = JAXBContext.newInstance(classes.toArray(new Class[0])); + } catch (JAXBException e) { + throw new RuntimeException(e);//programmer error, tests will fail + } + } + } + + public static synchronized JAXBContext createRMContext() { + try { + List> classes = Lists.newArrayList(OpenEhrRmInfoLookup.getInstance().getRmTypeNameToClassMap().values()); + removeClasses(classes); + return JAXBContext.newInstance(classes.toArray(new Class[0])); + } catch (JAXBException e) { + throw new RuntimeException(e);//programmer error, tests will fail + } + } + +} diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/changecontrol/ContributionTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/changecontrol/ContributionTest.java index 447a8d665..475077b1c 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/changecontrol/ContributionTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/changecontrol/ContributionTest.java @@ -1,7 +1,7 @@ package com.nedap.archie.rm.changecontrol; import com.fasterxml.jackson.databind.ObjectMapper; -import com.nedap.archie.json.JacksonUtil; +import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; import com.nedap.archie.json.ArchieJacksonConfiguration; import com.nedap.archie.rm.support.identification.HierObjectId; import com.nedap.archie.rm.support.identification.ObjectId; @@ -26,7 +26,7 @@ public void testJsonSerialization() throws IOException { expected.setVersions(versions); StringWriter sw = new StringWriter(); - ObjectMapper objectMapper = JacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); + ObjectMapper objectMapper = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); objectMapper.writeValue(sw, expected); Contribution actual = objectMapper.readValue(sw.toString(), Contribution.class); diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/composition/CompositionTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/composition/CompositionTest.java index 355475bce..7e0a8398b 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/composition/CompositionTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/composition/CompositionTest.java @@ -1,9 +1,9 @@ package com.nedap.archie.rm.composition; import com.fasterxml.jackson.databind.ObjectMapper; -import com.nedap.archie.json.JacksonUtil; +import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; import com.nedap.archie.json.ArchieJacksonConfiguration; -import com.nedap.archie.xml.JAXBUtil; +import com.nedap.archie.serialisation.xml.OpenEhrRmJAXBUtil; import org.junit.Test; import javax.xml.bind.JAXBException; @@ -17,7 +17,7 @@ public class CompositionTest { @Test public void testEqual() throws JAXBException { - Unmarshaller unmarshaller = JAXBUtil.getArchieJAXBContext().createUnmarshaller(); + Unmarshaller unmarshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createUnmarshaller(); Composition composition1 = (Composition) unmarshaller.unmarshal(getClass().getResourceAsStream("test_all_types.fixed.v1.xml")); Composition composition2 = (Composition) unmarshaller.unmarshal(getClass().getResourceAsStream("test_all_types.fixed.v1.xml")); assertEquals(composition1, composition2); @@ -51,7 +51,7 @@ public void testJsonJavascriptConfig() throws IOException { } private Composition processComposition(Composition original, ArchieJacksonConfiguration configuration) throws IOException { - ObjectMapper objectMapper = JacksonUtil.getObjectMapper(configuration); + ObjectMapper objectMapper = OpenEhrRmJacksonUtil.getObjectMapper(configuration); StringWriter json = new StringWriter(); objectMapper.writeValue(json, original); @@ -59,7 +59,7 @@ private Composition processComposition(Composition original, ArchieJacksonConfig } private Composition parseJson(String resourceName) throws IOException { - ObjectMapper objectMapper = JacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); + ObjectMapper objectMapper = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); return objectMapper.readValue(getClass().getResourceAsStream(resourceName), Composition.class); } } \ No newline at end of file diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/composition/ObservationTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/composition/ObservationTest.java index 1760247f6..eeb42e152 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/composition/ObservationTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/composition/ObservationTest.java @@ -1,7 +1,7 @@ package com.nedap.archie.rm.composition; import com.fasterxml.jackson.databind.ObjectMapper; -import com.nedap.archie.json.JacksonUtil; +import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; import com.nedap.archie.json.ArchieJacksonConfiguration; import com.nedap.archie.rm.support.identification.HierObjectId; import com.nedap.archie.rm.support.identification.ObjectRef; @@ -20,7 +20,7 @@ public void testJsonSerialization() throws IOException { expected.setGuidelineId(new ObjectRef<>(new HierObjectId("value"), "namespace", "type")); StringWriter sw = new StringWriter(); - ObjectMapper objectMapper = JacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); + ObjectMapper objectMapper = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); objectMapper.writeValue(sw, expected); Observation actual = objectMapper.readValue(sw.toString(), Observation.class); diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/ehr/EhrStatusTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/ehr/EhrStatusTest.java index d2725c238..a2f145823 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/ehr/EhrStatusTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/ehr/EhrStatusTest.java @@ -1,7 +1,7 @@ package com.nedap.archie.rm.ehr; import com.fasterxml.jackson.databind.ObjectMapper; -import com.nedap.archie.json.JacksonUtil; +import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; import org.junit.Test; import java.io.IOException; @@ -17,7 +17,7 @@ public class EhrStatusTest { public void testBooleanSerialization() throws IOException { EhrStatus status = new EhrStatus(); StringWriter stringWriter = new StringWriter(); - ObjectMapper objectMapper = JacksonUtil.getObjectMapper(); + ObjectMapper objectMapper = OpenEhrRmJacksonUtil.getObjectMapper(); objectMapper.writeValue(stringWriter, status); Map actual = objectMapper.readValue(stringWriter.toString(), Map.class); diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/ehr/EhrTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/ehr/EhrTest.java index 307647525..773af97cc 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/ehr/EhrTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/ehr/EhrTest.java @@ -1,7 +1,7 @@ package com.nedap.archie.rm.ehr; import com.fasterxml.jackson.databind.ObjectMapper; -import com.nedap.archie.json.JacksonUtil; +import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; import com.nedap.archie.json.ArchieJacksonConfiguration; import com.nedap.archie.rm.support.identification.HierObjectId; import com.nedap.archie.rm.support.identification.ObjectRef; @@ -36,7 +36,7 @@ public void testJsonSerialization() throws IOException { expected.setFolders(folders); StringWriter sw = new StringWriter(); - ObjectMapper objectMapper = JacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); + ObjectMapper objectMapper = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); objectMapper.writeValue(sw, expected); Ehr actual = objectMapper.readValue(sw.toString(), Ehr.class); diff --git a/path-queries/src/main/java/com/nedap/archie/query/RMPathQuery.java b/path-queries/src/main/java/com/nedap/archie/query/RMPathQuery.java index 737ab267d..733b06357 100644 --- a/path-queries/src/main/java/com/nedap/archie/query/RMPathQuery.java +++ b/path-queries/src/main/java/com/nedap/archie/query/RMPathQuery.java @@ -3,8 +3,9 @@ import com.google.common.collect.Lists; import com.nedap.archie.aom.utils.AOMUtils; +import com.nedap.archie.apath.APathQuery; import com.nedap.archie.definitions.AdlCodeDefinitions; -import com.nedap.archie.paths.PathSegment; +import com.nedap.archie.apath.PathSegment; import com.nedap.archie.rminfo.ModelInfoLookup; import com.nedap.archie.rminfo.RMAttributeInfo; diff --git a/referencemodels/src/test/java/org/openehr/referencemodels/AOMComparedWithBmmTest.java b/referencemodels/src/test/java/org/openehr/referencemodels/AOMComparedWithBmmTest.java index 2cfb12837..c0664b254 100644 --- a/referencemodels/src/test/java/org/openehr/referencemodels/AOMComparedWithBmmTest.java +++ b/referencemodels/src/test/java/org/openehr/referencemodels/AOMComparedWithBmmTest.java @@ -3,13 +3,11 @@ import com.google.common.base.Joiner; import com.google.common.collect.Sets; import com.nedap.archie.rminfo.ArchieAOMInfoLookup; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; import org.junit.Ignore; import org.junit.Test; import org.openehr.bmm.core.BmmClass; import org.openehr.bmm.core.BmmModel; import org.openehr.bmm.v2.persistence.PBmmSchema; -import org.openehr.bmm.v2.persistence.jackson.BmmJacksonUtil; import org.openehr.bmm.v2.persistence.odin.BmmOdinParser; import org.openehr.bmm.v2.validation.BmmRepository; import org.openehr.bmm.v2.validation.BmmSchemaConverter; diff --git a/referencemodels/src/test/java/org/openehr/referencemodels/RMComparedWithBmmTest.java b/referencemodels/src/test/java/org/openehr/referencemodels/RMComparedWithBmmTest.java index f5d4ba5bd..ce9c64739 100644 --- a/referencemodels/src/test/java/org/openehr/referencemodels/RMComparedWithBmmTest.java +++ b/referencemodels/src/test/java/org/openehr/referencemodels/RMComparedWithBmmTest.java @@ -2,7 +2,7 @@ import com.google.common.base.Joiner; import com.google.common.collect.Sets; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import org.junit.Test; import org.openehr.bmm.core.BmmClass; import org.openehr.bmm.core.BmmModel; @@ -45,7 +45,7 @@ public void compareBmmWithRM() { BmmRepository bmmRepository = BuiltinReferenceModels.getBmmRepository(); BmmModel model = bmmRepository.getModel("openehr_rm_1.1.0").getModel(); - List compared = new BmmComparison(extraParams, typeMap, typeNamesOverride).compare(model, ArchieRMInfoLookup.getInstance()); + List compared = new BmmComparison(extraParams, typeMap, typeNamesOverride).compare(model, OpenEhrRmInfoLookup.getInstance()); compared.sort(Comparator.comparing((a) -> a.getClassName() + "." + a.getType().toString())); compared = compared.stream().filter((diff) -> { diff --git a/tools/src/main/java/com/nedap/archie/archetypevalidator/validations/DefinitionStructureValidation.java b/tools/src/main/java/com/nedap/archie/archetypevalidator/validations/DefinitionStructureValidation.java index c6f0818a2..01b74beb9 100644 --- a/tools/src/main/java/com/nedap/archie/archetypevalidator/validations/DefinitionStructureValidation.java +++ b/tools/src/main/java/com/nedap/archie/archetypevalidator/validations/DefinitionStructureValidation.java @@ -7,8 +7,8 @@ import com.nedap.archie.aom.utils.AOMUtils; import com.nedap.archie.archetypevalidator.ErrorType; import com.nedap.archie.archetypevalidator.ValidatingVisitor; -import com.nedap.archie.paths.PathSegment; -import com.nedap.archie.query.APathQuery; +import com.nedap.archie.apath.PathSegment; +import com.nedap.archie.apath.APathQuery; import org.openehr.utils.message.I18n; import java.util.List; diff --git a/tools/src/main/java/com/nedap/archie/flattener/CAttributeFlattener.java b/tools/src/main/java/com/nedap/archie/flattener/CAttributeFlattener.java index 916867d54..aebc4227b 100644 --- a/tools/src/main/java/com/nedap/archie/flattener/CAttributeFlattener.java +++ b/tools/src/main/java/com/nedap/archie/flattener/CAttributeFlattener.java @@ -3,10 +3,10 @@ import com.nedap.archie.aom.*; import com.nedap.archie.aom.utils.AOMUtils; import com.nedap.archie.base.MultiplicityInterval; -import com.nedap.archie.paths.PathSegment; -import com.nedap.archie.paths.PathUtil; +import com.nedap.archie.apath.PathSegment; +import com.nedap.archie.apath.PathUtil; import com.nedap.archie.query.AOMPathQuery; -import com.nedap.archie.query.APathQuery; +import com.nedap.archie.apath.APathQuery; import com.nedap.archie.query.ComplexObjectProxyReplacement; import java.util.*; diff --git a/tools/src/main/java/com/nedap/archie/query/UniqueNodePathBuilder.java b/tools/src/main/java/com/nedap/archie/query/UniqueNodePathBuilder.java index 5bbfcc618..fdbb8569d 100644 --- a/tools/src/main/java/com/nedap/archie/query/UniqueNodePathBuilder.java +++ b/tools/src/main/java/com/nedap/archie/query/UniqueNodePathBuilder.java @@ -1,6 +1,6 @@ package com.nedap.archie.query; -import com.nedap.archie.paths.PathSegment; +import com.nedap.archie.apath.PathSegment; import org.w3c.dom.Node; import java.util.Optional; diff --git a/tools/src/main/java/com/nedap/archie/rules/evaluation/DummyRulesPrimitiveObjectParent.java b/tools/src/main/java/com/nedap/archie/rules/evaluation/DummyRulesPrimitiveObjectParent.java index 44cc9297d..002812a39 100644 --- a/tools/src/main/java/com/nedap/archie/rules/evaluation/DummyRulesPrimitiveObjectParent.java +++ b/tools/src/main/java/com/nedap/archie/rules/evaluation/DummyRulesPrimitiveObjectParent.java @@ -1,10 +1,8 @@ package com.nedap.archie.rules.evaluation; import com.nedap.archie.aom.Archetype; -import com.nedap.archie.aom.ArchetypeConstraint; import com.nedap.archie.aom.CAttribute; -import com.nedap.archie.paths.PathSegment; -import com.nedap.archie.query.APathQuery; +import com.nedap.archie.apath.PathSegment; import java.util.ArrayList; import java.util.List; diff --git a/tools/src/main/java/com/nedap/archie/rules/evaluation/evaluators/BinaryOperatorEvaluator.java b/tools/src/main/java/com/nedap/archie/rules/evaluation/evaluators/BinaryOperatorEvaluator.java index d5d4c8968..9df537668 100644 --- a/tools/src/main/java/com/nedap/archie/rules/evaluation/evaluators/BinaryOperatorEvaluator.java +++ b/tools/src/main/java/com/nedap/archie/rules/evaluation/evaluators/BinaryOperatorEvaluator.java @@ -7,9 +7,9 @@ import com.nedap.archie.aom.ArchetypeConstraint; import com.nedap.archie.aom.ArchetypeModelObject; import com.nedap.archie.aom.primitives.CTerminologyCode; -import com.nedap.archie.paths.PathSegment; +import com.nedap.archie.apath.PathSegment; import com.nedap.archie.query.AOMPathQuery; -import com.nedap.archie.query.APathQuery; +import com.nedap.archie.apath.APathQuery; import com.nedap.archie.rminfo.ModelInfoLookup; import com.nedap.archie.rules.BinaryOperator; import com.nedap.archie.rules.Constraint; diff --git a/tools/src/test/java/com/nedap/archie/adl14/ConversionConfigForTest.java b/tools/src/test/java/com/nedap/archie/adl14/ConversionConfigForTest.java index 7562e9b43..02eec72e4 100644 --- a/tools/src/test/java/com/nedap/archie/adl14/ConversionConfigForTest.java +++ b/tools/src/test/java/com/nedap/archie/adl14/ConversionConfigForTest.java @@ -1,6 +1,6 @@ package com.nedap.archie.adl14; -import com.nedap.archie.json.JacksonUtil; +import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; import java.io.IOException; import java.io.InputStream; @@ -11,7 +11,7 @@ public class ConversionConfigForTest { public static ADL14ConversionConfiguration getConfig() throws IOException { try(InputStream stream = ConversionConfigForTest.class.getResourceAsStream("configuration.json")) { - return JacksonUtil.getObjectMapper().readValue(stream, ADL14ConversionConfiguration.class); + return OpenEhrRmJacksonUtil.getObjectMapper().readValue(stream, ADL14ConversionConfiguration.class); } } diff --git a/tools/src/test/java/com/nedap/archie/adl14/LargeSetOfADL14sTest.java b/tools/src/test/java/com/nedap/archie/adl14/LargeSetOfADL14sTest.java index 0d21189b8..a19f82afa 100644 --- a/tools/src/test/java/com/nedap/archie/adl14/LargeSetOfADL14sTest.java +++ b/tools/src/test/java/com/nedap/archie/adl14/LargeSetOfADL14sTest.java @@ -1,15 +1,10 @@ package com.nedap.archie.adl14; -import com.nedap.archie.adl14.log.ADL2ConversionLog; import com.nedap.archie.adlparser.antlr.Adl14Lexer; import com.nedap.archie.antlr.errors.ANTLRParserErrors; import com.nedap.archie.aom.Archetype; import com.nedap.archie.archetypevalidator.ValidationResult; -import com.nedap.archie.diff.Differentiator; -import com.nedap.archie.flattener.Flattener; import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; -import com.nedap.archie.json.JacksonUtil; -import com.nedap.archie.serializer.adl.ADLArchetypeSerializer; import org.antlr.v4.runtime.CharStreams; import org.antlr.v4.runtime.CodePointCharStream; import org.junit.Before; diff --git a/tools/src/test/java/com/nedap/archie/adlparser/RMPathQueryTest.java b/tools/src/test/java/com/nedap/archie/adlparser/RMPathQueryTest.java index 812b291fb..38920c1d9 100644 --- a/tools/src/test/java/com/nedap/archie/adlparser/RMPathQueryTest.java +++ b/tools/src/test/java/com/nedap/archie/adlparser/RMPathQueryTest.java @@ -13,7 +13,7 @@ import com.nedap.archie.rm.datastructures.Element; import com.nedap.archie.rm.datastructures.ItemTree; import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ModelInfoLookup; import com.nedap.archie.testutil.TestUtil; import org.junit.Before; @@ -50,7 +50,7 @@ public void simpleTest() { Composition composition = (Composition) root; assertEquals(composition.getContext(), new RMPathQuery("/context") - .find(ArchieRMInfoLookup.getInstance(), composition)); + .find(OpenEhrRmInfoLookup.getInstance(), composition)); // EVENT_CONTEXT[id11] matches { // other_context matches { // ITEM_TREE[id2] matches { @@ -60,11 +60,11 @@ public void simpleTest() { // ELEMENT[id4] occurrences matches {0..1} matches { -- OrderID assertEquals(composition.getContext().getOtherContext().getItems(), new RMPathQuery("/context[id11]/other_context[id2]/items") - .find(ArchieRMInfoLookup.getInstance(), composition)); + .find(OpenEhrRmInfoLookup.getInstance(), composition)); //"/context[id2]/items[id3]/items[id4]"//should be one item DvText text = new RMPathQuery("/context[id11]/other_context[id2]/items[id3]/items[id5]/value") - .find(ArchieRMInfoLookup.getInstance(), composition); + .find(OpenEhrRmInfoLookup.getInstance(), composition); assertNotNull(text); } @@ -80,7 +80,7 @@ public void multipleItems() { otherContext.getItems().addAll(composition2.getContext().getOtherContext().getItems()); } - ModelInfoLookup modelInfoLookup = ArchieRMInfoLookup.getInstance(); + ModelInfoLookup modelInfoLookup = OpenEhrRmInfoLookup.getInstance(); List context = new RMPathQuery("/context") .findList(modelInfoLookup, composition); @@ -125,7 +125,7 @@ public void findMatchSpecialisedNodes() throws Exception { OperationalTemplate opt = (OperationalTemplate) flattener.flatten(archetype_specialised); root = (Pathable) testUtil.constructEmptyRMObject(opt.getDefinition()); - Element element = new RMPathQuery("/context/other_context[id2]/items[id3]/items[id5]", true).find(ArchieRMInfoLookup.getInstance(), root); + Element element = new RMPathQuery("/context/other_context[id2]/items[id3]/items[id5]", true).find(OpenEhrRmInfoLookup.getInstance(), root); assertNotNull(element); assertEquals("/context/other_context[id2]/items[id3]/items[id5.1]", element.getPath()); } @@ -140,7 +140,7 @@ public void findListMatchSpecialisedNodes() throws Exception { OperationalTemplate opt = (OperationalTemplate) flattener.flatten(archetype_specialised); root = (Pathable) testUtil.constructEmptyRMObject(opt.getDefinition()); - List list = new RMPathQuery("/context/other_context[id2]/items[id3]/items[id5]", true).findList(ArchieRMInfoLookup.getInstance(), root); + List list = new RMPathQuery("/context/other_context[id2]/items[id3]/items[id5]", true).findList(OpenEhrRmInfoLookup.getInstance(), root); assertEquals(1, list.size()); assertEquals("/context/other_context[id2]/items[id3]/items[id5.1]", ((Element) list.get(0).getObject()).getPath()); } @@ -157,12 +157,12 @@ public void findListMatchTwiceSpecialisedNodes() throws Exception { OperationalTemplate opt = (OperationalTemplate) flattener.flatten(archetype_specialised_twice); root = (Pathable) testUtil.constructEmptyRMObject(opt.getDefinition()); - List listId5 = new RMPathQuery("/context/other_context[id2]/items[id3]/items[id5]", true).findList(ArchieRMInfoLookup.getInstance(), root); + List listId5 = new RMPathQuery("/context/other_context[id2]/items[id3]/items[id5]", true).findList(OpenEhrRmInfoLookup.getInstance(), root); assertEquals(2, listId5.size()); assertEquals("/context/other_context[id2]/items[id3]/items[id5.1]", ((Element) listId5.get(0).getObject()).getPath()); assertEquals("/context/other_context[id2]/items[id3]/items[id5.1.1]", ((Element) listId5.get(1).getObject()).getPath()); - List listId6 = new RMPathQuery("/context/other_context[id2]/items[id3]/items[id6]", true).findList(ArchieRMInfoLookup.getInstance(), root); + List listId6 = new RMPathQuery("/context/other_context[id2]/items[id3]/items[id6]", true).findList(OpenEhrRmInfoLookup.getInstance(), root); assertEquals(2, listId6.size()); assertEquals("/context/other_context[id2]/items[id3]/items[id6]", ((Element) listId6.get(0).getObject()).getPath()); assertEquals("/context/other_context[id2]/items[id3]/items[id6.0.1]", ((Element) listId6.get(1).getObject()).getPath()); diff --git a/tools/src/test/java/com/nedap/archie/aom/AttributeTupleConstraintsTest.java b/tools/src/test/java/com/nedap/archie/aom/AttributeTupleConstraintsTest.java index bfd8892a7..526690cb5 100644 --- a/tools/src/test/java/com/nedap/archie/aom/AttributeTupleConstraintsTest.java +++ b/tools/src/test/java/com/nedap/archie/aom/AttributeTupleConstraintsTest.java @@ -1,7 +1,7 @@ package com.nedap.archie.aom; import com.nedap.archie.rm.datavalues.quantity.DvQuantity; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.testutil.TestUtil; import org.junit.BeforeClass; import org.junit.Test; @@ -34,8 +34,8 @@ public void tupleConstraint() throws Exception { lbValid.put("units", "lb"); lbValid.put("magnitude", 10d); - assertTrue(attributeTuple.isValid(ArchieRMInfoLookup.getInstance(), kgValid)); - assertTrue(attributeTuple.isValid(ArchieRMInfoLookup.getInstance(), lbValid)); + assertTrue(attributeTuple.isValid(OpenEhrRmInfoLookup.getInstance(), kgValid)); + assertTrue(attributeTuple.isValid(OpenEhrRmInfoLookup.getInstance(), lbValid)); } @@ -53,9 +53,9 @@ public void tupleConstraintInvalid() throws Exception { invalidUnit.put("units", "stone"); invalidUnit.put("magnitude", 5d); - assertFalse(attributeTuple.isValid(ArchieRMInfoLookup.getInstance(), lbInvalid)); - assertFalse(attributeTuple.isValid(ArchieRMInfoLookup.getInstance(), kgInvalid)); - assertFalse(attributeTuple.isValid(ArchieRMInfoLookup.getInstance(), invalidUnit)); + assertFalse(attributeTuple.isValid(OpenEhrRmInfoLookup.getInstance(), lbInvalid)); + assertFalse(attributeTuple.isValid(OpenEhrRmInfoLookup.getInstance(), kgInvalid)); + assertFalse(attributeTuple.isValid(OpenEhrRmInfoLookup.getInstance(), invalidUnit)); } @@ -67,7 +67,7 @@ public void tupleConstraintExtraAttribute() throws Exception { extraAttribute.put("precison", 0.1d); //any extra attributes can be valid, because they are not constrained by this tuple - assertTrue(attributeTuple.isValid(ArchieRMInfoLookup.getInstance(), extraAttribute)); + assertTrue(attributeTuple.isValid(OpenEhrRmInfoLookup.getInstance(), extraAttribute)); } @@ -76,7 +76,7 @@ public void tupleConstraintMissingAttribute() throws Exception { HashMap missingAttribute = new HashMap<>(); missingAttribute.put("units", "lb"); - assertFalse(attributeTuple.isValid(ArchieRMInfoLookup.getInstance(), missingAttribute)); + assertFalse(attributeTuple.isValid(OpenEhrRmInfoLookup.getInstance(), missingAttribute)); } @@ -85,7 +85,7 @@ public void withRmObjectValid() throws Exception { DvQuantity valid = new DvQuantity(); valid.setUnits("lb"); valid.setMagnitude(150d); - assertTrue(attributeTuple.isValid(ArchieRMInfoLookup.getInstance(), valid)); + assertTrue(attributeTuple.isValid(OpenEhrRmInfoLookup.getInstance(), valid)); } @Test @@ -93,7 +93,7 @@ public void withRmObjectInvalid() throws Exception { DvQuantity valid = new DvQuantity(); valid.setUnits("kg"); valid.setMagnitude(600d); - assertFalse(attributeTuple.isValid(ArchieRMInfoLookup.getInstance(), valid)); + assertFalse(attributeTuple.isValid(OpenEhrRmInfoLookup.getInstance(), valid)); } @Test diff --git a/tools/src/test/java/com/nedap/archie/aom/TerminologyCodeConstraintsTest.java b/tools/src/test/java/com/nedap/archie/aom/TerminologyCodeConstraintsTest.java index 76b48da8a..c60bc041d 100644 --- a/tools/src/test/java/com/nedap/archie/aom/TerminologyCodeConstraintsTest.java +++ b/tools/src/test/java/com/nedap/archie/aom/TerminologyCodeConstraintsTest.java @@ -14,7 +14,7 @@ import com.nedap.archie.flattener.specexamples.FlattenerTestUtil; import com.nedap.archie.rm.datatypes.CodePhrase; import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rules.evaluation.DummyRulesPrimitiveObjectParent; import org.junit.Before; import org.junit.Test; @@ -101,14 +101,14 @@ public void openEHRTerminology() { DvCodedText text = new DvCodedText(); text.setValue("does not matter for this validation"); text.setDefiningCode(new CodePhrase("[openehr::532]")); - assertTrue(code.isValidValue(ArchieRMInfoLookup.getInstance(), text)); + assertTrue(code.isValidValue(OpenEhrRmInfoLookup.getInstance(), text)); text.setDefiningCode(new CodePhrase("[openehr::999]")); - assertFalse(code.isValidValue(ArchieRMInfoLookup.getInstance(), text)); + assertFalse(code.isValidValue(OpenEhrRmInfoLookup.getInstance(), text)); text.setDefiningCode(new CodePhrase()); - assertFalse(code.isValidValue(ArchieRMInfoLookup.getInstance(), text)); + assertFalse(code.isValidValue(OpenEhrRmInfoLookup.getInstance(), text)); text.setDefiningCode(null); - assertFalse(code.isValidValue(ArchieRMInfoLookup.getInstance(), text)); - assertFalse(code.isValidValue(ArchieRMInfoLookup.getInstance(), null)); + assertFalse(code.isValidValue(OpenEhrRmInfoLookup.getInstance(), text)); + assertFalse(code.isValidValue(OpenEhrRmInfoLookup.getInstance(), null)); } @Test @@ -152,13 +152,13 @@ public void otherBindingStrength() { DvCodedText text = new DvCodedText(); text.setValue("does not matter for this validation"); text.setDefiningCode(new CodePhrase("[local::at23]")); - assertTrue(code.isValidValue(ArchieRMInfoLookup.getInstance(), text)); + assertTrue(code.isValidValue(OpenEhrRmInfoLookup.getInstance(), text)); text.setDefiningCode(new CodePhrase("[local::at24]")); - assertTrue(code.isValidValue(ArchieRMInfoLookup.getInstance(), text)); + assertTrue(code.isValidValue(OpenEhrRmInfoLookup.getInstance(), text)); text.setDefiningCode(new CodePhrase("[local:at0.3.25]")); - assertTrue(code.isValidValue(ArchieRMInfoLookup.getInstance(), text)); + assertTrue(code.isValidValue(OpenEhrRmInfoLookup.getInstance(), text)); text.setDefiningCode(new CodePhrase("[snomed:123657]")); - assertTrue(code.isValidValue(ArchieRMInfoLookup.getInstance(), text)); + assertTrue(code.isValidValue(OpenEhrRmInfoLookup.getInstance(), text)); } } @@ -166,14 +166,14 @@ private void termCodeAssertions(CTerminologyCode code) { DvCodedText text = new DvCodedText(); text.setValue("does not matter for this validation"); text.setDefiningCode(new CodePhrase("[local::at23]")); - assertTrue(code.isValidValue(ArchieRMInfoLookup.getInstance(), text)); + assertTrue(code.isValidValue(OpenEhrRmInfoLookup.getInstance(), text)); text.setDefiningCode(new CodePhrase("[local::at24]")); - assertFalse(code.isValidValue(ArchieRMInfoLookup.getInstance(), text)); + assertFalse(code.isValidValue(OpenEhrRmInfoLookup.getInstance(), text)); text.setDefiningCode(new CodePhrase()); - assertFalse(code.isValidValue(ArchieRMInfoLookup.getInstance(), text)); + assertFalse(code.isValidValue(OpenEhrRmInfoLookup.getInstance(), text)); text.setDefiningCode(null); - assertFalse(code.isValidValue(ArchieRMInfoLookup.getInstance(), text)); - assertFalse(code.isValidValue(ArchieRMInfoLookup.getInstance(), null)); + assertFalse(code.isValidValue(OpenEhrRmInfoLookup.getInstance(), text)); + assertFalse(code.isValidValue(OpenEhrRmInfoLookup.getInstance(), null)); } @Test diff --git a/tools/src/test/java/com/nedap/archie/archetypevalidator/ArchetypeValidatorTest.java b/tools/src/test/java/com/nedap/archie/archetypevalidator/ArchetypeValidatorTest.java index bf3efb42f..1e73db2a8 100644 --- a/tools/src/test/java/com/nedap/archie/archetypevalidator/ArchetypeValidatorTest.java +++ b/tools/src/test/java/com/nedap/archie/archetypevalidator/ArchetypeValidatorTest.java @@ -5,7 +5,7 @@ import com.nedap.archie.aom.Archetype; import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; import com.nedap.archie.openehrtestrm.TestRMInfoLookup; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ReferenceModels; import org.junit.Before; import org.junit.Test; @@ -30,7 +30,7 @@ public class ArchetypeValidatorTest { public void setup() { parser = new ADLParser(); models = new ReferenceModels(); - models.registerModel(ArchieRMInfoLookup.getInstance()); + models.registerModel(OpenEhrRmInfoLookup.getInstance()); models.registerModel(TestRMInfoLookup.getInstance()); } diff --git a/tools/src/test/java/com/nedap/archie/archetypevalidator/BigArchetypeValidatorTest.java b/tools/src/test/java/com/nedap/archie/archetypevalidator/BigArchetypeValidatorTest.java index 1cd51b4ca..fe686e8ee 100644 --- a/tools/src/test/java/com/nedap/archie/archetypevalidator/BigArchetypeValidatorTest.java +++ b/tools/src/test/java/com/nedap/archie/archetypevalidator/BigArchetypeValidatorTest.java @@ -9,8 +9,7 @@ import com.nedap.archie.aom.Archetype; import com.nedap.archie.flattener.FullArchetypeRepository; import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; -import com.nedap.archie.flattener.SimpleArchetypeRepository; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.MetaModels; import com.nedap.archie.rminfo.ReferenceModels; import org.apache.commons.io.FilenameUtils; @@ -136,7 +135,7 @@ public void testFullValidityPackageBmm() { public void testFullValidityPackageModelInfoLookup() { ReferenceModels models = new ReferenceModels(); - models.registerModel(ArchieRMInfoLookup.getInstance()); + models.registerModel(OpenEhrRmInfoLookup.getInstance()); models.registerModel(com.nedap.archie.openehrtestrm.TestRMInfoLookup.getInstance()); // access.initializeAll(schemaDirectories); diff --git a/tools/src/test/java/com/nedap/archie/archetypevalidator/CKMArchetypeValidatorTest.java b/tools/src/test/java/com/nedap/archie/archetypevalidator/CKMArchetypeValidatorTest.java index 09d16d0b1..cd7b3836a 100644 --- a/tools/src/test/java/com/nedap/archie/archetypevalidator/CKMArchetypeValidatorTest.java +++ b/tools/src/test/java/com/nedap/archie/archetypevalidator/CKMArchetypeValidatorTest.java @@ -1,27 +1,18 @@ package com.nedap.archie.archetypevalidator; -import com.nedap.archie.adlparser.ADLParser; -import com.nedap.archie.antlr.errors.ANTLRParserErrors; -import com.nedap.archie.aom.Archetype; import com.nedap.archie.flattener.FullArchetypeRepository; -import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.MetaModels; import com.nedap.archie.rminfo.ReferenceModels; import com.nedap.archie.testutil.TestUtil; import org.junit.Test; import org.openehr.referencemodels.BuiltinReferenceModels; -import org.reflections.Reflections; -import org.reflections.scanners.ResourcesScanner; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java.io.InputStream; -import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set; -import java.util.regex.Pattern; import java.util.stream.Collectors; import static org.junit.Assert.assertTrue; @@ -57,7 +48,7 @@ public void fullCKMTest() { FullArchetypeRepository repository = TestUtil.parseCKM(); ReferenceModels models = new ReferenceModels(); - models.registerModel(ArchieRMInfoLookup.getInstance()); + models.registerModel(OpenEhrRmInfoLookup.getInstance()); logger.info("archetypes parsed: " + repository.getAllArchetypes().size()); repository.compile(models); diff --git a/tools/src/test/java/com/nedap/archie/creation/ExampleJsonInstanceGeneratorTest.java b/tools/src/test/java/com/nedap/archie/creation/ExampleJsonInstanceGeneratorTest.java index 1f3faffa7..001d003e0 100644 --- a/tools/src/test/java/com/nedap/archie/creation/ExampleJsonInstanceGeneratorTest.java +++ b/tools/src/test/java/com/nedap/archie/creation/ExampleJsonInstanceGeneratorTest.java @@ -14,11 +14,11 @@ import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; import com.nedap.archie.flattener.OperationalTemplateProvider; import com.nedap.archie.json.ArchieJacksonConfiguration; -import com.nedap.archie.json.JacksonUtil; +import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; import com.nedap.archie.json.JsonSchemaValidator; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import com.nedap.archie.rm.composition.Observation; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rmobjectvalidator.RMObjectValidationMessage; import com.nedap.archie.rmobjectvalidator.RMObjectValidationMessageType; import com.nedap.archie.rmobjectvalidator.RMObjectValidator; @@ -79,8 +79,8 @@ public void bloodPressure() throws Exception { assertEquals("POINT_EVENT", ((Map) events.get(1)).get(TYPE_PROPERTY_NAME)); assertEquals("INTERVAL_EVENT", ((Map) events.get(2)).get(TYPE_PROPERTY_NAME)); - List validated = new RMObjectValidator(ArchieRMInfoLookup.getInstance(), optProvider) - .validate(opt, JacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()).readValue(s, Observation.class)); + List validated = new RMObjectValidator(OpenEhrRmInfoLookup.getInstance(), optProvider) + .validate(opt, OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()).readValue(s, Observation.class)); assertEquals(new ArrayList<>(), validated); } @@ -111,7 +111,7 @@ private ObjectMapper getArchieObjectMapper() { configuration.setAlwaysIncludeTypeProperty(true); configuration.setFailOnUnknownProperties(true); configuration.setSerializeEmptyCollections(false); - return JacksonUtil.getObjectMapper(configuration); + return OpenEhrRmJacksonUtil.getObjectMapper(configuration); } @Test @@ -176,7 +176,7 @@ public void generateAllCKMExamples() throws Exception { json = mapper.writeValueAsString(example); RMObject parsed = archieObjectMapper.readValue(json, RMObject.class); - List validated = new RMObjectValidator(ArchieRMInfoLookup.getInstance(), optProvider).validate(template, parsed); + List validated = new RMObjectValidator(OpenEhrRmInfoLookup.getInstance(), optProvider).validate(template, parsed); // Ignore some validations errors caused by unsupported features in the ExampleJsonInstanceGenerator validated.removeIf(m -> m.getType().equals(RMObjectValidationMessageType.ARCHETYPE_SLOT_ID_MISMATCH)); // Filling the correct archetype in the slot is not supported diff --git a/tools/src/test/java/com/nedap/archie/creation/RMObjectCreatorTest.java b/tools/src/test/java/com/nedap/archie/creation/RMObjectCreatorTest.java index 846748f51..cc75ac84a 100644 --- a/tools/src/test/java/com/nedap/archie/creation/RMObjectCreatorTest.java +++ b/tools/src/test/java/com/nedap/archie/creation/RMObjectCreatorTest.java @@ -9,7 +9,7 @@ import com.nedap.archie.rm.datastructures.Cluster; import com.nedap.archie.rm.datastructures.Element; import com.nedap.archie.rm.datavalues.DvBoolean; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import org.junit.Test; import java.util.LinkedHashMap; @@ -22,7 +22,7 @@ */ public class RMObjectCreatorTest { - RMObjectCreator creator = new RMObjectCreator(ArchieRMInfoLookup.getInstance()); + RMObjectCreator creator = new RMObjectCreator(OpenEhrRmInfoLookup.getInstance()); @Test public void createElement() { diff --git a/tools/src/test/java/com/nedap/archie/flattener/FlattenerTest.java b/tools/src/test/java/com/nedap/archie/flattener/FlattenerTest.java index 2781a3f24..8f6e7eca4 100644 --- a/tools/src/test/java/com/nedap/archie/flattener/FlattenerTest.java +++ b/tools/src/test/java/com/nedap/archie/flattener/FlattenerTest.java @@ -11,8 +11,8 @@ import com.nedap.archie.aom.CObject; import com.nedap.archie.aom.OperationalTemplate; import com.nedap.archie.archetypevalidator.ValidationResult; -import com.nedap.archie.json.JacksonUtil; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ReferenceModels; import org.junit.Before; import org.junit.Test; @@ -134,7 +134,7 @@ public void checkParentReplacement() throws Exception { } ObjectMapper objectMapper = new ObjectMapper(); - JacksonUtil.configureObjectMapper(objectMapper); + OpenEhrRmJacksonUtil.configureObjectMapper(objectMapper); objectMapper.enable(SerializationFeature.INDENT_OUTPUT); System.out.println(objectMapper.writeValueAsString(flattened)); @@ -271,7 +271,7 @@ public void removeLanguagesFromMetaData() throws Exception { @Test public void validate() { ReferenceModels models = new ReferenceModels(); - models.registerModel(ArchieRMInfoLookup.getInstance()); + models.registerModel(OpenEhrRmInfoLookup.getInstance()); models.registerModel(com.nedap.archie.openehrtestrm.TestRMInfoLookup.getInstance()); ((InMemoryFullArchetypeRepository) repository).compile(models); for(ValidationResult result:((InMemoryFullArchetypeRepository) repository).getAllValidationResults()) { diff --git a/tools/src/test/java/com/nedap/archie/flattener/OperationalTemplateCreatorTest.java b/tools/src/test/java/com/nedap/archie/flattener/OperationalTemplateCreatorTest.java index 3dadbe3a5..179a1fd00 100644 --- a/tools/src/test/java/com/nedap/archie/flattener/OperationalTemplateCreatorTest.java +++ b/tools/src/test/java/com/nedap/archie/flattener/OperationalTemplateCreatorTest.java @@ -7,7 +7,7 @@ import com.nedap.archie.archetypevalidator.ArchetypeValidator; import com.nedap.archie.archetypevalidator.ValidationResult; import com.nedap.archie.flattener.specexamples.FlattenerTestUtil; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ReferenceModels; import org.junit.Test; import org.openehr.referencemodels.BuiltinReferenceModels; @@ -37,7 +37,7 @@ public void fillEmptyOccurrences() throws Exception { if(cObject instanceof CComplexObject) { assertNotNull(cObject.getOccurrences()); CObject objectInOriginal = archetype.itemAtPath(cObject.getPath()); - assertEquals(objectInOriginal.effectiveOccurrences(ArchieRMInfoLookup.getInstance()::referenceModelPropMultiplicity), cObject.getOccurrences()); + assertEquals(objectInOriginal.effectiveOccurrences(OpenEhrRmInfoLookup.getInstance()::referenceModelPropMultiplicity), cObject.getOccurrences()); } for(CAttribute attribute:cObject.getAttributes()) { workList.addAll(attribute.getChildren()); @@ -137,7 +137,7 @@ public void allowSpecializationBeforeExclusionDisabled() throws Exception { private Archetype parseAndCreateOPTWithConfig(String fileName, InMemoryFullArchetypeRepository repository, FlattenerConfiguration config) throws IOException, ADLParseException { Archetype result = parse(fileName); ReferenceModels models = new ReferenceModels(); - models.registerModel(ArchieRMInfoLookup.getInstance()); + models.registerModel(OpenEhrRmInfoLookup.getInstance()); ValidationResult validationResult = new ArchetypeValidator(models).validate(result, repository); assertTrue(validationResult.getErrors().toString(), validationResult.passes()); return new Flattener(repository, BuiltinReferenceModels.getMetaModels(), config).flatten(parse(fileName)); diff --git a/tools/src/test/java/com/nedap/archie/flattener/SiblingOrderFlattenerTest.java b/tools/src/test/java/com/nedap/archie/flattener/SiblingOrderFlattenerTest.java index 995135bb6..396780237 100644 --- a/tools/src/test/java/com/nedap/archie/flattener/SiblingOrderFlattenerTest.java +++ b/tools/src/test/java/com/nedap/archie/flattener/SiblingOrderFlattenerTest.java @@ -9,7 +9,7 @@ import com.nedap.archie.archetypevalidator.ArchetypeValidator; import com.nedap.archie.archetypevalidator.ValidationResult; import com.nedap.archie.flattener.specexamples.FlattenerTestUtil; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ReferenceModels; import org.junit.Before; import org.junit.Test; @@ -217,7 +217,7 @@ private Archetype parse(String fileName) throws IOException, ADLParseException { private Archetype parseAndFlatten(String fileName) throws IOException, ADLParseException { Archetype result = parse(fileName); ReferenceModels models = new ReferenceModels(); - models.registerModel(ArchieRMInfoLookup.getInstance()); + models.registerModel(OpenEhrRmInfoLookup.getInstance()); ValidationResult validationResult = new ArchetypeValidator(models).validate(result, repository); assertTrue(validationResult.getErrors().toString(), validationResult.passes()); @@ -227,7 +227,7 @@ private Archetype parseAndFlatten(String fileName) throws IOException, ADLParseE private Archetype parseAndCreateOPT(String fileName) throws IOException, ADLParseException { Archetype result = parse(fileName); ReferenceModels models = new ReferenceModels(); - models.registerModel(ArchieRMInfoLookup.getInstance()); + models.registerModel(OpenEhrRmInfoLookup.getInstance()); ValidationResult validationResult = new ArchetypeValidator(models).validate(result, repository); assertTrue(validationResult.getErrors().toString(), validationResult.passes()); @@ -237,7 +237,7 @@ private Archetype parseAndCreateOPT(String fileName) throws IOException, ADLPars private Archetype parseAndFlattenRemoveZeroOccurrences(String fileName) throws IOException, ADLParseException { Archetype result = parse(fileName); ReferenceModels models = new ReferenceModels(); - models.registerModel(ArchieRMInfoLookup.getInstance()); + models.registerModel(OpenEhrRmInfoLookup.getInstance()); ValidationResult validationResult = new ArchetypeValidator(models).validate(result, repository); assertTrue(validationResult.getErrors().toString(), validationResult.passes()); FlattenerConfiguration config = FlattenerConfiguration.forFlattened(); diff --git a/tools/src/test/java/com/nedap/archie/json/AOMJacksonTest.java b/tools/src/test/java/com/nedap/archie/json/AOMJacksonTest.java index 11d036810..53bbd9f60 100644 --- a/tools/src/test/java/com/nedap/archie/json/AOMJacksonTest.java +++ b/tools/src/test/java/com/nedap/archie/json/AOMJacksonTest.java @@ -18,6 +18,7 @@ import com.nedap.archie.rules.Constraint; import com.nedap.archie.rules.ModelReference; import com.nedap.archie.rules.OperatorKind; +import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; import com.nedap.archie.serializer.adl.ADLArchetypeSerializer; import com.nedap.archie.testutil.TestUtil; import org.junit.Ignore; @@ -46,7 +47,7 @@ public class AOMJacksonTest { @Test public void parseDeliriumObservationScreening() throws Exception { try(InputStream stream = getClass().getResourceAsStream("delirium_observation_screening.json")) { - Archetype archetype = JacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createLegacyConfiguration()).readValue(stream, Archetype.class); + Archetype archetype = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createLegacyConfiguration()).readValue(stream, Archetype.class); System.out.println(archetype); assertTrue(archetype.getGenerated()); assertThat(archetype.getArchetypeId().getFullId(), is("openEHR-EHR-GENERIC_ENTRY.delirium_observation_screening.v1.0.0")); @@ -63,7 +64,7 @@ public void parseDeliriumObservationScreening() throws Exception { @Test public void roundTripDeliriumObservationScreening() throws Exception { try(InputStream stream = getClass().getResourceAsStream("delirium_observation_screening.json")) { - ObjectMapper objectMapper = JacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createLegacyConfiguration()); + ObjectMapper objectMapper = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createLegacyConfiguration()); Archetype archetype = objectMapper.readValue(stream, Archetype.class); String reserialized = objectMapper.writeValueAsString(archetype); //System.out.println(reserialized); @@ -75,7 +76,7 @@ public void roundTripDeliriumObservationScreening() throws Exception { public void motricityIndex() throws Exception { try(InputStream stream = getClass().getResourceAsStream( "/com/nedap/archie/rules/evaluation/openEHR-EHR-OBSERVATION.motricity_index.v1.0.0.adls")) { Archetype archetype = new ADLParser(BuiltinReferenceModels.getMetaModels()).parse(stream); - String serialized = JacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()).writeValueAsString(archetype); + String serialized = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()).writeValueAsString(archetype); //System.out.println(serialized); assertTrue(serialized.contains("EXPR_BINARY_OPERATOR")); assertTrue(serialized.contains("\"operator_def\" : {\n" + @@ -84,12 +85,12 @@ public void motricityIndex() throws Exception { " }")); assertTrue(serialized.contains("EXPR_ARCHETYPE_REF")); assertTrue(serialized.contains("\"rules\" : [ {")); - Archetype parsedArchetype = JacksonUtil.getObjectMapper().readValue(serialized, Archetype.class); + Archetype parsedArchetype = OpenEhrRmJacksonUtil.getObjectMapper().readValue(serialized, Archetype.class); assertEquals(8, parsedArchetype.getRules().getRules().size()); ArchieJacksonConfiguration newConfig = ArchieJacksonConfiguration.createStandardsCompliant(); newConfig.setStandardsCompliantExpressions(false); - Archetype parsedArchetype2 = JacksonUtil.getObjectMapper(newConfig).readValue(serialized, Archetype.class); + Archetype parsedArchetype2 = OpenEhrRmJacksonUtil.getObjectMapper(newConfig).readValue(serialized, Archetype.class); assertEquals(8, parsedArchetype2.getRules().getRules().size()); } } @@ -103,7 +104,7 @@ public void motricityIndexRulesOldFormatAsList() throws Exception { try(InputStream stream = getClass().getResourceAsStream("motricity_index_legacy_format_rules_section_as_array.json")) { ArchieJacksonConfiguration config = ArchieJacksonConfiguration.createStandardsCompliant(); config.setStandardsCompliantExpressions(false); - Archetype parsedArchetype = JacksonUtil.getObjectMapper(config).readValue(stream, Archetype.class); + Archetype parsedArchetype = OpenEhrRmJacksonUtil.getObjectMapper(config).readValue(stream, Archetype.class); assertEquals(8, parsedArchetype.getRules().getRules().size()); } @@ -117,17 +118,17 @@ public void motricityIndexRulesOldFormatAsList() throws Exception { public void motriciyIndexJavascriptFormat() throws Exception { try(InputStream stream = getClass().getResourceAsStream( "/com/nedap/archie/rules/evaluation/openEHR-EHR-OBSERVATION.motricity_index.v1.0.0.adls")) { Archetype archetype = new ADLParser(BuiltinReferenceModels.getMetaModels()).parse(stream); - String serialized = JacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createConfigForJavascriptUsage()).writeValueAsString(archetype); + String serialized = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createConfigForJavascriptUsage()).writeValueAsString(archetype); //System.out.println(serialized); assertTrue(serialized.contains("EXPR_BINARY_OPERATOR")); assertTrue(serialized.contains("EXPR_ARCHETYPE_REF")); assertTrue(serialized.contains("\"rules\" : [ {")); - Archetype parsedArchetype = JacksonUtil.getObjectMapper().readValue(serialized, Archetype.class); + Archetype parsedArchetype = OpenEhrRmJacksonUtil.getObjectMapper().readValue(serialized, Archetype.class); assertEquals(8, parsedArchetype.getRules().getRules().size()); ArchieJacksonConfiguration newConfig = ArchieJacksonConfiguration.createStandardsCompliant(); newConfig.setStandardsCompliantExpressions(false); - Archetype parsedArchetype2 = JacksonUtil.getObjectMapper(newConfig).readValue(serialized, Archetype.class); + Archetype parsedArchetype2 = OpenEhrRmJacksonUtil.getObjectMapper(newConfig).readValue(serialized, Archetype.class); assertEquals(8, parsedArchetype2.getRules().getRules().size()); } } @@ -139,7 +140,7 @@ public void motricityIndexOldFormat() throws Exception { Archetype archetype = new ADLParser(BuiltinReferenceModels.getMetaModels()).parse(stream); ArchieJacksonConfiguration config = ArchieJacksonConfiguration.createStandardsCompliant(); config.setStandardsCompliantExpressions(false); - String serialized = JacksonUtil.getObjectMapper(config).writeValueAsString(archetype); + String serialized = OpenEhrRmJacksonUtil.getObjectMapper(config).writeValueAsString(archetype); System.out.println(serialized); assertTrue(serialized.contains("\"BINARY_OPERATOR\"")); assertTrue(serialized.contains("\"operator\" : \"eq\",")); @@ -147,7 +148,7 @@ public void motricityIndexOldFormat() throws Exception { assertTrue(serialized.contains("\"rules\" : {")); ArchieJacksonConfiguration newConfig = ArchieJacksonConfiguration.createStandardsCompliant(); newConfig.setStandardsCompliantExpressions(true); - Archetype parsedArchetype = JacksonUtil.getObjectMapper(config).readValue(serialized, Archetype.class); + Archetype parsedArchetype = OpenEhrRmJacksonUtil.getObjectMapper(config).readValue(serialized, Archetype.class); assertEquals(8, parsedArchetype.getRules().getRules().size()); } } @@ -157,7 +158,7 @@ public void archetypeSlot() throws Exception { try(InputStream stream = getClass().getResourceAsStream( "/basic.adl")) { Archetype archetype = new ADLParser(BuiltinReferenceModels.getMetaModels()).parse(stream); ObjectMapper objectMapper = new ObjectMapper(); - JacksonUtil.configureObjectMapper(objectMapper, ArchieJacksonConfiguration.createStandardsCompliant()); + OpenEhrRmJacksonUtil.configureObjectMapper(objectMapper, ArchieJacksonConfiguration.createStandardsCompliant()); objectMapper.disable(SerializationFeature.INDENT_OUTPUT); String serialized = objectMapper.writeValueAsString(archetype); //System.out.println(serialized); @@ -184,7 +185,7 @@ public void archetypeSlotOldExpressionClassNames() throws Exception { Archetype archetype = new ADLParser(BuiltinReferenceModels.getMetaModels()).parse(stream); ArchieJacksonConfiguration config = ArchieJacksonConfiguration.createStandardsCompliant(); config.setStandardsCompliantExpressions(false); - ObjectMapper objectMapper = JacksonUtil.getObjectMapper(config); + ObjectMapper objectMapper = OpenEhrRmJacksonUtil.getObjectMapper(config); String serialized = objectMapper.writeValueAsString(archetype); System.out.println(serialized); assertFalse(serialized.contains("EXPR_BINARY_OPERATOR")); @@ -194,7 +195,7 @@ public void archetypeSlotOldExpressionClassNames() throws Exception { assertTrue(serialized.contains("\"MODEL_REFERENCE\"")); assertArchetypeSlot(objectMapper, serialized); //and it should be parsable with the new syntax as well - assertArchetypeSlot(JacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()), serialized); + assertArchetypeSlot(OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()), serialized); } } @@ -204,7 +205,7 @@ public void archetypeSlotOldExpressionClassNames() throws Exception { public void cDuration() throws Exception { CDuration cDuration = new CDuration(); cDuration.addConstraint(new Interval<>(Duration.of(-10, ChronoUnit.HOURS), Duration.of(10, ChronoUnit.SECONDS))); - ObjectMapper objectMapper = JacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); + ObjectMapper objectMapper = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); String cDurationJson = objectMapper.writeValueAsString(cDuration); assertTrue(cDurationJson.contains("-PT10H")); assertTrue(cDurationJson.contains("PT10S")); @@ -219,7 +220,7 @@ public void cDurationPeriodDuration() throws Exception { CDuration cDuration = new CDuration(); PeriodDuration tenYearsTenSeconds = PeriodDuration.of(Period.of(10, 0, 0), Duration.of(10, ChronoUnit.SECONDS)); cDuration.addConstraint(new Interval<>(Duration.of(-10, ChronoUnit.HOURS), tenYearsTenSeconds)); - ObjectMapper objectMapper = JacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); + ObjectMapper objectMapper = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); String cDurationJson = objectMapper.writeValueAsString(cDuration); assertTrue(cDurationJson.contains("-PT10H")); assertTrue(cDurationJson.contains("P10YT10S")); @@ -234,7 +235,7 @@ public void cTerminologyCode() throws Exception { CTerminologyCode cTermCode = new CTerminologyCode(); cTermCode.setConstraint(Lists.newArrayList("ac23")); cTermCode.setConstraintStatus(ConstraintStatus.PREFERRED); - ObjectMapper objectMapper = JacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); + ObjectMapper objectMapper = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); String json = objectMapper.writeValueAsString(cTermCode); assertTrue(json.contains("\"constraint_status\" : \"preferred\"")); @@ -246,9 +247,9 @@ public void cTerminologyCode() throws Exception { @Test public void rmOverlay() throws Exception { Archetype archetype = TestUtil.parseFailOnErrors("/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.to_flatten_parent_with_overlay.v1.0.0.adls"); - String json = JacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()).writeValueAsString(archetype); + String json = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()).writeValueAsString(archetype); - Archetype parsed = JacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()).readValue(json, Archetype.class); + Archetype parsed = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()).readValue(json, Archetype.class); assertEquals(VisibilityType.HIDE, parsed.getRmOverlay().getRmVisibility().get("/subject").getVisibility()); assertEquals("at12", parsed.getRmOverlay().getRmVisibility().get("/subject").getAlias().getCodeString()); @@ -277,7 +278,7 @@ public void rmOverlay() throws Exception { public void parseS2AomJson() throws Exception { try(InputStream stream = getClass().getResourceAsStream( "/S2/json/flat/s2-EHR-Action.medication.v1.2.2.json")) { - Archetype parsed = JacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()).readValue(stream, Archetype.class); + Archetype parsed = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()).readValue(stream, Archetype.class); assertNotNull(parsed); } } @@ -286,7 +287,7 @@ public void parseS2AomJson() throws Exception { @Test public void parseS2AomJsonAll() throws Exception { - ObjectMapper mapper = JacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); + ObjectMapper mapper = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); Files.find(new File("../../ADL-exported/S2-S2_demo/json/flat").toPath(), 1, diff --git a/tools/src/test/java/com/nedap/archie/json/JacksonRMRoundTripTest.java b/tools/src/test/java/com/nedap/archie/json/JacksonRMRoundTripTest.java index ff0329a1c..ec7ccf79a 100644 --- a/tools/src/test/java/com/nedap/archie/json/JacksonRMRoundTripTest.java +++ b/tools/src/test/java/com/nedap/archie/json/JacksonRMRoundTripTest.java @@ -6,7 +6,7 @@ import com.nedap.archie.aom.Archetype; import com.nedap.archie.query.RMQueryContext; -import com.nedap.archie.rm.RMObject; +import com.nedap.archie.base.RMObject; import com.nedap.archie.rm.composition.Composition; import com.nedap.archie.rm.datastructures.Cluster; import com.nedap.archie.rm.datavalues.DvText; @@ -17,9 +17,10 @@ import com.nedap.archie.rm.datavalues.quantity.datetime.DvTime; import com.nedap.archie.rm.support.identification.HierObjectId; import com.nedap.archie.rm.support.identification.UIDBasedId; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; import com.nedap.archie.testutil.TestUtil; -import com.nedap.archie.xml.JAXBUtil; +import com.nedap.archie.serialisation.xml.OpenEhrRmJAXBUtil; import org.junit.Before; import org.junit.Test; @@ -76,9 +77,9 @@ public void dataValues() throws Exception { DvURI uri = queryContext.find("/items['Uri']/value"); uri.setValue(URI.create("http://test.example.com")); - String json = JacksonUtil.getObjectMapper().writeValueAsString(cluster); + String json = OpenEhrRmJacksonUtil.getObjectMapper().writeValueAsString(cluster); System.out.println(json); - Cluster parsedCluster = (Cluster) JacksonUtil.getObjectMapper().readValue(json, Cluster.class); + Cluster parsedCluster = (Cluster) OpenEhrRmJacksonUtil.getObjectMapper().readValue(json, Cluster.class); RMQueryContext parsedQueryContext = getQueryContext(parsedCluster); assertThat(parsedQueryContext.find("/items['Text']/value").getValue(), is("test-text")); @@ -93,7 +94,7 @@ public void dataValues() throws Exception { } private RMQueryContext getQueryContext(Cluster cluster) { - return new RMQueryContext(ArchieRMInfoLookup.getInstance(), cluster, JAXBUtil.getArchieJAXBContext()); + return new RMQueryContext(OpenEhrRmInfoLookup.getInstance(), cluster, OpenEhrRmJAXBUtil.getArchieJAXBContext()); } @Test @@ -106,7 +107,7 @@ public void composition() throws Exception { //include the type property name so we can parse it as an RmObject here. config.setAlwaysIncludeTypeProperty(true); - ObjectMapper objectMapper = JacksonUtil.getObjectMapper(); + ObjectMapper objectMapper = OpenEhrRmJacksonUtil.getObjectMapper(); String json = objectMapper.writeValueAsString(composition); Composition parsedComposition = (Composition) objectMapper.readValue(json, Composition.class); @@ -126,7 +127,7 @@ public void check055BackwardsCompatibility() throws Exception { //unfortunately, we cannot handle two different type propety names //that is sort of possible in jackson, but would require overriding internal jackson classes standardsCompliant.setTypePropertyName("@type"); - JacksonUtil.getObjectMapper(standardsCompliant).readValue(stream, RMObject.class); + OpenEhrRmJacksonUtil.getObjectMapper(standardsCompliant).readValue(stream, RMObject.class); } diff --git a/tools/src/test/java/com/nedap/archie/json/RMJacksonTest.java b/tools/src/test/java/com/nedap/archie/json/RMJacksonTest.java index 528960ea2..34cfb2172 100644 --- a/tools/src/test/java/com/nedap/archie/json/RMJacksonTest.java +++ b/tools/src/test/java/com/nedap/archie/json/RMJacksonTest.java @@ -6,6 +6,7 @@ import com.nedap.archie.rm.datavalues.DvText; import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; import com.nedap.archie.rm.datavalues.quantity.datetime.DvDuration; +import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; import org.junit.Test; import org.threeten.extra.PeriodDuration; @@ -24,12 +25,12 @@ public class RMJacksonTest { public void parseEhrBaseJsonExample() throws Exception { try(InputStream stream = getClass().getResourceAsStream("pablos_example.json")) { ArchieJacksonConfiguration configuration = ArchieJacksonConfiguration.createStandardsCompliant(); - Composition parsed = JacksonUtil.getObjectMapper(configuration).readValue(stream, Composition.class); + Composition parsed = OpenEhrRmJacksonUtil.getObjectMapper(configuration).readValue(stream, Composition.class); assertEquals("__THIS_SHOULD_BE_MODIFIED_BY_THE_TEST_::piri.ehrscape.com::1", parsed.getUid().getValue()); assertEquals("openEHR-EHR-COMPOSITION.report-mnd.v1", parsed.getArchetypeNodeId()); - String json = JacksonUtil.getObjectMapper(configuration).writeValueAsString(parsed); + String json = OpenEhrRmJacksonUtil.getObjectMapper(configuration).writeValueAsString(parsed); ObjectMapper simpleMapper = new ObjectMapper(); LinkedHashMap mapped = simpleMapper.readValue(json, LinkedHashMap.class); assertEquals("openEHR-EHR-COMPOSITION.report-mnd.v1", mapped.get("archetype_node_id")); @@ -44,7 +45,7 @@ public void parseDuration() throws Exception { " \"_type\": \"DV_DURATION\",\n" + " \"value\": \"PT12H20S\"\n" + "}"; - ObjectMapper objectMapper = JacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); + ObjectMapper objectMapper = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); DvDuration dvDuration = objectMapper.readValue(json, DvDuration.class); assertEquals(Duration.parse("PT12H20S"), dvDuration.getValue()); @@ -58,7 +59,7 @@ public void parseNegativeDuration() throws Exception { " \"_type\": \"DV_DURATION\",\n" + " \"value\": \"-PT12H20S\"\n" + "}"; - ObjectMapper objectMapper = JacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); + ObjectMapper objectMapper = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); DvDuration dvDuration = objectMapper.readValue(json, DvDuration.class); assertEquals(Duration.parse("-PT12H20S"), dvDuration.getValue()); @@ -72,7 +73,7 @@ public void parsePeriodDuration() throws Exception { " \"_type\": \"DV_DURATION\",\n" + " \"value\": \"-P10Y10DT12H20S\"\n" + "}"; - ObjectMapper objectMapper = JacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); + ObjectMapper objectMapper = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); DvDuration dvDuration = objectMapper.readValue(json, DvDuration.class); assertEquals(PeriodDuration.parse("-P10Y10DT12H20S"), dvDuration.getValue()); @@ -84,7 +85,7 @@ public void parsePeriodDuration() throws Exception { public void emptyDvTextIsIncluded() throws JsonProcessingException { ArchieJacksonConfiguration configuration = ArchieJacksonConfiguration.createStandardsCompliant(); configuration.setSerializeEmptyCollections(false); - ObjectMapper objectMapper = JacksonUtil.getObjectMapper(configuration); + ObjectMapper objectMapper = OpenEhrRmJacksonUtil.getObjectMapper(configuration); DvText dvText = new DvText(""); @@ -100,7 +101,7 @@ public void emptyDvTextIsIncluded() throws JsonProcessingException { public void emptyCollectionIsNotIncluded() throws JsonProcessingException { ArchieJacksonConfiguration configuration = ArchieJacksonConfiguration.createStandardsCompliant();; configuration.setSerializeEmptyCollections(false); - ObjectMapper objectMapper = JacksonUtil.getObjectMapper(configuration); + ObjectMapper objectMapper = OpenEhrRmJacksonUtil.getObjectMapper(configuration); DvText dvText = new DvText(""); dvText.setMappings(new ArrayList<>()); @@ -117,7 +118,7 @@ public void emptyCollectionIsNotIncluded() throws JsonProcessingException { public void emptyCollectionInCollection() throws JsonProcessingException { ArchieJacksonConfiguration configuration = ArchieJacksonConfiguration.createStandardsCompliant();; configuration.setSerializeEmptyCollections(false); - ObjectMapper objectMapper = JacksonUtil.getObjectMapper(configuration); + ObjectMapper objectMapper = OpenEhrRmJacksonUtil.getObjectMapper(configuration); Map> map = new LinkedHashMap<>(); map.put("test", new LinkedHashMap<>()); @@ -130,7 +131,7 @@ public void emptyCollectionInCollection() throws JsonProcessingException { @Test public void serializeDvDateTime() throws Exception { - ObjectMapper objectMapper = JacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); + ObjectMapper objectMapper = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); DvDateTime dateTime = new DvDateTime(LocalDateTime.of(2015, 1, 1, 12, 10, 12, 0)); String dateTimeString = objectMapper.writeValueAsString(dateTime); assertTrue(dateTimeString.contains("\"2015-01-01T12:10:12\"")); diff --git a/tools/src/test/java/com/nedap/archie/json/flat/ArchetypeParsePostProcessorTest.java b/tools/src/test/java/com/nedap/archie/json/flat/ArchetypeParsePostProcessorTest.java index bb7c04287..5692be9bb 100644 --- a/tools/src/test/java/com/nedap/archie/json/flat/ArchetypeParsePostProcessorTest.java +++ b/tools/src/test/java/com/nedap/archie/json/flat/ArchetypeParsePostProcessorTest.java @@ -3,7 +3,7 @@ import com.nedap.archie.aom.*; import com.nedap.archie.aom.utils.ArchetypeParsePostProcesser; import com.nedap.archie.json.ArchieJacksonConfiguration; -import com.nedap.archie.json.JacksonUtil; +import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; import org.junit.Test; import java.io.InputStream; @@ -15,7 +15,7 @@ public class ArchetypeParsePostProcessorTest { public void setTupleParents() throws Exception { ArchieJacksonConfiguration config = ArchieJacksonConfiguration.createConfigForJavascriptUsage(); try(InputStream stream = getClass().getResourceAsStream("/com/nedap/archie/json/snaq_rc_opt.js")) { - OperationalTemplate template = JacksonUtil.getObjectMapper(config).readValue(stream, OperationalTemplate.class); + OperationalTemplate template = OpenEhrRmJacksonUtil.getObjectMapper(config).readValue(stream, OperationalTemplate.class); ArchetypeParsePostProcesser.fixArchetype(template); CComplexObject dvOrdinal = template.itemAtPath("/content[id0.0.100.1]/data[id2]/events[id3]/data[id4]/items[id15]/value[id25]"); CAttributeTuple tuple = dvOrdinal.getAttributeTuples().get(0); diff --git a/tools/src/test/java/com/nedap/archie/json/flat/FlatJsonGeneratorTest.java b/tools/src/test/java/com/nedap/archie/json/flat/FlatJsonGeneratorTest.java index 38717f003..c8a88f3a6 100644 --- a/tools/src/test/java/com/nedap/archie/json/flat/FlatJsonGeneratorTest.java +++ b/tools/src/test/java/com/nedap/archie/json/flat/FlatJsonGeneratorTest.java @@ -10,13 +10,13 @@ import com.nedap.archie.flattener.Flattener; import com.nedap.archie.flattener.FlattenerConfiguration; import com.nedap.archie.flattener.SimpleArchetypeRepository; -import com.nedap.archie.json.JacksonUtil; +import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; import com.nedap.archie.rm.composition.Observation; import com.nedap.archie.rm.datastructures.Cluster; import com.nedap.archie.rm.datastructures.Element; import com.nedap.archie.rm.datavalues.DvText; import com.nedap.archie.rm.datavalues.quantity.DvCount; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.MetaModels; import org.junit.After; import org.junit.Test; @@ -51,7 +51,7 @@ public void testBloodPressureExample() throws Exception { config.setWritePipesForPrimitiveTypes(false); Map stringObjectMap = createExampleInstance(bloodPressureOpt, config); - System.out.println(JacksonUtil.getObjectMapper().writeValueAsString(stringObjectMap)); + System.out.println(OpenEhrRmJacksonUtil.getObjectMapper().writeValueAsString(stringObjectMap)); //type property assertEquals("OBSERVATION", stringObjectMap.get("/_type")); @@ -82,7 +82,7 @@ public void testBloodPressureExampleWithPipesForFinalFields() throws Exception { config.setFilterTypes(false); Map stringObjectMap = createExampleInstance(bloodPressureOpt, config); - System.out.println(JacksonUtil.getObjectMapper().writeValueAsString(stringObjectMap)); + System.out.println(OpenEhrRmJacksonUtil.getObjectMapper().writeValueAsString(stringObjectMap)); //type property assertEquals("OBSERVATION", stringObjectMap.get("/_type")); @@ -110,7 +110,7 @@ public void testNedapInternalFormat() throws Exception { config.setWritePipesForPrimitiveTypes(false); Map stringObjectMap = createExampleInstance(bloodPressureOpt, config); - System.out.println(JacksonUtil.getObjectMapper().writeValueAsString(stringObjectMap)); + System.out.println(OpenEhrRmJacksonUtil.getObjectMapper().writeValueAsString(stringObjectMap)); //type property assertEquals("OBSERVATION", stringObjectMap.get("/@type")); @@ -138,9 +138,9 @@ public void continuesIndices() throws Exception { cluster.addItem(new Element("id3", null, new DvCount(4L))); FlatJsonFormatConfiguration config = FlatJsonFormatConfiguration.nedapInternalFormat(); - Map stringObjectMap = new FlatJsonGenerator(ArchieRMInfoLookup.getInstance(), config).buildPathsAndValues(cluster); + Map stringObjectMap = new FlatJsonGenerator(OpenEhrRmInfoLookup.getInstance(), config).buildPathsAndValues(cluster); - System.out.println(JacksonUtil.getObjectMapper().writeValueAsString(stringObjectMap)); + System.out.println(OpenEhrRmJacksonUtil.getObjectMapper().writeValueAsString(stringObjectMap)); Map expected = new LinkedHashMap<>(); expected.put("/@type", "CLUSTER"); @@ -170,7 +170,7 @@ public void dontSerializeNames() throws Exception { //config.getIgnoredAttributes().add(new AttributeReference("LOCATABLE", "name")); Map stringObjectMap = new FlatJsonExampleInstanceGenerator().generateExample(bloodPressureOpt, BuiltinReferenceModels.getMetaModels(), "en", config); - System.out.println(JacksonUtil.getObjectMapper().writeValueAsString(stringObjectMap)); + System.out.println(OpenEhrRmJacksonUtil.getObjectMapper().writeValueAsString(stringObjectMap)); //type property assertEquals("OBSERVATION", stringObjectMap.get("/@type")); @@ -214,7 +214,7 @@ public void dontSerializeTypes() throws Exception { Map stringObjectMap = new FlatJsonGenerator(metaModels.getSelectedModelInfoLookup(), config).buildPathsAndValues(bloodPressure, bloodPressureOpt, "en"); - System.out.println(JacksonUtil.getObjectMapper().writeValueAsString(stringObjectMap)); + System.out.println(OpenEhrRmJacksonUtil.getObjectMapper().writeValueAsString(stringObjectMap)); //no type at root assertNull(stringObjectMap.get("/@type")); @@ -276,7 +276,7 @@ public void filterTypesWithAlternatives() throws Exception { //config.getIgnoredAttributes().add(new AttributeReference("LOCATABLE", "name")); Map stringObjectMap = new FlatJsonExampleInstanceGenerator().generateExample(bloodPressureOpt, BuiltinReferenceModels.getMetaModels(), "en", config); - System.out.println(JacksonUtil.getObjectMapper().writeValueAsString(stringObjectMap)); + System.out.println(OpenEhrRmJacksonUtil.getObjectMapper().writeValueAsString(stringObjectMap)); //the one data value assertEquals("true", stringObjectMap.get("/items[id2,1]/value/value")); diff --git a/tools/src/test/java/com/nedap/archie/paths/PathSegmentTest.java b/tools/src/test/java/com/nedap/archie/paths/PathSegmentTest.java index 60d561a37..6e51ac04a 100644 --- a/tools/src/test/java/com/nedap/archie/paths/PathSegmentTest.java +++ b/tools/src/test/java/com/nedap/archie/paths/PathSegmentTest.java @@ -1,5 +1,6 @@ package com.nedap.archie.paths; +import com.nedap.archie.apath.PathSegment; import org.junit.Test; import static org.junit.Assert.*; diff --git a/tools/src/test/java/com/nedap/archie/query/RMObjectAttributesTest.java b/tools/src/test/java/com/nedap/archie/query/RMObjectAttributesTest.java index f9e641619..ff4e45dbe 100644 --- a/tools/src/test/java/com/nedap/archie/query/RMObjectAttributesTest.java +++ b/tools/src/test/java/com/nedap/archie/query/RMObjectAttributesTest.java @@ -12,7 +12,7 @@ import com.nedap.archie.rm.datastructures.Item; import com.nedap.archie.rm.datastructures.ItemStructure; import com.nedap.archie.rm.datavalues.DataValue; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ModelInfoLookup; import com.nedap.archie.testutil.TestUtil; import org.junit.Before; @@ -41,7 +41,7 @@ public void testGetAttributeValueFromRMObject() { root = (Pathable) testUtil.constructEmptyRMObject(archetype.getDefinition()); Composition composition = (Composition) root; - ModelInfoLookup modelInfoLookup = ArchieRMInfoLookup.getInstance(); + ModelInfoLookup modelInfoLookup = OpenEhrRmInfoLookup.getInstance(); EventContext expectedContext = composition.getContext(); Object actualContext = getAttributeValueFromRMObject(composition, "context", modelInfoLookup); diff --git a/tools/src/test/java/com/nedap/archie/query/RMQueryContextTest.java b/tools/src/test/java/com/nedap/archie/query/RMQueryContextTest.java index 49d06eb22..147c3b162 100644 --- a/tools/src/test/java/com/nedap/archie/query/RMQueryContextTest.java +++ b/tools/src/test/java/com/nedap/archie/query/RMQueryContextTest.java @@ -10,10 +10,10 @@ import com.nedap.archie.rm.composition.Composition; import com.nedap.archie.rm.datastructures.ItemTree; import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ModelInfoLookup; import com.nedap.archie.testutil.TestUtil; -import com.nedap.archie.xml.JAXBUtil; +import com.nedap.archie.serialisation.xml.OpenEhrRmJAXBUtil; import org.junit.Before; import org.junit.Test; @@ -50,7 +50,7 @@ public void simpleTest() throws Exception { } private RMQueryContext getQueryContext() { - return new RMQueryContext(ArchieRMInfoLookup.getInstance(), root, JAXBUtil.getArchieJAXBContext()); + return new RMQueryContext(OpenEhrRmInfoLookup.getInstance(), root, OpenEhrRmJAXBUtil.getArchieJAXBContext()); } @Test @@ -79,7 +79,7 @@ public void multipleItems() throws Exception { RMQueryContext queryContext = getQueryContext(); - ModelInfoLookup modelInfoLookup = ArchieRMInfoLookup.getInstance(); + ModelInfoLookup modelInfoLookup = OpenEhrRmInfoLookup.getInstance(); List context = new RMPathQuery("/context").findList(modelInfoLookup, composition); assertEquals(1, context.size()); @@ -109,7 +109,7 @@ public void withSimplePaths() throws Exception { RMQueryContext queryContext = getQueryContext(); - ModelInfoLookup modelInfoLookup = ArchieRMInfoLookup.getInstance(); + ModelInfoLookup modelInfoLookup = OpenEhrRmInfoLookup.getInstance(); List context = new RMPathQuery("/context").findList(modelInfoLookup, composition); assertEquals(1, context.size()); diff --git a/tools/src/test/java/com/nedap/archie/rminfo/ArchieRMInfoLookupTest.java b/tools/src/test/java/com/nedap/archie/rminfo/openEhrRMInfoLookupTest.java similarity index 96% rename from tools/src/test/java/com/nedap/archie/rminfo/ArchieRMInfoLookupTest.java rename to tools/src/test/java/com/nedap/archie/rminfo/openEhrRMInfoLookupTest.java index 094419e53..0050eb9d3 100644 --- a/tools/src/test/java/com/nedap/archie/rminfo/ArchieRMInfoLookupTest.java +++ b/tools/src/test/java/com/nedap/archie/rminfo/openEhrRMInfoLookupTest.java @@ -27,9 +27,9 @@ /** * Created by stefan.teijgeler on 31/08/16. */ -public class ArchieRMInfoLookupTest { +public class openEhrRMInfoLookupTest { - private ModelInfoLookup modelInfoLookup = ArchieRMInfoLookup.getInstance(); + private ModelInfoLookup modelInfoLookup = OpenEhrRmInfoLookup.getInstance(); @Test public void classForRMType() { @@ -106,7 +106,7 @@ public void attributeInfoOfParameterizedExtendsCollectionType() { @Test public void getField() throws Exception { - Field items = ArchieRMInfoLookup.getInstance().getField(Cluster.class, "items"); + Field items = OpenEhrRmInfoLookup.getInstance().getField(Cluster.class, "items"); assertEquals(Cluster.class.getDeclaredField("items"), items); } diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/RmObjectValidatorTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/RmObjectValidatorTest.java index d1c5f254e..ff0c37481 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/RmObjectValidatorTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/RmObjectValidatorTest.java @@ -3,20 +3,18 @@ import com.google.common.collect.Lists; import com.google.common.collect.Sets; import com.nedap.archie.adlparser.ADLParseException; -import com.nedap.archie.adlparser.ADLParser; import com.nedap.archie.aom.Archetype; import com.nedap.archie.aom.OperationalTemplate; import com.nedap.archie.flattener.Flattener; import com.nedap.archie.flattener.FlattenerConfiguration; import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; -import com.nedap.archie.rm.RMObject; import com.nedap.archie.rm.datastructures.Cluster; import com.nedap.archie.rm.datastructures.Element; import com.nedap.archie.rm.datastructures.Item; import com.nedap.archie.rm.datastructures.ItemTree; import com.nedap.archie.rm.datavalues.DvText; import com.nedap.archie.rm.datavalues.quantity.DvProportion; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.testutil.TestUtil; import org.junit.Before; import org.junit.Test; @@ -41,7 +39,7 @@ public void setup() { testUtil = new TestUtil(); emptyRepo = new InMemoryFullArchetypeRepository(); - validator = new RMObjectValidator(ArchieRMInfoLookup.getInstance(), emptyRepo); + validator = new RMObjectValidator(OpenEhrRmInfoLookup.getInstance(), emptyRepo); } @Test diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/ValidateArchetypedTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/ValidateArchetypedTest.java index 0a2a402d3..4b0ce65a2 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/ValidateArchetypedTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/ValidateArchetypedTest.java @@ -14,7 +14,7 @@ import com.nedap.archie.rm.datastructures.ItemTree; import com.nedap.archie.rm.datavalues.quantity.DvProportion; import com.nedap.archie.rm.support.identification.ArchetypeID; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.testutil.TestUtil; import org.junit.Before; import org.junit.Test; @@ -40,7 +40,7 @@ public void setup() throws Exception { testUtil = new TestUtil(); repo = new InMemoryFullArchetypeRepository(); - validator = new RMObjectValidator(ArchieRMInfoLookup.getInstance(), repo); + validator = new RMObjectValidator(OpenEhrRmInfoLookup.getInstance(), repo); elementArchetype = parse("/adl2-tests/rmobjectvalidity/openEHR-EHR-ELEMENT.element_with_required_attributes.v1.0.0.adls"); elementOpt = createOpt(elementArchetype); @@ -69,7 +69,7 @@ public void testArchetypedOtherDetails() { Archetyped details = new Archetyped(); details.setArchetypeId(new ArchetypeID(itemTreeArchetype.getArchetypeId().toString())); - details.setRmVersion(ArchieRMInfoLookup.RM_VERSION); + details.setRmVersion(OpenEhrRmInfoLookup.RM_VERSION); itemTree.setArchetypeDetails(details); FeederAudit feederAudit = new FeederAudit(); diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/InvariantTestUtil.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/InvariantTestUtil.java index bc2261d1c..da0541204 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/InvariantTestUtil.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/InvariantTestUtil.java @@ -10,7 +10,7 @@ import com.nedap.archie.rm.support.identification.LocatableRef; import com.nedap.archie.rm.support.identification.ObjectVersionId; import com.nedap.archie.rm.support.identification.TerminologyId; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rmobjectvalidator.RMObjectValidationMessage; import com.nedap.archie.rmobjectvalidator.RMObjectValidator; import com.nedap.archie.testutil.DummyOperationalTemplateProvider; @@ -24,17 +24,17 @@ public class InvariantTestUtil { private static final OperationalTemplateProvider optProvider = new DummyOperationalTemplateProvider("example"); public static void assertValid(Object object) { - RMObjectValidator validator = new RMObjectValidator(ArchieRMInfoLookup.getInstance(), optProvider); + RMObjectValidator validator = new RMObjectValidator(OpenEhrRmInfoLookup.getInstance(), optProvider); List messages = validator.validate(object); assertTrue("object should be valid, was not: " + messages, messages.isEmpty()); } public static void assertInvariantInvalid(Object object, String invariantName, String path) { - assertInvariantInvalid(object, invariantName, ArchieRMInfoLookup.getInstance().getTypeInfo(object.getClass()).getRmName(), path); + assertInvariantInvalid(object, invariantName, OpenEhrRmInfoLookup.getInstance().getTypeInfo(object.getClass()).getRmName(), path); } public static void assertInvariantInvalid(Object object, String invariantName, String rmTypeName, String path) { - RMObjectValidator validator = new RMObjectValidator(ArchieRMInfoLookup.getInstance(), optProvider); + RMObjectValidator validator = new RMObjectValidator(OpenEhrRmInfoLookup.getInstance(), optProvider); List messages = validator.validate(object); assertEquals(messages.toString(), 1, messages.size()); assertEquals("Invariant " + invariantName + " failed on type " + rmTypeName, messages.get(0).getMessage()); @@ -48,7 +48,7 @@ public static void setLocatableBasics(Locatable locatable) { public static void setArchetypeRootBasics(Locatable locatable) { setLocatableBasics(locatable); - locatable.setArchetypeDetails(new Archetyped(new ArchetypeID("OpenEHR-EHR-" + ArchieRMInfoLookup.getInstance().getTypeInfo(locatable.getClass()).getRmName() + ".example.v1.0.0"), "1.1.0")); + locatable.setArchetypeDetails(new Archetyped(new ArchetypeID("OpenEHR-EHR-" + OpenEhrRmInfoLookup.getInstance().getTypeInfo(locatable.getClass()).getRmName() + ".example.v1.0.0"), "1.1.0")); } public static void setEntryBasics(Entry entry) { diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvEhrUriInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvEhrUriInvariantTest.java index 05a0e0f74..50bbc3e33 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvEhrUriInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvEhrUriInvariantTest.java @@ -1,7 +1,7 @@ package com.nedap.archie.rmobjectvalidator.invariants.datavalues; import com.nedap.archie.rm.datavalues.DvEHRURI; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rmobjectvalidator.RMObjectValidationMessage; import com.nedap.archie.rmobjectvalidator.RMObjectValidator; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; @@ -29,7 +29,7 @@ public void invalid() { @Test public void invalid2() { - RMObjectValidator validator = new RMObjectValidator(ArchieRMInfoLookup.getInstance(), (templateId) -> null); + RMObjectValidator validator = new RMObjectValidator(OpenEhrRmInfoLookup.getInstance(), (templateId) -> null); List messages = validator.validate(new DvEHRURI("")); assertEquals(messages.toString(), 2, messages.size()); diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvParsableInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvParsableInvariantTest.java index 9661b6ebb..bd0290c81 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvParsableInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvParsableInvariantTest.java @@ -3,7 +3,7 @@ import com.nedap.archie.rm.datatypes.CodePhrase; import com.nedap.archie.rm.datavalues.encapsulated.DvParsable; import com.nedap.archie.rm.support.identification.TerminologyId; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rmobjectvalidator.RMObjectValidationMessage; import com.nedap.archie.rmobjectvalidator.RMObjectValidator; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; @@ -33,7 +33,7 @@ public void languageInvalid() { public void charSetInvalid() { DvParsable value = createValid(); value.setCharset(new CodePhrase(new TerminologyId("IANA_character-sets"), "UTF-13")); - RMObjectValidator validator = new RMObjectValidator(ArchieRMInfoLookup.getInstance(), (templateId) -> null); + RMObjectValidator validator = new RMObjectValidator(OpenEhrRmInfoLookup.getInstance(), (templateId) -> null); List messages = validator.validate(value); InvariantTestUtil.assertInvariantInvalid(value, "Charset_valid", "/"); diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/ArchetypeSlotValidationTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/ArchetypeSlotValidationTest.java index b8775189b..8d08a04f7 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/ArchetypeSlotValidationTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/ArchetypeSlotValidationTest.java @@ -7,14 +7,14 @@ import com.nedap.archie.flattener.Flattener; import com.nedap.archie.flattener.FlattenerConfiguration; import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; -import com.nedap.archie.json.JacksonUtil; +import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; import com.nedap.archie.rm.archetyped.Archetyped; import com.nedap.archie.rm.composition.Observation; import com.nedap.archie.rm.composition.Section; import com.nedap.archie.rm.datastructures.Element; import com.nedap.archie.rm.datavalues.DvCodedText; import com.nedap.archie.rm.support.identification.ArchetypeID; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rmobjectvalidator.RMObjectValidationMessage; import com.nedap.archie.rmobjectvalidator.RMObjectValidationMessageType; import com.nedap.archie.rmobjectvalidator.RMObjectValidator; @@ -63,8 +63,8 @@ public void setup() throws IOException, ADLParseException { generator = new ExampleJsonInstanceGenerator(BuiltinReferenceModels.getMetaModels(), "en"); Map generated = generator.generate(parentOpt); - example = JacksonUtil.getObjectMapper().readValue(JacksonUtil.getObjectMapper().writeValueAsString(generated), Section.class); - rmObjectValidator = new RMObjectValidator(ArchieRMInfoLookup.getInstance(), repository); + example = OpenEhrRmJacksonUtil.getObjectMapper().readValue(OpenEhrRmJacksonUtil.getObjectMapper().writeValueAsString(generated), Section.class); + rmObjectValidator = new RMObjectValidator(OpenEhrRmInfoLookup.getInstance(), repository); } private Flattener createFlattener() { @@ -77,7 +77,7 @@ public void validateWithCorrectArchetypeInSlot() throws Exception { example.getItems().remove(0); //generate a valid content, and validate - Observation exampleIncluded = JacksonUtil.getObjectMapper().readValue(JacksonUtil.getObjectMapper().writeValueAsString(generator.generate(includedOpt)), Observation.class); + Observation exampleIncluded = OpenEhrRmJacksonUtil.getObjectMapper().readValue(OpenEhrRmJacksonUtil.getObjectMapper().writeValueAsString(generator.generate(includedOpt)), Observation.class); example.addItem(exampleIncluded); exampleIncluded.setArchetypeNodeId("id2"); @@ -104,7 +104,7 @@ public void incorrectArchetypeInSlot() throws Exception { example.getItems().remove(0); //generate content with a wrong archetype, and validate - Observation exampleIncluded = JacksonUtil.getObjectMapper().readValue(JacksonUtil.getObjectMapper().writeValueAsString(generator.generate(parentOfIncludedOpt)), Observation.class); + Observation exampleIncluded = OpenEhrRmJacksonUtil.getObjectMapper().readValue(OpenEhrRmJacksonUtil.getObjectMapper().writeValueAsString(generator.generate(parentOfIncludedOpt)), Observation.class); example.addItem(exampleIncluded); exampleIncluded.setArchetypeNodeId("id2"); @@ -122,7 +122,7 @@ public void unknownArchetypeInSlot() throws Exception { example.getItems().remove(0); //generate a valid content, and validate - Observation exampleIncluded = JacksonUtil.getObjectMapper().readValue(JacksonUtil.getObjectMapper().writeValueAsString(generator.generate(includedOpt)), Observation.class); + Observation exampleIncluded = OpenEhrRmJacksonUtil.getObjectMapper().readValue(OpenEhrRmJacksonUtil.getObjectMapper().writeValueAsString(generator.generate(includedOpt)), Observation.class); exampleIncluded.setArchetypeDetails(new Archetyped(new ArchetypeID("openEHR-EHR-OBSERVATION.redefine_notfound.v1.0.0.adls"), "1.1.0")); example.addItem(exampleIncluded); exampleIncluded.setArchetypeNodeId("id2"); @@ -140,7 +140,7 @@ public void noArchetypeIdInSlot() throws Exception { example.getItems().remove(0); //generate a valid content, and validate - Observation exampleIncluded = JacksonUtil.getObjectMapper().readValue(JacksonUtil.getObjectMapper().writeValueAsString(generator.generate(includedOpt)), Observation.class); + Observation exampleIncluded = OpenEhrRmJacksonUtil.getObjectMapper().readValue(OpenEhrRmJacksonUtil.getObjectMapper().writeValueAsString(generator.generate(includedOpt)), Observation.class); example.addItem(exampleIncluded); exampleIncluded.setArchetypeNodeId("id2"); exampleIncluded.setArchetypeDetails(null); diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMPrimitiveObjectValidationTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMPrimitiveObjectValidationTest.java index f0c90abe8..76471b719 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMPrimitiveObjectValidationTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMPrimitiveObjectValidationTest.java @@ -4,7 +4,7 @@ import com.nedap.archie.aom.primitives.CInteger; import com.nedap.archie.base.Interval; import com.nedap.archie.query.RMObjectWithPath; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ModelInfoLookup; import com.nedap.archie.rmobjectvalidator.RMObjectValidationMessage; import org.junit.BeforeClass; @@ -17,11 +17,11 @@ public class RMPrimitiveObjectValidationTest { - private static ArchieRMInfoLookup lookup; + private static OpenEhrRmInfoLookup lookup; @BeforeClass public static void beforeClass() { - lookup = ArchieRMInfoLookup.getInstance(); + lookup = OpenEhrRmInfoLookup.getInstance(); } public static List validate(ModelInfoLookup lookup, List rmObjects, String pathSoFar, CPrimitiveObject cobject) { diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMTupleValidationTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMTupleValidationTest.java index fb9f03404..42463713f 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMTupleValidationTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMTupleValidationTest.java @@ -6,7 +6,7 @@ import com.nedap.archie.base.Interval; import com.nedap.archie.query.RMObjectWithPath; import com.nedap.archie.rm.datavalues.quantity.DvQuantity; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rmobjectvalidator.RMObjectValidationMessage; import org.junit.BeforeClass; import org.junit.Test; @@ -17,11 +17,11 @@ import static org.junit.Assert.assertEquals; public class RMTupleValidationTest { - private static ArchieRMInfoLookup lookup; + private static OpenEhrRmInfoLookup lookup; @BeforeClass public static void beforeClass() { - lookup = ArchieRMInfoLookup.getInstance(); + lookup = OpenEhrRmInfoLookup.getInstance(); } @Test diff --git a/tools/src/test/java/com/nedap/archie/rmutil/PathableUtilTest.java b/tools/src/test/java/com/nedap/archie/rmutil/PathableUtilTest.java index 5fb280a82..8a86dfbc7 100644 --- a/tools/src/test/java/com/nedap/archie/rmutil/PathableUtilTest.java +++ b/tools/src/test/java/com/nedap/archie/rmutil/PathableUtilTest.java @@ -11,10 +11,10 @@ import com.nedap.archie.rm.composition.Composition; import com.nedap.archie.rm.datastructures.Cluster; import com.nedap.archie.rm.datastructures.ItemTree; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ModelInfoLookup; import com.nedap.archie.testutil.TestUtil; -import com.nedap.archie.xml.JAXBUtil; +import com.nedap.archie.serialisation.xml.OpenEhrRmJAXBUtil; import org.junit.Before; import org.junit.Test; @@ -36,7 +36,7 @@ public void setup() throws Exception { } private RMQueryContext getQueryContext() { - return new RMQueryContext(ArchieRMInfoLookup.getInstance(), root, JAXBUtil.getArchieJAXBContext()); + return new RMQueryContext(OpenEhrRmInfoLookup.getInstance(), root, OpenEhrRmJAXBUtil.getArchieJAXBContext()); } @Test @@ -54,7 +54,7 @@ public void withSimplePaths() throws Exception { RMQueryContext queryContext = getQueryContext(); - ModelInfoLookup modelInfoLookup = ArchieRMInfoLookup.getInstance(); + ModelInfoLookup modelInfoLookup = OpenEhrRmInfoLookup.getInstance(); List context = new RMPathQuery("/context").findList(modelInfoLookup, composition); assertEquals(1, context.size()); diff --git a/tools/src/test/java/com/nedap/archie/rules/evaluation/BinaryOperatorTest.java b/tools/src/test/java/com/nedap/archie/rules/evaluation/BinaryOperatorTest.java index af74d93ba..4a1585ee2 100644 --- a/tools/src/test/java/com/nedap/archie/rules/evaluation/BinaryOperatorTest.java +++ b/tools/src/test/java/com/nedap/archie/rules/evaluation/BinaryOperatorTest.java @@ -1,6 +1,6 @@ package com.nedap.archie.rules.evaluation; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rules.BinaryOperator; import com.nedap.archie.rules.Constant; import com.nedap.archie.rules.ExpressionType; @@ -361,7 +361,7 @@ private void testBinaryOperator(Object expected, ExpressionType type, Object lef Constant rightConstant = new Constant<>(type, right); operator.addOperand(leftConstant); operator.addOperand(rightConstant); - RuleEvaluation eval = new RuleEvaluation<>(ArchieRMInfoLookup.getInstance(), null);//should be archetype, not very relevant here + RuleEvaluation eval = new RuleEvaluation<>(OpenEhrRmInfoLookup.getInstance(), null);//should be archetype, not very relevant here assertEquals(expected, eval.evaluate(operator).getValueObjects().get(0)); } diff --git a/tools/src/test/java/com/nedap/archie/rules/evaluation/FixableAssertionsCheckerTest.java b/tools/src/test/java/com/nedap/archie/rules/evaluation/FixableAssertionsCheckerTest.java index 40215a8d7..3d3b1f622 100644 --- a/tools/src/test/java/com/nedap/archie/rules/evaluation/FixableAssertionsCheckerTest.java +++ b/tools/src/test/java/com/nedap/archie/rules/evaluation/FixableAssertionsCheckerTest.java @@ -10,7 +10,7 @@ import com.nedap.archie.rm.datastructures.ItemTree; import com.nedap.archie.rm.datavalues.DvBoolean; import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.testutil.TestUtil; import org.junit.After; import org.junit.Before; @@ -36,7 +36,7 @@ public class FixableAssertionsCheckerTest { @Before public void setup() { testUtil = new TestUtil(); - rmObjectCreator = new RMObjectCreator(ArchieRMInfoLookup.getInstance()); + rmObjectCreator = new RMObjectCreator(OpenEhrRmInfoLookup.getInstance()); parser = new ADLParser(BuiltinReferenceModels.getMetaModels()); ArchieLanguageConfiguration.setThreadLocalLogicalPathLanguage("en"); ArchieLanguageConfiguration.setThreadLocalDescriptiongAndMeaningLanguage("en"); @@ -191,7 +191,7 @@ public void constructOnlyNecessaryStructure() throws Exception { } private RuleEvaluation getRuleEvaluation() { - return new RuleEvaluation<>(ArchieRMInfoLookup.getInstance(), archetype); + return new RuleEvaluation<>(OpenEhrRmInfoLookup.getInstance(), archetype); } } diff --git a/tools/src/test/java/com/nedap/archie/rules/evaluation/FunctionsTest.java b/tools/src/test/java/com/nedap/archie/rules/evaluation/FunctionsTest.java index 9a5cfdf4c..fced73438 100644 --- a/tools/src/test/java/com/nedap/archie/rules/evaluation/FunctionsTest.java +++ b/tools/src/test/java/com/nedap/archie/rules/evaluation/FunctionsTest.java @@ -9,10 +9,9 @@ import com.nedap.archie.rm.datastructures.Item; import com.nedap.archie.rm.datastructures.ItemTree; import com.nedap.archie.rm.datavalues.quantity.DvQuantity; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rules.PrimitiveType; import com.nedap.archie.testutil.TestUtil; -import com.nedap.archie.xml.JAXBUtil; import org.junit.Before; import org.junit.Test; @@ -59,7 +58,7 @@ public void max() throws Exception { } private RuleEvaluation getRuleEvaluation() { - return new RuleEvaluation<>(ArchieRMInfoLookup.getInstance(), archetype); + return new RuleEvaluation<>(OpenEhrRmInfoLookup.getInstance(), archetype); } @Test diff --git a/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationJaxbTest.java b/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationJaxbTest.java index f1d35bb2f..e4dcb4ca6 100644 --- a/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationJaxbTest.java +++ b/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationJaxbTest.java @@ -2,8 +2,8 @@ import com.nedap.archie.rm.archetyped.Pathable; import com.nedap.archie.rm.datavalues.quantity.DvQuantity; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; -import com.nedap.archie.xml.JAXBUtil; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.serialisation.xml.OpenEhrRmJAXBUtil; import org.junit.Test; import java.util.List; @@ -19,7 +19,7 @@ public class ParsedRulesEvaluationJaxbTest extends ParsedRulesEvaluationTest { @Override RuleEvaluation getRuleEvaluation() { - return new RuleEvaluation<>(ArchieRMInfoLookup.getInstance(), JAXBUtil.getArchieJAXBContext(), getArchetype()); + return new RuleEvaluation<>(OpenEhrRmInfoLookup.getInstance(), OpenEhrRmJAXBUtil.getArchieJAXBContext(), getArchetype()); } @Override diff --git a/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationTest.java b/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationTest.java index 681038f4e..17f398870 100644 --- a/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationTest.java +++ b/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationTest.java @@ -8,7 +8,7 @@ import com.nedap.archie.flattener.Flattener; import com.nedap.archie.flattener.FlattenerConfiguration; import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; -import com.nedap.archie.json.JacksonUtil; +import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; import com.nedap.archie.rm.archetyped.Pathable; import com.nedap.archie.rm.composition.Observation; import com.nedap.archie.rm.datastructures.Cluster; @@ -17,7 +17,7 @@ import com.nedap.archie.rm.datavalues.DvCodedText; import com.nedap.archie.rm.datavalues.quantity.DvQuantity; import com.nedap.archie.rm.support.identification.TerminologyId; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rules.BinaryOperator; import com.nedap.archie.rules.ExpressionVariable; import com.nedap.archie.rules.RuleStatement; @@ -697,7 +697,7 @@ public void booleanOperandRelOps() throws Exception { } RuleEvaluation getRuleEvaluation() { - return new RuleEvaluation<>(ArchieRMInfoLookup.getInstance(), archetype); + return new RuleEvaluation<>(OpenEhrRmInfoLookup.getInstance(), archetype); } @Test @@ -726,9 +726,9 @@ public void flattenedRules() throws IOException, ADLParseException { OperationalTemplate opt = (OperationalTemplate) flattener.flatten(parent); ExampleJsonInstanceGenerator generator = new ExampleJsonInstanceGenerator(BuiltinReferenceModels.getMetaModels(), "en"); Map exampleInstance = generator.generate(opt); - Cluster cluster = JacksonUtil.getObjectMapper().readValue(JacksonUtil.getObjectMapper().writeValueAsString(exampleInstance), Cluster.class); + Cluster cluster = OpenEhrRmJacksonUtil.getObjectMapper().readValue(OpenEhrRmJacksonUtil.getObjectMapper().writeValueAsString(exampleInstance), Cluster.class); //correct case first - RuleEvaluation ruleEvaluation = new RuleEvaluation(ArchieRMInfoLookup.getInstance(), opt); + RuleEvaluation ruleEvaluation = new RuleEvaluation(OpenEhrRmInfoLookup.getInstance(), opt); DvCodedText codedText = (DvCodedText) cluster.itemAtPath("/items[1]/items[1]/value[1]"); codedText.setDefiningCode(new CodePhrase(new TerminologyId("local"), "at4")); codedText.setValue("value 1"); diff --git a/tools/src/test/java/com/nedap/archie/serializer/adl/DefaultValueSerializerTest.java b/tools/src/test/java/com/nedap/archie/serializer/adl/DefaultValueSerializerTest.java index 0f2ee12ae..c9c8ef44b 100644 --- a/tools/src/test/java/com/nedap/archie/serializer/adl/DefaultValueSerializerTest.java +++ b/tools/src/test/java/com/nedap/archie/serializer/adl/DefaultValueSerializerTest.java @@ -4,7 +4,7 @@ import com.nedap.archie.adlparser.ADLParser; import com.nedap.archie.aom.Archetype; import com.nedap.archie.aom.CComplexObject; -import com.nedap.archie.json.ArchieRMObjectMapperProvider; +import com.nedap.archie.serialisation.json.OpenEhrRmObjectMapperProvider; import com.nedap.archie.rm.datastructures.Cluster; import com.nedap.archie.rm.datastructures.Element; import com.nedap.archie.rm.datatypes.CodePhrase; @@ -55,7 +55,7 @@ public void serializeDvTextJson() throws Exception { DvText dvText = new DvText(); dvText.setValue("some default value"); cComplexObject.setDefaultValue(dvText); - String serialized = ADLArchetypeSerializer.serialize(archetype, null, new ArchieRMObjectMapperProvider()); + String serialized = ADLArchetypeSerializer.serialize(archetype, null, new OpenEhrRmObjectMapperProvider()); System.out.println(serialized); assertTrue(serialized.contains("_default = (json) <#")); assertTrue(serialized.contains("\"some default value\"")); @@ -81,7 +81,7 @@ public void serializeDvCodedTextJson() throws Exception { DvCodedText dvCodedText = new DvCodedText("some default value", new CodePhrase(new TerminologyId("local"), "at5")); cComplexObject.setDefaultValue(dvCodedText); - String serialized = ADLArchetypeSerializer.serialize(archetype, null, new ArchieRMObjectMapperProvider()); + String serialized = ADLArchetypeSerializer.serialize(archetype, null, new OpenEhrRmObjectMapperProvider()); System.out.println(serialized); assertTrue(serialized.contains("_default = (json) <#")); assertTrue(serialized.contains("\"some default value\"")); @@ -140,7 +140,7 @@ public void serializeClusterJson() throws Exception { new DvCodedText("some default value", new CodePhrase(new TerminologyId("local"), "at5")))); cComplexObject.setDefaultValue(cluster); - String serialized = ADLArchetypeSerializer.serialize(archetype, null, new ArchieRMObjectMapperProvider()); + String serialized = ADLArchetypeSerializer.serialize(archetype, null, new OpenEhrRmObjectMapperProvider()); System.out.println(serialized); assertTrue(serialized.contains("_default = (json) <#")); assertTrue(serialized.contains("\"some default value\"")); @@ -189,8 +189,8 @@ public void serializeClusterOdin() throws Exception { } - private ArchieRMObjectMapperProvider getOdinProvider() { - return new ArchieRMObjectMapperProvider() { + private OpenEhrRmObjectMapperProvider getOdinProvider() { + return new OpenEhrRmObjectMapperProvider() { @Override public ObjectMapper getJsonObjectMapper() { return null; diff --git a/tools/src/test/java/com/nedap/archie/testutil/TestUtil.java b/tools/src/test/java/com/nedap/archie/testutil/TestUtil.java index c88e41d7b..524d37003 100644 --- a/tools/src/test/java/com/nedap/archie/testutil/TestUtil.java +++ b/tools/src/test/java/com/nedap/archie/testutil/TestUtil.java @@ -12,8 +12,8 @@ import com.nedap.archie.creation.RMObjectCreator; import com.nedap.archie.flattener.FullArchetypeRepository; import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; -import com.nedap.archie.rm.RMObject; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.base.RMObject; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; import org.reflections.Reflections; import org.reflections.scanners.Scanners; import org.slf4j.Logger; @@ -37,7 +37,7 @@ public class TestUtil { private static final Logger logger = LoggerFactory.getLogger(TestUtil.class); - private RMObjectCreator creator = new RMObjectCreator(ArchieRMInfoLookup.getInstance()); + private RMObjectCreator creator = new RMObjectCreator(OpenEhrRmInfoLookup.getInstance()); /** * Creates an empty RM Object, fully nested, one object per CObject found. diff --git a/tools/src/test/java/com/nedap/archie/xml/JAXBAOMRoundTripTest.java b/tools/src/test/java/com/nedap/archie/xml/JAXBAOMRoundTripTest.java index aada07bd4..71dcb9d29 100644 --- a/tools/src/test/java/com/nedap/archie/xml/JAXBAOMRoundTripTest.java +++ b/tools/src/test/java/com/nedap/archie/xml/JAXBAOMRoundTripTest.java @@ -5,6 +5,7 @@ import com.nedap.archie.flattener.Flattener; import com.nedap.archie.flattener.FlattenerTest; import com.nedap.archie.flattener.SimpleArchetypeRepository; +import com.nedap.archie.serialisation.xml.OpenEhrRmJAXBUtil; import com.nedap.archie.testutil.TestUtil; import org.junit.Before; import org.junit.Test; @@ -35,11 +36,11 @@ public void setup() throws Exception { parser = new ADLParser(); //no constraints imposer in this test! writer = new StringWriter(); marshaller = createMarshaller(); - unmarshaller = JAXBUtil.getArchieJAXBContext().createUnmarshaller(); + unmarshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createUnmarshaller(); } private Marshaller createMarshaller() throws JAXBException { - Marshaller marshaller = JAXBUtil.getArchieJAXBContext().createMarshaller(); + Marshaller marshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createMarshaller(); marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); return marshaller; } diff --git a/tools/src/test/java/com/nedap/archie/xml/JAXBAOMTest.java b/tools/src/test/java/com/nedap/archie/xml/JAXBAOMTest.java index c9ecd7f49..55d5be926 100644 --- a/tools/src/test/java/com/nedap/archie/xml/JAXBAOMTest.java +++ b/tools/src/test/java/com/nedap/archie/xml/JAXBAOMTest.java @@ -19,12 +19,12 @@ import com.nedap.archie.base.Interval; import com.nedap.archie.base.terminology.TerminologyCode; import com.nedap.archie.datetime.DateTimeParsers; +import com.nedap.archie.serialisation.xml.OpenEhrRmJAXBUtil; import com.nedap.archie.testutil.TestUtil; import org.junit.Before; import org.junit.Test; import javax.xml.bind.Marshaller; -import javax.xml.bind.PropertyException; import javax.xml.bind.Unmarshaller; import java.io.StringReader; import java.io.StringWriter; @@ -65,7 +65,7 @@ public void serializeCDuration() throws Exception { ))); valueAttribute.addChild(cDuration); StringWriter writer = new StringWriter(); - Marshaller marshaller = JAXBUtil.getArchieJAXBContext().createMarshaller(); + Marshaller marshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createMarshaller(); marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); marshaller.marshal(archetype, writer); String xml = writer.toString(); @@ -81,14 +81,14 @@ public void testCTerminologyCode() throws Exception { cTerminologyCode.setConstraintStatus(ConstraintStatus.PREFERRED); valueAttribute.addChild(cTerminologyCode); StringWriter writer = new StringWriter(); - Marshaller marshaller = JAXBUtil.getArchieJAXBContext().createMarshaller(); + Marshaller marshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createMarshaller(); marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); marshaller.marshal(archetype, writer); String xml = writer.toString(); assertTrue(xml, xml.contains("preferred")); - Unmarshaller unmarshaller = JAXBUtil.getArchieJAXBContext().createUnmarshaller(); + Unmarshaller unmarshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createUnmarshaller(); Archetype unmarshalled = (Archetype) unmarshaller.unmarshal(new StringReader(xml)); CTerminologyCode parsedTerm = (CTerminologyCode) unmarshalled.getDefinition().getAttribute("value").getChildren().get(0); assertEquals(cTerminologyCode.getConstraint(), parsedTerm.getConstraint()); @@ -119,7 +119,7 @@ public void parseCDuration() throws Exception { " \n" + " \n" + ""; - Unmarshaller unmarshaller = JAXBUtil.getArchieJAXBContext().createUnmarshaller(); + Unmarshaller unmarshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createUnmarshaller(); AuthoredArchetype unmarshalled = (AuthoredArchetype) unmarshaller.unmarshal(new StringReader(xml)); CDuration parsedDuration = unmarshalled.itemAtPath("/value[1]"); Interval constraint = parsedDuration.getConstraint().get(0); @@ -133,7 +133,7 @@ public void parseCDuration() throws Exception { public void rmOverlay() throws Exception { Archetype archetype = TestUtil.parseFailOnErrors("/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.to_flatten_parent_with_overlay.v1.0.0.adls"); - Marshaller marshaller = JAXBUtil.getArchieJAXBContext().createMarshaller(); + Marshaller marshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createMarshaller(); StringWriter writer = new StringWriter(); marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); @@ -158,7 +158,7 @@ public void rmOverlay() throws Exception { " \n" + " ")); - Unmarshaller unmarshaller = JAXBUtil.getArchieJAXBContext().createUnmarshaller(); + Unmarshaller unmarshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createUnmarshaller(); Archetype unmarshalled = (Archetype) unmarshaller.unmarshal(new StringReader(writer.toString())); assertEquals(VisibilityType.HIDE, unmarshalled.getRmOverlay().getRmVisibility().get("/subject").getVisibility()); @@ -172,7 +172,7 @@ public void otherMetaData() throws Exception { archetype.getOtherMetaData().put("test key", "test value"); archetype.getOtherMetaData().put("second test key", "second test value"); - Marshaller marshaller = JAXBUtil.getArchieJAXBContext().createMarshaller(); + Marshaller marshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createMarshaller(); StringWriter writer = new StringWriter(); marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); @@ -181,7 +181,7 @@ public void otherMetaData() throws Exception { assertTrue(writer.toString().contains("test value")); assertTrue(writer.toString().contains("second test value")); - Unmarshaller unmarshaller = JAXBUtil.getArchieJAXBContext().createUnmarshaller(); + Unmarshaller unmarshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createUnmarshaller(); Archetype unmarshalled = (Archetype) unmarshaller.unmarshal(new StringReader(writer.toString())); assertEquals("test value", unmarshalled.getOtherMetaData().get("test key")); assertEquals("second test value", unmarshalled.getOtherMetaData().get("second test key")); @@ -214,7 +214,7 @@ public void opt2Xml() throws Exception { opt2.setTerminologyExtracts(new LinkedHashMap<>()); opt2.getTerminologyExtracts().put("openEHR-EHR-CLUSTER.non_existing_test-archetype_2.v1.0.0", terminology); - Marshaller marshaller = JAXBUtil.getArchieJAXBContext().createMarshaller(); + Marshaller marshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createMarshaller(); StringWriter writer = new StringWriter(); marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); @@ -229,7 +229,7 @@ public void opt2Xml() throws Exception { " \n" + " ")); - Unmarshaller unmarshaller = JAXBUtil.getArchieJAXBContext().createUnmarshaller(); + Unmarshaller unmarshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createUnmarshaller(); OperationalTemplate unmarshalled = (OperationalTemplate) unmarshaller.unmarshal(new StringReader(writer.toString())); assertEquals(terms.get("id2").getText(), unmarshalled.getComponentTerminologies().get("openEHR-EHR-CLUSTER.non_existing_test-archetype.v1.0.0").getTermDefinition("en", "id2").getText()); assertEquals(terms.get("id2").getText(), unmarshalled.getTerminologyExtracts().get("openEHR-EHR-CLUSTER.non_existing_test-archetype_2.v1.0.0").getTermDefinition("en", "id2").getText()); @@ -269,7 +269,7 @@ public void templateXml() throws Exception { template.addTemplateOverlay(overlay); - Marshaller marshaller = JAXBUtil.getArchieJAXBContext().createMarshaller(); + Marshaller marshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createMarshaller(); StringWriter writer = new StringWriter(); marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); @@ -286,7 +286,7 @@ public void templateXml() throws Exception { " \n" + " ")); - Unmarshaller unmarshaller = JAXBUtil.getArchieJAXBContext().createUnmarshaller(); + Unmarshaller unmarshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createUnmarshaller(); Template unmarshalled = (Template) unmarshaller.unmarshal(new StringReader(writer.toString())); assertEquals("one template overlay should have been unmarshalled", 1, unmarshalled.getTemplateOverlays().size()); assertEquals("openEHR-EHR-ELEMENT.test.v0.0.1", unmarshalled.getTemplateOverlays().get(0).getArchetypeId().getFullId()); diff --git a/tools/src/test/java/com/nedap/archie/xml/JAXBRMRoundTripTest.java b/tools/src/test/java/com/nedap/archie/xml/JAXBRMRoundTripTest.java index 97c5fb38b..298f287fc 100644 --- a/tools/src/test/java/com/nedap/archie/xml/JAXBRMRoundTripTest.java +++ b/tools/src/test/java/com/nedap/archie/xml/JAXBRMRoundTripTest.java @@ -9,7 +9,8 @@ import com.nedap.archie.rm.datavalues.quantity.datetime.DvDate; import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; import com.nedap.archie.rm.datavalues.quantity.datetime.DvTime; -import com.nedap.archie.rminfo.ArchieRMInfoLookup; +import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.serialisation.xml.OpenEhrRmJAXBUtil; import com.nedap.archie.testutil.TestUtil; import org.junit.Before; import org.junit.Test; @@ -62,7 +63,7 @@ public void dataValues() throws Exception { time.setValue(LocalTime.of(12, 0)); StringWriter writer = new StringWriter(); - Marshaller marshaller = JAXBUtil.getArchieJAXBContext().createMarshaller(); + Marshaller marshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createMarshaller(); marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); marshaller.marshal(cluster, writer); String xml = writer.toString(); @@ -73,7 +74,7 @@ public void dataValues() throws Exception { System.out.println(xml); //now parse again - Cluster parsedCluster = (Cluster) JAXBUtil.getArchieJAXBContext().createUnmarshaller().unmarshal(new StringReader(writer.toString())); + Cluster parsedCluster = (Cluster) OpenEhrRmJAXBUtil.getArchieJAXBContext().createUnmarshaller().unmarshal(new StringReader(writer.toString())); RMQueryContext parsedQueryContext = getQueryContext(parsedCluster); assertThat(parsedQueryContext.find("/items['Text']/value").getValue(), is("test-text")); @@ -84,7 +85,7 @@ public void dataValues() throws Exception { } private RMQueryContext getQueryContext(Cluster cluster) { - return new RMQueryContext(ArchieRMInfoLookup.getInstance(), cluster, JAXBUtil.getArchieJAXBContext()); + return new RMQueryContext(OpenEhrRmInfoLookup.getInstance(), cluster, OpenEhrRmJAXBUtil.getArchieJAXBContext()); } } diff --git a/tools/src/test/java/com/nedap/archie/xml/JAXBRMTest.java b/tools/src/test/java/com/nedap/archie/xml/JAXBRMTest.java index 253adbb74..fd79e3f68 100644 --- a/tools/src/test/java/com/nedap/archie/xml/JAXBRMTest.java +++ b/tools/src/test/java/com/nedap/archie/xml/JAXBRMTest.java @@ -4,6 +4,7 @@ import com.nedap.archie.rm.datavalues.DvText; import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; import com.nedap.archie.rm.datavalues.quantity.datetime.DvDuration; +import com.nedap.archie.serialisation.xml.OpenEhrRmJAXBUtil; import org.junit.Test; import org.threeten.extra.PeriodDuration; @@ -24,7 +25,7 @@ public void serializeDuration() throws Exception { new DvText("duration"), new DvDuration(Period.parse("P10D"))); StringWriter writer = new StringWriter(); - Marshaller marshaller = JAXBUtil.getArchieJAXBContext().createMarshaller(); + Marshaller marshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createMarshaller(); marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); marshaller.marshal(element, writer); String xml = writer.toString(); @@ -37,7 +38,7 @@ public void serializeNegativeDuration() throws Exception { new DvText("duration"), new DvDuration(Period.parse("-P10D"))); StringWriter writer = new StringWriter(); - Marshaller marshaller = JAXBUtil.getArchieJAXBContext().createMarshaller(); + Marshaller marshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createMarshaller(); marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); marshaller.marshal(element, writer); String xml = writer.toString(); @@ -50,12 +51,12 @@ public void serializeDvDateTime() throws Exception { new DvText("DvDateTime"), new DvDateTime(LocalDateTime.of(2015, 1, 1, 12, 10, 12, 0))); StringWriter writer = new StringWriter(); - Marshaller marshaller = JAXBUtil.getArchieJAXBContext().createMarshaller(); + Marshaller marshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createMarshaller(); marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); marshaller.marshal(fullDateElement, writer); String xml = writer.toString(); assertTrue(xml.contains("2015-01-01T12:10:12")); - Unmarshaller unmarshaller = JAXBUtil.getArchieJAXBContext().createUnmarshaller(); + Unmarshaller unmarshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createUnmarshaller(); Element unmarshalled = (Element) unmarshaller.unmarshal(new StringReader(xml)); assertEquals(fullDateElement, unmarshalled); @@ -63,12 +64,12 @@ public void serializeDvDateTime() throws Exception { new DvText("DvDateTime"), new DvDateTime(LocalDate.of(2015, 1, 1))); writer = new StringWriter(); - marshaller = JAXBUtil.getArchieJAXBContext().createMarshaller(); + marshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createMarshaller(); marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); marshaller.marshal(yearMonthDayelement, writer); xml = writer.toString(); assertTrue(xml.contains("2015-01-01")); - unmarshaller = JAXBUtil.getArchieJAXBContext().createUnmarshaller(); + unmarshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createUnmarshaller(); unmarshalled = (Element) unmarshaller.unmarshal(new StringReader(xml)); assertEquals(yearMonthDayelement, unmarshalled); @@ -76,12 +77,12 @@ public void serializeDvDateTime() throws Exception { new DvText("DvDateTime"), new DvDateTime(YearMonth.of(2015, 1))); writer = new StringWriter(); - marshaller = JAXBUtil.getArchieJAXBContext().createMarshaller(); + marshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createMarshaller(); marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); marshaller.marshal(yearMonthElement, writer); xml = writer.toString(); assertTrue(xml.contains("2015-01")); - unmarshaller = JAXBUtil.getArchieJAXBContext().createUnmarshaller(); + unmarshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createUnmarshaller(); unmarshalled = (Element) unmarshaller.unmarshal(new StringReader(xml)); assertEquals(yearMonthElement, unmarshalled); @@ -89,12 +90,12 @@ public void serializeDvDateTime() throws Exception { new DvText("DvDateTime"), new DvDateTime(Year.of(2015))); writer = new StringWriter(); - marshaller = JAXBUtil.getArchieJAXBContext().createMarshaller(); + marshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createMarshaller(); marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); marshaller.marshal(yearElement, writer); xml = writer.toString(); assertTrue(xml.contains("2015")); - unmarshaller = JAXBUtil.getArchieJAXBContext().createUnmarshaller(); + unmarshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createUnmarshaller(); unmarshalled = (Element) unmarshaller.unmarshal(new StringReader(xml)); assertEquals(yearElement, unmarshalled); } @@ -110,7 +111,7 @@ public void parseDuration() throws Exception { " P10D\n" + " \n" + ""; - Unmarshaller unmarshaller = JAXBUtil.getArchieJAXBContext().createUnmarshaller(); + Unmarshaller unmarshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createUnmarshaller(); Element unmarshalled = (Element) unmarshaller.unmarshal(new StringReader(xml)); assertEquals(Period.parse("P10D"), ((DvDuration)unmarshalled.getValue()).getValue()); } @@ -126,7 +127,7 @@ public void parseNegativeDuration() throws Exception { " -P10D\n" + " \n" + ""; - Unmarshaller unmarshaller = JAXBUtil.getArchieJAXBContext().createUnmarshaller(); + Unmarshaller unmarshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createUnmarshaller(); Element unmarshalled = (Element) unmarshaller.unmarshal(new StringReader(xml)); assertEquals(Period.parse("-P10D"), ((DvDuration)unmarshalled.getValue()).getValue()); } @@ -142,7 +143,7 @@ public void parseNegativePeriodDuration() throws Exception { " -P10YT12H\n" + " \n" + ""; - Unmarshaller unmarshaller = JAXBUtil.getArchieJAXBContext().createUnmarshaller(); + Unmarshaller unmarshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createUnmarshaller(); Element unmarshalled = (Element) unmarshaller.unmarshal(new StringReader(xml)); assertEquals(PeriodDuration.parse("-P10YT12H"), ((DvDuration)unmarshalled.getValue()).getValue()); } diff --git a/utils/build.gradle b/utils/build.gradle index 89a836df2..6d81940d2 100644 --- a/utils/build.gradle +++ b/utils/build.gradle @@ -1,5 +1 @@ description = "Basic utilities for use in the archie library" - -dependencies { - api project(':base') -} \ No newline at end of file From 25a94fd92b39fe325820fd1531e0e010fc0d7028 Mon Sep 17 00:00:00 2001 From: wolandscat Date: Tue, 9 Apr 2024 14:11:07 -0600 Subject: [PATCH 02/19] Correct statically defined class strings (!) to match refactored class hierarchy. --- .../org/openehr/referencemodels/BuiltinReferenceModels.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/referencemodels/src/main/java/org/openehr/referencemodels/BuiltinReferenceModels.java b/referencemodels/src/main/java/org/openehr/referencemodels/BuiltinReferenceModels.java index 2c89cabf6..6837d5aac 100644 --- a/referencemodels/src/main/java/org/openehr/referencemodels/BuiltinReferenceModels.java +++ b/referencemodels/src/main/java/org/openehr/referencemodels/BuiltinReferenceModels.java @@ -134,7 +134,7 @@ public static AomProfiles getAomProfiles() { */ public static ReferenceModels getAvailableModelInfoLookups() { ReferenceModels result = new ReferenceModels(); - addModelInfoLookupIfExists(result, "com.nedap.archie.rminfo.ArchieRMInfoLookup", "com.nedap.archie.json.ArchieRMObjectMapperProvider"); + addModelInfoLookupIfExists(result, "com.nedap.archie.rminfo.OpenEhrRmInfoLookup", "com.nedap.archie.serialisation.json.OpenEhrRmObjectMapperProvider"); addModelInfoLookupIfExists(result, "com.nedap.archie.openehrtestrm.TestRMInfoLookup", null ); return result; } From 650b13e189dbae276af7734376fd44849419f7f5 Mon Sep 17 00:00:00 2001 From: wolandscat Date: Thu, 11 Apr 2024 16:35:18 -0600 Subject: [PATCH 03/19] Generate the set of RM classes to be added to the RM-specific Reflection lookup singleton. --- .../rminfo/ReflectionModelInfoLookup.java | 9 ++ .../converters/RM102ConversionTest.java | 32 ++++ .../archie/rminfo/OpenEhrRmInfoLookup.java | 153 ++++-------------- 3 files changed, 68 insertions(+), 126 deletions(-) diff --git a/aom/src/main/java/com/nedap/archie/rminfo/ReflectionModelInfoLookup.java b/aom/src/main/java/com/nedap/archie/rminfo/ReflectionModelInfoLookup.java index 0e12ad1f7..cc289824b 100644 --- a/aom/src/main/java/com/nedap/archie/rminfo/ReflectionModelInfoLookup.java +++ b/aom/src/main/java/com/nedap/archie/rminfo/ReflectionModelInfoLookup.java @@ -5,6 +5,7 @@ import org.reflections.ReflectionUtils; import org.reflections.Reflections; import org.reflections.scanners.Scanners; +import org.reflections.scanners.SubTypesScanner; import org.reflections.util.ClasspathHelper; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -71,6 +72,14 @@ public ReflectionModelInfoLookup(ModelNamingStrategy namingStrategy, String pack inConstructor = false; } + public Set> findAllClassesInPackage(String packageName) { + Reflections reflections = new Reflections(packageName, new SubTypesScanner(false)); + return reflections.getSubTypesOf(Object.class) + .stream() + .filter(cl -> !cl.getName().endsWith("Test") && !cl.isInterface()) + .collect(Collectors.toSet()); + } + public ReflectionModelInfoLookup(ModelNamingStrategy namingStrategy, Class baseClass, ClassLoader classLoader, boolean addAttributesWithoutField) { this.namingStrategy = namingStrategy; this.addAttributesWithoutField = addAttributesWithoutField; diff --git a/bmm/src/test/java/org/openehr/bmm/v2/persistence/converters/RM102ConversionTest.java b/bmm/src/test/java/org/openehr/bmm/v2/persistence/converters/RM102ConversionTest.java index ebe2005d0..c21b1b609 100644 --- a/bmm/src/test/java/org/openehr/bmm/v2/persistence/converters/RM102ConversionTest.java +++ b/bmm/src/test/java/org/openehr/bmm/v2/persistence/converters/RM102ConversionTest.java @@ -21,6 +21,7 @@ public class RM102ConversionTest { private static BmmModel rm102Model; + private static BmmModel demographic102Model; private static BmmRepository repo; @BeforeClass @@ -37,6 +38,7 @@ public static void setup() throws Exception { converter.validateAndConvertRepository(); rm102Model = repo.getModel("openehr_ehr_1.0.2").getModel(); + demographic102Model = repo.getModel("openehr_demographic_1.0.2").getModel(); } @AfterClass @@ -118,4 +120,34 @@ public void testRm102PartyIdentifiedSuppliers() throws Exception { assertEquals ("\"PARTY_IDENTIFIED\" has suppliers {\"String\", \"PARTY_REF\", ...})", testResult, conformanceResult); } + @Test + public void testFindAllNonPrimitiveClasses() throws Exception { + + Set bmmClassNames = new LinkedHashSet<>(); + bmmClassNames.addAll(rm102Model.getClassDefinitions().keySet()); + bmmClassNames.addAll(demographic102Model.getClassDefinitions().keySet()); + bmmClassNames.removeAll(rm102Model.getPrimitiveTypes()); + + // conformance result from ADL Workbench + Set conformanceResult = new LinkedHashSet<>( + Arrays.asList( + "ACCESS_CONTROL_SETTINGS", "ACTION", "ACTIVITY", "ACTOR", "ADDRESS", "ADMIN_ENTRY", "AGENT", "ARCHETYPED", "ARCHETYPE_ID", + "ATTESTATION", "AUDIT_DETAILS", "CAPABILITY", "CARE_ENTRY", "CLUSTER", "CODE_PHRASE", "COMPOSITION", "CONTACT", + "CONTENT_ITEM", "CONTRIBUTION", "DATA_STRUCTURE", "DATA_VALUE", "DV_ABSOLUTE_QUANTITY", "DV_AMOUNT", "DV_BOOLEAN", + "DV_CODED_TEXT", "DV_COUNT", "DV_DATE", "DV_DATE_TIME", "DV_DURATION", "DV_EHR_URI", "DV_ENCAPSULATED", "DV_GENERAL_TIME_SPECIFICATION", + "DV_IDENTIFIER", "DV_INTERVAL", "DV_MULTIMEDIA", "DV_ORDERED", "DV_ORDINAL", "DV_PARAGRAPH", "DV_PARSABLE", "DV_PERIODIC_TIME_SPECIFICATION", + "DV_PROPORTION", "DV_QUANTIFIED", "DV_QUANTITY", "DV_STATE", "DV_TEMPORAL", "DV_TEXT", "DV_TIME", "DV_TIME_SPECIFICATION", + "DV_URI", "EHR", "EHR_ACCESS", "EHR_STATUS", "ELEMENT", "ENTRY", "EVALUATION", "EVENT", "EVENT_CONTEXT", "FEEDER_AUDIT", + "FEEDER_AUDIT_DETAILS", "FOLDER", "GENERIC_ENTRY", "GENERIC_ID", "GROUP", "HIER_OBJECT_ID", "HISTORY", "IMPORTED_VERSION", + "INSTRUCTION", "INSTRUCTION_DETAILS", "INTERNET_ID", "INTERVAL_EVENT", "ISM_TRANSITION", "ISO_OID", "ITEM", "ITEM_LIST", + "ITEM_SINGLE", "ITEM_STRUCTURE", "ITEM_TABLE", "ITEM_TREE", "LINK", "LOCATABLE", "LOCATABLE_REF", "OBJECT_ID", "OBJECT_REF", + "OBJECT_VERSION_ID", "OBSERVATION", "ORGANISATION", "ORIGINAL_VERSION", "PARTICIPATION", "PARTY", "PARTY_IDENTIFIED", + "PARTY_IDENTITY", "PARTY_PROXY", "PARTY_REF", "PARTY_RELATED", "PARTY_RELATIONSHIP", "PARTY_SELF", "PATHABLE", "PERSON", + "POINT_EVENT", "PROPORTION_KIND", "REFERENCE_RANGE", "REVISION_HISTORY", "REVISION_HISTORY_ITEM", "ROLE", "SECTION", + "TEMPLATE_ID", "TERMINOLOGY_ID", "TERM_MAPPING", "UID", "UID_BASED_ID", "UUID", "VERSION", "VERSIONED_OBJECT", "VERSION_TREE_ID" + ) + ); + + assertEquals ("\"RM 1.0.2 BMM\" has classes {\"EHR\", \"COMPOSITION\", ...})", bmmClassNames, conformanceResult); + } } diff --git a/openehr-rm/src/main/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookup.java b/openehr-rm/src/main/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookup.java index 99be0bb12..b1c03bbd0 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookup.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookup.java @@ -62,16 +62,15 @@ import com.nedap.archie.rm.integration.GenericEntry; import com.nedap.archie.rm.security.AccessControlSettings; import com.nedap.archie.rm.support.identification.*; +import com.nedap.archie.rm.support.identification.UUID; import java.lang.reflect.Field; import java.lang.reflect.Method; import java.time.temporal.Temporal; import java.time.temporal.TemporalAccessor; import java.time.temporal.TemporalAmount; -import java.util.ArrayList; -import java.util.Collection; -import java.util.List; -import java.util.Map; +import java.util.*; +import java.util.stream.Collectors; /** * Created by pieter.bos on 02/02/16. @@ -86,131 +85,33 @@ private OpenEhrRmInfoLookup() { super(new ArchieModelNamingStrategy(), RMObject.class); } + /** + * This list of classes generated in this method corresponds to any class that may be mentioned + * in an archetype of this RM. Its extension for openEHR RM covers the following classes: + * - classes in the supplier closures (classes reachable from via RM supplier relationships) + * of all classes in the top-level model packages, which for openEHR is EHR and demographic. + * - except assumed primitives that are mapped to internal types. + * = plus the classes base.RMObject which is the 'Any' class + * - plus the class base.Interval + * + * The result should correspond to the set of classes in the corresponding BMM, minus those + * classified as primitive. The BMM class set can be generated per the code in + * RM102ConversionTest.testFindAllNonPrimitiveClasses + * @param baseClass + */ @Override protected void addTypes(Class baseClass) { addClass(Interval.class); //extra class from the base package. No RMObject because it is also used in the AOM - addClass(AuditDetails.class); - addClass(Ehr.class); - addClass(DvTime.class); - addClass(RevisionHistoryItem.class); - addClass(PartyIdentity.class); - addClass(DvParsable.class); - addClass(DvDuration.class); - addClass(DvDateTime.class); - addClass(DvCount.class); - addClass(Cluster.class); - addClass(IsoOID.class); - addClass(PartyRelated.class); - addClass(Instruction.class); - addClass(Person.class); - addClass(GenericId.class); - addClass(Evaluation.class); - addClass(DvAmount.class); - addClass(Capability.class); - addClass(UID.class); - addClass(Item.class); - addClass(Contribution.class); - addClass(OriginalVersion.class); - addClass(FeederAuditDetails.class); - addClass(PartyProxy.class); - addClass(PointEvent.class); - addClass(CodePhrase.class); - addClass(InstructionDetails.class); - addClass(DvTimeSpecification.class); - addClass(DvAbsoluteQuantity.class); - addClass(FeederAudit.class); - addClass(Party.class); - addClass(ItemSingle.class); - addClass(EventContext.class); - addClass(DvProportion.class); - addClass(DvQuantity.class); - addClass(DvOrdered.class); - addClass(ContentItem.class); - addClass(DataValue.class); - addClass(DvOrdinal.class); - addClass(DvScale.class); - addClass(Agent.class); - addClass(InternetId.class); - addClass(Role.class); - addClass(Group.class); - addClass(ObjectId.class); - addClass(UIDBasedId.class); - addClass(VersionedEhrStatus.class); - addClass(PartySelf.class); - addClass(DvMultimedia.class); - addClass(Actor.class); - addClass(VersionTreeId.class); - addClass(DvParagraph.class); - addClass(ReferenceRange.class); - addClass(CareEntry.class); - addClass(ItemTree.class); - addClass(Element.class); - addClass(DvGeneralTimeSpecification.class); - addClass(DvDate.class); - addClass(Version.class); - addClass(DvState.class); - addClass(AccessControlSettings.class); - addClass(ItemList.class); - addClass(DataStructure.class); - addClass(History.class); - addClass(DvPeriodicTimeSpecification.class); - addClass(Contact.class); - addClass(TermMapping.class); - addClass(Event.class); - addClass(Observation.class); - addClass(Locatable.class); - addClass(UUID.class); - addClass(DvTemporal.class); - addClass(IsmTransition.class); - addClass(Folder.class); - addClass(Participation.class); - addClass(VersionedComposition.class); - addClass(ObjectVersionId.class); - addClass(Entry.class); - addClass(DvInterval.class); - addClass(Organisation.class); - addClass(VersionedObject.class); - addClass(DvEncapsulated.class); - addClass(VersionedFolder.class); - addClass(IntervalEvent.class); - addClass(ItemTable.class); - addClass(Attestation.class); - addClass(Address.class); - addClass(RevisionHistory.class); - addClass(DvIdentifier.class); - addClass(DvCodedText.class); - addClass(PartyRelationship.class); - addClass(LocatableRef.class); - addClass(Pathable.class); - addClass(EhrAccess.class); - addClass(DvEHRURI.class); - addClass(ArchetypeID.class); - addClass(RMObject.class); - addClass(PartyRef.class); - addClass(TemplateId.class); - addClass(AdminEntry.class); - addClass(VersionedEhrAccess.class); - addClass(PartyIdentified.class); - addClass(Composition.class); - addClass(EhrStatus.class); - addClass(AccessGroupRef.class); - addClass(ObjectRef.class); - addClass(GenericEntry.class); - addClass(DvQuantified.class); - addClass(ImportedVersion.class); - addClass(DvBoolean.class); - addClass(DvURI.class); - addClass(DvText.class); - addClass(Action.class); - addClass(ItemStructure.class); - addClass(HierObjectId.class); - addClass(Section.class); - addClass(Activity.class); - addClass(TerminologyId.class); - addClass(Link.class); - addClass(Archetyped.class); - addClass(AuthoredResource.class); - addClass(TranslationDetails.class); + addClass(RMObject.class); // Any class for type system + // addClass(TranslationDetails.class); // was in the original code, but not sure why; removing it breaks no tests + + // TODO: for whatever reason, passing the argument "com.nedap.archie.rm" does not work directly + Set> classes = findAllClassesInPackage("com.nedap.archie") + .stream() + .filter(cl -> cl.getName().startsWith("com.nedap.archie.rm.")) + .collect(Collectors.toSet()); + + classes.forEach(cl -> addClass(cl)); } @Override From b59809695189b3c5f86506822d3b97167b9eb224 Mon Sep 17 00:00:00 2001 From: wolandscat Date: Thu, 11 Apr 2024 22:28:27 -0600 Subject: [PATCH 04/19] Correct divergence between BMM and RM classes. --- .../nedap/archie/rminfo/ReflectionModelInfoLookup.java | 4 +++- .../com/nedap/archie/rminfo/OpenEhrRmInfoLookup.java | 9 ++++++--- .../openehr/referencemodels/RMComparedWithBmmTest.java | 2 ++ 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/aom/src/main/java/com/nedap/archie/rminfo/ReflectionModelInfoLookup.java b/aom/src/main/java/com/nedap/archie/rminfo/ReflectionModelInfoLookup.java index cc289824b..da7d91078 100644 --- a/aom/src/main/java/com/nedap/archie/rminfo/ReflectionModelInfoLookup.java +++ b/aom/src/main/java/com/nedap/archie/rminfo/ReflectionModelInfoLookup.java @@ -76,7 +76,9 @@ public Set> findAllClassesInPackage(String packageName) { Reflections reflections = new Reflections(packageName, new SubTypesScanner(false)); return reflections.getSubTypesOf(Object.class) .stream() - .filter(cl -> !cl.getName().endsWith("Test") && !cl.isInterface()) + .filter(cl -> !cl.getName().endsWith("Test") // ignore test classes + && !cl.getName().endsWith("$1") // ignore anonymous inner classes + && !cl.isInterface()) // ignore interfaces .collect(Collectors.toSet()); } diff --git a/openehr-rm/src/main/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookup.java b/openehr-rm/src/main/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookup.java index b1c03bbd0..5802920e1 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookup.java +++ b/openehr-rm/src/main/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookup.java @@ -91,8 +91,10 @@ private OpenEhrRmInfoLookup() { * - classes in the supplier closures (classes reachable from via RM supplier relationships) * of all classes in the top-level model packages, which for openEHR is EHR and demographic. * - except assumed primitives that are mapped to internal types. - * = plus the classes base.RMObject which is the 'Any' class - * - plus the class base.Interval + * = plus base.RMObject which is the 'Any' class + * - plus base.Interval + * - plus aom.AuthoredResource // UNCLEAR WHY + * - plus aom.TranslationDetails // UNCLEAR WHY * * The result should correspond to the set of classes in the corresponding BMM, minus those * classified as primitive. The BMM class set can be generated per the code in @@ -103,7 +105,8 @@ private OpenEhrRmInfoLookup() { protected void addTypes(Class baseClass) { addClass(Interval.class); //extra class from the base package. No RMObject because it is also used in the AOM addClass(RMObject.class); // Any class for type system - // addClass(TranslationDetails.class); // was in the original code, but not sure why; removing it breaks no tests + addClass(AuthoredResource.class); + addClass(TranslationDetails.class); // TODO: for whatever reason, passing the argument "com.nedap.archie.rm" does not work directly Set> classes = findAllClassesInPackage("com.nedap.archie") diff --git a/referencemodels/src/test/java/org/openehr/referencemodels/RMComparedWithBmmTest.java b/referencemodels/src/test/java/org/openehr/referencemodels/RMComparedWithBmmTest.java index ce9c64739..01782f920 100644 --- a/referencemodels/src/test/java/org/openehr/referencemodels/RMComparedWithBmmTest.java +++ b/referencemodels/src/test/java/org/openehr/referencemodels/RMComparedWithBmmTest.java @@ -107,6 +107,8 @@ public void compareBmmWithRM() { //BMM changed VERSION_STATUS to an enum. For now this remains a string until some further major release knownDifferences.add(new ModelDifference(ModelDifferenceType.CLASS_MISSING_IN_MODEL, "", "VERSION_STATUS", null)); + // Not needed in BMM since it defines constants / static functions but no data + knownDifferences.add(new ModelDifference(ModelDifferenceType.CLASS_MISSING_IN_BMM, "", "TIME_DEFINITIONS", null)); knownDifferences.add(new ModelDifference(ModelDifferenceType.PROPERTY_MISSING_IN_BMM, "", "DV_ABSOLUTE_QUANTITY", "magnitude")); knownDifferences.add(new ModelDifference(ModelDifferenceType.PROPERTY_MISSING_IN_BMM, "", "DV_AMOUNT", "magnitude")); From 4dc3140573c81414c03d8512d1ccefd07c2dbe35 Mon Sep 17 00:00:00 2001 From: wolandscat Date: Fri, 19 Apr 2024 17:19:30 -0600 Subject: [PATCH 05/19] Consolidate openehr-rm. Remove contents of referencemodels, but retain tests (forn now). Package moves to org.openehr to facilitate new RM addition to Archie. Some class renames for clarity. Revert change to OpenEhrRmInfoLookup.addTypes() OpenEhrRmMetaModelsInitialiser.getNativeRms() probably not safe for Android. --- .../nedap/archie/aom/profile/AomProfiles.java | 7 +- .../archie/rminfo/MetaModelsInitialiser.java | 106 + .../nedap/archie/rminfo/ReferenceModels.java | 5 + .../rminfo/ReflectionModelInfoLookup.java | 47 +- .../bmm/v2/validation/BmmRepository.java | 7 +- .../modelconstraints/RMConstraintImposer.java | 2 +- .../rminfo/OpenEhrRmInfoLookup.java | 216 +- .../OpenEhrRmMetaModelsInitialiser.java | 46 + .../rminfo/OpenEhrRmUpdatedValueHandler.java | 18 +- .../{ => openehr}/rmutil/InvariantUtil.java | 11 +- .../{ => openehr}/rmutil/PathableUtil.java | 6 +- .../json/OpenEhrRmJacksonUtil.java | 8 +- .../json/OpenEhrRmObjectMapperProvider.java | 14 +- .../odin/CodePhraseSerializer.java | 5 +- .../odin/ItemMapToListConverter.java | 6 +- .../odin/OdinParsingClusterMixin.java | 4 +- .../odin/OdinParsingDvTextMixin.java | 4 +- .../odin/OdinParsingItemTreeMixin.java | 4 +- .../odin/TermMappingMapToListConverter.java | 5 +- .../serialisation/xml/OpenEhrRmJAXBUtil.java | 4 +- .../base}/definitions/OpenEhrDefinitions.java | 4 +- .../openehr}/rm/archetyped/Archetyped.java | 6 +- .../openehr}/rm/archetyped/FeederAudit.java | 6 +- .../rm/archetyped/FeederAuditDetails.java | 12 +- .../openehr}/rm/archetyped/Link.java | 6 +- .../openehr}/rm/archetyped/Locatable.java | 8 +- .../openehr}/rm/archetyped/Pathable.java | 4 +- .../openehr}/rm/archetyped/TemplateId.java | 4 +- .../rm/changecontrol/Contribution.java | 10 +- .../rm/changecontrol/ImportedVersion.java | 12 +- .../rm/changecontrol/OriginalVersion.java | 16 +- .../openehr}/rm/changecontrol/Version.java | 14 +- .../rm/changecontrol/VersionedObject.java | 10 +- .../openehr}/rm/composition/Action.java | 34 +- .../openehr}/rm/composition/Activity.java | 14 +- .../openehr}/rm/composition/AdminEntry.java | 28 +- .../openehr}/rm/composition/CareEntry.java | 26 +- .../openehr}/rm/composition/Composition.java | 16 +- .../openehr}/rm/composition/ContentItem.java | 8 +- .../openehr}/rm/composition/Entry.java | 28 +- .../openehr}/rm/composition/Evaluation.java | 26 +- .../openehr}/rm/composition/EventContext.java | 18 +- .../openehr}/rm/composition/Instruction.java | 36 +- .../rm/composition/InstructionDetails.java | 10 +- .../rm/composition/IsmTransition.java | 10 +- .../openehr}/rm/composition/Observation.java | 28 +- .../openehr}/rm/composition/Section.java | 16 +- .../openehr}/rm/datastructures/Cluster.java | 14 +- .../rm/datastructures/DataStructure.java | 8 +- .../openehr}/rm/datastructures/Element.java | 24 +- .../openehr}/rm/datastructures/Event.java | 12 +- .../openehr}/rm/datastructures/History.java | 20 +- .../rm/datastructures/IntervalEvent.java | 24 +- .../openehr}/rm/datastructures/Item.java | 8 +- .../openehr}/rm/datastructures/ItemList.java | 14 +- .../rm/datastructures/ItemSingle.java | 14 +- .../rm/datastructures/ItemStructure.java | 16 +- .../openehr}/rm/datastructures/ItemTable.java | 16 +- .../openehr}/rm/datastructures/ItemTree.java | 14 +- .../rm/datastructures/PointEvent.java | 16 +- .../openehr}/rm/datatypes/CodePhrase.java | 6 +- .../openehr}/rm/datavalues/DataValue.java | 2 +- .../openehr}/rm/datavalues/DvBoolean.java | 2 +- .../openehr}/rm/datavalues/DvCodedText.java | 4 +- .../openehr}/rm/datavalues/DvEHRURI.java | 4 +- .../openehr}/rm/datavalues/DvIdentifier.java | 4 +- .../openehr}/rm/datavalues/DvParagraph.java | 4 +- .../openehr}/rm/datavalues/DvState.java | 2 +- .../openehr}/rm/datavalues/DvText.java | 6 +- .../openehr}/rm/datavalues/DvURI.java | 2 +- .../rm/datavalues/SingleValuedDataValue.java | 2 +- .../openehr}/rm/datavalues/TermMapping.java | 6 +- .../encapsulated/DvEncapsulated.java | 8 +- .../datavalues/encapsulated/DvMultimedia.java | 8 +- .../datavalues/encapsulated/DvParsable.java | 8 +- .../quantity/DvAbsoluteQuantity.java | 4 +- .../rm/datavalues/quantity/DvAmount.java | 6 +- .../rm/datavalues/quantity/DvCount.java | 4 +- .../rm/datavalues/quantity/DvInterval.java | 5 +- .../rm/datavalues/quantity/DvOrdered.java | 8 +- .../rm/datavalues/quantity/DvOrdinal.java | 6 +- .../rm/datavalues/quantity/DvProportion.java | 4 +- .../rm/datavalues/quantity/DvQuantified.java | 8 +- .../rm/datavalues/quantity/DvQuantity.java | 4 +- .../rm/datavalues/quantity/DvScale.java | 6 +- .../datavalues/quantity/ProportionKind.java | 2 +- .../datavalues/quantity/ReferenceRange.java | 4 +- .../datavalues/quantity/datetime/DvDate.java | 10 +- .../quantity/datetime/DvDateTime.java | 10 +- .../quantity/datetime/DvDuration.java | 12 +- .../quantity/datetime/DvTemporal.java | 10 +- .../datavalues/quantity/datetime/DvTime.java | 10 +- .../quantity/datetime/TimeDefinitions.java | 2 +- .../DvGeneralTimeSpecification.java | 2 +- .../DvPeriodicTimeSpecification.java | 3 +- .../DvTimeSpecification.java | 6 +- .../openehr}/rm/demographic/Actor.java | 6 +- .../openehr}/rm/demographic/Address.java | 9 +- .../openehr}/rm/demographic/Agent.java | 2 +- .../openehr}/rm/demographic/Capability.java | 10 +- .../openehr}/rm/demographic/Contact.java | 10 +- .../openehr}/rm/demographic/Group.java | 2 +- .../openehr}/rm/demographic/Organisation.java | 2 +- .../openehr}/rm/demographic/Party.java | 11 +- .../rm/demographic/PartyIdentity.java | 9 +- .../rm/demographic/PartyRelationship.java | 12 +- .../openehr}/rm/demographic/Person.java | 2 +- .../openehr}/rm/demographic/Role.java | 8 +- .../openehr}/rm/directory/Folder.java | 18 +- .../rm/directory/VersionedFolder.java | 12 +- .../archie => org/openehr}/rm/ehr/Ehr.java | 12 +- .../openehr}/rm/ehr/EhrAccess.java | 12 +- .../openehr}/rm/ehr/EhrStatus.java | 12 +- .../openehr}/rm/ehr/VersionedComposition.java | 14 +- .../openehr}/rm/ehr/VersionedEhrAccess.java | 12 +- .../openehr}/rm/ehr/VersionedEhrStatus.java | 12 +- .../openehr}/rm/generic/Attestation.java | 14 +- .../openehr}/rm/generic/AuditDetails.java | 10 +- .../openehr}/rm/generic/Participation.java | 12 +- .../openehr}/rm/generic/PartyIdentified.java | 8 +- .../openehr}/rm/generic/PartyProxy.java | 4 +- .../openehr}/rm/generic/PartyRelated.java | 10 +- .../openehr}/rm/generic/PartySelf.java | 4 +- .../openehr}/rm/generic/RevisionHistory.java | 2 +- .../rm/generic/RevisionHistoryItem.java | 4 +- .../openehr}/rm/integration/GenericEntry.java | 20 +- .../openehr}/rm/package-info.java | 2 +- .../rm/security/AccessControlSettings.java | 2 +- .../identification/AccessGroupRef.java | 2 +- .../support/identification/ArchetypeID.java | 2 +- .../rm/support/identification/GenericId.java | 2 +- .../support/identification/HierObjectId.java | 2 +- .../rm/support/identification/InternetId.java | 2 +- .../rm/support/identification/IsoOID.java | 2 +- .../support/identification/LocatableRef.java | 2 +- .../rm/support/identification/ObjectId.java | 2 +- .../rm/support/identification/ObjectRef.java | 2 +- .../identification/ObjectVersionId.java | 2 +- .../rm/support/identification/PartyRef.java | 2 +- .../support/identification/TerminologyId.java | 2 +- .../rm/support/identification/UID.java | 2 +- .../rm/support/identification/UIDBasedId.java | 2 +- .../rm/support/identification/UUID.java | 2 +- .../support/identification/VersionTreeId.java | 2 +- .../aom_profiles/openehr_aom_profile.arp | 0 .../main/resources/org/openehr/bmm}/LICENSE | 0 .../resources/org/openehr/bmm}/README.adoc | 0 .../AM/Release-2.0.6/openEHR_am_206.bmm | 0 .../AM/Release-2.1.0/openEHR_am_210.bmm | 0 .../AM/Release-2.2.0/openEHR_am_220.bmm | 0 .../AM/Release-2.3.0/openEHR_am_230.bmm | 0 .../BASE/Release-1.0.0/openehr_base_100.bmm | 0 .../BASE/Release-1.0.4/openehr_base_104.bmm | 0 .../Release-1.0.4/openehr_expression_104.bmm | 0 .../BASE/Release-1.1.0/openehr_base_110.bmm | 0 .../LANG/Release-1.0.0/openehr_lang_100.bmm | 0 .../openehr_proc_task_planning_100.bmm | 0 .../openehr_proc_task_planning_150.bmm | 0 .../openehr_proc_task_planning_160.bmm | 0 .../latest/openehr_proc_task_planning_110.bmm | 0 .../Release-1.0.3/openehr_basic_types_103.bmm | 0 .../Release-1.0.3/openehr_demographic_103.bmm | 0 .../RM/Release-1.0.3/openehr_ehr_103.bmm | 0 .../Release-1.0.3/openehr_ehr_extract_103.bmm | 0 .../openehr_primitive_types_103.bmm | 0 .../RM/Release-1.0.3/openehr_rm_103.bmm | 0 .../Release-1.0.3/openehr_structures_103.bmm | 0 .../RM/Release-1.0.4/openehr_rm_104.bmm | 0 .../openehr_rm_data_types_104.bmm | 0 .../openehr_rm_demographic_104.bmm | 0 .../RM/Release-1.0.4/openehr_rm_ehr_104.bmm | 0 .../openehr_rm_ehr_extract_104.bmm | 0 .../openehr_rm_structures_104.bmm | 0 .../RM/Release-1.1.0/openehr_rm_110.bmm | 0 .../openehr_rm_data_types_110.bmm | 0 .../openehr_rm_demographic_110.bmm | 0 .../RM/Release-1.1.0/openehr_rm_ehr_110.bmm | 0 .../openehr_rm_ehr_extract_110.bmm | 0 .../openehr_rm_structures_110.bmm | 0 .../RM/rejected/openehr_ehr_extract_999.bmm | 0 .../Release-1.0.2/openehr_basic_types_102.bmm | 0 .../Release-1.0.2/openehr_demographic_102.bmm | 0 .../Release-1.0.2/openehr_ehr_102.bmm | 0 .../openehr_primitive_types_102.bmm | 0 .../original/Release-1.0.2/openehr_rm_102.bmm | 0 .../Release-1.0.2/openehr_structures_102.bmm | 0 .../rm/changecontrol/ContributionTest.java | 9 +- .../rm/composition/CompositionTest.java | 5 +- .../rm/composition/ObservationTest.java | 7 +- .../archie/rm/datastructures/ClusterTest.java | 4 +- .../rm/datastructures/ItemListTest.java | 4 +- .../rm/datastructures/ItemTableTest.java | 5 +- .../rm/datastructures/ItemTreeTest.java | 4 +- .../archie/rm/datatypes/CodePhraseTest.java | 1 + .../archie/rm/datavalues/DvBooleanTest.java | 1 + .../archie/rm/datavalues/DvCodedTextTest.java | 3 +- .../archie/rm/datavalues/DvParsableTest.java | 6 +- .../nedap/archie/rm/datavalues/DvURITest.java | 1 + .../quantity/datetime/DvDateTest.java | 1 + .../quantity/datetime/DvDateTimeTest.java | 1 + .../quantity/datetime/DvDurationTest.java | 1 + .../quantity/datetime/DvTimeTest.java | 1 + .../datetime/TimeDefinitionsTest.java | 1 + .../nedap/archie/rm/directory/FolderTest.java | 13 +- .../nedap/archie/rm/ehr/EhrStatusTest.java | 3 +- .../java/com/nedap/archie/rm/ehr/EhrTest.java | 7 +- .../identification/ArchetypeIDTest.java | 1 + .../identification/HierObjectIdTest.java | 1 + .../identification/ObjectVersionIdTest.java | 1 + .../identification/TerminologyIdTest.java | 1 + .../identification/VersionTreeIdTest.java | 1 + .../rminfo/OpenEhrRmInfoLookupTest.java | 51 + .../OpenEhrRmMetaModelsInitialiserTest.java | 74 + openehr-rm/src/test/resources/RmCLassList.txt | 122 + .../nedap/archie/query/RMPathQueryTest.java | 4 +- referencemodels/build.gradle | 2 + .../AllMetaModelsInitialiser.java | 91 + .../BuiltinReferenceModels.java | 175 - .../aom_profiles/cdisc_aom_profile.arp | 65 - .../aom_profiles/cimi_aom_profile.arp | 80 - .../aom_profiles/fhir_aom_profile.arp | 65 - .../bmm/CDISC/Core/BMM/CDISC-Core-0.5.0.bmm | 1270 ---- .../BMM/CIMI_RM_CLINICAL.v.0.0.3.bmm | 5742 ----------------- .../BMM/CIMI_RM_CORE.v.0.0.3.bmm | 678 -- .../BMM/CIMI_RM_FOUNDATION.v.0.0.3.bmm | 183 - .../DSTU/BMM/hl7_fhir_resourceses_dstu.bmm | 1882 ------ .../ISO_13606/2008/BMM/cen_EN13606_0.95.bmm | 1029 --- .../ISO_13606/2008/BMM/cen_ts14796_0.90.bmm | 619 -- .../ISO_21090/2011/BMM/iso_21090_0.9.0.bmm | 883 --- ...java => AllMetaModelsInitialiserTest.java} | 18 +- .../RMComparedWithBmmTest.java | 7 +- .../src/test/resources/aom/openehr_am_230.bmm | 979 --- .../test/resources/aom/openehr_base_110.bmm | 858 --- .../resources/aom/openehr_expression_104.bmm | 222 - .../src/test/resources/cimi/CIMI-RM-3.0.5.bmm | 715 -- .../rminfo/OpenEhrTestRmInfoLookup.java} | 20 +- .../OpenEhrTestRmMetaModelsInitialiser.java | 29 + .../archie/openehrtestrm/TestRMBase.java | 4 - .../openehr/test_rm}/Book.java | 2 +- .../openehr/test_rm}/Car.java | 2 +- .../openehr/test_rm}/CarBody.java | 2 +- .../openehr/test_rm}/CarBodyPart.java | 2 +- .../openehr/test_rm}/Chapter.java | 2 +- .../openehr/test_rm}/Cluster.java | 2 +- .../openehr/test_rm}/Element.java | 6 +- .../openehr/test_rm}/EnginePart.java | 2 +- .../openehr/test_rm}/EnginePartItem.java | 2 +- .../openehr/test_rm}/Entry.java | 10 +- .../openehr/test_rm}/Item.java | 2 +- .../openehr/test_rm}/MultiplicityObject.java | 2 +- .../openehr/test_rm}/Rim.java | 2 +- .../openehr/test_rm}/SomeType.java | 16 +- .../java/org/openehr/test_rm/TestRMBase.java | 4 + .../openehr/test_rm}/Wheel.java | 2 +- .../openehr/test_rm}/Whole.java | 2 +- .../aom_profiles/openehr_aom_profile.arp | 58 +- .../Release-1.0.0/BMM/openehr_adltest_100.bmm | 0 ...ADL14DefaultOccurrencesConversionTest.java | 9 +- ...DL14ExternalTerminologyConversionTest.java | 10 +- .../adl14/ADL14InternalTerminologyTest.java | 6 +- .../adl14/ADL14TerminologyConversionTest.java | 6 +- .../adl14/ArchetypeSlotConversionTest.java | 7 +- .../adl14/AssumedValueConversionTest.java | 8 +- .../archie/adl14/ConversionConfigForTest.java | 2 +- .../adl14/ConversionConfigurationTest.java | 8 +- .../archie/adl14/DvScaleConversionTest.java | 6 +- .../archie/adl14/LargeSetOfADL14sTest.java | 14 +- .../adl14/PreviousLogConversionTest.java | 35 +- .../adlparser/AomUtilsPathFindingTest.java | 4 +- .../archie/adlparser/RMPathQueryTest.java | 20 +- .../archie/aom/ArchetypeTerminologyTest.java | 7 +- .../aom/AttributeTupleConstraintsTest.java | 4 +- .../aom/TerminologyCodeConstraintsTest.java | 10 +- .../ArchetypeValidatorTest.java | 18 +- .../ArchetypeValidatorVersionsTest.java | 6 +- .../BigArchetypeValidatorTest.java | 9 +- .../CKMArchetypeValidatorTest.java | 6 +- .../ComplexArchetypeValidatorTest.java | 4 +- .../TermCodeSpecializationTest.java | 16 +- .../ExampleJsonInstanceGeneratorTest.java | 18 +- .../archie/creation/RMObjectCreatorTest.java | 12 +- .../com/nedap/archie/diff/DiffTestUtil.java | 8 +- .../archie/diff/SiblingOrderDiffTest.java | 23 - .../DifferentiatorExamplesFromSpecTest.java | 11 - .../flattener/AnnotationsFlattenerTest.java | 4 +- .../nedap/archie/flattener/FlattenerTest.java | 11 +- .../OperationalTemplateCreatorTest.java | 22 +- .../flattener/RMOverlayFlattenerTest.java | 8 +- .../archie/flattener/RulesFlattenerTest.java | 4 +- .../flattener/SiblingOrderFlattenerTest.java | 12 +- .../FlattenerExamplesFromSpecBMMTest.java | 4 +- .../FlattenerExamplesFromSpecTest.java | 4 +- .../TerminologyFlattenerExamplesFromSpec.java | 4 +- .../com/nedap/archie/json/AOMJacksonTest.java | 14 +- .../archie/json/JSONSchemaCreatorTest.java | 8 +- .../archie/json/JacksonRMRoundTripTest.java | 26 +- .../com/nedap/archie/json/RMJacksonTest.java | 10 +- .../flat/ArchetypeParsePostProcessorTest.java | 2 +- .../json/flat/FlatJsonGeneratorTest.java | 34 +- .../nedap/archie/kryo/URISerializerTest.java | 4 +- .../archie/query/RMObjectAttributesTest.java | 18 +- .../archie/query/RMQueryContextTest.java | 14 +- .../com/nedap/archie/rm/LocatableTest.java | 16 +- .../rminfo/openEhrRMInfoLookupTest.java | 33 +- .../RmObjectValidatorTest.java | 18 +- .../ValidateArchetypedTest.java | 22 +- .../invariants/EventContextInvariantTest.java | 8 +- .../FeederAuditDetailsInvariantTest.java | 4 +- .../invariants/FolderInvariantTest.java | 4 +- .../invariants/InvariantTestUtil.java | 20 +- .../ParticipationInvariantTest.java | 8 +- .../invariants/PartyRelatedInvariantTest.java | 5 +- .../invariants/TermMappingInvariantTest.java | 6 +- .../base/PartyRefInvariantTest.java | 7 +- .../invariants/base/UIDInvariantTest.java | 2 +- .../base/VersionTreeIdInvariantTest.java | 2 +- .../AuditDetailsInvariantTest.java | 10 +- .../OriginalVersionInvariantTest.java | 12 +- .../datastructures/ElementInvariantTest.java | 6 +- .../ItemTableInvariantTest.java | 8 +- .../datavalues/CodePhraseInvariantTest.java | 4 +- .../datavalues/DvDurationInvariantTest.java | 8 +- .../datavalues/DvEhrUriInvariantTest.java | 4 +- .../datavalues/DvIdentifierInvariantTest.java | 2 +- .../datavalues/DvIntervalInvariantTest.java | 4 +- .../datavalues/DvMultimediaInvariantTest.java | 6 +- .../datavalues/DvParsableInvariantTest.java | 8 +- ...eriodicTimeSpecificationInvariantTest.java | 4 +- .../datavalues/DvProportionInvariantTest.java | 4 +- .../datavalues/DvQuantityInvariantTest.java | 10 +- .../datavalues/DvTextInvariantTest.java | 6 +- .../datavalues/DvUriInvariantTest.java | 2 +- .../invariants/ehr/ActionInvariantTest.java | 24 +- .../ehr/CompositionInvariantTest.java | 16 +- .../invariants/ehr/EhrInvariantTest.java | 8 +- .../ehr/InstructionInvariantTest.java | 4 +- .../ehr/IsmTransitionInvariantTest.java | 4 +- .../ehr/ObservationInvariantTest.java | 12 +- .../ArchetypeSlotValidationTest.java | 22 +- .../RMPrimitiveObjectValidationTest.java | 2 +- .../validations/RMTupleValidationTest.java | 4 +- .../nedap/archie/rmutil/PathableUtilTest.java | 13 +- .../rules/evaluation/BinaryOperatorTest.java | 2 +- .../FixableAssertionsCheckerTest.java | 18 +- .../rules/evaluation/FunctionsTest.java | 14 +- .../ParsedRulesEvaluationJaxbTest.java | 8 +- .../ParsedRulesEvaluationPathQueryTest.java | 10 +- .../evaluation/ParsedRulesEvaluationTest.java | 28 +- ...rchetypeSerializerParserRoundtripTest.java | 4 +- .../adl/ADLArchetypeSerializerTest.java | 4 +- .../adl/DefaultValueSerializerTest.java | 28 +- .../com/nedap/archie/testutil/TestUtil.java | 2 +- .../archie/xml/JAXBAOMRoundTripTest.java | 6 +- .../com/nedap/archie/xml/JAXBAOMTest.java | 2 +- .../nedap/archie/xml/JAXBRMRoundTripTest.java | 20 +- .../java/com/nedap/archie/xml/JAXBRMTest.java | 10 +- .../flat/s2-EHR-Action.medication.v1.2.2.json | 2253 ------- 357 files changed, 1942 insertions(+), 19029 deletions(-) create mode 100644 aom/src/main/java/com/nedap/archie/rminfo/MetaModelsInitialiser.java rename openehr-rm/src/main/java/com/nedap/archie/{ => openehr}/rminfo/OpenEhrRmInfoLookup.java (62%) create mode 100644 openehr-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrRmMetaModelsInitialiser.java rename openehr-rm/src/main/java/com/nedap/archie/{ => openehr}/rminfo/OpenEhrRmUpdatedValueHandler.java (94%) rename openehr-rm/src/main/java/com/nedap/archie/{ => openehr}/rmutil/InvariantUtil.java (89%) rename openehr-rm/src/main/java/com/nedap/archie/{ => openehr}/rmutil/PathableUtil.java (94%) rename openehr-rm/src/main/java/com/nedap/archie/{ => openehr}/serialisation/json/OpenEhrRmJacksonUtil.java (97%) rename openehr-rm/src/main/java/com/nedap/archie/{ => openehr}/serialisation/json/OpenEhrRmObjectMapperProvider.java (90%) rename openehr-rm/src/main/java/com/nedap/archie/{ => openehr}/serialisation/odin/CodePhraseSerializer.java (80%) rename openehr-rm/src/main/java/com/nedap/archie/{ => openehr}/serialisation/odin/ItemMapToListConverter.java (80%) rename openehr-rm/src/main/java/com/nedap/archie/{ => openehr}/serialisation/odin/OdinParsingClusterMixin.java (71%) rename openehr-rm/src/main/java/com/nedap/archie/{ => openehr}/serialisation/odin/OdinParsingDvTextMixin.java (72%) rename openehr-rm/src/main/java/com/nedap/archie/{ => openehr}/serialisation/odin/OdinParsingItemTreeMixin.java (71%) rename openehr-rm/src/main/java/com/nedap/archie/{ => openehr}/serialisation/odin/TermMappingMapToListConverter.java (82%) rename openehr-rm/src/main/java/com/nedap/archie/{ => openehr}/serialisation/xml/OpenEhrRmJAXBUtil.java (94%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr/base}/definitions/OpenEhrDefinitions.java (90%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/archetyped/Archetyped.java (94%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/archetyped/FeederAudit.java (95%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/archetyped/FeederAuditDetails.java (92%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/archetyped/Link.java (91%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/archetyped/Locatable.java (96%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/archetyped/Pathable.java (97%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/archetyped/TemplateId.java (75%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/changecontrol/Contribution.java (86%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/changecontrol/ImportedVersion.java (85%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/changecontrol/OriginalVersion.java (92%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/changecontrol/Version.java (88%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/changecontrol/VersionedObject.java (87%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/composition/Action.java (81%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/composition/Activity.java (89%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/composition/AdminEntry.java (72%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/composition/CareEntry.java (78%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/composition/Composition.java (93%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/composition/ContentItem.java (82%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/composition/Entry.java (87%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/composition/Evaluation.java (74%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/composition/EventContext.java (91%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/composition/Instruction.java (81%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/composition/InstructionDetails.java (90%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/composition/IsmTransition.java (92%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/composition/Observation.java (77%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/composition/Section.java (84%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datastructures/Cluster.java (84%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datastructures/DataStructure.java (77%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datastructures/Element.java (84%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datastructures/Event.java (89%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datastructures/History.java (89%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datastructures/IntervalEvent.java (82%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datastructures/Item.java (81%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datastructures/ItemList.java (84%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datastructures/ItemSingle.java (85%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datastructures/ItemStructure.java (76%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datastructures/ItemTable.java (91%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datastructures/ItemTree.java (84%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datastructures/PointEvent.java (70%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datatypes/CodePhrase.java (96%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/DataValue.java (91%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/DvBoolean.java (96%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/DvCodedText.java (95%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/DvEHRURI.java (89%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/DvIdentifier.java (95%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/DvParagraph.java (93%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/DvState.java (97%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/DvText.java (96%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/DvURI.java (97%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/SingleValuedDataValue.java (79%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/TermMapping.java (95%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/encapsulated/DvEncapsulated.java (90%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/encapsulated/DvMultimedia.java (96%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/encapsulated/DvParsable.java (93%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/quantity/DvAbsoluteQuantity.java (89%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/quantity/DvAmount.java (94%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/quantity/DvCount.java (94%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/quantity/DvInterval.java (95%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/quantity/DvOrdered.java (95%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/quantity/DvOrdinal.java (92%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/quantity/DvProportion.java (98%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/quantity/DvQuantified.java (92%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/quantity/DvQuantity.java (97%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/quantity/DvScale.java (92%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/quantity/ProportionKind.java (85%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/quantity/ReferenceRange.java (94%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/quantity/datetime/DvDate.java (93%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/quantity/datetime/DvDateTime.java (92%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/quantity/datetime/DvDuration.java (87%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/quantity/datetime/DvTemporal.java (85%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/quantity/datetime/DvTime.java (92%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/quantity/datetime/TimeDefinitions.java (97%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/timespecification/DvGeneralTimeSpecification.java (78%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/timespecification/DvPeriodicTimeSpecification.java (87%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/datavalues/timespecification/DvTimeSpecification.java (84%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/demographic/Actor.java (91%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/demographic/Address.java (82%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/demographic/Agent.java (87%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/demographic/Capability.java (84%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/demographic/Contact.java (88%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/demographic/Group.java (87%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/demographic/Organisation.java (87%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/demographic/Party.java (92%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/demographic/PartyIdentity.java (83%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/demographic/PartyRelationship.java (85%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/demographic/Person.java (87%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/demographic/Role.java (90%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/directory/Folder.java (88%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/directory/VersionedFolder.java (52%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/ehr/Ehr.java (95%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/ehr/EhrAccess.java (85%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/ehr/EhrStatus.java (92%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/ehr/VersionedComposition.java (51%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/ehr/VersionedEhrAccess.java (61%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/ehr/VersionedEhrStatus.java (61%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/generic/Attestation.java (90%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/generic/AuditDetails.java (92%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/generic/Participation.java (89%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/generic/PartyIdentified.java (92%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/generic/PartyProxy.java (92%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/generic/PartyRelated.java (86%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/generic/PartySelf.java (82%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/generic/RevisionHistory.java (97%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/generic/RevisionHistoryItem.java (94%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/integration/GenericEntry.java (76%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/package-info.java (91%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/security/AccessControlSettings.java (89%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/support/identification/AccessGroupRef.java (83%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/support/identification/ArchetypeID.java (99%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/support/identification/GenericId.java (95%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/support/identification/HierObjectId.java (91%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/support/identification/InternetId.java (78%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/support/identification/IsoOID.java (77%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/support/identification/LocatableRef.java (95%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/support/identification/ObjectId.java (95%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/support/identification/ObjectRef.java (97%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/support/identification/ObjectVersionId.java (97%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/support/identification/PartyRef.java (94%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/support/identification/TerminologyId.java (96%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/support/identification/UID.java (94%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/support/identification/UIDBasedId.java (97%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/support/identification/UUID.java (76%) rename openehr-rm/src/main/java/{com/nedap/archie => org/openehr}/rm/support/identification/VersionTreeId.java (98%) rename {referencemodels/src/main/resources => openehr-rm/src/main/resources/org/openehr}/aom_profiles/openehr_aom_profile.arp (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/LICENSE (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/README.adoc (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/AM/Release-2.0.6/openEHR_am_206.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/AM/Release-2.1.0/openEHR_am_210.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/AM/Release-2.2.0/openEHR_am_220.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/AM/Release-2.3.0/openEHR_am_230.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/BASE/Release-1.0.0/openehr_base_100.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/BASE/Release-1.0.4/openehr_base_104.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/BASE/Release-1.0.4/openehr_expression_104.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/BASE/Release-1.1.0/openehr_base_110.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/LANG/Release-1.0.0/openehr_lang_100.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/PROC/Release-1.0.0/openehr_proc_task_planning_100.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/PROC/Release-1.5.0/openehr_proc_task_planning_150.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/PROC/Release-1.6.0/openehr_proc_task_planning_160.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/PROC/latest/openehr_proc_task_planning_110.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/RM/Release-1.0.3/openehr_basic_types_103.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/RM/Release-1.0.3/openehr_demographic_103.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/RM/Release-1.0.3/openehr_ehr_103.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/RM/Release-1.0.3/openehr_ehr_extract_103.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/RM/Release-1.0.3/openehr_primitive_types_103.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/RM/Release-1.0.3/openehr_rm_103.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/RM/Release-1.0.3/openehr_structures_103.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/RM/Release-1.0.4/openehr_rm_104.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/RM/Release-1.0.4/openehr_rm_data_types_104.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/RM/Release-1.0.4/openehr_rm_demographic_104.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/RM/Release-1.0.4/openehr_rm_ehr_104.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/RM/Release-1.0.4/openehr_rm_ehr_extract_104.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/RM/Release-1.0.4/openehr_rm_structures_104.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/RM/Release-1.1.0/openehr_rm_110.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/RM/Release-1.1.0/openehr_rm_data_types_110.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/RM/Release-1.1.0/openehr_rm_demographic_110.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/RM/Release-1.1.0/openehr_rm_ehr_110.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/RM/Release-1.1.0/openehr_rm_ehr_extract_110.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/RM/Release-1.1.0/openehr_rm_structures_110.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/components/RM/rejected/openehr_ehr_extract_999.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/original/Release-1.0.2/openehr_basic_types_102.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/original/Release-1.0.2/openehr_demographic_102.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/original/Release-1.0.2/openehr_ehr_102.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/original/Release-1.0.2/openehr_primitive_types_102.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/original/Release-1.0.2/openehr_rm_102.bmm (100%) rename {referencemodels/src/main/resources/bmm/openEHR => openehr-rm/src/main/resources/org/openehr/bmm}/original/Release-1.0.2/openehr_structures_102.bmm (100%) create mode 100644 openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookupTest.java create mode 100644 openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmMetaModelsInitialiserTest.java create mode 100644 openehr-rm/src/test/resources/RmCLassList.txt create mode 100644 referencemodels/src/main/java/org/openehr/referencemodels/AllMetaModelsInitialiser.java delete mode 100644 referencemodels/src/main/java/org/openehr/referencemodels/BuiltinReferenceModels.java delete mode 100755 referencemodels/src/main/resources/aom_profiles/cdisc_aom_profile.arp delete mode 100755 referencemodels/src/main/resources/aom_profiles/cimi_aom_profile.arp delete mode 100755 referencemodels/src/main/resources/aom_profiles/fhir_aom_profile.arp delete mode 100755 referencemodels/src/main/resources/bmm/CDISC/Core/BMM/CDISC-Core-0.5.0.bmm delete mode 100644 referencemodels/src/main/resources/bmm/CIMI/Release-0.0.3/BMM/CIMI_RM_CLINICAL.v.0.0.3.bmm delete mode 100644 referencemodels/src/main/resources/bmm/CIMI/Release-0.0.3/BMM/CIMI_RM_CORE.v.0.0.3.bmm delete mode 100644 referencemodels/src/main/resources/bmm/CIMI/Release-0.0.3/BMM/CIMI_RM_FOUNDATION.v.0.0.3.bmm delete mode 100755 referencemodels/src/main/resources/bmm/FHIR/DSTU/BMM/hl7_fhir_resourceses_dstu.bmm delete mode 100755 referencemodels/src/main/resources/bmm/ISO_13606/2008/BMM/cen_EN13606_0.95.bmm delete mode 100755 referencemodels/src/main/resources/bmm/ISO_13606/2008/BMM/cen_ts14796_0.90.bmm delete mode 100755 referencemodels/src/main/resources/bmm/ISO_21090/2011/BMM/iso_21090_0.9.0.bmm rename referencemodels/src/test/java/org/openehr/referencemodels/{BuiltInReferenceModelsTest.java => AllMetaModelsInitialiserTest.java} (81%) delete mode 100644 referencemodels/src/test/resources/aom/openehr_am_230.bmm delete mode 100644 referencemodels/src/test/resources/aom/openehr_base_110.bmm delete mode 100644 referencemodels/src/test/resources/aom/openehr_expression_104.bmm delete mode 100644 referencemodels/src/test/resources/cimi/CIMI-RM-3.0.5.bmm rename test-rm/src/main/java/com/nedap/archie/{openehrtestrm/TestRMInfoLookup.java => openehr/rminfo/OpenEhrTestRmInfoLookup.java} (90%) create mode 100644 test-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrTestRmMetaModelsInitialiser.java delete mode 100644 test-rm/src/main/java/com/nedap/archie/openehrtestrm/TestRMBase.java rename test-rm/src/main/java/{com/nedap/archie/openehrtestrm => org/openehr/test_rm}/Book.java (93%) rename test-rm/src/main/java/{com/nedap/archie/openehrtestrm => org/openehr/test_rm}/Car.java (94%) rename test-rm/src/main/java/{com/nedap/archie/openehrtestrm => org/openehr/test_rm}/CarBody.java (94%) rename test-rm/src/main/java/{com/nedap/archie/openehrtestrm => org/openehr/test_rm}/CarBodyPart.java (55%) rename test-rm/src/main/java/{com/nedap/archie/openehrtestrm => org/openehr/test_rm}/Chapter.java (84%) rename test-rm/src/main/java/{com/nedap/archie/openehrtestrm => org/openehr/test_rm}/Cluster.java (84%) rename test-rm/src/main/java/{com/nedap/archie/openehrtestrm => org/openehr/test_rm}/Element.java (75%) rename test-rm/src/main/java/{com/nedap/archie/openehrtestrm => org/openehr/test_rm}/EnginePart.java (88%) rename test-rm/src/main/java/{com/nedap/archie/openehrtestrm => org/openehr/test_rm}/EnginePartItem.java (91%) rename test-rm/src/main/java/{com/nedap/archie/openehrtestrm => org/openehr/test_rm}/Entry.java (83%) rename test-rm/src/main/java/{com/nedap/archie/openehrtestrm => org/openehr/test_rm}/Item.java (56%) rename test-rm/src/main/java/{com/nedap/archie/openehrtestrm => org/openehr/test_rm}/MultiplicityObject.java (93%) rename test-rm/src/main/java/{com/nedap/archie/openehrtestrm => org/openehr/test_rm}/Rim.java (91%) rename test-rm/src/main/java/{com/nedap/archie/openehrtestrm => org/openehr/test_rm}/SomeType.java (93%) create mode 100644 test-rm/src/main/java/org/openehr/test_rm/TestRMBase.java rename test-rm/src/main/java/{com/nedap/archie/openehrtestrm => org/openehr/test_rm}/Wheel.java (92%) rename test-rm/src/main/java/{com/nedap/archie/openehrtestrm => org/openehr/test_rm}/Whole.java (99%) rename referencemodels/src/main/resources/aom_profiles/iso13606_aom_profile.arp => test-rm/src/main/resources/org/openehr/aom_profiles/openehr_aom_profile.arp (71%) rename {referencemodels/src/main/resources/bmm/openEHR => test-rm/src/main/resources/org/openehr/bmm}/adl_test/Release-1.0.0/BMM/openehr_adltest_100.bmm (100%) delete mode 100644 tools/src/test/resources/S2/json/flat/s2-EHR-Action.medication.v1.2.2.json diff --git a/aom/src/main/java/com/nedap/archie/aom/profile/AomProfiles.java b/aom/src/main/java/com/nedap/archie/aom/profile/AomProfiles.java index 8633c59cf..bef1aaabf 100644 --- a/aom/src/main/java/com/nedap/archie/aom/profile/AomProfiles.java +++ b/aom/src/main/java/com/nedap/archie/aom/profile/AomProfiles.java @@ -1,6 +1,7 @@ package com.nedap.archie.aom.profile; import com.nedap.archie.serializer.odin.OdinObjectParser; +import org.openehr.bmm.v2.validation.BmmRepository; import java.io.IOException; import java.io.InputStream; @@ -33,10 +34,14 @@ public void add(InputStream stream) throws IOException { */ public void add(String profile) { profiles.add(OdinObjectParser.convert(profile, AomProfile.class)); - } public List getProfiles() { return profiles; } + + public void merge (AomProfiles otherProfiles) { + profiles.addAll(otherProfiles.profiles); + } + } diff --git a/aom/src/main/java/com/nedap/archie/rminfo/MetaModelsInitialiser.java b/aom/src/main/java/com/nedap/archie/rminfo/MetaModelsInitialiser.java new file mode 100644 index 000000000..316257bde --- /dev/null +++ b/aom/src/main/java/com/nedap/archie/rminfo/MetaModelsInitialiser.java @@ -0,0 +1,106 @@ +package com.nedap.archie.rminfo; + +import com.nedap.archie.aom.profile.AomProfile; +import com.nedap.archie.aom.profile.AomProfiles; +import org.openehr.bmm.v2.persistence.odin.BmmOdinParser; +import org.openehr.bmm.v2.validation.BmmRepository; +import org.openehr.bmm.v2.validation.BmmSchemaConverter; +import org.reflections.Reflections; +import org.reflections.scanners.Scanners; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.IOException; +import java.io.InputStream; +import java.util.ArrayList; +import java.util.List; +import java.util.regex.Pattern; + +/** + * Global meta-model access for openEHR RM + */ +public abstract class MetaModelsInitialiser { + + private static final Logger logger = LoggerFactory.getLogger(MetaModelsInitialiser.class); + + /** + * cache + */ + private AomProfiles aomProfiles; + + private BmmRepository bmmRepository; + + public BmmRepository getBmmRepository() { + if(bmmRepository != null) { + return bmmRepository; + } + + // The first arg will be something like org.openehr.bmm, which is the package name of the access + // class within src/main, but also the package path under src/main/resources + Reflections reflections = new Reflections(getParentPackage() + ".bmm", Scanners.Resources); + List resources = new ArrayList<>(reflections.getResources (Pattern.compile(".*\\.bmm"))); + + bmmRepository = new BmmRepository(); + for(String resourceName:resources) { + logger.info("parsing " + resourceName); + try(InputStream stream = this.getClass().getResourceAsStream("/" + resourceName)) { //not sure why the "/" + is needed, but it is + bmmRepository.addPersistentSchema(BmmOdinParser.convert(stream)); + } catch (IOException e) { + throw new RuntimeException("error loading file: " + e); + } catch (RuntimeException ex) { + logger.error("error parsing {}", resourceName, ex); + } + } + BmmSchemaConverter converter = new BmmSchemaConverter(bmmRepository); + + converter.validateAndConvertRepository(); + return bmmRepository; + } + + /** + * Returns the AOM Profiles available in the resources of this module + * @return + */ + public AomProfiles getAomProfiles() { + if(aomProfiles != null) { + return aomProfiles; + } + AomProfiles profiles = new AomProfiles(); + + //now parse the AOM profiles - they should be in a place like resources/org.openehr.aom_profiles + Reflections reflections = new Reflections(getParentPackage() + ".aom_profiles", Scanners.Resources); + List resourceNames = new ArrayList<>(reflections.getResources (Pattern.compile(".*\\.arp"))); + + for(String resource:resourceNames) { + try(InputStream odin = this.getClass().getResourceAsStream("/" + resource)){ + profiles.add(odin); + } catch (IOException e) { + throw new RuntimeException(e); + } + } + aomProfiles = profiles; + return profiles; + } + + /** + * Returns the model info lookups that are built in archie and are available in the classloader. Add the reference + * models to your dependencies to make this return values + * @return + */ + abstract public ReferenceModels getNativeRms(); + + /** + * Returns the MetaModels loaded with all BMM, ModelInfoLookup and AOM profiles that are available. + * Returns a new MetaModels instance every call! + * @return + */ + public MetaModels getMetaModels() { + MetaModels metaModels = new MetaModels(getNativeRms(), getBmmRepository()); + for(AomProfile profile:getAomProfiles().getProfiles()) { + metaModels.getAomProfiles().add(profile); + } + return metaModels; + } + + abstract public String getParentPackage(); +} \ No newline at end of file diff --git a/aom/src/main/java/com/nedap/archie/rminfo/ReferenceModels.java b/aom/src/main/java/com/nedap/archie/rminfo/ReferenceModels.java index dedb583ab..830f8859d 100644 --- a/aom/src/main/java/com/nedap/archie/rminfo/ReferenceModels.java +++ b/aom/src/main/java/com/nedap/archie/rminfo/ReferenceModels.java @@ -54,4 +54,9 @@ public RMObjectMapperProvider getRmObjectMapperProvider(Archetype archetype) { public List getAllModels() { return new ArrayList<>(referenceModelsById.values()); } + + public void merge (ReferenceModels otherRms) { + referenceModelsById.putAll(otherRms.referenceModelsById); + objectMapperProvidersById.putAll(otherRms.objectMapperProvidersById); + } } diff --git a/aom/src/main/java/com/nedap/archie/rminfo/ReflectionModelInfoLookup.java b/aom/src/main/java/com/nedap/archie/rminfo/ReflectionModelInfoLookup.java index da7d91078..0f3c8a430 100644 --- a/aom/src/main/java/com/nedap/archie/rminfo/ReflectionModelInfoLookup.java +++ b/aom/src/main/java/com/nedap/archie/rminfo/ReflectionModelInfoLookup.java @@ -2,15 +2,22 @@ import com.google.common.reflect.TypeToken; import com.nedap.archie.aom.CPrimitiveObject; +import com.nedap.archie.base.RMObject; import org.reflections.ReflectionUtils; import org.reflections.Reflections; +import org.reflections.scanners.ResourcesScanner; import org.reflections.scanners.Scanners; import org.reflections.scanners.SubTypesScanner; import org.reflections.util.ClasspathHelper; +import org.reflections.util.ConfigurationBuilder; +import org.reflections.util.FilterBuilder; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import javax.annotation.Nullable; +import java.io.BufferedReader; +import java.io.InputStream; +import java.io.InputStreamReader; import java.lang.annotation.Annotation; import java.lang.reflect.*; import java.util.*; @@ -56,6 +63,7 @@ public ReflectionModelInfoLookup(ModelNamingStrategy namingStrategy, String pack this.packageName = packageName; this.namingStrategy = namingStrategy; + // add types this.classLoader = classLoader; Reflections reflections = new Reflections(packageName, Scanners.SubTypes.filterResultsBy(s -> true)); Set typeNames = reflections.getAllTypes(); @@ -67,27 +75,21 @@ public ReflectionModelInfoLookup(ModelNamingStrategy namingStrategy, String pack logger.error("error loading model info lookup", e); } }); + addSuperAndSubclassInfo(); addAlternativeTypeNames(); inConstructor = false; } - public Set> findAllClassesInPackage(String packageName) { - Reflections reflections = new Reflections(packageName, new SubTypesScanner(false)); - return reflections.getSubTypesOf(Object.class) - .stream() - .filter(cl -> !cl.getName().endsWith("Test") // ignore test classes - && !cl.getName().endsWith("$1") // ignore anonymous inner classes - && !cl.isInterface()) // ignore interfaces - .collect(Collectors.toSet()); - } - public ReflectionModelInfoLookup(ModelNamingStrategy namingStrategy, Class baseClass, ClassLoader classLoader, boolean addAttributesWithoutField) { this.namingStrategy = namingStrategy; this.addAttributesWithoutField = addAttributesWithoutField; this.classLoader = classLoader; + + // add types addTypes(baseClass); + addSuperAndSubclassInfo(); addAlternativeTypeNames(); inConstructor = false; @@ -106,6 +108,31 @@ private void addAlternativeTypeNames() { } } + /** + * Get the set of classes in a package (recursively) that are also descendants of a base class. + * This may be used to generate an appropriate set of classes for specialisations of the addTYpe() + * method below. + * + * @param packageName e.g. "org.openehr" + * @param baseClass 'Any' class for the classes in the package of interest + * @return Set of matching classes + */ + public Set> findAllClassesInPackage(String packageName, Class baseClass) { + Reflections reflections = new Reflections( + new ConfigurationBuilder() + .forPackage(packageName) + .setScanners(Scanners.SubTypes + .filterResultsBy(s -> true) + ) + ); + + return reflections.getSubTypesOf (baseClass) + .stream() + .filter(cl -> !cl.isInterface() // ignore interfaces + && !cl.getName().endsWith("$1")) // ignore anonymous inner classes + .collect(Collectors.toSet()); + } + /** * Override to disable reflections scanning * @param baseClass diff --git a/bmm/src/main/java/org/openehr/bmm/v2/validation/BmmRepository.java b/bmm/src/main/java/org/openehr/bmm/v2/validation/BmmRepository.java index 90df0c898..8f0d655fc 100644 --- a/bmm/src/main/java/org/openehr/bmm/v2/validation/BmmRepository.java +++ b/bmm/src/main/java/org/openehr/bmm/v2/validation/BmmRepository.java @@ -61,10 +61,15 @@ public boolean containsPersistentSchema(String schemaId) { public void addModelByClosure(String closure, BmmValidationResult model) { this.modelsByClosure.put(closure.toLowerCase(), model); - } public BmmValidationResult getModelByClosure(String closure) { return modelsByClosure.get(closure.toLowerCase()); } + + public void merge (BmmRepository otherBmmRepo) { + persistentSchemasById.putAll(otherBmmRepo.persistentSchemasById); + modelsById.putAll(otherBmmRepo.modelsById); + modelsByClosure.putAll(otherBmmRepo.modelsByClosure); + } } diff --git a/openehr-rm/src/main/java/com/nedap/archie/adlparser/modelconstraints/RMConstraintImposer.java b/openehr-rm/src/main/java/com/nedap/archie/adlparser/modelconstraints/RMConstraintImposer.java index a07d80c58..a15c541f7 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/adlparser/modelconstraints/RMConstraintImposer.java +++ b/openehr-rm/src/main/java/com/nedap/archie/adlparser/modelconstraints/RMConstraintImposer.java @@ -1,6 +1,6 @@ package com.nedap.archie.adlparser.modelconstraints; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; /** * Constraints imposer for the Archie reference model implementation. diff --git a/openehr-rm/src/main/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookup.java b/openehr-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrRmInfoLookup.java similarity index 62% rename from openehr-rm/src/main/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookup.java rename to openehr-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrRmInfoLookup.java index 5802920e1..209b524f8 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookup.java +++ b/openehr-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrRmInfoLookup.java @@ -1,68 +1,33 @@ -package com.nedap.archie.rminfo; +package com.nedap.archie.openehr.rminfo; import com.nedap.archie.aom.*; -import com.nedap.archie.aom.primitives.CBoolean; -import com.nedap.archie.aom.primitives.CDate; -import com.nedap.archie.aom.primitives.CDateTime; -import com.nedap.archie.aom.primitives.CDuration; -import com.nedap.archie.aom.primitives.CInteger; -import com.nedap.archie.aom.primitives.CReal; -import com.nedap.archie.aom.primitives.CString; -import com.nedap.archie.aom.primitives.CTerminologyCode; -import com.nedap.archie.aom.primitives.CTime; +import com.nedap.archie.aom.primitives.*; import com.nedap.archie.base.Interval; import com.nedap.archie.base.terminology.TerminologyCode; import com.nedap.archie.base.RMObject; -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.archetyped.FeederAuditDetails; -import com.nedap.archie.rm.archetyped.Link; -import com.nedap.archie.rm.archetyped.Locatable; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.archetyped.TemplateId; -import com.nedap.archie.rm.changecontrol.Contribution; -import com.nedap.archie.rm.changecontrol.ImportedVersion; -import com.nedap.archie.rm.changecontrol.OriginalVersion; -import com.nedap.archie.rm.changecontrol.Version; -import com.nedap.archie.rm.changecontrol.VersionedObject; -import com.nedap.archie.rm.composition.*; -import com.nedap.archie.rm.datastructures.*; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.*; -import com.nedap.archie.rm.datavalues.encapsulated.DvEncapsulated; -import com.nedap.archie.rm.datavalues.encapsulated.DvMultimedia; -import com.nedap.archie.rm.datavalues.encapsulated.DvParsable; -import com.nedap.archie.rm.datavalues.quantity.*; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDate; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDuration; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvTemporal; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvTime; -import com.nedap.archie.rm.datavalues.timespecification.DvGeneralTimeSpecification; -import com.nedap.archie.rm.datavalues.timespecification.DvPeriodicTimeSpecification; -import com.nedap.archie.rm.datavalues.timespecification.DvTimeSpecification; -import com.nedap.archie.rm.demographic.*; -import com.nedap.archie.rm.directory.Folder; -import com.nedap.archie.rm.directory.VersionedFolder; -import com.nedap.archie.rm.ehr.Ehr; -import com.nedap.archie.rm.ehr.EhrAccess; -import com.nedap.archie.rm.ehr.EhrStatus; -import com.nedap.archie.rm.ehr.VersionedComposition; -import com.nedap.archie.rm.ehr.VersionedEhrAccess; -import com.nedap.archie.rm.ehr.VersionedEhrStatus; -import com.nedap.archie.rm.generic.Attestation; -import com.nedap.archie.rm.generic.AuditDetails; -import com.nedap.archie.rm.generic.Participation; -import com.nedap.archie.rm.generic.PartyIdentified; -import com.nedap.archie.rm.generic.PartyProxy; -import com.nedap.archie.rm.generic.PartyRelated; -import com.nedap.archie.rm.generic.PartySelf; -import com.nedap.archie.rm.generic.RevisionHistory; -import com.nedap.archie.rm.generic.RevisionHistoryItem; -import com.nedap.archie.rm.integration.GenericEntry; -import com.nedap.archie.rm.security.AccessControlSettings; -import com.nedap.archie.rm.support.identification.*; -import com.nedap.archie.rm.support.identification.UUID; +import com.nedap.archie.rminfo.ArchieModelNamingStrategy; +import com.nedap.archie.rminfo.RMAttributeInfo; +import com.nedap.archie.rminfo.RMPackageId; +import com.nedap.archie.rminfo.ReflectionModelInfoLookup; + +import org.openehr.rm.archetyped.*; +import org.openehr.rm.changecontrol.*; +import org.openehr.rm.composition.*; +import org.openehr.rm.datastructures.*; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.*; +import org.openehr.rm.datavalues.encapsulated.*; +import org.openehr.rm.datavalues.quantity.*; +import org.openehr.rm.datavalues.quantity.datetime.*; +import org.openehr.rm.datavalues.timespecification.*; +import org.openehr.rm.demographic.*; +import org.openehr.rm.directory.*; +import org.openehr.rm.ehr.*; +import org.openehr.rm.generic.*; +import org.openehr.rm.integration.*; +import org.openehr.rm.security.*; +import org.openehr.rm.support.identification.*; +import org.openehr.rm.support.identification.UUID; import java.lang.reflect.Field; import java.lang.reflect.Method; @@ -70,7 +35,6 @@ import java.time.temporal.TemporalAccessor; import java.time.temporal.TemporalAmount; import java.util.*; -import java.util.stream.Collectors; /** * Created by pieter.bos on 02/02/16. @@ -103,18 +67,134 @@ private OpenEhrRmInfoLookup() { */ @Override protected void addTypes(Class baseClass) { - addClass(Interval.class); //extra class from the base package. No RMObject because it is also used in the AOM + addClass(Interval.class); // extra class from the base package. No RMObject because it is also used in the AOM addClass(RMObject.class); // Any class for type system addClass(AuthoredResource.class); addClass(TranslationDetails.class); - // TODO: for whatever reason, passing the argument "com.nedap.archie.rm" does not work directly - Set> classes = findAllClassesInPackage("com.nedap.archie") - .stream() - .filter(cl -> cl.getName().startsWith("com.nedap.archie.rm.")) - .collect(Collectors.toSet()); + /* + * The following list is generated by the test OpenEhrRmInfoLookupTest.testFindAllClassesInRm() + */ + addClass(AccessControlSettings.class); + addClass(AccessGroupRef.class); + addClass(Action.class); + addClass(Activity.class); + addClass(Actor.class); + addClass(Address.class); + addClass(AdminEntry.class); + addClass(Agent.class); + addClass(ArchetypeID.class); + addClass(Archetyped.class); + addClass(Attestation.class); + addClass(AuditDetails.class); + addClass(Capability.class); + addClass(CareEntry.class); + addClass(Cluster.class); + addClass(CodePhrase.class); + addClass(Composition.class); + addClass(Contact.class); + addClass(ContentItem.class); + addClass(Contribution.class); + addClass(DataStructure.class); + addClass(DataValue.class); + addClass(DvAbsoluteQuantity.class); + addClass(DvAmount.class); + addClass(DvBoolean.class); + addClass(DvCodedText.class); + addClass(DvCount.class); + addClass(DvDate.class); + addClass(DvDateTime.class); + addClass(DvDuration.class); + addClass(DvEHRURI.class); + addClass(DvEncapsulated.class); + addClass(DvGeneralTimeSpecification.class); + addClass(DvIdentifier.class); + addClass(DvInterval.class); + addClass(DvMultimedia.class); + addClass(DvOrdered.class); + addClass(DvOrdinal.class); + addClass(DvParagraph.class); + addClass(DvParsable.class); + addClass(DvPeriodicTimeSpecification.class); + addClass(DvProportion.class); + addClass(DvQuantified.class); + addClass(DvQuantity.class); + addClass(DvScale.class); + addClass(DvState.class); + addClass(DvTemporal.class); + addClass(DvText.class); + addClass(DvTime.class); + addClass(DvTimeSpecification.class); + addClass(DvURI.class); + addClass(Ehr.class); + addClass(EhrAccess.class); + addClass(EhrStatus.class); + addClass(Element.class); + addClass(Entry.class); + addClass(Evaluation.class); + addClass(Event.class); + addClass(EventContext.class); + addClass(FeederAudit.class); + addClass(FeederAuditDetails.class); + addClass(Folder.class); + addClass(GenericEntry.class); + addClass(GenericId.class); + addClass(Group.class); + addClass(HierObjectId.class); + addClass(History.class); + addClass(ImportedVersion.class); + addClass(Instruction.class); + addClass(InstructionDetails.class); + addClass(InternetId.class); + addClass(IntervalEvent.class); + addClass(IsmTransition.class); + addClass(IsoOID.class); + addClass(Item.class); + addClass(ItemList.class); + addClass(ItemSingle.class); + addClass(ItemStructure.class); + addClass(ItemTable.class); + addClass(ItemTree.class); + addClass(Link.class); + addClass(Locatable.class); + addClass(LocatableRef.class); + addClass(ObjectId.class); + addClass(ObjectRef.class); + addClass(ObjectVersionId.class); + addClass(Observation.class); + addClass(Organisation.class); + addClass(OriginalVersion.class); + addClass(Participation.class); + addClass(Party.class); + addClass(PartyIdentified.class); + addClass(PartyIdentity.class); + addClass(PartyProxy.class); + addClass(PartyRef.class); + addClass(PartyRelated.class); + addClass(PartyRelationship.class); + addClass(PartySelf.class); + addClass(Pathable.class); + addClass(Person.class); + addClass(PointEvent.class); + addClass(ReferenceRange.class); + addClass(RevisionHistory.class); + addClass(RevisionHistoryItem.class); + addClass(Role.class); + addClass(Section.class); + addClass(TemplateId.class); + addClass(TermMapping.class); + addClass(TerminologyId.class); + addClass(UID.class); + addClass(UIDBasedId.class); + addClass(UUID.class); + addClass(Version.class); + addClass(VersionTreeId.class); + addClass(VersionedComposition.class); + addClass(VersionedEhrAccess.class); + addClass(VersionedEhrStatus.class); + addClass(VersionedFolder.class); + addClass(VersionedObject.class); - classes.forEach(cl -> addClass(cl)); } @Override diff --git a/openehr-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrRmMetaModelsInitialiser.java b/openehr-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrRmMetaModelsInitialiser.java new file mode 100644 index 000000000..2e7b4e0af --- /dev/null +++ b/openehr-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrRmMetaModelsInitialiser.java @@ -0,0 +1,46 @@ +package com.nedap.archie.openehr.rminfo; + +import com.nedap.archie.openehr.serialisation.json.OpenEhrRmObjectMapperProvider; +import com.nedap.archie.rminfo.MetaModelsInitialiser; +import com.nedap.archie.rminfo.RMObjectMapperProvider; +import com.nedap.archie.rminfo.ReferenceModels; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.lang.reflect.Constructor; +import java.lang.reflect.InvocationTargetException; + +/** + * Global meta-model access for openEHR RM + */ +public class OpenEhrRmMetaModelsInitialiser extends MetaModelsInitialiser { + + private static final Logger logger = LoggerFactory.getLogger(OpenEhrRmMetaModelsInitialiser.class); + + /** + * Returns the model info lookups that are built in archie and are available in the classloader. Add the reference + * models to your dependencies to make this return values + * @return + */ + public ReferenceModels getNativeRms() { + ReferenceModels result = new ReferenceModels(); + + RMObjectMapperProvider provider = null; + try { + Class objectMapperProvider = OpenEhrRmObjectMapperProvider.class; + Constructor getProviderInstance = objectMapperProvider.getConstructor(); + provider = (RMObjectMapperProvider) getProviderInstance.newInstance(); + } + catch (InstantiationException | NoSuchMethodException | IllegalAccessException | InvocationTargetException ignored) { + } + + result.registerModel(OpenEhrRmInfoLookup.getInstance(), provider); + + return result; + } + + public String getParentPackage() { + return "org.openehr"; + } + +} \ No newline at end of file diff --git a/openehr-rm/src/main/java/com/nedap/archie/rminfo/OpenEhrRmUpdatedValueHandler.java b/openehr-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrRmUpdatedValueHandler.java similarity index 94% rename from openehr-rm/src/main/java/com/nedap/archie/rminfo/OpenEhrRmUpdatedValueHandler.java rename to openehr-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrRmUpdatedValueHandler.java index 2e63926e5..ebc446bad 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rminfo/OpenEhrRmUpdatedValueHandler.java +++ b/openehr-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrRmUpdatedValueHandler.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rminfo; +package com.nedap.archie.openehr.rminfo; import com.google.common.base.Joiner; import com.google.common.base.Strings; @@ -11,14 +11,14 @@ import com.nedap.archie.apath.APathQuery; import com.nedap.archie.query.RMObjectWithPath; import com.nedap.archie.query.RMPathQuery; -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.Locatable; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.quantity.DvOrdered; -import com.nedap.archie.rm.datavalues.quantity.DvOrdinal; -import com.nedap.archie.rm.datavalues.quantity.DvScale; -import com.nedap.archie.rm.support.identification.TerminologyId; +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.Locatable; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.quantity.DvOrdered; +import org.openehr.rm.datavalues.quantity.DvOrdinal; +import org.openehr.rm.datavalues.quantity.DvScale; +import org.openehr.rm.support.identification.TerminologyId; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rmutil/InvariantUtil.java b/openehr-rm/src/main/java/com/nedap/archie/openehr/rmutil/InvariantUtil.java similarity index 89% rename from openehr-rm/src/main/java/com/nedap/archie/rmutil/InvariantUtil.java rename to openehr-rm/src/main/java/com/nedap/archie/openehr/rmutil/InvariantUtil.java index 7560fc21e..1fe21aa19 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rmutil/InvariantUtil.java +++ b/openehr-rm/src/main/java/com/nedap/archie/openehr/rmutil/InvariantUtil.java @@ -1,10 +1,9 @@ -package com.nedap.archie.rmutil; +package com.nedap.archie.openehr.rmutil; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.support.identification.ObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.support.identification.ObjectId; +import org.openehr.rm.support.identification.ObjectRef; import com.nedap.archie.terminology.OpenEHRTerminologyAccess; import com.nedap.archie.terminology.TermCode; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rmutil/PathableUtil.java b/openehr-rm/src/main/java/com/nedap/archie/openehr/rmutil/PathableUtil.java similarity index 94% rename from openehr-rm/src/main/java/com/nedap/archie/rmutil/PathableUtil.java rename to openehr-rm/src/main/java/com/nedap/archie/openehr/rmutil/PathableUtil.java index c5c02a02e..877613a47 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rmutil/PathableUtil.java +++ b/openehr-rm/src/main/java/com/nedap/archie/openehr/rmutil/PathableUtil.java @@ -1,10 +1,10 @@ -package com.nedap.archie.rmutil; +package com.nedap.archie.openehr.rmutil; import com.nedap.archie.apath.PathSegment; import com.nedap.archie.apath.PathUtil; import com.nedap.archie.query.RMObjectAttributes; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import org.openehr.rm.archetyped.Pathable; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ModelInfoLookup; import java.util.ArrayList; diff --git a/openehr-rm/src/main/java/com/nedap/archie/serialisation/json/OpenEhrRmJacksonUtil.java b/openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/json/OpenEhrRmJacksonUtil.java similarity index 97% rename from openehr-rm/src/main/java/com/nedap/archie/serialisation/json/OpenEhrRmJacksonUtil.java rename to openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/json/OpenEhrRmJacksonUtil.java index beb13c150..a88964cc6 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/serialisation/json/OpenEhrRmJacksonUtil.java +++ b/openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/json/OpenEhrRmJacksonUtil.java @@ -1,4 +1,4 @@ -package com.nedap.archie.serialisation.json; +package com.nedap.archie.openehr.serialisation.json; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonTypeInfo; @@ -22,9 +22,9 @@ import com.nedap.archie.aom.RulesSection; import com.nedap.archie.aom.primitives.CTemporal; import com.nedap.archie.json.*; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.support.identification.ArchetypeID; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.support.identification.ArchetypeID; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rules.Operator; import com.nedap.archie.rules.OperatorKind; diff --git a/openehr-rm/src/main/java/com/nedap/archie/serialisation/json/OpenEhrRmObjectMapperProvider.java b/openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/json/OpenEhrRmObjectMapperProvider.java similarity index 90% rename from openehr-rm/src/main/java/com/nedap/archie/serialisation/json/OpenEhrRmObjectMapperProvider.java rename to openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/json/OpenEhrRmObjectMapperProvider.java index e91bdd46f..b9ef758e7 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/serialisation/json/OpenEhrRmObjectMapperProvider.java +++ b/openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/json/OpenEhrRmObjectMapperProvider.java @@ -1,4 +1,4 @@ -package com.nedap.archie.serialisation.json; +package com.nedap.archie.openehr.serialisation.json; import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.databind.DeserializationContext; @@ -9,12 +9,12 @@ import com.fasterxml.jackson.databind.deser.DeserializationProblemHandler; import com.fasterxml.jackson.databind.module.SimpleModule; import com.nedap.archie.json.ArchieJacksonConfiguration; -import com.nedap.archie.serialisation.odin.CodePhraseSerializer; -import com.nedap.archie.serialisation.odin.OdinParsingClusterMixin; -import com.nedap.archie.serialisation.odin.OdinParsingItemTreeMixin; -import com.nedap.archie.rm.datastructures.Cluster; -import com.nedap.archie.rm.datastructures.ItemTree; -import com.nedap.archie.rm.datatypes.CodePhrase; +import com.nedap.archie.openehr.serialisation.odin.OdinParsingClusterMixin; +import com.nedap.archie.openehr.serialisation.odin.CodePhraseSerializer; +import com.nedap.archie.openehr.serialisation.odin.OdinParsingItemTreeMixin; +import org.openehr.rm.datastructures.Cluster; +import org.openehr.rm.datastructures.ItemTree; +import org.openehr.rm.datatypes.CodePhrase; import com.nedap.archie.rminfo.RMObjectMapperProvider; import com.nedap.archie.serializer.odin.AdlOdinToJsonConverter; import org.openehr.odin.jackson.ODINMapper; diff --git a/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/CodePhraseSerializer.java b/openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/odin/CodePhraseSerializer.java similarity index 80% rename from openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/CodePhraseSerializer.java rename to openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/odin/CodePhraseSerializer.java index 2c69e2dfe..902d9cc52 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/CodePhraseSerializer.java +++ b/openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/odin/CodePhraseSerializer.java @@ -1,10 +1,9 @@ -package com.nedap.archie.serialisation.odin; +package com.nedap.archie.openehr.serialisation.odin; import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.databind.JsonSerializer; import com.fasterxml.jackson.databind.SerializerProvider; -import com.fasterxml.jackson.databind.util.Converter; -import com.nedap.archie.rm.datatypes.CodePhrase; +import org.openehr.rm.datatypes.CodePhrase; import java.io.IOException; diff --git a/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/ItemMapToListConverter.java b/openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/odin/ItemMapToListConverter.java similarity index 80% rename from openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/ItemMapToListConverter.java rename to openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/odin/ItemMapToListConverter.java index 72d6c8481..3d9eac4b0 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/ItemMapToListConverter.java +++ b/openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/odin/ItemMapToListConverter.java @@ -1,14 +1,12 @@ -package com.nedap.archie.serialisation.odin; +package com.nedap.archie.openehr.serialisation.odin; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.type.TypeFactory; -import com.fasterxml.jackson.databind.util.Converter; import com.nedap.archie.odin.BaseMapToListConverter; -import com.nedap.archie.rm.datastructures.Item; +import org.openehr.rm.datastructures.Item; -import java.util.ArrayList; import java.util.List; import java.util.Map; diff --git a/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/OdinParsingClusterMixin.java b/openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/odin/OdinParsingClusterMixin.java similarity index 71% rename from openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/OdinParsingClusterMixin.java rename to openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/odin/OdinParsingClusterMixin.java index 7bb0e24f7..39a7b73a7 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/OdinParsingClusterMixin.java +++ b/openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/odin/OdinParsingClusterMixin.java @@ -1,7 +1,7 @@ -package com.nedap.archie.serialisation.odin; +package com.nedap.archie.openehr.serialisation.odin; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; -import com.nedap.archie.rm.datastructures.Item; +import org.openehr.rm.datastructures.Item; import java.util.List; diff --git a/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/OdinParsingDvTextMixin.java b/openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/odin/OdinParsingDvTextMixin.java similarity index 72% rename from openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/OdinParsingDvTextMixin.java rename to openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/odin/OdinParsingDvTextMixin.java index 2f9a521f8..6a57a1cd9 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/OdinParsingDvTextMixin.java +++ b/openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/odin/OdinParsingDvTextMixin.java @@ -1,7 +1,7 @@ -package com.nedap.archie.serialisation.odin; +package com.nedap.archie.openehr.serialisation.odin; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; -import com.nedap.archie.rm.datavalues.TermMapping; +import org.openehr.rm.datavalues.TermMapping; import java.util.List; diff --git a/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/OdinParsingItemTreeMixin.java b/openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/odin/OdinParsingItemTreeMixin.java similarity index 71% rename from openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/OdinParsingItemTreeMixin.java rename to openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/odin/OdinParsingItemTreeMixin.java index 4d1b54ff0..a505d69bd 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/OdinParsingItemTreeMixin.java +++ b/openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/odin/OdinParsingItemTreeMixin.java @@ -1,7 +1,7 @@ -package com.nedap.archie.serialisation.odin; +package com.nedap.archie.openehr.serialisation.odin; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; -import com.nedap.archie.rm.datastructures.Item; +import org.openehr.rm.datastructures.Item; import java.util.List; diff --git a/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/TermMappingMapToListConverter.java b/openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/odin/TermMappingMapToListConverter.java similarity index 82% rename from openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/TermMappingMapToListConverter.java rename to openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/odin/TermMappingMapToListConverter.java index fd5f4c28f..fda271a92 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/serialisation/odin/TermMappingMapToListConverter.java +++ b/openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/odin/TermMappingMapToListConverter.java @@ -1,11 +1,10 @@ -package com.nedap.archie.serialisation.odin; +package com.nedap.archie.openehr.serialisation.odin; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.type.TypeFactory; -import com.fasterxml.jackson.databind.util.Converter; import com.nedap.archie.odin.BaseMapToListConverter; -import com.nedap.archie.rm.datavalues.TermMapping; +import org.openehr.rm.datavalues.TermMapping; import java.util.List; import java.util.Map; diff --git a/openehr-rm/src/main/java/com/nedap/archie/serialisation/xml/OpenEhrRmJAXBUtil.java b/openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/xml/OpenEhrRmJAXBUtil.java similarity index 94% rename from openehr-rm/src/main/java/com/nedap/archie/serialisation/xml/OpenEhrRmJAXBUtil.java rename to openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/xml/OpenEhrRmJAXBUtil.java index 093032267..095044d2c 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/serialisation/xml/OpenEhrRmJAXBUtil.java +++ b/openehr-rm/src/main/java/com/nedap/archie/openehr/serialisation/xml/OpenEhrRmJAXBUtil.java @@ -1,10 +1,10 @@ -package com.nedap.archie.serialisation.xml; +package com.nedap.archie.openehr.serialisation.xml; import com.google.common.collect.Lists; import com.nedap.archie.rminfo.ArchieAOMInfoLookup; import com.nedap.archie.xml.JAXBUtil; import com.nedap.archie.xml.types.XmlResourceDescriptionItem; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import javax.xml.bind.JAXBContext; import javax.xml.bind.JAXBException; import java.util.ArrayList; diff --git a/openehr-rm/src/main/java/com/nedap/archie/definitions/OpenEhrDefinitions.java b/openehr-rm/src/main/java/org/openehr/base/definitions/OpenEhrDefinitions.java similarity index 90% rename from openehr-rm/src/main/java/com/nedap/archie/definitions/OpenEhrDefinitions.java rename to openehr-rm/src/main/java/org/openehr/base/definitions/OpenEhrDefinitions.java index 4039baf43..7e243fc66 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/definitions/OpenEhrDefinitions.java +++ b/openehr-rm/src/main/java/org/openehr/base/definitions/OpenEhrDefinitions.java @@ -1,4 +1,4 @@ -package com.nedap.archie.definitions; +package org.openehr.base.definitions; /* * #%L @@ -21,6 +21,8 @@ * Author: Claude Nanjo */ +import com.nedap.archie.definitions.BasicDefinitions; + /** * Inheritance class to provide access to constants defined in other packages. * diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Archetyped.java b/openehr-rm/src/main/java/org/openehr/rm/archetyped/Archetyped.java similarity index 94% rename from openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Archetyped.java rename to openehr-rm/src/main/java/org/openehr/rm/archetyped/Archetyped.java index 602f20aa4..2be50996d 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Archetyped.java +++ b/openehr-rm/src/main/java/org/openehr/rm/archetyped/Archetyped.java @@ -1,9 +1,9 @@ -package com.nedap.archie.rm.archetyped; +package org.openehr.rm.archetyped; import com.nedap.archie.base.RMObject; -import com.nedap.archie.rm.support.identification.ArchetypeID; +import org.openehr.rm.support.identification.ArchetypeID; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/FeederAudit.java b/openehr-rm/src/main/java/org/openehr/rm/archetyped/FeederAudit.java similarity index 95% rename from openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/FeederAudit.java rename to openehr-rm/src/main/java/org/openehr/rm/archetyped/FeederAudit.java index 9ffebcea0..4996bffec 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/FeederAudit.java +++ b/openehr-rm/src/main/java/org/openehr/rm/archetyped/FeederAudit.java @@ -1,8 +1,8 @@ -package com.nedap.archie.rm.archetyped; +package org.openehr.rm.archetyped; import com.nedap.archie.base.RMObject; -import com.nedap.archie.rm.datavalues.DvIdentifier; -import com.nedap.archie.rm.datavalues.encapsulated.DvEncapsulated; +import org.openehr.rm.datavalues.DvIdentifier; +import org.openehr.rm.datavalues.encapsulated.DvEncapsulated; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/FeederAuditDetails.java b/openehr-rm/src/main/java/org/openehr/rm/archetyped/FeederAuditDetails.java similarity index 92% rename from openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/FeederAuditDetails.java rename to openehr-rm/src/main/java/org/openehr/rm/archetyped/FeederAuditDetails.java index 33a808e9c..a171eec67 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/FeederAuditDetails.java +++ b/openehr-rm/src/main/java/org/openehr/rm/archetyped/FeederAuditDetails.java @@ -1,12 +1,12 @@ -package com.nedap.archie.rm.archetyped; +package org.openehr.rm.archetyped; import com.nedap.archie.base.RMObject; -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.generic.PartyIdentified; -import com.nedap.archie.rm.generic.PartyProxy; +import org.openehr.rm.datastructures.ItemStructure; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.generic.PartyIdentified; +import org.openehr.rm.generic.PartyProxy; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Link.java b/openehr-rm/src/main/java/org/openehr/rm/archetyped/Link.java similarity index 91% rename from openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Link.java rename to openehr-rm/src/main/java/org/openehr/rm/archetyped/Link.java index 31ac97485..60a0246e8 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Link.java +++ b/openehr-rm/src/main/java/org/openehr/rm/archetyped/Link.java @@ -1,8 +1,8 @@ -package com.nedap.archie.rm.archetyped; +package org.openehr.rm.archetyped; import com.nedap.archie.base.RMObject; -import com.nedap.archie.rm.datavalues.DvEHRURI; -import com.nedap.archie.rm.datavalues.DvText; +import org.openehr.rm.datavalues.DvEHRURI; +import org.openehr.rm.datavalues.DvText; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Locatable.java b/openehr-rm/src/main/java/org/openehr/rm/archetyped/Locatable.java similarity index 96% rename from openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Locatable.java rename to openehr-rm/src/main/java/org/openehr/rm/archetyped/Locatable.java index b719f2c09..ebf3a19a2 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Locatable.java +++ b/openehr-rm/src/main/java/org/openehr/rm/archetyped/Locatable.java @@ -1,12 +1,12 @@ -package com.nedap.archie.rm.archetyped; +package org.openehr.rm.archetyped; import com.fasterxml.jackson.annotation.JsonIgnore; import com.nedap.archie.apath.PathSegment; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.support.identification.UIDBasedId; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.support.identification.UIDBasedId; import com.nedap.archie.rminfo.Invariant; import com.nedap.archie.rminfo.RMPropertyIgnore; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.*; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Pathable.java b/openehr-rm/src/main/java/org/openehr/rm/archetyped/Pathable.java similarity index 97% rename from openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Pathable.java rename to openehr-rm/src/main/java/org/openehr/rm/archetyped/Pathable.java index d5b3b061a..bddfcfadc 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/Pathable.java +++ b/openehr-rm/src/main/java/org/openehr/rm/archetyped/Pathable.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.archetyped; +package org.openehr.rm.archetyped; import com.fasterxml.jackson.annotation.JsonIgnore; import com.nedap.archie.apath.PathSegment; @@ -6,7 +6,7 @@ import com.nedap.archie.query.RMObjectWithPath; import com.nedap.archie.query.RMPathQuery; import com.nedap.archie.base.RMObject; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.PropertyType; import com.nedap.archie.rminfo.RMProperty; import com.nedap.archie.rminfo.RMPropertyIgnore; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/TemplateId.java b/openehr-rm/src/main/java/org/openehr/rm/archetyped/TemplateId.java similarity index 75% rename from openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/TemplateId.java rename to openehr-rm/src/main/java/org/openehr/rm/archetyped/TemplateId.java index a08c5fc8a..e7863b656 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/archetyped/TemplateId.java +++ b/openehr-rm/src/main/java/org/openehr/rm/archetyped/TemplateId.java @@ -1,6 +1,6 @@ -package com.nedap.archie.rm.archetyped; +package org.openehr.rm.archetyped; -import com.nedap.archie.rm.support.identification.ObjectId; +import org.openehr.rm.support.identification.ObjectId; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/Contribution.java b/openehr-rm/src/main/java/org/openehr/rm/changecontrol/Contribution.java similarity index 86% rename from openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/Contribution.java rename to openehr-rm/src/main/java/org/openehr/rm/changecontrol/Contribution.java index 28b614d98..3d7182a6e 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/Contribution.java +++ b/openehr-rm/src/main/java/org/openehr/rm/changecontrol/Contribution.java @@ -1,10 +1,10 @@ -package com.nedap.archie.rm.changecontrol; +package org.openehr.rm.changecontrol; import com.nedap.archie.base.RMObject; -import com.nedap.archie.rm.generic.AuditDetails; -import com.nedap.archie.rm.support.identification.HierObjectId; -import com.nedap.archie.rm.support.identification.ObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; +import org.openehr.rm.generic.AuditDetails; +import org.openehr.rm.support.identification.HierObjectId; +import org.openehr.rm.support.identification.ObjectId; +import org.openehr.rm.support.identification.ObjectRef; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/ImportedVersion.java b/openehr-rm/src/main/java/org/openehr/rm/changecontrol/ImportedVersion.java similarity index 85% rename from openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/ImportedVersion.java rename to openehr-rm/src/main/java/org/openehr/rm/changecontrol/ImportedVersion.java index 461e83deb..3290283dd 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/ImportedVersion.java +++ b/openehr-rm/src/main/java/org/openehr/rm/changecontrol/ImportedVersion.java @@ -1,10 +1,10 @@ -package com.nedap.archie.rm.changecontrol; +package org.openehr.rm.changecontrol; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.generic.AuditDetails; -import com.nedap.archie.rm.support.identification.ObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; -import com.nedap.archie.rm.support.identification.ObjectVersionId; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.generic.AuditDetails; +import org.openehr.rm.support.identification.ObjectId; +import org.openehr.rm.support.identification.ObjectRef; +import org.openehr.rm.support.identification.ObjectVersionId; import com.nedap.archie.rminfo.RMProperty; import javax.annotation.Nullable; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/OriginalVersion.java b/openehr-rm/src/main/java/org/openehr/rm/changecontrol/OriginalVersion.java similarity index 92% rename from openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/OriginalVersion.java rename to openehr-rm/src/main/java/org/openehr/rm/changecontrol/OriginalVersion.java index c57381741..a67c00286 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/OriginalVersion.java +++ b/openehr-rm/src/main/java/org/openehr/rm/changecontrol/OriginalVersion.java @@ -1,17 +1,17 @@ -package com.nedap.archie.rm.changecontrol; +package org.openehr.rm.changecontrol; import com.fasterxml.jackson.annotation.JsonAlias; import com.fasterxml.jackson.annotation.JsonIgnore; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.generic.Attestation; -import com.nedap.archie.rm.generic.AuditDetails; -import com.nedap.archie.rm.support.identification.ObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; -import com.nedap.archie.rm.support.identification.ObjectVersionId; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.generic.Attestation; +import org.openehr.rm.generic.AuditDetails; +import org.openehr.rm.support.identification.ObjectId; +import org.openehr.rm.support.identification.ObjectRef; +import org.openehr.rm.support.identification.ObjectVersionId; import com.nedap.archie.rminfo.Invariant; import com.nedap.archie.rminfo.RMProperty; import com.nedap.archie.rminfo.RMPropertyIgnore; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlElement; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/Version.java b/openehr-rm/src/main/java/org/openehr/rm/changecontrol/Version.java similarity index 88% rename from openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/Version.java rename to openehr-rm/src/main/java/org/openehr/rm/changecontrol/Version.java index c2920d6ec..d457df5d0 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/Version.java +++ b/openehr-rm/src/main/java/org/openehr/rm/changecontrol/Version.java @@ -1,14 +1,14 @@ -package com.nedap.archie.rm.changecontrol; +package org.openehr.rm.changecontrol; import com.nedap.archie.base.RMObject; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.generic.AuditDetails; -import com.nedap.archie.rm.support.identification.ObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; -import com.nedap.archie.rm.support.identification.ObjectVersionId; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.generic.AuditDetails; +import org.openehr.rm.support.identification.ObjectId; +import org.openehr.rm.support.identification.ObjectRef; +import org.openehr.rm.support.identification.ObjectVersionId; import com.nedap.archie.rminfo.Invariant; import com.nedap.archie.rminfo.RMProperty; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/VersionedObject.java b/openehr-rm/src/main/java/org/openehr/rm/changecontrol/VersionedObject.java similarity index 87% rename from openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/VersionedObject.java rename to openehr-rm/src/main/java/org/openehr/rm/changecontrol/VersionedObject.java index e2e9ce70a..fc32b0a96 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/changecontrol/VersionedObject.java +++ b/openehr-rm/src/main/java/org/openehr/rm/changecontrol/VersionedObject.java @@ -1,11 +1,11 @@ -package com.nedap.archie.rm.changecontrol; +package org.openehr.rm.changecontrol; import com.fasterxml.jackson.annotation.JsonAlias; import com.nedap.archie.base.RMObject; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.support.identification.HierObjectId; -import com.nedap.archie.rm.support.identification.ObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.support.identification.HierObjectId; +import org.openehr.rm.support.identification.ObjectId; +import org.openehr.rm.support.identification.ObjectRef; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/Action.java b/openehr-rm/src/main/java/org/openehr/rm/composition/Action.java similarity index 81% rename from openehr-rm/src/main/java/com/nedap/archie/rm/composition/Action.java rename to openehr-rm/src/main/java/org/openehr/rm/composition/Action.java index fbfed962c..e45075d25 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/Action.java +++ b/openehr-rm/src/main/java/org/openehr/rm/composition/Action.java @@ -1,20 +1,20 @@ -package com.nedap.archie.rm.composition; - - -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.archetyped.Link; -import com.nedap.archie.rm.archetyped.Pathable; - -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.generic.Participation; -import com.nedap.archie.rm.generic.PartyProxy; -import com.nedap.archie.rm.support.identification.ObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; -import com.nedap.archie.rm.support.identification.UIDBasedId; +package org.openehr.rm.composition; + + +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.FeederAudit; +import org.openehr.rm.archetyped.Link; +import org.openehr.rm.archetyped.Pathable; + +import org.openehr.rm.datastructures.ItemStructure; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.generic.Participation; +import org.openehr.rm.generic.PartyProxy; +import org.openehr.rm.support.identification.ObjectId; +import org.openehr.rm.support.identification.ObjectRef; +import org.openehr.rm.support.identification.UIDBasedId; import javax.annotation.Nullable; import javax.xml.bind.annotation.*; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/Activity.java b/openehr-rm/src/main/java/org/openehr/rm/composition/Activity.java similarity index 89% rename from openehr-rm/src/main/java/com/nedap/archie/rm/composition/Activity.java rename to openehr-rm/src/main/java/org/openehr/rm/composition/Activity.java index b07c861ca..65b6339f6 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/Activity.java +++ b/openehr-rm/src/main/java/org/openehr/rm/composition/Activity.java @@ -1,12 +1,12 @@ -package com.nedap.archie.rm.composition; +package org.openehr.rm.composition; -import com.nedap.archie.rm.archetyped.*; -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.datavalues.encapsulated.DvParsable; -import com.nedap.archie.rm.support.identification.UIDBasedId; +import org.openehr.rm.datastructures.ItemStructure; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.datavalues.encapsulated.DvParsable; +import org.openehr.rm.support.identification.UIDBasedId; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; +import org.openehr.rm.archetyped.*; import javax.annotation.Nullable; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/AdminEntry.java b/openehr-rm/src/main/java/org/openehr/rm/composition/AdminEntry.java similarity index 72% rename from openehr-rm/src/main/java/com/nedap/archie/rm/composition/AdminEntry.java rename to openehr-rm/src/main/java/org/openehr/rm/composition/AdminEntry.java index edc950e93..0c7b7ca3b 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/AdminEntry.java +++ b/openehr-rm/src/main/java/org/openehr/rm/composition/AdminEntry.java @@ -1,17 +1,17 @@ -package com.nedap.archie.rm.composition; - -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.archetyped.Link; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.generic.Participation; -import com.nedap.archie.rm.generic.PartyProxy; -import com.nedap.archie.rm.support.identification.ObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; -import com.nedap.archie.rm.support.identification.UIDBasedId; +package org.openehr.rm.composition; + +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.FeederAudit; +import org.openehr.rm.archetyped.Link; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datastructures.ItemStructure; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.generic.Participation; +import org.openehr.rm.generic.PartyProxy; +import org.openehr.rm.support.identification.ObjectId; +import org.openehr.rm.support.identification.ObjectRef; +import org.openehr.rm.support.identification.UIDBasedId; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/CareEntry.java b/openehr-rm/src/main/java/org/openehr/rm/composition/CareEntry.java similarity index 78% rename from openehr-rm/src/main/java/com/nedap/archie/rm/composition/CareEntry.java rename to openehr-rm/src/main/java/org/openehr/rm/composition/CareEntry.java index 27830c0cc..76ad32b15 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/CareEntry.java +++ b/openehr-rm/src/main/java/org/openehr/rm/composition/CareEntry.java @@ -1,17 +1,17 @@ -package com.nedap.archie.rm.composition; +package org.openehr.rm.composition; -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.archetyped.Link; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.generic.Participation; -import com.nedap.archie.rm.generic.PartyProxy; -import com.nedap.archie.rm.support.identification.ObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; -import com.nedap.archie.rm.support.identification.UIDBasedId; +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.FeederAudit; +import org.openehr.rm.archetyped.Link; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datastructures.ItemStructure; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.generic.Participation; +import org.openehr.rm.generic.PartyProxy; +import org.openehr.rm.support.identification.ObjectId; +import org.openehr.rm.support.identification.ObjectRef; +import org.openehr.rm.support.identification.UIDBasedId; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/Composition.java b/openehr-rm/src/main/java/org/openehr/rm/composition/Composition.java similarity index 93% rename from openehr-rm/src/main/java/com/nedap/archie/rm/composition/Composition.java rename to openehr-rm/src/main/java/org/openehr/rm/composition/Composition.java index 7ec80e755..76ffdb7fa 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/Composition.java +++ b/openehr-rm/src/main/java/org/openehr/rm/composition/Composition.java @@ -1,15 +1,15 @@ -package com.nedap.archie.rm.composition; +package org.openehr.rm.composition; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; -import com.nedap.archie.rm.archetyped.*; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.generic.PartyProxy; -import com.nedap.archie.rm.support.identification.UIDBasedId; +import org.openehr.rm.archetyped.*; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.generic.PartyProxy; +import org.openehr.rm.support.identification.UIDBasedId; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/ContentItem.java b/openehr-rm/src/main/java/org/openehr/rm/composition/ContentItem.java similarity index 82% rename from openehr-rm/src/main/java/com/nedap/archie/rm/composition/ContentItem.java rename to openehr-rm/src/main/java/org/openehr/rm/composition/ContentItem.java index 7445c4114..22ec87f0f 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/ContentItem.java +++ b/openehr-rm/src/main/java/org/openehr/rm/composition/ContentItem.java @@ -1,8 +1,8 @@ -package com.nedap.archie.rm.composition; +package org.openehr.rm.composition; -import com.nedap.archie.rm.archetyped.*; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.support.identification.UIDBasedId; +import org.openehr.rm.archetyped.*; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.support.identification.UIDBasedId; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/Entry.java b/openehr-rm/src/main/java/org/openehr/rm/composition/Entry.java similarity index 87% rename from openehr-rm/src/main/java/com/nedap/archie/rm/composition/Entry.java rename to openehr-rm/src/main/java/org/openehr/rm/composition/Entry.java index 148c17236..90cf7205f 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/Entry.java +++ b/openehr-rm/src/main/java/org/openehr/rm/composition/Entry.java @@ -1,20 +1,20 @@ -package com.nedap.archie.rm.composition; +package org.openehr.rm.composition; import com.fasterxml.jackson.annotation.JsonAlias; -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.archetyped.Link; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.generic.Participation; -import com.nedap.archie.rm.generic.PartyProxy; -import com.nedap.archie.rm.generic.PartySelf; -import com.nedap.archie.rm.support.identification.ObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; -import com.nedap.archie.rm.support.identification.UIDBasedId; +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.FeederAudit; +import org.openehr.rm.archetyped.Link; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.generic.Participation; +import org.openehr.rm.generic.PartyProxy; +import org.openehr.rm.generic.PartySelf; +import org.openehr.rm.support.identification.ObjectId; +import org.openehr.rm.support.identification.ObjectRef; +import org.openehr.rm.support.identification.UIDBasedId; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/Evaluation.java b/openehr-rm/src/main/java/org/openehr/rm/composition/Evaluation.java similarity index 74% rename from openehr-rm/src/main/java/com/nedap/archie/rm/composition/Evaluation.java rename to openehr-rm/src/main/java/org/openehr/rm/composition/Evaluation.java index 4b2f582e5..f97a1ddae 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/Evaluation.java +++ b/openehr-rm/src/main/java/org/openehr/rm/composition/Evaluation.java @@ -1,17 +1,17 @@ -package com.nedap.archie.rm.composition; +package org.openehr.rm.composition; -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.archetyped.Link; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.generic.Participation; -import com.nedap.archie.rm.generic.PartyProxy; -import com.nedap.archie.rm.support.identification.ObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; -import com.nedap.archie.rm.support.identification.UIDBasedId; +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.FeederAudit; +import org.openehr.rm.archetyped.Link; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datastructures.ItemStructure; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.generic.Participation; +import org.openehr.rm.generic.PartyProxy; +import org.openehr.rm.support.identification.ObjectId; +import org.openehr.rm.support.identification.ObjectRef; +import org.openehr.rm.support.identification.UIDBasedId; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/EventContext.java b/openehr-rm/src/main/java/org/openehr/rm/composition/EventContext.java similarity index 91% rename from openehr-rm/src/main/java/com/nedap/archie/rm/composition/EventContext.java rename to openehr-rm/src/main/java/org/openehr/rm/composition/EventContext.java index 81186ee30..c64b62efa 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/EventContext.java +++ b/openehr-rm/src/main/java/org/openehr/rm/composition/EventContext.java @@ -1,13 +1,13 @@ -package com.nedap.archie.rm.composition; - -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.generic.Participation; -import com.nedap.archie.rm.generic.PartyIdentified; +package org.openehr.rm.composition; + +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datastructures.ItemStructure; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.generic.Participation; +import org.openehr.rm.generic.PartyIdentified; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/Instruction.java b/openehr-rm/src/main/java/org/openehr/rm/composition/Instruction.java similarity index 81% rename from openehr-rm/src/main/java/com/nedap/archie/rm/composition/Instruction.java rename to openehr-rm/src/main/java/org/openehr/rm/composition/Instruction.java index 5b6feba44..6903782b8 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/Instruction.java +++ b/openehr-rm/src/main/java/org/openehr/rm/composition/Instruction.java @@ -1,22 +1,22 @@ -package com.nedap.archie.rm.composition; - - -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.archetyped.Link; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.datavalues.encapsulated.DvParsable; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.generic.Participation; -import com.nedap.archie.rm.generic.PartyProxy; -import com.nedap.archie.rm.support.identification.ObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; -import com.nedap.archie.rm.support.identification.UIDBasedId; +package org.openehr.rm.composition; + + +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.FeederAudit; +import org.openehr.rm.archetyped.Link; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datastructures.ItemStructure; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.datavalues.encapsulated.DvParsable; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.generic.Participation; +import org.openehr.rm.generic.PartyProxy; +import org.openehr.rm.support.identification.ObjectId; +import org.openehr.rm.support.identification.ObjectRef; +import org.openehr.rm.support.identification.UIDBasedId; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/InstructionDetails.java b/openehr-rm/src/main/java/org/openehr/rm/composition/InstructionDetails.java similarity index 90% rename from openehr-rm/src/main/java/com/nedap/archie/rm/composition/InstructionDetails.java rename to openehr-rm/src/main/java/org/openehr/rm/composition/InstructionDetails.java index 6a3ed03ea..31f81fb3a 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/InstructionDetails.java +++ b/openehr-rm/src/main/java/org/openehr/rm/composition/InstructionDetails.java @@ -1,10 +1,10 @@ -package com.nedap.archie.rm.composition; +package org.openehr.rm.composition; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.support.identification.LocatableRef; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datastructures.ItemStructure; +import org.openehr.rm.support.identification.LocatableRef; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/IsmTransition.java b/openehr-rm/src/main/java/org/openehr/rm/composition/IsmTransition.java similarity index 92% rename from openehr-rm/src/main/java/com/nedap/archie/rm/composition/IsmTransition.java rename to openehr-rm/src/main/java/org/openehr/rm/composition/IsmTransition.java index b91638a44..23e0759d6 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/IsmTransition.java +++ b/openehr-rm/src/main/java/org/openehr/rm/composition/IsmTransition.java @@ -1,10 +1,10 @@ -package com.nedap.archie.rm.composition; +package org.openehr.rm.composition; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.DvText; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.DvText; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/Observation.java b/openehr-rm/src/main/java/org/openehr/rm/composition/Observation.java similarity index 77% rename from openehr-rm/src/main/java/com/nedap/archie/rm/composition/Observation.java rename to openehr-rm/src/main/java/org/openehr/rm/composition/Observation.java index d4932332e..8d66215f5 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/Observation.java +++ b/openehr-rm/src/main/java/org/openehr/rm/composition/Observation.java @@ -1,18 +1,18 @@ -package com.nedap.archie.rm.composition; +package org.openehr.rm.composition; -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.archetyped.Link; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datastructures.History; -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.generic.Participation; -import com.nedap.archie.rm.generic.PartyProxy; -import com.nedap.archie.rm.support.identification.ObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; -import com.nedap.archie.rm.support.identification.UIDBasedId; +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.FeederAudit; +import org.openehr.rm.archetyped.Link; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datastructures.History; +import org.openehr.rm.datastructures.ItemStructure; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.generic.Participation; +import org.openehr.rm.generic.PartyProxy; +import org.openehr.rm.support.identification.ObjectId; +import org.openehr.rm.support.identification.ObjectRef; +import org.openehr.rm.support.identification.UIDBasedId; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/Section.java b/openehr-rm/src/main/java/org/openehr/rm/composition/Section.java similarity index 84% rename from openehr-rm/src/main/java/com/nedap/archie/rm/composition/Section.java rename to openehr-rm/src/main/java/org/openehr/rm/composition/Section.java index b8c2eaa02..894e5cc63 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/composition/Section.java +++ b/openehr-rm/src/main/java/org/openehr/rm/composition/Section.java @@ -1,13 +1,13 @@ -package com.nedap.archie.rm.composition; +package org.openehr.rm.composition; -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.archetyped.Link; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.support.identification.UIDBasedId; +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.FeederAudit; +import org.openehr.rm.archetyped.Link; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.support.identification.UIDBasedId; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/Cluster.java b/openehr-rm/src/main/java/org/openehr/rm/datastructures/Cluster.java similarity index 84% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/Cluster.java rename to openehr-rm/src/main/java/org/openehr/rm/datastructures/Cluster.java index 4132d31b6..bc0e04c4c 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/Cluster.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datastructures/Cluster.java @@ -1,11 +1,11 @@ -package com.nedap.archie.rm.datastructures; +package org.openehr.rm.datastructures; -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.archetyped.Link; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.support.identification.UIDBasedId; +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.FeederAudit; +import org.openehr.rm.archetyped.Link; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.support.identification.UIDBasedId; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/DataStructure.java b/openehr-rm/src/main/java/org/openehr/rm/datastructures/DataStructure.java similarity index 77% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/DataStructure.java rename to openehr-rm/src/main/java/org/openehr/rm/datastructures/DataStructure.java index a03c75147..f491b1456 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/DataStructure.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datastructures/DataStructure.java @@ -1,8 +1,8 @@ -package com.nedap.archie.rm.datastructures; +package org.openehr.rm.datastructures; -import com.nedap.archie.rm.archetyped.*; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.support.identification.UIDBasedId; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.support.identification.UIDBasedId; +import org.openehr.rm.archetyped.*; import javax.annotation.Nullable; import java.util.List; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/Element.java b/openehr-rm/src/main/java/org/openehr/rm/datastructures/Element.java similarity index 84% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/Element.java rename to openehr-rm/src/main/java/org/openehr/rm/datastructures/Element.java index 2d8c18cf7..419bfeeda 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/Element.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datastructures/Element.java @@ -1,16 +1,16 @@ -package com.nedap.archie.rm.datastructures; - -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.archetyped.Link; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datavalues.DataValue; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.datavalues.SingleValuedDataValue; -import com.nedap.archie.rm.support.identification.UIDBasedId; +package org.openehr.rm.datastructures; + +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.FeederAudit; +import org.openehr.rm.archetyped.Link; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datavalues.DataValue; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.datavalues.SingleValuedDataValue; +import org.openehr.rm.support.identification.UIDBasedId; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.*; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/Event.java b/openehr-rm/src/main/java/org/openehr/rm/datastructures/Event.java similarity index 89% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/Event.java rename to openehr-rm/src/main/java/org/openehr/rm/datastructures/Event.java index 0b1884cf3..a02a43267 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/Event.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datastructures/Event.java @@ -1,11 +1,11 @@ -package com.nedap.archie.rm.datastructures; +package org.openehr.rm.datastructures; import com.fasterxml.jackson.annotation.JsonIgnore; -import com.nedap.archie.rm.archetyped.*; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDuration; -import com.nedap.archie.rm.support.identification.UIDBasedId; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.datavalues.quantity.datetime.DvDuration; +import org.openehr.rm.support.identification.UIDBasedId; +import org.openehr.rm.archetyped.*; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/History.java b/openehr-rm/src/main/java/org/openehr/rm/datastructures/History.java similarity index 89% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/History.java rename to openehr-rm/src/main/java/org/openehr/rm/datastructures/History.java index 06ab9664e..6d1e74ade 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/History.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datastructures/History.java @@ -1,13 +1,13 @@ -package com.nedap.archie.rm.datastructures; - -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.archetyped.Link; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDuration; -import com.nedap.archie.rm.support.identification.UIDBasedId; +package org.openehr.rm.datastructures; + +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.FeederAudit; +import org.openehr.rm.archetyped.Link; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.datavalues.quantity.datetime.DvDuration; +import org.openehr.rm.support.identification.UIDBasedId; import com.nedap.archie.rminfo.Invariant; import javax.annotation.Nullable; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/IntervalEvent.java b/openehr-rm/src/main/java/org/openehr/rm/datastructures/IntervalEvent.java similarity index 82% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/IntervalEvent.java rename to openehr-rm/src/main/java/org/openehr/rm/datastructures/IntervalEvent.java index 9acd6c0d2..6478dee6a 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/IntervalEvent.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datastructures/IntervalEvent.java @@ -1,16 +1,16 @@ -package com.nedap.archie.rm.datastructures; - -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.archetyped.Link; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDuration; -import com.nedap.archie.rm.support.identification.UIDBasedId; +package org.openehr.rm.datastructures; + +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.FeederAudit; +import org.openehr.rm.archetyped.Link; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.datavalues.quantity.datetime.DvDuration; +import org.openehr.rm.support.identification.UIDBasedId; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/Item.java b/openehr-rm/src/main/java/org/openehr/rm/datastructures/Item.java similarity index 81% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/Item.java rename to openehr-rm/src/main/java/org/openehr/rm/datastructures/Item.java index 513c8054c..a4c3e83a5 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/Item.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datastructures/Item.java @@ -1,8 +1,8 @@ -package com.nedap.archie.rm.datastructures; +package org.openehr.rm.datastructures; -import com.nedap.archie.rm.archetyped.*; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.support.identification.UIDBasedId; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.support.identification.UIDBasedId; +import org.openehr.rm.archetyped.*; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/ItemList.java b/openehr-rm/src/main/java/org/openehr/rm/datastructures/ItemList.java similarity index 84% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/ItemList.java rename to openehr-rm/src/main/java/org/openehr/rm/datastructures/ItemList.java index a4a13791a..edaf2726a 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/ItemList.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datastructures/ItemList.java @@ -1,11 +1,11 @@ -package com.nedap.archie.rm.datastructures; +package org.openehr.rm.datastructures; -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.archetyped.Link; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.support.identification.UIDBasedId; +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.FeederAudit; +import org.openehr.rm.archetyped.Link; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.support.identification.UIDBasedId; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/ItemSingle.java b/openehr-rm/src/main/java/org/openehr/rm/datastructures/ItemSingle.java similarity index 85% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/ItemSingle.java rename to openehr-rm/src/main/java/org/openehr/rm/datastructures/ItemSingle.java index 0e2ace0e1..af4e81dd6 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/ItemSingle.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datastructures/ItemSingle.java @@ -1,13 +1,13 @@ -package com.nedap.archie.rm.datastructures; +package org.openehr.rm.datastructures; import com.fasterxml.jackson.annotation.JsonIgnore; import com.google.common.collect.Lists; -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.archetyped.Link; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.support.identification.UIDBasedId; +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.FeederAudit; +import org.openehr.rm.archetyped.Link; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.support.identification.UIDBasedId; import com.nedap.archie.rminfo.RMPropertyIgnore; import javax.annotation.Nullable; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/ItemStructure.java b/openehr-rm/src/main/java/org/openehr/rm/datastructures/ItemStructure.java similarity index 76% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/ItemStructure.java rename to openehr-rm/src/main/java/org/openehr/rm/datastructures/ItemStructure.java index 05d05403d..34a4d354f 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/ItemStructure.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datastructures/ItemStructure.java @@ -1,11 +1,11 @@ -package com.nedap.archie.rm.datastructures; - -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.archetyped.Link; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.support.identification.UIDBasedId; +package org.openehr.rm.datastructures; + +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.FeederAudit; +import org.openehr.rm.archetyped.Link; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.support.identification.UIDBasedId; import com.nedap.archie.rminfo.RMPropertyIgnore; import javax.annotation.Nullable; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/ItemTable.java b/openehr-rm/src/main/java/org/openehr/rm/datastructures/ItemTable.java similarity index 91% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/ItemTable.java rename to openehr-rm/src/main/java/org/openehr/rm/datastructures/ItemTable.java index 4dab153df..b2b5f0e36 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/ItemTable.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datastructures/ItemTable.java @@ -1,11 +1,11 @@ -package com.nedap.archie.rm.datastructures; - -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.archetyped.Link; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.support.identification.UIDBasedId; +package org.openehr.rm.datastructures; + +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.FeederAudit; +import org.openehr.rm.archetyped.Link; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.support.identification.UIDBasedId; import com.nedap.archie.rminfo.Invariant; import com.nedap.archie.rminfo.RMPropertyIgnore; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/ItemTree.java b/openehr-rm/src/main/java/org/openehr/rm/datastructures/ItemTree.java similarity index 84% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/ItemTree.java rename to openehr-rm/src/main/java/org/openehr/rm/datastructures/ItemTree.java index bcd6d9ffe..9c0a13cf9 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/ItemTree.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datastructures/ItemTree.java @@ -1,11 +1,11 @@ -package com.nedap.archie.rm.datastructures; +package org.openehr.rm.datastructures; -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.archetyped.Link; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.support.identification.UIDBasedId; +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.FeederAudit; +import org.openehr.rm.archetyped.Link; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.support.identification.UIDBasedId; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/PointEvent.java b/openehr-rm/src/main/java/org/openehr/rm/datastructures/PointEvent.java similarity index 70% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/PointEvent.java rename to openehr-rm/src/main/java/org/openehr/rm/datastructures/PointEvent.java index cdf5ce3a2..b3372e7a0 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datastructures/PointEvent.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datastructures/PointEvent.java @@ -1,13 +1,13 @@ -package com.nedap.archie.rm.datastructures; +package org.openehr.rm.datastructures; -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.archetyped.Link; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.support.identification.UIDBasedId; +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.FeederAudit; +import org.openehr.rm.archetyped.Link; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.support.identification.UIDBasedId; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datatypes/CodePhrase.java b/openehr-rm/src/main/java/org/openehr/rm/datatypes/CodePhrase.java similarity index 96% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datatypes/CodePhrase.java rename to openehr-rm/src/main/java/org/openehr/rm/datatypes/CodePhrase.java index a25a735a1..135683c24 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datatypes/CodePhrase.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datatypes/CodePhrase.java @@ -1,9 +1,9 @@ -package com.nedap.archie.rm.datatypes; +package org.openehr.rm.datatypes; import com.nedap.archie.base.RMObject; -import com.nedap.archie.rm.support.identification.TerminologyId; +import org.openehr.rm.support.identification.TerminologyId; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DataValue.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/DataValue.java similarity index 91% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DataValue.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/DataValue.java index 9e3c17a56..6431c6686 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DataValue.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/DataValue.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.datavalues; +package org.openehr.rm.datavalues; import com.nedap.archie.base.RMObject; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvBoolean.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/DvBoolean.java similarity index 96% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvBoolean.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/DvBoolean.java index a2a447039..791cbdf70 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvBoolean.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/DvBoolean.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.datavalues; +package org.openehr.rm.datavalues; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvCodedText.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/DvCodedText.java similarity index 95% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvCodedText.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/DvCodedText.java index 315ed7852..028114021 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvCodedText.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/DvCodedText.java @@ -1,7 +1,7 @@ -package com.nedap.archie.rm.datavalues; +package org.openehr.rm.datavalues; import com.google.common.base.MoreObjects; -import com.nedap.archie.rm.datatypes.CodePhrase; +import org.openehr.rm.datatypes.CodePhrase; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvEHRURI.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/DvEHRURI.java similarity index 89% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvEHRURI.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/DvEHRURI.java index 96bf809da..f01572b42 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvEHRURI.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/DvEHRURI.java @@ -1,6 +1,6 @@ -package com.nedap.archie.rm.datavalues; +package org.openehr.rm.datavalues; -import com.nedap.archie.definitions.OpenEhrDefinitions; +import org.openehr.base.definitions.OpenEhrDefinitions; import com.nedap.archie.rminfo.Invariant; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvIdentifier.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/DvIdentifier.java similarity index 95% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvIdentifier.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/DvIdentifier.java index f26428b41..5d483c422 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvIdentifier.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/DvIdentifier.java @@ -1,7 +1,7 @@ -package com.nedap.archie.rm.datavalues; +package org.openehr.rm.datavalues; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvParagraph.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/DvParagraph.java similarity index 93% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvParagraph.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/DvParagraph.java index e355f4106..c61705d6d 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvParagraph.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/DvParagraph.java @@ -1,11 +1,11 @@ -package com.nedap.archie.rm.datavalues; +package org.openehr.rm.datavalues; /** * Created by pieter.bos on 08/07/16. */ import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvState.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/DvState.java similarity index 97% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvState.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/DvState.java index fb6ac9e19..a71952b24 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvState.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/DvState.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.datavalues; +package org.openehr.rm.datavalues; import com.nedap.archie.rminfo.RMProperty; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvText.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/DvText.java similarity index 96% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvText.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/DvText.java index e739ea74d..97c874ef5 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvText.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/DvText.java @@ -1,9 +1,9 @@ -package com.nedap.archie.rm.datavalues; +package org.openehr.rm.datavalues; -import com.nedap.archie.rm.datatypes.CodePhrase; +import org.openehr.rm.datatypes.CodePhrase; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvURI.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/DvURI.java similarity index 97% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvURI.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/DvURI.java index 539e32580..d5e1938bb 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/DvURI.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/DvURI.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.datavalues; +package org.openehr.rm.datavalues; import com.nedap.archie.rminfo.Invariant; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/SingleValuedDataValue.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/SingleValuedDataValue.java similarity index 79% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/SingleValuedDataValue.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/SingleValuedDataValue.java index 41ac7f633..074863844 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/SingleValuedDataValue.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/SingleValuedDataValue.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.datavalues; +package org.openehr.rm.datavalues; /** * Created by pieter.bos on 04/11/15. diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/TermMapping.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/TermMapping.java similarity index 95% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/TermMapping.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/TermMapping.java index 687f7fc56..2588bbfcd 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/TermMapping.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/TermMapping.java @@ -1,10 +1,10 @@ -package com.nedap.archie.rm.datavalues; +package org.openehr.rm.datavalues; import com.google.common.collect.Sets; import com.nedap.archie.base.RMObject; -import com.nedap.archie.rm.datatypes.CodePhrase; +import org.openehr.rm.datatypes.CodePhrase; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import com.nedap.archie.xml.adapters.TermMappingMatchAdapter; import javax.annotation.Nullable; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/encapsulated/DvEncapsulated.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/encapsulated/DvEncapsulated.java similarity index 90% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/encapsulated/DvEncapsulated.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/encapsulated/DvEncapsulated.java index 59a4423f5..44b5be61f 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/encapsulated/DvEncapsulated.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/encapsulated/DvEncapsulated.java @@ -1,9 +1,9 @@ -package com.nedap.archie.rm.datavalues.encapsulated; +package org.openehr.rm.datavalues.encapsulated; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DataValue; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DataValue; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/encapsulated/DvMultimedia.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/encapsulated/DvMultimedia.java similarity index 96% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/encapsulated/DvMultimedia.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/encapsulated/DvMultimedia.java index 761cb4501..5a538eaeb 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/encapsulated/DvMultimedia.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/encapsulated/DvMultimedia.java @@ -1,11 +1,11 @@ -package com.nedap.archie.rm.datavalues.encapsulated; +package org.openehr.rm.datavalues.encapsulated; import com.fasterxml.jackson.annotation.JsonIgnore; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DvURI; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DvURI; import com.nedap.archie.rminfo.Invariant; import com.nedap.archie.rminfo.RMPropertyIgnore; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/encapsulated/DvParsable.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/encapsulated/DvParsable.java similarity index 93% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/encapsulated/DvParsable.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/encapsulated/DvParsable.java index d4f956513..75cd12a2b 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/encapsulated/DvParsable.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/encapsulated/DvParsable.java @@ -1,9 +1,9 @@ -package com.nedap.archie.rm.datavalues.encapsulated; +package org.openehr.rm.datavalues.encapsulated; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.SingleValuedDataValue; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.SingleValuedDataValue; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import org.apache.commons.io.Charsets; import javax.annotation.Nullable; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvAbsoluteQuantity.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvAbsoluteQuantity.java similarity index 89% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvAbsoluteQuantity.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvAbsoluteQuantity.java index 50d6bf147..6290df268 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvAbsoluteQuantity.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvAbsoluteQuantity.java @@ -1,6 +1,6 @@ -package com.nedap.archie.rm.datavalues.quantity; +package org.openehr.rm.datavalues.quantity; -import com.nedap.archie.rm.datatypes.CodePhrase; +import org.openehr.rm.datatypes.CodePhrase; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvAmount.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvAmount.java similarity index 94% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvAmount.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvAmount.java index 587519f3b..e2249f296 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvAmount.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvAmount.java @@ -1,7 +1,7 @@ -package com.nedap.archie.rm.datavalues.quantity; +package org.openehr.rm.datavalues.quantity; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDuration; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.quantity.datetime.DvDuration; import com.nedap.archie.rminfo.Invariant; import javax.annotation.Nullable; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvCount.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvCount.java similarity index 94% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvCount.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvCount.java index 47d7e5df5..94031121c 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvCount.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvCount.java @@ -1,6 +1,6 @@ -package com.nedap.archie.rm.datavalues.quantity; +package org.openehr.rm.datavalues.quantity; -import com.nedap.archie.rm.datatypes.CodePhrase; +import org.openehr.rm.datatypes.CodePhrase; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvInterval.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvInterval.java similarity index 95% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvInterval.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvInterval.java index 1d139ccc0..65b16b36d 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvInterval.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvInterval.java @@ -1,9 +1,8 @@ -package com.nedap.archie.rm.datavalues.quantity; +package org.openehr.rm.datavalues.quantity; import com.fasterxml.jackson.annotation.JsonIgnore; import com.nedap.archie.base.Interval; -import com.nedap.archie.rm.datavalues.DataValue; -import com.nedap.archie.rminfo.Invariant; +import org.openehr.rm.datavalues.DataValue; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvOrdered.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvOrdered.java similarity index 95% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvOrdered.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvOrdered.java index b82776d1b..0e951c75e 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvOrdered.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvOrdered.java @@ -1,11 +1,11 @@ -package com.nedap.archie.rm.datavalues.quantity; +package org.openehr.rm.datavalues.quantity; import com.fasterxml.jackson.annotation.JsonIgnore; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DataValue; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DataValue; import com.nedap.archie.rminfo.Invariant; import com.nedap.archie.rminfo.RMPropertyIgnore; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvOrdinal.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvOrdinal.java similarity index 92% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvOrdinal.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvOrdinal.java index 6bb268f80..c5edae24c 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvOrdinal.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvOrdinal.java @@ -1,7 +1,7 @@ -package com.nedap.archie.rm.datavalues.quantity; +package org.openehr.rm.datavalues.quantity; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.SingleValuedDataValue; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.SingleValuedDataValue; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvProportion.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvProportion.java similarity index 98% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvProportion.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvProportion.java index 00d9dbd7b..394a43216 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvProportion.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvProportion.java @@ -1,7 +1,7 @@ -package com.nedap.archie.rm.datavalues.quantity; +package org.openehr.rm.datavalues.quantity; import com.fasterxml.jackson.annotation.JsonIgnore; -import com.nedap.archie.rm.datatypes.CodePhrase; +import org.openehr.rm.datatypes.CodePhrase; import com.nedap.archie.rminfo.Invariant; import javax.annotation.Nullable; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvQuantified.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvQuantified.java similarity index 92% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvQuantified.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvQuantified.java index 6b2e64e8e..b77dac787 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvQuantified.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvQuantified.java @@ -1,17 +1,15 @@ -package com.nedap.archie.rm.datavalues.quantity; +package org.openehr.rm.datavalues.quantity; import com.google.common.collect.Sets; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvTemporal; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.quantity.datetime.DvTemporal; import com.nedap.archie.rminfo.Invariant; import com.nedap.archie.rminfo.PropertyType; import com.nedap.archie.rminfo.RMProperty; import javax.annotation.Nullable; import javax.xml.bind.annotation.*; -import java.util.Arrays; -import java.util.HashSet; import java.util.List; import java.util.Objects; import java.util.Set; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvQuantity.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvQuantity.java similarity index 97% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvQuantity.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvQuantity.java index 15cc226fa..811bb1761 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvQuantity.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvQuantity.java @@ -1,7 +1,7 @@ -package com.nedap.archie.rm.datavalues.quantity; +package org.openehr.rm.datavalues.quantity; import com.fasterxml.jackson.annotation.JsonIgnore; -import com.nedap.archie.rm.datatypes.CodePhrase; +import org.openehr.rm.datatypes.CodePhrase; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvScale.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvScale.java similarity index 92% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvScale.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvScale.java index 0b1e9df5d..4bd7ced76 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/DvScale.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/DvScale.java @@ -1,7 +1,7 @@ -package com.nedap.archie.rm.datavalues.quantity; +package org.openehr.rm.datavalues.quantity; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.SingleValuedDataValue; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.SingleValuedDataValue; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/ProportionKind.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/ProportionKind.java similarity index 85% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/ProportionKind.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/ProportionKind.java index c9402f84d..f5c44d0cf 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/ProportionKind.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/ProportionKind.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.datavalues.quantity; +package org.openehr.rm.datavalues.quantity; /** * Created by pieter.bos on 01/03/16. diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/ReferenceRange.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/ReferenceRange.java similarity index 94% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/ReferenceRange.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/ReferenceRange.java index 026372384..e36795eb9 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/ReferenceRange.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/ReferenceRange.java @@ -1,7 +1,7 @@ -package com.nedap.archie.rm.datavalues.quantity; +package org.openehr.rm.datavalues.quantity; import com.nedap.archie.base.RMObject; -import com.nedap.archie.rm.datavalues.DvText; +import org.openehr.rm.datavalues.DvText; import com.nedap.archie.rminfo.Invariant; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvDate.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/datetime/DvDate.java similarity index 93% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvDate.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/datetime/DvDate.java index b23ae2ac0..0f2248016 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvDate.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/datetime/DvDate.java @@ -1,13 +1,13 @@ -package com.nedap.archie.rm.datavalues.quantity.datetime; +package org.openehr.rm.datavalues.quantity.datetime; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.nedap.archie.datetime.DateTimeParsers; import com.nedap.archie.json.DateDeserializer; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.SingleValuedDataValue; -import com.nedap.archie.rm.datavalues.quantity.DvInterval; -import com.nedap.archie.rm.datavalues.quantity.ReferenceRange; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.SingleValuedDataValue; +import org.openehr.rm.datavalues.quantity.DvInterval; +import org.openehr.rm.datavalues.quantity.ReferenceRange; import com.nedap.archie.rminfo.PropertyType; import com.nedap.archie.rminfo.RMProperty; import com.nedap.archie.xml.adapters.DateXmlAdapter; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvDateTime.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/datetime/DvDateTime.java similarity index 92% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvDateTime.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/datetime/DvDateTime.java index 71789878c..9fb8d3a20 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvDateTime.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/datetime/DvDateTime.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.datavalues.quantity.datetime; +package org.openehr.rm.datavalues.quantity.datetime; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; @@ -6,10 +6,10 @@ import com.nedap.archie.datetime.DateTimeParsers; import com.nedap.archie.json.DateTimeDeserializer; import com.nedap.archie.json.DateTimeSerializer; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.SingleValuedDataValue; -import com.nedap.archie.rm.datavalues.quantity.DvInterval; -import com.nedap.archie.rm.datavalues.quantity.ReferenceRange; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.SingleValuedDataValue; +import org.openehr.rm.datavalues.quantity.DvInterval; +import org.openehr.rm.datavalues.quantity.ReferenceRange; import com.nedap.archie.rminfo.PropertyType; import com.nedap.archie.rminfo.RMProperty; import com.nedap.archie.xml.adapters.DateTimeXmlAdapter; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvDuration.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/datetime/DvDuration.java similarity index 87% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvDuration.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/datetime/DvDuration.java index 825694482..06033b873 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvDuration.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/datetime/DvDuration.java @@ -1,12 +1,12 @@ -package com.nedap.archie.rm.datavalues.quantity.datetime; +package org.openehr.rm.datavalues.quantity.datetime; import com.fasterxml.jackson.annotation.JsonIgnore; import com.nedap.archie.datetime.DateTimeParsers; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.SingleValuedDataValue; -import com.nedap.archie.rm.datavalues.quantity.DvAmount; -import com.nedap.archie.rm.datavalues.quantity.DvInterval; -import com.nedap.archie.rm.datavalues.quantity.ReferenceRange; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.SingleValuedDataValue; +import org.openehr.rm.datavalues.quantity.DvAmount; +import org.openehr.rm.datavalues.quantity.DvInterval; +import org.openehr.rm.datavalues.quantity.ReferenceRange; import com.nedap.archie.xml.adapters.DurationXmlAdapter; import javax.annotation.Nullable; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvTemporal.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/datetime/DvTemporal.java similarity index 85% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvTemporal.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/datetime/DvTemporal.java index 4d76ffa12..c701c7bd7 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvTemporal.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/datetime/DvTemporal.java @@ -1,9 +1,9 @@ -package com.nedap.archie.rm.datavalues.quantity.datetime; +package org.openehr.rm.datavalues.quantity.datetime; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.quantity.DvAbsoluteQuantity; -import com.nedap.archie.rm.datavalues.quantity.DvInterval; -import com.nedap.archie.rm.datavalues.quantity.ReferenceRange; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.quantity.DvAbsoluteQuantity; +import org.openehr.rm.datavalues.quantity.DvInterval; +import org.openehr.rm.datavalues.quantity.ReferenceRange; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvTime.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/datetime/DvTime.java similarity index 92% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvTime.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/datetime/DvTime.java index d86b596c5..469d2da3f 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvTime.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/datetime/DvTime.java @@ -1,13 +1,13 @@ -package com.nedap.archie.rm.datavalues.quantity.datetime; +package org.openehr.rm.datavalues.quantity.datetime; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.nedap.archie.datetime.DateTimeParsers; import com.nedap.archie.json.TimeDeserializer; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.SingleValuedDataValue; -import com.nedap.archie.rm.datavalues.quantity.DvInterval; -import com.nedap.archie.rm.datavalues.quantity.ReferenceRange; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.SingleValuedDataValue; +import org.openehr.rm.datavalues.quantity.DvInterval; +import org.openehr.rm.datavalues.quantity.ReferenceRange; import com.nedap.archie.rminfo.PropertyType; import com.nedap.archie.rminfo.RMProperty; import com.nedap.archie.xml.adapters.TimeXmlAdapter; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/datetime/TimeDefinitions.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/datetime/TimeDefinitions.java similarity index 97% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/datetime/TimeDefinitions.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/datetime/TimeDefinitions.java index 8086c1c39..63e68f2df 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/quantity/datetime/TimeDefinitions.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/quantity/datetime/TimeDefinitions.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.datavalues.quantity.datetime; +package org.openehr.rm.datavalues.quantity.datetime; import java.time.temporal.ChronoUnit; import java.time.temporal.TemporalAmount; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/timespecification/DvGeneralTimeSpecification.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/timespecification/DvGeneralTimeSpecification.java similarity index 78% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/timespecification/DvGeneralTimeSpecification.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/timespecification/DvGeneralTimeSpecification.java index e32e2699d..857fe3bad 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/timespecification/DvGeneralTimeSpecification.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/timespecification/DvGeneralTimeSpecification.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.datavalues.timespecification; +package org.openehr.rm.datavalues.timespecification; import javax.xml.bind.annotation.XmlType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/timespecification/DvPeriodicTimeSpecification.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/timespecification/DvPeriodicTimeSpecification.java similarity index 87% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/timespecification/DvPeriodicTimeSpecification.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/timespecification/DvPeriodicTimeSpecification.java index d68572c71..94e75b988 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/timespecification/DvPeriodicTimeSpecification.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/timespecification/DvPeriodicTimeSpecification.java @@ -1,10 +1,9 @@ -package com.nedap.archie.rm.datavalues.timespecification; +package org.openehr.rm.datavalues.timespecification; import com.nedap.archie.rminfo.Invariant; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlType; /** diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/timespecification/DvTimeSpecification.java b/openehr-rm/src/main/java/org/openehr/rm/datavalues/timespecification/DvTimeSpecification.java similarity index 84% rename from openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/timespecification/DvTimeSpecification.java rename to openehr-rm/src/main/java/org/openehr/rm/datavalues/timespecification/DvTimeSpecification.java index 82746f589..87fb3e253 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/datavalues/timespecification/DvTimeSpecification.java +++ b/openehr-rm/src/main/java/org/openehr/rm/datavalues/timespecification/DvTimeSpecification.java @@ -1,7 +1,7 @@ -package com.nedap.archie.rm.datavalues.timespecification; +package org.openehr.rm.datavalues.timespecification; -import com.nedap.archie.rm.datavalues.DataValue; -import com.nedap.archie.rm.datavalues.encapsulated.DvParsable; +import org.openehr.rm.datavalues.DataValue; +import org.openehr.rm.datavalues.encapsulated.DvParsable; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Actor.java b/openehr-rm/src/main/java/org/openehr/rm/demographic/Actor.java similarity index 91% rename from openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Actor.java rename to openehr-rm/src/main/java/org/openehr/rm/demographic/Actor.java index ee1d31f8a..b78ba7ca7 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Actor.java +++ b/openehr-rm/src/main/java/org/openehr/rm/demographic/Actor.java @@ -1,7 +1,7 @@ -package com.nedap.archie.rm.demographic; +package org.openehr.rm.demographic; -import com.nedap.archie.rm.support.identification.PartyRef; -import com.nedap.archie.rm.datavalues.DvText; +import org.openehr.rm.support.identification.PartyRef; +import org.openehr.rm.datavalues.DvText; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Address.java b/openehr-rm/src/main/java/org/openehr/rm/demographic/Address.java similarity index 82% rename from openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Address.java rename to openehr-rm/src/main/java/org/openehr/rm/demographic/Address.java index cb39e9db1..a2909faf9 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Address.java +++ b/openehr-rm/src/main/java/org/openehr/rm/demographic/Address.java @@ -1,10 +1,9 @@ -package com.nedap.archie.rm.demographic; +package org.openehr.rm.demographic; import com.fasterxml.jackson.annotation.JsonIgnore; -import com.nedap.archie.rm.archetyped.Locatable; -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rminfo.RMPropertyIgnore; +import org.openehr.rm.archetyped.Locatable; +import org.openehr.rm.datastructures.ItemStructure; +import org.openehr.rm.datavalues.DvText; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Agent.java b/openehr-rm/src/main/java/org/openehr/rm/demographic/Agent.java similarity index 87% rename from openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Agent.java rename to openehr-rm/src/main/java/org/openehr/rm/demographic/Agent.java index d70be6820..b2ef36ec3 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Agent.java +++ b/openehr-rm/src/main/java/org/openehr/rm/demographic/Agent.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.demographic; +package org.openehr.rm.demographic; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Capability.java b/openehr-rm/src/main/java/org/openehr/rm/demographic/Capability.java similarity index 84% rename from openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Capability.java rename to openehr-rm/src/main/java/org/openehr/rm/demographic/Capability.java index 474b98761..e1aebc382 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Capability.java +++ b/openehr-rm/src/main/java/org/openehr/rm/demographic/Capability.java @@ -1,9 +1,9 @@ -package com.nedap.archie.rm.demographic; +package org.openehr.rm.demographic; -import com.nedap.archie.rm.archetyped.Locatable; -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.datavalues.quantity.DvInterval; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDate; +import org.openehr.rm.archetyped.Locatable; +import org.openehr.rm.datastructures.ItemStructure; +import org.openehr.rm.datavalues.quantity.DvInterval; +import org.openehr.rm.datavalues.quantity.datetime.DvDate; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Contact.java b/openehr-rm/src/main/java/org/openehr/rm/demographic/Contact.java similarity index 88% rename from openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Contact.java rename to openehr-rm/src/main/java/org/openehr/rm/demographic/Contact.java index 4b8ac5a34..4c7f93660 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Contact.java +++ b/openehr-rm/src/main/java/org/openehr/rm/demographic/Contact.java @@ -1,10 +1,10 @@ -package com.nedap.archie.rm.demographic; +package org.openehr.rm.demographic; import com.fasterxml.jackson.annotation.JsonIgnore; -import com.nedap.archie.rm.archetyped.Locatable; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.datavalues.quantity.DvInterval; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDate; +import org.openehr.rm.archetyped.Locatable; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.datavalues.quantity.DvInterval; +import org.openehr.rm.datavalues.quantity.datetime.DvDate; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Group.java b/openehr-rm/src/main/java/org/openehr/rm/demographic/Group.java similarity index 87% rename from openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Group.java rename to openehr-rm/src/main/java/org/openehr/rm/demographic/Group.java index 894bcc37c..57f5a7a91 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Group.java +++ b/openehr-rm/src/main/java/org/openehr/rm/demographic/Group.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.demographic; +package org.openehr.rm.demographic; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Organisation.java b/openehr-rm/src/main/java/org/openehr/rm/demographic/Organisation.java similarity index 87% rename from openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Organisation.java rename to openehr-rm/src/main/java/org/openehr/rm/demographic/Organisation.java index 8a7ce464b..8c44bf561 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Organisation.java +++ b/openehr-rm/src/main/java/org/openehr/rm/demographic/Organisation.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.demographic; +package org.openehr.rm.demographic; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Party.java b/openehr-rm/src/main/java/org/openehr/rm/demographic/Party.java similarity index 92% rename from openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Party.java rename to openehr-rm/src/main/java/org/openehr/rm/demographic/Party.java index 45daebeb3..da128b10e 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Party.java +++ b/openehr-rm/src/main/java/org/openehr/rm/demographic/Party.java @@ -1,11 +1,10 @@ -package com.nedap.archie.rm.demographic; +package org.openehr.rm.demographic; import com.fasterxml.jackson.annotation.JsonIgnore; -import com.nedap.archie.rm.archetyped.Locatable; -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.support.identification.LocatableRef; -import com.nedap.archie.rminfo.RMPropertyIgnore; +import org.openehr.rm.archetyped.Locatable; +import org.openehr.rm.datastructures.ItemStructure; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.support.identification.LocatableRef; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/PartyIdentity.java b/openehr-rm/src/main/java/org/openehr/rm/demographic/PartyIdentity.java similarity index 83% rename from openehr-rm/src/main/java/com/nedap/archie/rm/demographic/PartyIdentity.java rename to openehr-rm/src/main/java/org/openehr/rm/demographic/PartyIdentity.java index 075a7d522..513efcf9f 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/PartyIdentity.java +++ b/openehr-rm/src/main/java/org/openehr/rm/demographic/PartyIdentity.java @@ -1,10 +1,9 @@ -package com.nedap.archie.rm.demographic; +package org.openehr.rm.demographic; import com.fasterxml.jackson.annotation.JsonIgnore; -import com.nedap.archie.rm.archetyped.Locatable; -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rminfo.RMPropertyIgnore; +import org.openehr.rm.archetyped.Locatable; +import org.openehr.rm.datastructures.ItemStructure; +import org.openehr.rm.datavalues.DvText; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/PartyRelationship.java b/openehr-rm/src/main/java/org/openehr/rm/demographic/PartyRelationship.java similarity index 85% rename from openehr-rm/src/main/java/com/nedap/archie/rm/demographic/PartyRelationship.java rename to openehr-rm/src/main/java/org/openehr/rm/demographic/PartyRelationship.java index bb34290bf..8f9dfbbb8 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/PartyRelationship.java +++ b/openehr-rm/src/main/java/org/openehr/rm/demographic/PartyRelationship.java @@ -1,10 +1,10 @@ -package com.nedap.archie.rm.demographic; +package org.openehr.rm.demographic; -import com.nedap.archie.rm.archetyped.Locatable; -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.support.identification.PartyRef; -import com.nedap.archie.rm.datavalues.quantity.DvInterval; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDate; +import org.openehr.rm.archetyped.Locatable; +import org.openehr.rm.datastructures.ItemStructure; +import org.openehr.rm.support.identification.PartyRef; +import org.openehr.rm.datavalues.quantity.DvInterval; +import org.openehr.rm.datavalues.quantity.datetime.DvDate; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Person.java b/openehr-rm/src/main/java/org/openehr/rm/demographic/Person.java similarity index 87% rename from openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Person.java rename to openehr-rm/src/main/java/org/openehr/rm/demographic/Person.java index 7af431b4b..b33208d41 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Person.java +++ b/openehr-rm/src/main/java/org/openehr/rm/demographic/Person.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.demographic; +package org.openehr.rm.demographic; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Role.java b/openehr-rm/src/main/java/org/openehr/rm/demographic/Role.java similarity index 90% rename from openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Role.java rename to openehr-rm/src/main/java/org/openehr/rm/demographic/Role.java index 47ad0db48..732901ce1 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/demographic/Role.java +++ b/openehr-rm/src/main/java/org/openehr/rm/demographic/Role.java @@ -1,8 +1,8 @@ -package com.nedap.archie.rm.demographic; +package org.openehr.rm.demographic; -import com.nedap.archie.rm.support.identification.PartyRef; -import com.nedap.archie.rm.datavalues.quantity.DvInterval; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDate; +import org.openehr.rm.support.identification.PartyRef; +import org.openehr.rm.datavalues.quantity.DvInterval; +import org.openehr.rm.datavalues.quantity.datetime.DvDate; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/directory/Folder.java b/openehr-rm/src/main/java/org/openehr/rm/directory/Folder.java similarity index 88% rename from openehr-rm/src/main/java/com/nedap/archie/rm/directory/Folder.java rename to openehr-rm/src/main/java/org/openehr/rm/directory/Folder.java index 0d03a42e0..e732f88de 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/directory/Folder.java +++ b/openehr-rm/src/main/java/org/openehr/rm/directory/Folder.java @@ -1,13 +1,13 @@ -package com.nedap.archie.rm.directory; - -import com.nedap.archie.rm.archetyped.*; -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.support.identification.ObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; -import com.nedap.archie.rm.support.identification.UIDBasedId; +package org.openehr.rm.directory; + +import org.openehr.rm.datastructures.ItemStructure; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.support.identification.ObjectId; +import org.openehr.rm.support.identification.ObjectRef; +import org.openehr.rm.support.identification.UIDBasedId; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; +import org.openehr.rm.archetyped.*; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/directory/VersionedFolder.java b/openehr-rm/src/main/java/org/openehr/rm/directory/VersionedFolder.java similarity index 52% rename from openehr-rm/src/main/java/com/nedap/archie/rm/directory/VersionedFolder.java rename to openehr-rm/src/main/java/org/openehr/rm/directory/VersionedFolder.java index daa5bf94f..98af3f2ec 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/directory/VersionedFolder.java +++ b/openehr-rm/src/main/java/org/openehr/rm/directory/VersionedFolder.java @@ -1,10 +1,10 @@ -package com.nedap.archie.rm.directory; +package org.openehr.rm.directory; -import com.nedap.archie.rm.changecontrol.VersionedObject; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.support.identification.HierObjectId; -import com.nedap.archie.rm.support.identification.ObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; +import org.openehr.rm.changecontrol.VersionedObject; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.support.identification.HierObjectId; +import org.openehr.rm.support.identification.ObjectId; +import org.openehr.rm.support.identification.ObjectRef; import javax.xml.bind.annotation.XmlType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/ehr/Ehr.java b/openehr-rm/src/main/java/org/openehr/rm/ehr/Ehr.java similarity index 95% rename from openehr-rm/src/main/java/com/nedap/archie/rm/ehr/Ehr.java rename to openehr-rm/src/main/java/org/openehr/rm/ehr/Ehr.java index 6d0d8aad3..90847e512 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/ehr/Ehr.java +++ b/openehr-rm/src/main/java/org/openehr/rm/ehr/Ehr.java @@ -1,12 +1,12 @@ -package com.nedap.archie.rm.ehr; +package org.openehr.rm.ehr; import com.nedap.archie.base.RMObject; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.support.identification.HierObjectId; -import com.nedap.archie.rm.support.identification.ObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.support.identification.HierObjectId; +import org.openehr.rm.support.identification.ObjectId; +import org.openehr.rm.support.identification.ObjectRef; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.*; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/ehr/EhrAccess.java b/openehr-rm/src/main/java/org/openehr/rm/ehr/EhrAccess.java similarity index 85% rename from openehr-rm/src/main/java/com/nedap/archie/rm/ehr/EhrAccess.java rename to openehr-rm/src/main/java/org/openehr/rm/ehr/EhrAccess.java index c32b08862..c711ac903 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/ehr/EhrAccess.java +++ b/openehr-rm/src/main/java/org/openehr/rm/ehr/EhrAccess.java @@ -1,11 +1,9 @@ -package com.nedap.archie.rm.ehr; +package org.openehr.rm.ehr; -import com.nedap.archie.rm.archetyped.*; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.security.AccessControlSettings; -import com.nedap.archie.rm.support.identification.UIDBasedId; -import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.security.AccessControlSettings; +import org.openehr.rm.support.identification.UIDBasedId; +import org.openehr.rm.archetyped.*; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/ehr/EhrStatus.java b/openehr-rm/src/main/java/org/openehr/rm/ehr/EhrStatus.java similarity index 92% rename from openehr-rm/src/main/java/com/nedap/archie/rm/ehr/EhrStatus.java rename to openehr-rm/src/main/java/org/openehr/rm/ehr/EhrStatus.java index a522973db..f8b4ed01a 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/ehr/EhrStatus.java +++ b/openehr-rm/src/main/java/org/openehr/rm/ehr/EhrStatus.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.ehr; +package org.openehr.rm.ehr; /** * Created by pieter.bos on 08/07/16. @@ -7,12 +7,12 @@ import com.fasterxml.jackson.annotation.JsonProperty; -import com.nedap.archie.rm.archetyped.*; -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.generic.PartySelf; -import com.nedap.archie.rm.support.identification.UIDBasedId; +import org.openehr.rm.datastructures.ItemStructure; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.generic.PartySelf; +import org.openehr.rm.support.identification.UIDBasedId; import com.nedap.archie.rminfo.RMProperty; +import org.openehr.rm.archetyped.*; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/ehr/VersionedComposition.java b/openehr-rm/src/main/java/org/openehr/rm/ehr/VersionedComposition.java similarity index 51% rename from openehr-rm/src/main/java/com/nedap/archie/rm/ehr/VersionedComposition.java rename to openehr-rm/src/main/java/org/openehr/rm/ehr/VersionedComposition.java index bacb01e84..f2198b73b 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/ehr/VersionedComposition.java +++ b/openehr-rm/src/main/java/org/openehr/rm/ehr/VersionedComposition.java @@ -1,11 +1,11 @@ -package com.nedap.archie.rm.ehr; +package org.openehr.rm.ehr; -import com.nedap.archie.rm.changecontrol.VersionedObject; -import com.nedap.archie.rm.composition.Composition; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.support.identification.HierObjectId; -import com.nedap.archie.rm.support.identification.ObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; +import org.openehr.rm.changecontrol.VersionedObject; +import org.openehr.rm.composition.Composition; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.support.identification.HierObjectId; +import org.openehr.rm.support.identification.ObjectId; +import org.openehr.rm.support.identification.ObjectRef; /** * Created by pieter.bos on 08/07/16. diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/ehr/VersionedEhrAccess.java b/openehr-rm/src/main/java/org/openehr/rm/ehr/VersionedEhrAccess.java similarity index 61% rename from openehr-rm/src/main/java/com/nedap/archie/rm/ehr/VersionedEhrAccess.java rename to openehr-rm/src/main/java/org/openehr/rm/ehr/VersionedEhrAccess.java index 44f515b38..ced80873b 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/ehr/VersionedEhrAccess.java +++ b/openehr-rm/src/main/java/org/openehr/rm/ehr/VersionedEhrAccess.java @@ -1,10 +1,10 @@ -package com.nedap.archie.rm.ehr; +package org.openehr.rm.ehr; -import com.nedap.archie.rm.changecontrol.VersionedObject; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.support.identification.HierObjectId; -import com.nedap.archie.rm.support.identification.ObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; +import org.openehr.rm.changecontrol.VersionedObject; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.support.identification.HierObjectId; +import org.openehr.rm.support.identification.ObjectId; +import org.openehr.rm.support.identification.ObjectRef; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/ehr/VersionedEhrStatus.java b/openehr-rm/src/main/java/org/openehr/rm/ehr/VersionedEhrStatus.java similarity index 61% rename from openehr-rm/src/main/java/com/nedap/archie/rm/ehr/VersionedEhrStatus.java rename to openehr-rm/src/main/java/org/openehr/rm/ehr/VersionedEhrStatus.java index 2b3dc0792..96c23f135 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/ehr/VersionedEhrStatus.java +++ b/openehr-rm/src/main/java/org/openehr/rm/ehr/VersionedEhrStatus.java @@ -1,10 +1,10 @@ -package com.nedap.archie.rm.ehr; +package org.openehr.rm.ehr; -import com.nedap.archie.rm.changecontrol.VersionedObject; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.support.identification.HierObjectId; -import com.nedap.archie.rm.support.identification.ObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; +import org.openehr.rm.changecontrol.VersionedObject; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.support.identification.HierObjectId; +import org.openehr.rm.support.identification.ObjectId; +import org.openehr.rm.support.identification.ObjectRef; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/Attestation.java b/openehr-rm/src/main/java/org/openehr/rm/generic/Attestation.java similarity index 90% rename from openehr-rm/src/main/java/com/nedap/archie/rm/generic/Attestation.java rename to openehr-rm/src/main/java/org/openehr/rm/generic/Attestation.java index ce0ed2daa..1f206fc21 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/Attestation.java +++ b/openehr-rm/src/main/java/org/openehr/rm/generic/Attestation.java @@ -1,13 +1,13 @@ -package com.nedap.archie.rm.generic; +package org.openehr.rm.generic; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.DvEHRURI; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.datavalues.encapsulated.DvMultimedia; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.DvEHRURI; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.datavalues.encapsulated.DvMultimedia; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; import com.nedap.archie.rminfo.Invariant; import com.nedap.archie.rminfo.RMProperty; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/AuditDetails.java b/openehr-rm/src/main/java/org/openehr/rm/generic/AuditDetails.java similarity index 92% rename from openehr-rm/src/main/java/com/nedap/archie/rm/generic/AuditDetails.java rename to openehr-rm/src/main/java/org/openehr/rm/generic/AuditDetails.java index 96a93761f..d7d8dca60 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/AuditDetails.java +++ b/openehr-rm/src/main/java/org/openehr/rm/generic/AuditDetails.java @@ -1,12 +1,12 @@ -package com.nedap.archie.rm.generic; +package org.openehr.rm.generic; import com.fasterxml.jackson.annotation.JsonAlias; import com.nedap.archie.base.RMObject; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/Participation.java b/openehr-rm/src/main/java/org/openehr/rm/generic/Participation.java similarity index 89% rename from openehr-rm/src/main/java/com/nedap/archie/rm/generic/Participation.java rename to openehr-rm/src/main/java/org/openehr/rm/generic/Participation.java index 435760956..e86684273 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/Participation.java +++ b/openehr-rm/src/main/java/org/openehr/rm/generic/Participation.java @@ -1,12 +1,12 @@ -package com.nedap.archie.rm.generic; +package org.openehr.rm.generic; import com.nedap.archie.base.RMObject; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.datavalues.quantity.DvInterval; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.datavalues.quantity.DvInterval; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/PartyIdentified.java b/openehr-rm/src/main/java/org/openehr/rm/generic/PartyIdentified.java similarity index 92% rename from openehr-rm/src/main/java/com/nedap/archie/rm/generic/PartyIdentified.java rename to openehr-rm/src/main/java/org/openehr/rm/generic/PartyIdentified.java index 4d406928d..e334b87fa 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/PartyIdentified.java +++ b/openehr-rm/src/main/java/org/openehr/rm/generic/PartyIdentified.java @@ -1,9 +1,9 @@ -package com.nedap.archie.rm.generic; +package org.openehr.rm.generic; -import com.nedap.archie.rm.datavalues.DvIdentifier; -import com.nedap.archie.rm.support.identification.PartyRef; +import org.openehr.rm.datavalues.DvIdentifier; +import org.openehr.rm.support.identification.PartyRef; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/PartyProxy.java b/openehr-rm/src/main/java/org/openehr/rm/generic/PartyProxy.java similarity index 92% rename from openehr-rm/src/main/java/com/nedap/archie/rm/generic/PartyProxy.java rename to openehr-rm/src/main/java/org/openehr/rm/generic/PartyProxy.java index 5717ddd7d..2aa75c1c3 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/PartyProxy.java +++ b/openehr-rm/src/main/java/org/openehr/rm/generic/PartyProxy.java @@ -1,7 +1,7 @@ -package com.nedap.archie.rm.generic; +package org.openehr.rm.generic; import com.nedap.archie.base.RMObject; -import com.nedap.archie.rm.support.identification.PartyRef; +import org.openehr.rm.support.identification.PartyRef; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/PartyRelated.java b/openehr-rm/src/main/java/org/openehr/rm/generic/PartyRelated.java similarity index 86% rename from openehr-rm/src/main/java/com/nedap/archie/rm/generic/PartyRelated.java rename to openehr-rm/src/main/java/org/openehr/rm/generic/PartyRelated.java index 5a659d722..9a7cd522f 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/PartyRelated.java +++ b/openehr-rm/src/main/java/org/openehr/rm/generic/PartyRelated.java @@ -1,10 +1,10 @@ -package com.nedap.archie.rm.generic; +package org.openehr.rm.generic; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.DvIdentifier; -import com.nedap.archie.rm.support.identification.PartyRef; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.DvIdentifier; +import org.openehr.rm.support.identification.PartyRef; import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import com.nedap.archie.openehr.rmutil.InvariantUtil; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/PartySelf.java b/openehr-rm/src/main/java/org/openehr/rm/generic/PartySelf.java similarity index 82% rename from openehr-rm/src/main/java/com/nedap/archie/rm/generic/PartySelf.java rename to openehr-rm/src/main/java/org/openehr/rm/generic/PartySelf.java index 690f3a931..053e06a2c 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/PartySelf.java +++ b/openehr-rm/src/main/java/org/openehr/rm/generic/PartySelf.java @@ -1,6 +1,6 @@ -package com.nedap.archie.rm.generic; +package org.openehr.rm.generic; -import com.nedap.archie.rm.support.identification.PartyRef; +import org.openehr.rm.support.identification.PartyRef; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/RevisionHistory.java b/openehr-rm/src/main/java/org/openehr/rm/generic/RevisionHistory.java similarity index 97% rename from openehr-rm/src/main/java/com/nedap/archie/rm/generic/RevisionHistory.java rename to openehr-rm/src/main/java/org/openehr/rm/generic/RevisionHistory.java index 74753f896..464b96c2c 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/RevisionHistory.java +++ b/openehr-rm/src/main/java/org/openehr/rm/generic/RevisionHistory.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.generic; +package org.openehr.rm.generic; import com.nedap.archie.base.RMObject; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/RevisionHistoryItem.java b/openehr-rm/src/main/java/org/openehr/rm/generic/RevisionHistoryItem.java similarity index 94% rename from openehr-rm/src/main/java/com/nedap/archie/rm/generic/RevisionHistoryItem.java rename to openehr-rm/src/main/java/org/openehr/rm/generic/RevisionHistoryItem.java index f0801e90b..ff7c95e36 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/generic/RevisionHistoryItem.java +++ b/openehr-rm/src/main/java/org/openehr/rm/generic/RevisionHistoryItem.java @@ -1,7 +1,7 @@ -package com.nedap.archie.rm.generic; +package org.openehr.rm.generic; import com.nedap.archie.base.RMObject; -import com.nedap.archie.rm.support.identification.ObjectVersionId; +import org.openehr.rm.support.identification.ObjectVersionId; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/integration/GenericEntry.java b/openehr-rm/src/main/java/org/openehr/rm/integration/GenericEntry.java similarity index 76% rename from openehr-rm/src/main/java/com/nedap/archie/rm/integration/GenericEntry.java rename to openehr-rm/src/main/java/org/openehr/rm/integration/GenericEntry.java index 876fed19b..ccbf66c79 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/integration/GenericEntry.java +++ b/openehr-rm/src/main/java/org/openehr/rm/integration/GenericEntry.java @@ -1,13 +1,13 @@ -package com.nedap.archie.rm.integration; - -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.archetyped.Link; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.composition.ContentItem; -import com.nedap.archie.rm.datastructures.ItemTree; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.support.identification.UIDBasedId; +package org.openehr.rm.integration; + +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.FeederAudit; +import org.openehr.rm.archetyped.Link; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.composition.ContentItem; +import org.openehr.rm.datastructures.ItemTree; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.support.identification.UIDBasedId; import javax.annotation.Nullable; import javax.xml.bind.annotation.XmlType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/package-info.java b/openehr-rm/src/main/java/org/openehr/rm/package-info.java similarity index 91% rename from openehr-rm/src/main/java/com/nedap/archie/rm/package-info.java rename to openehr-rm/src/main/java/org/openehr/rm/package-info.java index cdf3564be..40201d541 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/package-info.java +++ b/openehr-rm/src/main/java/org/openehr/rm/package-info.java @@ -4,4 +4,4 @@ */ @javax.xml.bind.annotation.XmlSchema(namespace = "http://schemas.openehr.org/v1", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) -package com.nedap.archie.rm; +package org.openehr.rm; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/security/AccessControlSettings.java b/openehr-rm/src/main/java/org/openehr/rm/security/AccessControlSettings.java similarity index 89% rename from openehr-rm/src/main/java/com/nedap/archie/rm/security/AccessControlSettings.java rename to openehr-rm/src/main/java/org/openehr/rm/security/AccessControlSettings.java index 4f03a4df2..2e9005371 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/security/AccessControlSettings.java +++ b/openehr-rm/src/main/java/org/openehr/rm/security/AccessControlSettings.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.security; +package org.openehr.rm.security; import com.nedap.archie.base.RMObject; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/AccessGroupRef.java b/openehr-rm/src/main/java/org/openehr/rm/support/identification/AccessGroupRef.java similarity index 83% rename from openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/AccessGroupRef.java rename to openehr-rm/src/main/java/org/openehr/rm/support/identification/AccessGroupRef.java index 10259f253..801509649 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/AccessGroupRef.java +++ b/openehr-rm/src/main/java/org/openehr/rm/support/identification/AccessGroupRef.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.support.identification; +package org.openehr.rm.support.identification; /** * Created by pieter.bos on 08/07/16. diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/ArchetypeID.java b/openehr-rm/src/main/java/org/openehr/rm/support/identification/ArchetypeID.java similarity index 99% rename from openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/ArchetypeID.java rename to openehr-rm/src/main/java/org/openehr/rm/support/identification/ArchetypeID.java index 635b488d0..cb5739fe8 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/ArchetypeID.java +++ b/openehr-rm/src/main/java/org/openehr/rm/support/identification/ArchetypeID.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.support.identification; +package org.openehr.rm.support.identification; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonProperty; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/GenericId.java b/openehr-rm/src/main/java/org/openehr/rm/support/identification/GenericId.java similarity index 95% rename from openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/GenericId.java rename to openehr-rm/src/main/java/org/openehr/rm/support/identification/GenericId.java index 6fccaae56..a06339780 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/GenericId.java +++ b/openehr-rm/src/main/java/org/openehr/rm/support/identification/GenericId.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.support.identification; +package org.openehr.rm.support.identification; import javax.xml.bind.annotation.XmlAccessType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/HierObjectId.java b/openehr-rm/src/main/java/org/openehr/rm/support/identification/HierObjectId.java similarity index 91% rename from openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/HierObjectId.java rename to openehr-rm/src/main/java/org/openehr/rm/support/identification/HierObjectId.java index 1927e30b3..e7c46ec66 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/HierObjectId.java +++ b/openehr-rm/src/main/java/org/openehr/rm/support/identification/HierObjectId.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.support.identification; +package org.openehr.rm.support.identification; /** * Created by pieter.bos on 08/07/16. diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/InternetId.java b/openehr-rm/src/main/java/org/openehr/rm/support/identification/InternetId.java similarity index 78% rename from openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/InternetId.java rename to openehr-rm/src/main/java/org/openehr/rm/support/identification/InternetId.java index 9b1a82f08..5c0d5e7b4 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/InternetId.java +++ b/openehr-rm/src/main/java/org/openehr/rm/support/identification/InternetId.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.support.identification; +package org.openehr.rm.support.identification; /** * Created by pieter.bos on 08/07/16. diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/IsoOID.java b/openehr-rm/src/main/java/org/openehr/rm/support/identification/IsoOID.java similarity index 77% rename from openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/IsoOID.java rename to openehr-rm/src/main/java/org/openehr/rm/support/identification/IsoOID.java index 89153cdf8..b5f8e31db 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/IsoOID.java +++ b/openehr-rm/src/main/java/org/openehr/rm/support/identification/IsoOID.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.support.identification; +package org.openehr.rm.support.identification; /** * Created by pieter.bos on 08/07/16. diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/LocatableRef.java b/openehr-rm/src/main/java/org/openehr/rm/support/identification/LocatableRef.java similarity index 95% rename from openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/LocatableRef.java rename to openehr-rm/src/main/java/org/openehr/rm/support/identification/LocatableRef.java index 235e86115..eb98f51b5 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/LocatableRef.java +++ b/openehr-rm/src/main/java/org/openehr/rm/support/identification/LocatableRef.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.support.identification; +package org.openehr.rm.support.identification; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/ObjectId.java b/openehr-rm/src/main/java/org/openehr/rm/support/identification/ObjectId.java similarity index 95% rename from openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/ObjectId.java rename to openehr-rm/src/main/java/org/openehr/rm/support/identification/ObjectId.java index 1f61e1992..17170b640 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/ObjectId.java +++ b/openehr-rm/src/main/java/org/openehr/rm/support/identification/ObjectId.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.support.identification; +package org.openehr.rm.support.identification; import com.nedap.archie.base.RMObject; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/ObjectRef.java b/openehr-rm/src/main/java/org/openehr/rm/support/identification/ObjectRef.java similarity index 97% rename from openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/ObjectRef.java rename to openehr-rm/src/main/java/org/openehr/rm/support/identification/ObjectRef.java index 637996391..c061db038 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/ObjectRef.java +++ b/openehr-rm/src/main/java/org/openehr/rm/support/identification/ObjectRef.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.support.identification; +package org.openehr.rm.support.identification; import com.nedap.archie.base.RMObject; import com.nedap.archie.rminfo.Invariant; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/ObjectVersionId.java b/openehr-rm/src/main/java/org/openehr/rm/support/identification/ObjectVersionId.java similarity index 97% rename from openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/ObjectVersionId.java rename to openehr-rm/src/main/java/org/openehr/rm/support/identification/ObjectVersionId.java index 2e99835ef..b3479d6db 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/ObjectVersionId.java +++ b/openehr-rm/src/main/java/org/openehr/rm/support/identification/ObjectVersionId.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.support.identification; +package org.openehr.rm.support.identification; import com.fasterxml.jackson.annotation.JsonIgnore; import com.nedap.archie.rminfo.RMProperty; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/PartyRef.java b/openehr-rm/src/main/java/org/openehr/rm/support/identification/PartyRef.java similarity index 94% rename from openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/PartyRef.java rename to openehr-rm/src/main/java/org/openehr/rm/support/identification/PartyRef.java index 90edc3a43..843e0c6bb 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/PartyRef.java +++ b/openehr-rm/src/main/java/org/openehr/rm/support/identification/PartyRef.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.support.identification; +package org.openehr.rm.support.identification; import com.nedap.archie.rminfo.Invariant; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/TerminologyId.java b/openehr-rm/src/main/java/org/openehr/rm/support/identification/TerminologyId.java similarity index 96% rename from openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/TerminologyId.java rename to openehr-rm/src/main/java/org/openehr/rm/support/identification/TerminologyId.java index ab954f282..6d3ec2d05 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/TerminologyId.java +++ b/openehr-rm/src/main/java/org/openehr/rm/support/identification/TerminologyId.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.support.identification; +package org.openehr.rm.support.identification; import com.fasterxml.jackson.annotation.JsonIgnore; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/UID.java b/openehr-rm/src/main/java/org/openehr/rm/support/identification/UID.java similarity index 94% rename from openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/UID.java rename to openehr-rm/src/main/java/org/openehr/rm/support/identification/UID.java index 5e4f0fa69..3b0751726 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/UID.java +++ b/openehr-rm/src/main/java/org/openehr/rm/support/identification/UID.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.support.identification; +package org.openehr.rm.support.identification; import com.google.common.base.Strings; import com.nedap.archie.base.RMObject; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/UIDBasedId.java b/openehr-rm/src/main/java/org/openehr/rm/support/identification/UIDBasedId.java similarity index 97% rename from openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/UIDBasedId.java rename to openehr-rm/src/main/java/org/openehr/rm/support/identification/UIDBasedId.java index 4b9c25dee..e0ce155b7 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/UIDBasedId.java +++ b/openehr-rm/src/main/java/org/openehr/rm/support/identification/UIDBasedId.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.support.identification; +package org.openehr.rm.support.identification; import com.fasterxml.jackson.annotation.JsonIgnore; import com.google.common.base.Strings; diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/UUID.java b/openehr-rm/src/main/java/org/openehr/rm/support/identification/UUID.java similarity index 76% rename from openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/UUID.java rename to openehr-rm/src/main/java/org/openehr/rm/support/identification/UUID.java index 4ba83c837..4ca2e1998 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/UUID.java +++ b/openehr-rm/src/main/java/org/openehr/rm/support/identification/UUID.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.support.identification; +package org.openehr.rm.support.identification; /** * Created by pieter.bos on 08/07/16. diff --git a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/VersionTreeId.java b/openehr-rm/src/main/java/org/openehr/rm/support/identification/VersionTreeId.java similarity index 98% rename from openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/VersionTreeId.java rename to openehr-rm/src/main/java/org/openehr/rm/support/identification/VersionTreeId.java index 98d0f6cd6..a79a35097 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/rm/support/identification/VersionTreeId.java +++ b/openehr-rm/src/main/java/org/openehr/rm/support/identification/VersionTreeId.java @@ -1,4 +1,4 @@ -package com.nedap.archie.rm.support.identification; +package org.openehr.rm.support.identification; import com.fasterxml.jackson.annotation.JsonIgnore; import com.google.common.base.Strings; diff --git a/referencemodels/src/main/resources/aom_profiles/openehr_aom_profile.arp b/openehr-rm/src/main/resources/org/openehr/aom_profiles/openehr_aom_profile.arp similarity index 100% rename from referencemodels/src/main/resources/aom_profiles/openehr_aom_profile.arp rename to openehr-rm/src/main/resources/org/openehr/aom_profiles/openehr_aom_profile.arp diff --git a/referencemodels/src/main/resources/bmm/openEHR/LICENSE b/openehr-rm/src/main/resources/org/openehr/bmm/LICENSE similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/LICENSE rename to openehr-rm/src/main/resources/org/openehr/bmm/LICENSE diff --git a/referencemodels/src/main/resources/bmm/openEHR/README.adoc b/openehr-rm/src/main/resources/org/openehr/bmm/README.adoc similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/README.adoc rename to openehr-rm/src/main/resources/org/openehr/bmm/README.adoc diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/AM/Release-2.0.6/openEHR_am_206.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/AM/Release-2.0.6/openEHR_am_206.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/AM/Release-2.0.6/openEHR_am_206.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/AM/Release-2.0.6/openEHR_am_206.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/AM/Release-2.1.0/openEHR_am_210.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/AM/Release-2.1.0/openEHR_am_210.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/AM/Release-2.1.0/openEHR_am_210.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/AM/Release-2.1.0/openEHR_am_210.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/AM/Release-2.2.0/openEHR_am_220.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/AM/Release-2.2.0/openEHR_am_220.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/AM/Release-2.2.0/openEHR_am_220.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/AM/Release-2.2.0/openEHR_am_220.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/AM/Release-2.3.0/openEHR_am_230.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/AM/Release-2.3.0/openEHR_am_230.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/AM/Release-2.3.0/openEHR_am_230.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/AM/Release-2.3.0/openEHR_am_230.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/BASE/Release-1.0.0/openehr_base_100.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/BASE/Release-1.0.0/openehr_base_100.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/BASE/Release-1.0.0/openehr_base_100.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/BASE/Release-1.0.0/openehr_base_100.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/BASE/Release-1.0.4/openehr_base_104.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/BASE/Release-1.0.4/openehr_base_104.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/BASE/Release-1.0.4/openehr_base_104.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/BASE/Release-1.0.4/openehr_base_104.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/BASE/Release-1.0.4/openehr_expression_104.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/BASE/Release-1.0.4/openehr_expression_104.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/BASE/Release-1.0.4/openehr_expression_104.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/BASE/Release-1.0.4/openehr_expression_104.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/BASE/Release-1.1.0/openehr_base_110.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/BASE/Release-1.1.0/openehr_base_110.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/BASE/Release-1.1.0/openehr_base_110.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/BASE/Release-1.1.0/openehr_base_110.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/LANG/Release-1.0.0/openehr_lang_100.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/LANG/Release-1.0.0/openehr_lang_100.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/LANG/Release-1.0.0/openehr_lang_100.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/LANG/Release-1.0.0/openehr_lang_100.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/PROC/Release-1.0.0/openehr_proc_task_planning_100.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/PROC/Release-1.0.0/openehr_proc_task_planning_100.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/PROC/Release-1.0.0/openehr_proc_task_planning_100.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/PROC/Release-1.0.0/openehr_proc_task_planning_100.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/PROC/Release-1.5.0/openehr_proc_task_planning_150.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/PROC/Release-1.5.0/openehr_proc_task_planning_150.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/PROC/Release-1.5.0/openehr_proc_task_planning_150.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/PROC/Release-1.5.0/openehr_proc_task_planning_150.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/PROC/Release-1.6.0/openehr_proc_task_planning_160.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/PROC/Release-1.6.0/openehr_proc_task_planning_160.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/PROC/Release-1.6.0/openehr_proc_task_planning_160.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/PROC/Release-1.6.0/openehr_proc_task_planning_160.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/PROC/latest/openehr_proc_task_planning_110.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/PROC/latest/openehr_proc_task_planning_110.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/PROC/latest/openehr_proc_task_planning_110.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/PROC/latest/openehr_proc_task_planning_110.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.3/openehr_basic_types_103.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.3/openehr_basic_types_103.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.3/openehr_basic_types_103.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.3/openehr_basic_types_103.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.3/openehr_demographic_103.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.3/openehr_demographic_103.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.3/openehr_demographic_103.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.3/openehr_demographic_103.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.3/openehr_ehr_103.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.3/openehr_ehr_103.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.3/openehr_ehr_103.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.3/openehr_ehr_103.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.3/openehr_ehr_extract_103.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.3/openehr_ehr_extract_103.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.3/openehr_ehr_extract_103.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.3/openehr_ehr_extract_103.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.3/openehr_primitive_types_103.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.3/openehr_primitive_types_103.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.3/openehr_primitive_types_103.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.3/openehr_primitive_types_103.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.3/openehr_rm_103.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.3/openehr_rm_103.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.3/openehr_rm_103.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.3/openehr_rm_103.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.3/openehr_structures_103.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.3/openehr_structures_103.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.3/openehr_structures_103.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.3/openehr_structures_103.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.4/openehr_rm_104.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.4/openehr_rm_104.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.4/openehr_rm_104.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.4/openehr_rm_104.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.4/openehr_rm_data_types_104.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.4/openehr_rm_data_types_104.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.4/openehr_rm_data_types_104.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.4/openehr_rm_data_types_104.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.4/openehr_rm_demographic_104.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.4/openehr_rm_demographic_104.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.4/openehr_rm_demographic_104.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.4/openehr_rm_demographic_104.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.4/openehr_rm_ehr_104.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.4/openehr_rm_ehr_104.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.4/openehr_rm_ehr_104.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.4/openehr_rm_ehr_104.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.4/openehr_rm_ehr_extract_104.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.4/openehr_rm_ehr_extract_104.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.4/openehr_rm_ehr_extract_104.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.4/openehr_rm_ehr_extract_104.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.4/openehr_rm_structures_104.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.4/openehr_rm_structures_104.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.0.4/openehr_rm_structures_104.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.0.4/openehr_rm_structures_104.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.1.0/openehr_rm_110.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.1.0/openehr_rm_110.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.1.0/openehr_rm_110.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.1.0/openehr_rm_110.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.1.0/openehr_rm_data_types_110.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.1.0/openehr_rm_data_types_110.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.1.0/openehr_rm_data_types_110.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.1.0/openehr_rm_data_types_110.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.1.0/openehr_rm_demographic_110.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.1.0/openehr_rm_demographic_110.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.1.0/openehr_rm_demographic_110.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.1.0/openehr_rm_demographic_110.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.1.0/openehr_rm_ehr_110.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.1.0/openehr_rm_ehr_110.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.1.0/openehr_rm_ehr_110.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.1.0/openehr_rm_ehr_110.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.1.0/openehr_rm_ehr_extract_110.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.1.0/openehr_rm_ehr_extract_110.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.1.0/openehr_rm_ehr_extract_110.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.1.0/openehr_rm_ehr_extract_110.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.1.0/openehr_rm_structures_110.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.1.0/openehr_rm_structures_110.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/RM/Release-1.1.0/openehr_rm_structures_110.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/RM/Release-1.1.0/openehr_rm_structures_110.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/components/RM/rejected/openehr_ehr_extract_999.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/components/RM/rejected/openehr_ehr_extract_999.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/components/RM/rejected/openehr_ehr_extract_999.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/components/RM/rejected/openehr_ehr_extract_999.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/original/Release-1.0.2/openehr_basic_types_102.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/original/Release-1.0.2/openehr_basic_types_102.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/original/Release-1.0.2/openehr_basic_types_102.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/original/Release-1.0.2/openehr_basic_types_102.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/original/Release-1.0.2/openehr_demographic_102.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/original/Release-1.0.2/openehr_demographic_102.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/original/Release-1.0.2/openehr_demographic_102.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/original/Release-1.0.2/openehr_demographic_102.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/original/Release-1.0.2/openehr_ehr_102.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/original/Release-1.0.2/openehr_ehr_102.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/original/Release-1.0.2/openehr_ehr_102.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/original/Release-1.0.2/openehr_ehr_102.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/original/Release-1.0.2/openehr_primitive_types_102.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/original/Release-1.0.2/openehr_primitive_types_102.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/original/Release-1.0.2/openehr_primitive_types_102.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/original/Release-1.0.2/openehr_primitive_types_102.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/original/Release-1.0.2/openehr_rm_102.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/original/Release-1.0.2/openehr_rm_102.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/original/Release-1.0.2/openehr_rm_102.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/original/Release-1.0.2/openehr_rm_102.bmm diff --git a/referencemodels/src/main/resources/bmm/openEHR/original/Release-1.0.2/openehr_structures_102.bmm b/openehr-rm/src/main/resources/org/openehr/bmm/original/Release-1.0.2/openehr_structures_102.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/original/Release-1.0.2/openehr_structures_102.bmm rename to openehr-rm/src/main/resources/org/openehr/bmm/original/Release-1.0.2/openehr_structures_102.bmm diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/changecontrol/ContributionTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/changecontrol/ContributionTest.java index 475077b1c..e81cf6be7 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/changecontrol/ContributionTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/changecontrol/ContributionTest.java @@ -1,11 +1,12 @@ package com.nedap.archie.rm.changecontrol; import com.fasterxml.jackson.databind.ObjectMapper; -import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; +import com.nedap.archie.openehr.serialisation.json.OpenEhrRmJacksonUtil; import com.nedap.archie.json.ArchieJacksonConfiguration; -import com.nedap.archie.rm.support.identification.HierObjectId; -import com.nedap.archie.rm.support.identification.ObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; +import org.openehr.rm.changecontrol.Contribution; +import org.openehr.rm.support.identification.HierObjectId; +import org.openehr.rm.support.identification.ObjectId; +import org.openehr.rm.support.identification.ObjectRef; import org.junit.Test; import java.io.IOException; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/composition/CompositionTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/composition/CompositionTest.java index 7e0a8398b..a22f69d6c 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/composition/CompositionTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/composition/CompositionTest.java @@ -1,10 +1,11 @@ package com.nedap.archie.rm.composition; import com.fasterxml.jackson.databind.ObjectMapper; -import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; +import com.nedap.archie.openehr.serialisation.json.OpenEhrRmJacksonUtil; import com.nedap.archie.json.ArchieJacksonConfiguration; -import com.nedap.archie.serialisation.xml.OpenEhrRmJAXBUtil; +import com.nedap.archie.openehr.serialisation.xml.OpenEhrRmJAXBUtil; import org.junit.Test; +import org.openehr.rm.composition.Composition; import javax.xml.bind.JAXBException; import javax.xml.bind.Unmarshaller; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/composition/ObservationTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/composition/ObservationTest.java index eeb42e152..9817efc82 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/composition/ObservationTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/composition/ObservationTest.java @@ -1,10 +1,11 @@ package com.nedap.archie.rm.composition; import com.fasterxml.jackson.databind.ObjectMapper; -import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; +import com.nedap.archie.openehr.serialisation.json.OpenEhrRmJacksonUtil; import com.nedap.archie.json.ArchieJacksonConfiguration; -import com.nedap.archie.rm.support.identification.HierObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; +import org.openehr.rm.composition.Observation; +import org.openehr.rm.support.identification.HierObjectId; +import org.openehr.rm.support.identification.ObjectRef; import org.junit.Test; import java.io.IOException; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/datastructures/ClusterTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/datastructures/ClusterTest.java index d20c8afc2..3c2228364 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/datastructures/ClusterTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/datastructures/ClusterTest.java @@ -1,6 +1,8 @@ package com.nedap.archie.rm.datastructures; -import com.nedap.archie.rm.datavalues.DvText; +import org.openehr.rm.datastructures.Cluster; +import org.openehr.rm.datastructures.Element; +import org.openehr.rm.datavalues.DvText; import org.junit.Test; import java.util.Arrays; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/datastructures/ItemListTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/datastructures/ItemListTest.java index 03ee68124..69d0e6aae 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/datastructures/ItemListTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/datastructures/ItemListTest.java @@ -1,6 +1,8 @@ package com.nedap.archie.rm.datastructures; -import com.nedap.archie.rm.datavalues.DvText; +import org.openehr.rm.datastructures.Element; +import org.openehr.rm.datastructures.ItemList; +import org.openehr.rm.datavalues.DvText; import org.junit.Test; import java.util.Arrays; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/datastructures/ItemTableTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/datastructures/ItemTableTest.java index a7917b780..f5877abec 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/datastructures/ItemTableTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/datastructures/ItemTableTest.java @@ -1,6 +1,9 @@ package com.nedap.archie.rm.datastructures; -import com.nedap.archie.rm.datavalues.DvText; +import org.openehr.rm.datastructures.Cluster; +import org.openehr.rm.datastructures.Element; +import org.openehr.rm.datastructures.ItemTable; +import org.openehr.rm.datavalues.DvText; import org.junit.Test; import java.util.Arrays; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/datastructures/ItemTreeTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/datastructures/ItemTreeTest.java index 28a250c1e..aa5ceb2ed 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/datastructures/ItemTreeTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/datastructures/ItemTreeTest.java @@ -1,6 +1,8 @@ package com.nedap.archie.rm.datastructures; -import com.nedap.archie.rm.datavalues.DvText; +import org.openehr.rm.datastructures.Element; +import org.openehr.rm.datastructures.ItemTree; +import org.openehr.rm.datavalues.DvText; import org.junit.Test; import java.util.Arrays; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/datatypes/CodePhraseTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/datatypes/CodePhraseTest.java index f5d7002d7..66c3e1a9c 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/datatypes/CodePhraseTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/datatypes/CodePhraseTest.java @@ -2,6 +2,7 @@ import org.junit.Assert; import org.junit.Test; +import org.openehr.rm.datatypes.CodePhrase; import static org.junit.Assert.*; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/DvBooleanTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/DvBooleanTest.java index 462b64927..ae47647ba 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/DvBooleanTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/DvBooleanTest.java @@ -1,6 +1,7 @@ package com.nedap.archie.rm.datavalues; import org.junit.Test; +import org.openehr.rm.datavalues.DvBoolean; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotEquals; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/DvCodedTextTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/DvCodedTextTest.java index 49a2695e7..2aa331282 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/DvCodedTextTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/DvCodedTextTest.java @@ -1,7 +1,8 @@ package com.nedap.archie.rm.datavalues; -import com.nedap.archie.rm.datatypes.CodePhrase; +import org.openehr.rm.datatypes.CodePhrase; import org.junit.Test; +import org.openehr.rm.datavalues.DvCodedText; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotEquals; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/DvParsableTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/DvParsableTest.java index 49c7895ad..d2e7d5703 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/DvParsableTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/DvParsableTest.java @@ -1,8 +1,8 @@ package com.nedap.archie.rm.datavalues; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.encapsulated.DvParsable; -import com.nedap.archie.rm.support.identification.TerminologyId; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.encapsulated.DvParsable; +import org.openehr.rm.support.identification.TerminologyId; import org.junit.Test; import static org.junit.Assert.assertEquals; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/DvURITest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/DvURITest.java index 6c9bb624d..12d5c4e5f 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/DvURITest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/DvURITest.java @@ -1,6 +1,7 @@ package com.nedap.archie.rm.datavalues; import org.junit.Test; +import org.openehr.rm.datavalues.DvURI; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotEquals; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvDateTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvDateTest.java index 8378f5742..65e11c352 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvDateTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvDateTest.java @@ -1,6 +1,7 @@ package com.nedap.archie.rm.datavalues.quantity.datetime; import org.junit.Test; +import org.openehr.rm.datavalues.quantity.datetime.DvDate; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotEquals; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvDateTimeTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvDateTimeTest.java index 067c067c8..d389575a6 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvDateTimeTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvDateTimeTest.java @@ -1,6 +1,7 @@ package com.nedap.archie.rm.datavalues.quantity.datetime; import org.junit.Test; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotEquals; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvDurationTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvDurationTest.java index da6ef6155..bb0402358 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvDurationTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvDurationTest.java @@ -1,6 +1,7 @@ package com.nedap.archie.rm.datavalues.quantity.datetime; import org.junit.Test; +import org.openehr.rm.datavalues.quantity.datetime.DvDuration; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotEquals; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvTimeTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvTimeTest.java index 71f676468..8506490d8 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvTimeTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/quantity/datetime/DvTimeTest.java @@ -1,6 +1,7 @@ package com.nedap.archie.rm.datavalues.quantity.datetime; import org.junit.Test; +import org.openehr.rm.datavalues.quantity.datetime.DvTime; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotEquals; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/quantity/datetime/TimeDefinitionsTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/quantity/datetime/TimeDefinitionsTest.java index 1caec89d5..1e74c96b8 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/quantity/datetime/TimeDefinitionsTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/datavalues/quantity/datetime/TimeDefinitionsTest.java @@ -1,6 +1,7 @@ package com.nedap.archie.rm.datavalues.quantity.datetime; import org.junit.Test; +import org.openehr.rm.datavalues.quantity.datetime.TimeDefinitions; import org.threeten.extra.PeriodDuration; import java.time.Duration; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/directory/FolderTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/directory/FolderTest.java index b0c7d0133..84779003c 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/directory/FolderTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/directory/FolderTest.java @@ -1,11 +1,12 @@ package com.nedap.archie.rm.directory; -import com.nedap.archie.rm.datastructures.Element; -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.datastructures.ItemTree; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.support.identification.HierObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; +import org.openehr.rm.datastructures.Element; +import org.openehr.rm.datastructures.ItemStructure; +import org.openehr.rm.datastructures.ItemTree; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.directory.Folder; +import org.openehr.rm.support.identification.HierObjectId; +import org.openehr.rm.support.identification.ObjectRef; import org.junit.Test; import java.util.ArrayList; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/ehr/EhrStatusTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/ehr/EhrStatusTest.java index a2f145823..7355271e4 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/ehr/EhrStatusTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/ehr/EhrStatusTest.java @@ -1,8 +1,9 @@ package com.nedap.archie.rm.ehr; import com.fasterxml.jackson.databind.ObjectMapper; -import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; +import com.nedap.archie.openehr.serialisation.json.OpenEhrRmJacksonUtil; import org.junit.Test; +import org.openehr.rm.ehr.EhrStatus; import java.io.IOException; import java.io.StringWriter; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/ehr/EhrTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/ehr/EhrTest.java index 773af97cc..b5dcf3ffc 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/ehr/EhrTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/ehr/EhrTest.java @@ -1,10 +1,11 @@ package com.nedap.archie.rm.ehr; import com.fasterxml.jackson.databind.ObjectMapper; -import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; +import com.nedap.archie.openehr.serialisation.json.OpenEhrRmJacksonUtil; import com.nedap.archie.json.ArchieJacksonConfiguration; -import com.nedap.archie.rm.support.identification.HierObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; +import org.openehr.rm.ehr.Ehr; +import org.openehr.rm.support.identification.HierObjectId; +import org.openehr.rm.support.identification.ObjectRef; import org.junit.Test; import java.io.IOException; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/support/identification/ArchetypeIDTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/support/identification/ArchetypeIDTest.java index f0d30f66e..327907d8d 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/support/identification/ArchetypeIDTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/support/identification/ArchetypeIDTest.java @@ -1,6 +1,7 @@ package com.nedap.archie.rm.support.identification; import org.junit.Test; +import org.openehr.rm.support.identification.ArchetypeID; import java.util.ArrayList; import java.util.List; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/support/identification/HierObjectIdTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/support/identification/HierObjectIdTest.java index b01996cbd..7dad322ae 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/support/identification/HierObjectIdTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/support/identification/HierObjectIdTest.java @@ -1,6 +1,7 @@ package com.nedap.archie.rm.support.identification; import org.junit.Test; +import org.openehr.rm.support.identification.HierObjectId; import static org.junit.Assert.*; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/support/identification/ObjectVersionIdTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/support/identification/ObjectVersionIdTest.java index bd3ed1cdf..b2f9a31ed 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/support/identification/ObjectVersionIdTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/support/identification/ObjectVersionIdTest.java @@ -1,6 +1,7 @@ package com.nedap.archie.rm.support.identification; import org.junit.Test; +import org.openehr.rm.support.identification.ObjectVersionId; import static org.junit.Assert.*; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/support/identification/TerminologyIdTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/support/identification/TerminologyIdTest.java index c5472af15..65d7eff0c 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/support/identification/TerminologyIdTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/support/identification/TerminologyIdTest.java @@ -1,6 +1,7 @@ package com.nedap.archie.rm.support.identification; import org.junit.Test; +import org.openehr.rm.support.identification.TerminologyId; import static org.junit.Assert.*; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rm/support/identification/VersionTreeIdTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/support/identification/VersionTreeIdTest.java index 400b744e8..e6fa782fe 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rm/support/identification/VersionTreeIdTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rm/support/identification/VersionTreeIdTest.java @@ -1,6 +1,7 @@ package com.nedap.archie.rm.support.identification; import org.junit.Test; +import org.openehr.rm.support.identification.VersionTreeId; import static org.junit.Assert.*; diff --git a/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookupTest.java b/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookupTest.java new file mode 100644 index 000000000..38adf1981 --- /dev/null +++ b/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookupTest.java @@ -0,0 +1,51 @@ +package com.nedap.archie.rminfo; + +import com.nedap.archie.base.RMObject; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; +import org.junit.Test; +import org.reflections.Reflections; +import org.reflections.scanners.Scanners; +import org.reflections.util.ConfigurationBuilder; + +import java.io.FileWriter; +import java.io.IOException; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.ArrayList; +import java.util.Collections; +import java.util.Set; +import java.util.stream.Collectors; + +public class OpenEhrRmInfoLookupTest { + @Test + public void testFindAllClassesInRm() throws IOException { + OpenEhrRmInfoLookup infoLookup = OpenEhrRmInfoLookup.getInstance(); + + Set> classes = infoLookup.findAllClassesInPackage ("org.openehr.rm", RMObject.class); + ArrayList classNames = new ArrayList<>(); + + // generate a list of strings and sort + for (Class cl: classes) { + classNames.add(cl.getSimpleName()); + } + Collections.sort(classNames); + + StringBuilder sb = new StringBuilder(); + sb.append ("// \n"); + sb.append ("// include the following in OpenEhrRmInfoLookup.addTypes()\n"); + sb.append ("// \n"); + + // generate source code + for (String cName: classNames) { + sb.append("addClass(" + cName + ".class);\n"); + } + + // Write the code to the file /src/test/resources/RmCLassList.txt + Path resourceDirectory = Paths.get("src","test","resources"); + String absPath = resourceDirectory.toFile().getAbsolutePath() + "/RmCLassList.txt"; + FileWriter fw = new FileWriter(absPath); + fw.write(sb.toString()); + fw.close(); + } + +} diff --git a/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmMetaModelsInitialiserTest.java b/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmMetaModelsInitialiserTest.java new file mode 100644 index 000000000..2c1585f5f --- /dev/null +++ b/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmMetaModelsInitialiserTest.java @@ -0,0 +1,74 @@ +package com.nedap.archie.rminfo; + +import com.nedap.archie.aom.Archetype; +import com.nedap.archie.aom.ArchetypeHRID; +import com.nedap.archie.openehr.rminfo.OpenEhrRmMetaModelsInitialiser; +import org.junit.BeforeClass; +import org.junit.Test; +import org.openehr.bmm.v2.validation.BmmRepository; +import org.openehr.bmm.v2.validation.BmmValidationResult; + +import static org.junit.Assert.assertEquals; + +public class OpenEhrRmMetaModelsInitialiserTest { + + private static OpenEhrRmMetaModelsInitialiser openEHRAccess; + + @BeforeClass + public static void setup() + { + openEHRAccess = new OpenEhrRmMetaModelsInitialiser(); + } + + @Test + public void bmmRepository() throws Exception { + BmmRepository bmmRepository = openEHRAccess.getBmmRepository(); + + for(BmmValidationResult validation:bmmRepository.getInvalidModels()) { + System.out.println("validation " + validation.getSchemaId() + " contains errors:"); + System.out.println(validation.getLogger().toString()); + + } + assertEquals(38, bmmRepository.getPersistentSchemas().size()); + assertEquals(38, bmmRepository.getModels().size()); + assertEquals(36, bmmRepository.getValidModels().size()); + assertEquals(2, bmmRepository.getInvalidModels().size()); + } + + @Test + public void overrideModelVersion() throws Exception { + MetaModels metaModels = openEHRAccess.getMetaModels(); + Archetype archetype = new Archetype(); + archetype.setArchetypeId(new ArchetypeHRID("openEHR-EHR-CLUSTER.test.v1.0.0")); + archetype.setRmRelease("1.0.3"); + metaModels.selectModel(archetype); + assertEquals("openehr", metaModels.getSelectedBmmModel().getRmPublisher()); + assertEquals("EHR", metaModels.getSelectedBmmModel().getModelName()); + assertEquals("1.0.3", metaModels.getSelectedBmmModel().getRmRelease()); + + + //now overide the version to 1.0.4, and assert + metaModels.overrideModelVersion("openEHR", "EHR", "1.0.4"); + + metaModels.selectModel(archetype); + + metaModels.selectModel(archetype); + assertEquals("openehr", metaModels.getSelectedBmmModel().getRmPublisher()); + assertEquals("EHR", metaModels.getSelectedBmmModel().getModelName()); + assertEquals("1.0.4", metaModels.getSelectedBmmModel().getRmRelease()); + + //select a specific RM + metaModels.selectModel(archetype, "1.0.2"); + + assertEquals("openehr", metaModels.getSelectedBmmModel().getRmPublisher()); + assertEquals("EHR", metaModels.getSelectedBmmModel().getModelName()); + assertEquals("1.0.2", metaModels.getSelectedBmmModel().getRmRelease()); + + //remove Override + metaModels.removeOverridenModelVersion("openEHR", "EHR"); + metaModels.selectModel(archetype); + assertEquals("openehr", metaModels.getSelectedBmmModel().getRmPublisher()); + assertEquals("EHR", metaModels.getSelectedBmmModel().getModelName()); + assertEquals("1.0.3", metaModels.getSelectedBmmModel().getRmRelease()); + } +} diff --git a/openehr-rm/src/test/resources/RmCLassList.txt b/openehr-rm/src/test/resources/RmCLassList.txt new file mode 100644 index 000000000..61a20b342 --- /dev/null +++ b/openehr-rm/src/test/resources/RmCLassList.txt @@ -0,0 +1,122 @@ +// +// include the following in OpenEhrRmInfoLookup.addTypes() +// +addClass(AccessControlSettings.class); +addClass(AccessGroupRef.class); +addClass(Action.class); +addClass(Activity.class); +addClass(Actor.class); +addClass(Address.class); +addClass(AdminEntry.class); +addClass(Agent.class); +addClass(ArchetypeID.class); +addClass(Archetyped.class); +addClass(Attestation.class); +addClass(AuditDetails.class); +addClass(Capability.class); +addClass(CareEntry.class); +addClass(Cluster.class); +addClass(CodePhrase.class); +addClass(Composition.class); +addClass(Contact.class); +addClass(ContentItem.class); +addClass(Contribution.class); +addClass(DataStructure.class); +addClass(DataValue.class); +addClass(DvAbsoluteQuantity.class); +addClass(DvAmount.class); +addClass(DvBoolean.class); +addClass(DvCodedText.class); +addClass(DvCount.class); +addClass(DvDate.class); +addClass(DvDateTime.class); +addClass(DvDuration.class); +addClass(DvEHRURI.class); +addClass(DvEncapsulated.class); +addClass(DvGeneralTimeSpecification.class); +addClass(DvIdentifier.class); +addClass(DvInterval.class); +addClass(DvMultimedia.class); +addClass(DvOrdered.class); +addClass(DvOrdinal.class); +addClass(DvParagraph.class); +addClass(DvParsable.class); +addClass(DvPeriodicTimeSpecification.class); +addClass(DvProportion.class); +addClass(DvQuantified.class); +addClass(DvQuantity.class); +addClass(DvScale.class); +addClass(DvState.class); +addClass(DvTemporal.class); +addClass(DvText.class); +addClass(DvTime.class); +addClass(DvTimeSpecification.class); +addClass(DvURI.class); +addClass(Ehr.class); +addClass(EhrAccess.class); +addClass(EhrStatus.class); +addClass(Element.class); +addClass(Entry.class); +addClass(Evaluation.class); +addClass(Event.class); +addClass(EventContext.class); +addClass(FeederAudit.class); +addClass(FeederAuditDetails.class); +addClass(Folder.class); +addClass(GenericEntry.class); +addClass(GenericId.class); +addClass(Group.class); +addClass(HierObjectId.class); +addClass(History.class); +addClass(ImportedVersion.class); +addClass(Instruction.class); +addClass(InstructionDetails.class); +addClass(InternetId.class); +addClass(IntervalEvent.class); +addClass(IsmTransition.class); +addClass(IsoOID.class); +addClass(Item.class); +addClass(ItemList.class); +addClass(ItemSingle.class); +addClass(ItemStructure.class); +addClass(ItemTable.class); +addClass(ItemTree.class); +addClass(Link.class); +addClass(Locatable.class); +addClass(LocatableRef.class); +addClass(ObjectId.class); +addClass(ObjectRef.class); +addClass(ObjectVersionId.class); +addClass(Observation.class); +addClass(Organisation.class); +addClass(OriginalVersion.class); +addClass(Participation.class); +addClass(Party.class); +addClass(PartyIdentified.class); +addClass(PartyIdentity.class); +addClass(PartyProxy.class); +addClass(PartyRef.class); +addClass(PartyRelated.class); +addClass(PartyRelationship.class); +addClass(PartySelf.class); +addClass(Pathable.class); +addClass(Person.class); +addClass(PointEvent.class); +addClass(ReferenceRange.class); +addClass(RevisionHistory.class); +addClass(RevisionHistoryItem.class); +addClass(Role.class); +addClass(Section.class); +addClass(TemplateId.class); +addClass(TermMapping.class); +addClass(TerminologyId.class); +addClass(UID.class); +addClass(UIDBasedId.class); +addClass(UUID.class); +addClass(Version.class); +addClass(VersionTreeId.class); +addClass(VersionedComposition.class); +addClass(VersionedEhrAccess.class); +addClass(VersionedEhrStatus.class); +addClass(VersionedFolder.class); +addClass(VersionedObject.class); diff --git a/path-queries/src/test/java/com/nedap/archie/query/RMPathQueryTest.java b/path-queries/src/test/java/com/nedap/archie/query/RMPathQueryTest.java index fa35bfb9a..3f655235f 100644 --- a/path-queries/src/test/java/com/nedap/archie/query/RMPathQueryTest.java +++ b/path-queries/src/test/java/com/nedap/archie/query/RMPathQueryTest.java @@ -1,7 +1,7 @@ package com.nedap.archie.query; -import com.nedap.archie.rm.datastructures.Cluster; -import com.nedap.archie.rm.datastructures.Element; +import org.openehr.rm.datastructures.Cluster; +import org.openehr.rm.datastructures.Element; import org.junit.Before; import org.junit.Test; diff --git a/referencemodels/build.gradle b/referencemodels/build.gradle index b947bb68b..648268978 100644 --- a/referencemodels/build.gradle +++ b/referencemodels/build.gradle @@ -4,6 +4,8 @@ dependencies { api project(':bmm') api project(':odin') api project(':aom') + implementation project(path: ':openehr-rm') + implementation project(path: ':test-rm') testImplementation project(':openehr-rm') testImplementation project(':archie-utils') } \ No newline at end of file diff --git a/referencemodels/src/main/java/org/openehr/referencemodels/AllMetaModelsInitialiser.java b/referencemodels/src/main/java/org/openehr/referencemodels/AllMetaModelsInitialiser.java new file mode 100644 index 000000000..39637512c --- /dev/null +++ b/referencemodels/src/main/java/org/openehr/referencemodels/AllMetaModelsInitialiser.java @@ -0,0 +1,91 @@ +package org.openehr.referencemodels; + +import com.nedap.archie.aom.profile.AomProfiles; +import com.nedap.archie.rminfo.*; +import org.openehr.bmm.v2.validation.BmmRepository; +import com.nedap.archie.openehr.rminfo.OpenEhrRmMetaModelsInitialiser; +import com.nedap.archie.openehr.rminfo.OpenEhrTestRmMetaModelsInitialiser; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.util.ArrayList; +import java.util.List; + +/** + * Utility class that loads all available meta-model classes that are available in Archie + * + * uses reflection to only load the ModelInfoLookup classes that are available + */ +public class AllMetaModelsInitialiser { + + private static final Logger logger = LoggerFactory.getLogger(AllMetaModelsInitialiser.class); + + /** + * Static cache + */ + private static AomProfiles aomProfiles; + + private static BmmRepository bmmRepository; + + private static List mmInitializers; + + private static List getMmInitializers() { + if(mmInitializers != null) { + return mmInitializers; + } + mmInitializers = new ArrayList<>(); + mmInitializers.add(new OpenEhrRmMetaModelsInitialiser()); + mmInitializers.add(new OpenEhrTestRmMetaModelsInitialiser()); + return mmInitializers; + } + + public static BmmRepository getBmmRepository() { + if(bmmRepository != null) { + return bmmRepository; + } + + bmmRepository = new BmmRepository(); + + for (MetaModelsInitialiser mmInitializer: getMmInitializers()) { + bmmRepository.merge (mmInitializer.getBmmRepository()); + } + + return bmmRepository; + } + + /** + * Returns the built in AOM Profiles + * @return + */ + public static AomProfiles getAomProfiles() { + if(aomProfiles != null) { + return aomProfiles; + } + + AomProfiles profiles = new AomProfiles(); + + for (MetaModelsInitialiser mmInitializer: getMmInitializers()) { + profiles.merge (mmInitializer.getAomProfiles()); + } + + AllMetaModelsInitialiser.aomProfiles = profiles; + return profiles; + } + + public static ReferenceModels getNativeRms() { + ReferenceModels result = new ReferenceModels(); + for (MetaModelsInitialiser mmInitializer: getMmInitializers()) { + result.merge (mmInitializer.getNativeRms()); + } + return result; + } + + /** + * Returns the MetaModels loaded with all BMM, ModelInfoLookup and AOM profiles that are available. + * Returns a new MetaModels instance every call! + * @return + */ + public static MetaModels getMetaModels() { + return new MetaModels(getNativeRms(), getBmmRepository(), getAomProfiles()); + } +} \ No newline at end of file diff --git a/referencemodels/src/main/java/org/openehr/referencemodels/BuiltinReferenceModels.java b/referencemodels/src/main/java/org/openehr/referencemodels/BuiltinReferenceModels.java deleted file mode 100644 index 6837d5aac..000000000 --- a/referencemodels/src/main/java/org/openehr/referencemodels/BuiltinReferenceModels.java +++ /dev/null @@ -1,175 +0,0 @@ -package org.openehr.referencemodels; - -import com.nedap.archie.aom.profile.AomProfile; -import com.nedap.archie.aom.profile.AomProfiles; -import com.nedap.archie.rminfo.MetaModels; -import com.nedap.archie.rminfo.ModelInfoLookup; -import com.nedap.archie.rminfo.RMObjectMapperProvider; -import com.nedap.archie.rminfo.ReferenceModels; -import org.openehr.bmm.v2.persistence.odin.BmmOdinParser; -import org.openehr.bmm.v2.validation.BmmRepository; -import org.openehr.bmm.v2.validation.BmmSchemaConverter; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.io.IOException; -import java.io.InputStream; -import java.lang.reflect.Constructor; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; - -/** - * Utility class that loads all available meta-model classes that are available in Archie - * - * uses reflection to only load the ModelInfoLookup classes that are available - */ -public class BuiltinReferenceModels { - - private static final Logger logger = LoggerFactory.getLogger(BuiltinReferenceModels.class); - - /** - * Static cache - */ - private static AomProfiles aomProfiles; - - private static BmmRepository bmmRepository; - - public static BmmRepository getBmmRepository() { - if(bmmRepository != null) { - return bmmRepository; - } - - String[] resources = { // "bmm/CIMI/Release-0.0.3/BMM/CIMI_RM_CORE.v.0.0.3.bmm", - "bmm/openEHR/components/RM/Release-1.0.4/openehr_rm_demographic_104.bmm", - "bmm/openEHR/original/Release-1.0.2/openehr_structures_102.bmm", - "bmm/openEHR/components/RM/Release-1.0.3/openehr_ehr_103.bmm", - "bmm/openEHR/original/Release-1.0.2/openehr_primitive_types_102.bmm", - "bmm/openEHR/components/RM/Release-1.0.4/openehr_rm_ehr_extract_104.bmm", - "bmm/openEHR/components/RM/Release-1.0.3/openehr_rm_103.bmm", - "bmm/openEHR/components/BASE/Release-1.1.0/openehr_base_110.bmm", - "bmm/openEHR/components/RM/rejected/openehr_ehr_extract_999.bmm", - // "bmm/CIMI/Release-0.0.3/BMM/CIMI_RM_CLINICAL.v.0.0.3.bmm", - "bmm/openEHR/original/Release-1.0.2/openehr_demographic_102.bmm", - "bmm/openEHR/original/Release-1.0.2/openehr_ehr_102.bmm", - "bmm/openEHR/components/LANG/Release-1.0.0/openehr_lang_100.bmm", - "bmm/openEHR/components/RM/Release-1.0.4/openehr_rm_ehr_104.bmm", - "bmm/openEHR/components/PROC/Release-1.5.0/openehr_proc_task_planning_150.bmm", - "bmm/openEHR/components/PROC/Release-1.6.0/openehr_proc_task_planning_160.bmm", - "bmm/openEHR/components/PROC/latest/openehr_proc_task_planning_110.bmm", - "bmm/openEHR/original/Release-1.0.2/openehr_rm_102.bmm", - "bmm/openEHR/components/RM/Release-1.0.4/openehr_rm_structures_104.bmm", - "bmm/FHIR/DSTU/BMM/hl7_fhir_resourceses_dstu.bmm", - "bmm/openEHR/components/RM/Release-1.0.3/openehr_demographic_103.bmm", - "bmm/openEHR/components/RM/Release-1.0.4/openehr_rm_104.bmm", - // "bmm/ISO_13606/2008/BMM/cen_ts14796_0.90.bmm", - "bmm/openEHR/components/BASE/Release-1.0.0/openehr_base_100.bmm", - // "bmm/CDISC/Core/BMM/CDISC-Core-0.5.0.bmm", - "bmm/openEHR/adl_test/Release-1.0.0/BMM/openehr_adltest_100.bmm", - // "bmm/ISO_21090/2011/BMM/iso_21090_0.9.0.bmm", - "bmm/openEHR/components/PROC/Release-1.0.0/openehr_proc_task_planning_100.bmm", - "bmm/openEHR/components/RM/Release-1.0.3/openehr_structures_103.bmm", - "bmm/openEHR/components/RM/Release-1.0.3/openehr_ehr_extract_103.bmm", - "bmm/openEHR/original/Release-1.0.2/openehr_basic_types_102.bmm", - "bmm/openEHR/components/RM/Release-1.0.3/openehr_primitive_types_103.bmm", - "bmm/openEHR/components/RM/Release-1.0.3/openehr_basic_types_103.bmm", - // "bmm/ISO_13606/2008/BMM/cen_EN13606_0.95.bmm", - "bmm/openEHR/components/RM/Release-1.0.4/openehr_rm_data_types_104.bmm", - "bmm/openEHR/components/RM/Release-1.1.0/openehr_rm_110.bmm", - "bmm/openEHR/components/RM/Release-1.1.0/openehr_rm_data_types_110.bmm", - "bmm/openEHR/components/RM/Release-1.1.0/openehr_rm_demographic_110.bmm", - "bmm/openEHR/components/RM/Release-1.1.0/openehr_rm_ehr_110.bmm", - "bmm/openEHR/components/RM/Release-1.1.0/openehr_rm_ehr_extract_110.bmm", - "bmm/openEHR/components/RM/Release-1.1.0/openehr_rm_structures_110.bmm" - - // "bmm/CIMI/Release-0.0.3/BMM/CIMI_RM_FOUNDATION.v.0.0.3.bmm" - }; - bmmRepository = new BmmRepository(); - for(String resourceName:resources) { - logger.info("parsing " + resourceName); - try(InputStream stream = BuiltinReferenceModels.class.getResourceAsStream("/" + resourceName)) { //not sure why the "/" + is needed, but it is - bmmRepository.addPersistentSchema(BmmOdinParser.convert(stream)); - } catch (IOException e) { - throw new RuntimeException("error loading file: " + e); - } catch (RuntimeException ex) { - logger.error("error parsing {}", resourceName, ex); - } - } - BmmSchemaConverter converter = new BmmSchemaConverter(bmmRepository); - - converter.validateAndConvertRepository(); - return bmmRepository; - } - - /** - * Returns the built in AOM Profiles - * @return - */ - public static AomProfiles getAomProfiles() { - if(aomProfiles != null) { - return aomProfiles; - } - AomProfiles profiles = new AomProfiles(); - //now parse the AOM profiles - String[] resourceNames = {"/aom_profiles/openehr_aom_profile.arp", - "/aom_profiles/cdisc_aom_profile.arp", - "/aom_profiles/cimi_aom_profile.arp", - "/aom_profiles/fhir_aom_profile.arp", - "/aom_profiles/iso13606_aom_profile.arp", - }; - for(String resource:resourceNames) { - try(InputStream odin = BuiltinReferenceModels.class.getResourceAsStream(resource)){ - profiles.add(odin); - } catch (IOException e) { - throw new RuntimeException(e); - } - } - BuiltinReferenceModels.aomProfiles = profiles; - return profiles; - } - - /** - * Returns the model info lookups that are built in archie and are available in the classloader. Add the reference - * models to your dependencies to make this return values - * @return - */ - public static ReferenceModels getAvailableModelInfoLookups() { - ReferenceModels result = new ReferenceModels(); - addModelInfoLookupIfExists(result, "com.nedap.archie.rminfo.OpenEhrRmInfoLookup", "com.nedap.archie.serialisation.json.OpenEhrRmObjectMapperProvider"); - addModelInfoLookupIfExists(result, "com.nedap.archie.openehrtestrm.TestRMInfoLookup", null ); - return result; - } - - private static void addModelInfoLookupIfExists(ReferenceModels result, String className, String objectMapperProviderClassName) { - try { - Class openEhrRMLookup = Class.forName(className); - Method getInstance = openEhrRMLookup.getDeclaredMethod("getInstance"); - ModelInfoLookup modelInfo = (ModelInfoLookup) getInstance.invoke(null); - RMObjectMapperProvider provider = null; - if(objectMapperProviderClassName != null) { - try { - Class objectMapperProvider = Class.forName(objectMapperProviderClassName); - Constructor getProviderInstance = objectMapperProvider.getConstructor(); - provider = (RMObjectMapperProvider) getProviderInstance.newInstance(); - } catch (InstantiationException | ClassNotFoundException | NoSuchMethodException | IllegalAccessException | InvocationTargetException e) { - //not present, that's fine. Maybe do a bit of debug logging? - } - } - result.registerModel(modelInfo, provider); - } catch (ClassNotFoundException | NoSuchMethodException | IllegalAccessException | InvocationTargetException e) { - //not present, that's fine. Maybe do a bit of debug logging? - } - } - - /** - * Returns the MetaModels loaded with all BMM, ModelInfoLookup and AOM profiles that are available. - * Returns a new MetaModels instance every call! - * @return - */ - public static MetaModels getMetaModels() { - MetaModels metaModels = new MetaModels(getAvailableModelInfoLookups(), getBmmRepository()); - for(AomProfile profile:getAomProfiles().getProfiles()) { - metaModels.getAomProfiles().add(profile); - } - return metaModels; - } -} \ No newline at end of file diff --git a/referencemodels/src/main/resources/aom_profiles/cdisc_aom_profile.arp b/referencemodels/src/main/resources/aom_profiles/cdisc_aom_profile.arp deleted file mode 100755 index 034a1eefa..000000000 --- a/referencemodels/src/main/resources/aom_profiles/cdisc_aom_profile.arp +++ /dev/null @@ -1,65 +0,0 @@ --- --- component: openEHR Archetype Project --- description: Archetype profile for CDISC RM schemas --- keywords: reference model, meta-model, archetypes --- author: Thomas Beale --- support: http://www.openehr.org/issues/browse/AWB --- copyright: Copyright (c) 2014- openEHR Foundation --- license: See end of file --- - -profile_name = <"cdisc"> - ----------------------------------------------------------------------------------------- --- id or PERL regex based on id Reference Models to which this profile applies. --- This is used to match the 'schema_id' generated in BMM_SCHEMA class based on model --- publisher, model name, model release as defined in .bmm files. --- -rm_schema_pattern = <"cdisc_core_.*"> - ----------------------------------------------------------------------------------------- --- id of terminologies and code sets to use --- -terminology_profile = < - terminology_issuer = <"CDISC"> - code_sets_issuer = <"CDISC"> -> - ----------------------------------------------------------------------------------------- --- The effect of this attribute in visualisation is to generate the most natural tree or --- grid-based view of an archetype definition, from the semantic viewpoint. --- --- archetype_visualise_descendants_of = <"xxx"> - ----------------------------------------------------------------------------------------- --- mappings from AOM built-in types used for RM types --- -aom_rm_type_mappings = < - ["TERMINOLOGY_CODE"] = < - source_class_name = <"TERMINOLOGY_CODE"> - target_class_name = <"CD"> - property_mappings = < - ["terminology_id"] = < - source_property_name = <"terminology_id"> - target_property_name = <"codeSystemName"> - > - ["code_string"] = < - source_property_name = <"code_string"> - target_property_name = <"codeValue"> - > - > - > -> - ----------------------------------------------------------------------------------------- --- allowed substitutions from AOM built-in types to RM types --- - -aom_rm_type_substitutions = < - ["ISO8601_DATE"] = <"String"> - ["ISO8601_DATE_TIME"] = <"String"> - ["ISO8601_TIME"] = <"String"> - ["ISO8601_DURATION"] = <"String"> - ["REAL"] = <"Decimal"> -> - diff --git a/referencemodels/src/main/resources/aom_profiles/cimi_aom_profile.arp b/referencemodels/src/main/resources/aom_profiles/cimi_aom_profile.arp deleted file mode 100755 index b6b2f7652..000000000 --- a/referencemodels/src/main/resources/aom_profiles/cimi_aom_profile.arp +++ /dev/null @@ -1,80 +0,0 @@ --- --- component: openEHR Archetype Project --- description: Archetype profile for openEHR RM schemas --- keywords: reference model, meta-model, archetypes --- author: Thomas Beale --- support: http://www.openehr.org/issues/browse/AWB --- copyright: Copyright (c) 2013- openEHR Foundation --- license: See end of file --- - -profile_name = <"CIMI"> - ----------------------------------------------------------------------------------------- --- id or PERL regex based on id Reference Models to which this profile applies. --- This is used to match the 'schema_id' generated in BMM_SCHEMA class based on model --- publisher, model name, model release as defined in .bmm files. --- -rm_schema_pattern = <"cimi_*.*"> - ----------------------------------------------------------------------------------------- --- id of terminologies and code sets to use --- -terminology_profile = < - terminology_issuer = <"cimi"> -> - ----------------------------------------------------------------------------------------- --- The effect of this attribute in visualisation is to generate the most natural tree or --- grid-based view of an archetype definition, from the semantic viewpoint. --- -archetype_visualise_descendants_of = <"ITEM"> - ----------------------------------------------------------------------------------------- --- mappings from AOM built-in types used for RM types --- - -aom_rm_type_mappings = < - ["TERMINOLOGY_CODE"] = < - source_class_name = <"TERMINOLOGY_CODE"> - target_class_name = <"Concept"> - property_mappings = < - ["terminology_id"] = < - source_property_name = <"terminology_id"> - target_property_name = <"codeSystem"> - > - ["code_string"] = < - source_property_name = <"code_string"> - target_property_name = <"code"> - > - > - > -> - ----------------------------------------------------------------------------------------- --- Equivalences of RM primitive types to in-built set of primitive types --- Used to determine which AOM C_PRIMITIVE_OBJECT descendant is used for a primitive type - -rm_primitive_type_equivalences = < - ["Concept"] = <"Terminology_code"> - ["Octet"] = <"Integer"> - ["Double"] = <"Real"> - ["Integer64"] = <"Integer"> - ["ISO8601_DATE"] = <"Date"> - ["ISO8601_DATE_TIME"] = <"Date_time"> - ["ISO8601_TIME"] = <"Time"> - ["ISO8601_DURATION"] = <"Duration"> -> - ----------------------------------------------------------------------------------------- --- allowed substitutions from AOM built-in types to RM types --- - -aom_rm_type_substitutions = < - ["ISO8601_DATE"] = <"String"> - ["ISO8601_DATE_TIME"] = <"String"> - ["ISO8601_TIME"] = <"String"> - ["ISO8601_DURATION"] = <"String"> - ["REAL"] = <"Double"> - ["INTEGER"] = <"Integer64"> -> diff --git a/referencemodels/src/main/resources/aom_profiles/fhir_aom_profile.arp b/referencemodels/src/main/resources/aom_profiles/fhir_aom_profile.arp deleted file mode 100755 index 750997801..000000000 --- a/referencemodels/src/main/resources/aom_profiles/fhir_aom_profile.arp +++ /dev/null @@ -1,65 +0,0 @@ --- --- component: openEHR Archetype Project --- description: Archetype profile for FHIR RM schemas --- keywords: reference model, meta-model, archetypes --- author: Thomas Beale --- support: http://www.openehr.org/issues/browse/AWB --- copyright: Copyright (c) 2014- openEHR Foundation --- license: See end of file --- - -profile_name = <"fhir"> - ----------------------------------------------------------------------------------------- --- id or PERL regex based on id Reference Models to which this profile applies. --- This is used to match the 'schema_id' generated in BMM_SCHEMA class based on model --- publisher, model name, model release as defined in .bmm files. --- -rm_schema_pattern = <"hl7_fhir_.*"> - ----------------------------------------------------------------------------------------- --- id of terminologies and code sets to use --- -terminology_profile = < - terminology_issuer = <"HL7"> - code_sets_issuer = <"HL7"> -> - ----------------------------------------------------------------------------------------- --- The effect of this attribute in visualisation is to generate the most natural tree or --- grid-based view of an archetype definition, from the semantic viewpoint. --- --- archetype_visualise_descendants_of = <"xxx"> - ----------------------------------------------------------------------------------------- --- mappings from AOM built-in types used for RM types --- -aom_rm_type_mappings = < - ["TERMINOLOGY_CODE"] = < - source_class_name = <"TERMINOLOGY_CODE"> - target_class_name = <"Coding"> - property_mappings = < - ["terminology_id"] = < - source_property_name = <"terminology_id"> - target_property_name = <"system"> - > - ["terminology_version"] = < - source_property_name = <"terminology_version"> - target_property_name = <"version"> - > - ["code_string"] = < - source_property_name = <"code_string"> - target_property_name = <"code"> - > - > - > -> - ----------------------------------------------------------------------------------------- --- allowed substitutions from AOM built-in types to RM types --- - -aom_rm_type_substitutions = < - ["REAL"] = <"Double"> -> - diff --git a/referencemodels/src/main/resources/bmm/CDISC/Core/BMM/CDISC-Core-0.5.0.bmm b/referencemodels/src/main/resources/bmm/CDISC/Core/BMM/CDISC-Core-0.5.0.bmm deleted file mode 100755 index 0c49af5c3..000000000 --- a/referencemodels/src/main/resources/bmm/CDISC/Core/BMM/CDISC-Core-0.5.0.bmm +++ /dev/null @@ -1,1270 +0,0 @@ --- xxx -bmm_version = <"2.1"> - ------------------------------------- --- schema identification --- (schema_id computed as __) ------------------------------------- -rm_publisher = <"CDISC"> -schema_name = <"core"> -rm_release = <"0.5.0"> - ------------------------------------- --- schema documentation ------------------------------------- -schema_revision = <"0.5"> -schema_lifecycle_state = <"experimental"> -schema_description = <"CDISC core '20 classes' model, built for archetyping POC project"> - ------------------------------------- --- inclusions ------------------------------------- -includes = < - ["1"] = < - id = <"iso_21090_0.9.0"> - > -> - ------------------------------------- --- archetyping ------------------------------------- -archetype_rm_closure_packages = <"org.cdisc.Bridg", ...> - ------------------------------------- --- packages ------------------------------------- - -packages = < - ["org.cdisc.bridg"] = < - name = <"org.cdisc.bridg"> - packages = < - ["Common"] = < - name = <"Common"> - classes = <"BiologicEntity", "BiologicEntityIdentifier", "Person", "Subject", "SubjectIdentifier", "Organization", "OrganizationIdentifier", - "Product", "Activity", "Performer"> - > - ["ProtocolRepresentation"] = < - name = <"ProtocolRepresentation"> - classes = <"StudyProtocolVersion", "DefinedActivity", "DefinedObservation", "PlannedSubjectActivityGroup", "StudyActivity", "PlannedActivity", - "StudyAgent", "PlannedCompositionRelationship", "DefinedCompositionRelationship"> - > - ["StudyConduct"] = < - name = <"StudyConduct"> - classes = <"StudySite", "StudySubject", "StudySubjectProtocolVersionRelationship", "StudySiteProtocolVersionRelationship", - "PerformedActivity", "PerformedObservation", "PerformedObservationResult", "PerformedCompositionRelationship"> - > - > - > -> - ------------------------------------- --- classes ------------------------------------- - -class_definitions = < - - ------------------------------------ - -- Core - ------------------------------------ - - ["BiologicEntity"] = < - name = <"BiologicEntity"> - properties = < - ["actualIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"actualIndicator"> - type = <"BL"> - is_mandatory = - > - ["administrativeGenderCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"administrativeGenderCode"> - type = <"CD"> - > - ["birthCountryCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"birthCountryCode"> - type = <"CD"> - is_im_runtime = - > - ["birthDate"] = (P_BMM_SINGLE_PROPERTY) < - name = <"birthDate"> - type = <"DATETIME"> - is_im_runtime = - > - ["birthOrder"] = (P_BMM_SINGLE_PROPERTY) < - name = <"birthOrder"> - type = <"INT"> - is_im_runtime = - > - ["deathDate"] = (P_BMM_SINGLE_PROPERTY) < - name = <"deathDate"> - type = <"DATETIME"> - is_im_runtime = - > - ["deathDateEstimatedIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"deathDateEstimatedIndicator"> - type = <"BL"> - is_im_runtime = - > - ["deathIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"deathIndicator"> - type = <"BL"> - is_im_runtime = - > - ["name"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"name"> - type_def = < - container_type = <"DSET"> - type = <"EN"> - > - > - ["identifier"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"identifier"> - type_def = < - container_type = <"Set"> - type = <"BiologicEntityIdentifier"> - > - is_im_runtime = - > - > - > - - ["Person"] = < - name = <"Person"> - ancestors = <"BiologicEntity", ...> - properties = < - ["educationLevelCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"educationLevelCode"> - type = <"CD"> - is_im_runtime = - > - ["educationGroupCode"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"educationGroupCode"> - type_def = < - container_type = <"DSET"> - type = <"CD"> - > - is_im_runtime = - > - ["initials"] = (P_BMM_SINGLE_PROPERTY) < - name = <"initials"> - type = <"ST"> - is_im_runtime = - > - ["maritalStatusCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"maritalStatusCode"> - type = <"CD"> - is_im_runtime = - > - ["occupationDateRange"] = (P_BMM_GENERIC_PROPERTY) < - name = <"occupationDateRange"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"DATE"> - > - is_im_runtime = - > - ["postalAddress"] = (P_BMM_SINGLE_PROPERTY) < - name = <"postalAddress"> - type = <"AD"> - is_im_runtime = - > - ["primaryOccupationCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"primaryOccupationCode"> - type = <"CD"> - is_im_runtime = - > - ["raceCode"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"raceCode"> - type_def = < - container_type = <"DSET"> - type = <"CD"> - > - is_im_runtime = - > - ["telecomAddress"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"telecomAddress"> - type_def = < - container_type = <"Bag"> - type = <"TEL"> - > - is_im_runtime = - > - > - > - - ["BiologicEntityIdentifier"] = < - name = <"BiologicEntityIdentifier"> - properties = < - ["identifier"] = (P_BMM_SINGLE_PROPERTY) < - name = <"identifier"> - type = <"II"> - is_mandatory = - is_im_runtime = - > - ["missingIdentifierReasonCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"missingIdentifierReasonCode"> - type = <"CD"> - is_im_runtime = - > - ["typeCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"typeCode"> - type = <"CD"> - > - ["effectiveDateRange"] = (P_BMM_GENERIC_PROPERTY) < - name = <"effectiveDateRange"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"DATETIME"> - > - is_im_runtime = - > - > - > - - ["Subject"] = < - name = <"Subject"> - ancestors = <"Any", ...> - properties = < - ["performingBiologicEntity"] = (P_BMM_SINGLE_PROPERTY) < - name = <"performingBiologicEntity"> - type = <"BiologicEntity"> - > - ["performingOrganization"] = (P_BMM_SINGLE_PROPERTY) < - name = <"performingOrganization"> - type = <"Organization"> - > - ["identifyingSubjectIdentifier"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"identifyingSubjectIdentifier"> - type_def = < - container_type = <"Set"> - type = <"BiologicEntityIdentifier"> - > - is_im_runtime = - > - > - > - - ["SubjectIdentifier"] = < - name = <"SubjectIdentifier"> - properties = < - ["identifier"] = (P_BMM_SINGLE_PROPERTY) < - name = <"identifier"> - type = <"II"> - is_mandatory = - is_im_runtime = - > - ["effectiveDateRange"] = (P_BMM_GENERIC_PROPERTY) < - name = <"effectiveDateRange"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"DATETIME"> - > - is_im_runtime = - > - ["primaryIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"primaryIndicator"> - type = <"BL"> - > - ["typeCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"typeCode"> - type = <"CD"> - > - ["assigningOrganization"] = (P_BMM_SINGLE_PROPERTY) < - name = <"assigningOrganization"> - type = <"Organization"> - is_im_runtime = - > - > - > - - ["Organization"] = < - name = <"Organization"> - properties = < - ["actualIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"actualIndicator"> - type = <"BL"> - is_mandatory = - > - ["effectiveDateRange"] = (P_BMM_GENERIC_PROPERTY) < - name = <"effectiveDateRange"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"DATETIME"> - > - is_im_runtime = - > - ["name"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"name"> - type_def = < - container_type = <"DSET"> - type = <"ON"> - > - is_im_runtime = - > - ["description"] = (P_BMM_SINGLE_PROPERTY) < - name = <"description"> - type = <"ST"> - is_im_runtime = - > - ["postalAddress"] = (P_BMM_SINGLE_PROPERTY) < - name = <"postalAddress"> - type = <"AD"> - is_im_runtime = - > - ["identifyingOrganizationIdentifier"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"identifyingOrganizationIdentifier"> - type_def = < - container_type = <"Set"> - type = <"OrganizationIdentifier"> - > - is_im_runtime = - > - ["assignedOrganizationIdentifier"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"assignedOrganizationIdentifier"> - type_def = < - container_type = <"Set"> - type = <"OrganizationIdentifier"> - > - is_im_runtime = - > - ["telecomAddress"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"telecomAddress"> - type_def = < - container_type = <"Bag"> - type = <"TEL"> - > - is_im_runtime = - > - ["typeCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"typeCode"> - type = <"CD"> - > - > - > - - ["OrganizationIdentifier"] = < - name = <"OrganizationIdentifier"> - properties = < - ["identifier"] = (P_BMM_SINGLE_PROPERTY) < - name = <"identifier"> - type = <"II"> - is_mandatory = - is_im_runtime = - > - ["primaryIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"primaryIndicator"> - type = <"BL"> - > - ["typeCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"typeCode"> - type = <"CD"> - > - ["assigner"] = (P_BMM_SINGLE_PROPERTY) < - name = <"assigner"> - type = <"Organization"> - is_im_runtime = - > - > - > - - ["Product"] = < - name = <"Product"> - properties = < - ["classCode"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"classCode"> - type_def = < - container_type = <"DSET"> - type = <"CD"> - > - > - ["expirationDate"] = (P_BMM_SINGLE_PROPERTY) < - name = <"expirationDate"> - type = <"DATE"> - is_im_runtime = - > - ["lotNumberText"] = (P_BMM_SINGLE_PROPERTY) < - name = <"lotNumberText"> - type = <"SIMPLE"> - is_im_runtime = - > - ["pre1938Indicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"pre1938Indicator"> - type = <"BL"> - > - ["typeCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"typeCode"> - type = <"CD"> - > - > - > - - ["StudySite"] = < - name = <"StudySite"> - properties = < - ["identifier"] = (P_BMM_SINGLE_PROPERTY) < - name = <"identifier"> - type = <"II"> - is_im_runtime = - > - ["dateRange"] = (P_BMM_GENERIC_PROPERTY) < - name = <"dateRange"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"DATETIME"> - > - is_im_runtime = - > - ["leadIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"leadIndicator"> - type = <"BL"> - > - ["plannedDuration"] = (P_BMM_SINGLE_PROPERTY) < - name = <"plannedDuration"> - type = <"TIME"> - > - ["statusCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"statusCode"> - type = <"CD"> - > - ["statusDate"] = (P_BMM_SINGLE_PROPERTY) < - name = <"statusDate"> - type = <"DATETIME"> - > - ["targetAccrualNumberRange"] = (P_BMM_GENERIC_PROPERTY) < - name = <"targetAccrualNumberRange"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"NONNEG"> - > - > - ["exectuedStudySiteProtocolVersionRelationship"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"exectuedStudySiteProtocolVersionRelationship"> - type_def = < - container_type = <"Set"> - type = <"StudySiteProtocolVersionRelationship"> - > - > - ["performingOrganization"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"performingOrganization"> - type_def = < - container_type = <"Set"> - type = <"Organization"> - > - > - > - > - - ["StudySubject"] = < - name = <"StudySubject"> - ancestors = <"Subject", ...> - properties = < - ["confidentialityIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"confidentialityIndicator"> - type = <"BL"> - > - ["statusCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"statusCode"> - type = <"CD"> - > - ["paymentMethodCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"paymentMethodCode"> - type = <"CD"> - > - ["statusDate"] = (P_BMM_SINGLE_PROPERTY) < - name = <"statusDate"> - type = <"DATETIME"> - > - ["assignedStudySubjectProtocolVersionRelationship"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"assignedStudySubjectProtocolVersionRelationship"> - type_def = < - container_type = <"Set"> - type = <"StudySubjectProtocolVersionRelationship"> - > - > - > - > - - ["StudySubjectProtocolVersionRelationship"] = < - name = <"StudySubjectProtocolVersionRelationship"> - properties = < - ["assigningStudySiteProtocolVersionRelationship"] = (P_BMM_SINGLE_PROPERTY) < - name = <"assigningStudySiteProtocolVersionRelationship"> - type = <"StudySiteProtocolVersionRelationship"> - is_mandatory = - > - ["effectiveDateRange"] = (P_BMM_GENERIC_PROPERTY) < - name = <"effectiveDateRange"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"DATETIME"> - > - is_im_runtime = - > - > - > - - ["Performer"] = < - name = <"Performer"> - properties = < - ["postalAddress"] = (P_BMM_SINGLE_PROPERTY) < - name = <"postalAddress"> - type = <"AD"> - is_im_runtime = - > - ["telecomAddress"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"telecomAddress"> - type_def = < - container_type = <"Bag"> - type = <"TEL"> - > - is_im_runtime = - > - ["identifier"] = (P_BMM_SINGLE_PROPERTY) < - name = <"identifier"> - type = <"II"> - is_im_runtime = - > - ["effectiveDateRange"] = (P_BMM_GENERIC_PROPERTY) < - name = <"effectiveDateRange"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"DATETIME"> - > - is_im_runtime = - > - ["typeCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"typeCode"> - type = <"CD"> - > - > - > - - ["StudySiteProtocolVersionRelationship"] = < - name = <"StudySiteProtocolVersionRelationship"> - properties = < - ["effectiveDateRange"] = (P_BMM_GENERIC_PROPERTY) < - name = <"effectiveDateRange"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"DATETIME"> - > - is_im_runtime = - > - > - > - - ["StudyAgent"] = < - name = <"StudyAgent"> - properties = < - ["blindedName"] = (P_BMM_SINGLE_PROPERTY) < - name = <"blindedName"> - type = <"ST"> - is_im_runtime = - > - ["characteristicModifiedIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"characteristicModifiedIndicator"> - type = <"BL"> - > - ["expandedAccessIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"expandedAccessIndicator"> - type = <"BL"> - > - ["firstInHumanIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"firstInHumanIndicator"> - type = <"BL"> - > - ["firstInHumanRiskFactorCode"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"firstInHumanRiskFactorCode"> - type_def = < - container_type = <"DSET"> - type = <"CD"> - > - > - ["functionCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"functionCode"> - type = <"CD"> - > - ["pediatricFormulationIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"pediatricFormulationIndicator"> - type = <"BL"> - > - ["statusCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"statusCode"> - type = <"CD"> - > - ["statusDate"] = (P_BMM_SINGLE_PROPERTY) < - name = <"statusDate"> - type = <"DATETIME"> - is_im_runtime = - > - ["substitutionAllowedIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"substitutionAllowedIndicator"> - type = <"BL"> - > - ["performingProduct"] = (P_BMM_SINGLE_PROPERTY) < - name = <"performingProduct"> - type = <"Product"> - is_mandatory = - > - > - > - - ["StudyProtocolVersion"] = < - name = <"StudyProtocolVersion"> - properties = < - ["accrualReportingMethodCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"accrualReportingMethodCode"> - type = <"CD"> - > - ["acronym"] = (P_BMM_SINGLE_PROPERTY) < - name = <"acronym"> - type = <"ST"> - > - ["adaptiveDesignIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"adaptiveDesignIndicator"> - type = <"BL"> - > - ["aeCodingSystem"] = (P_BMM_SINGLE_PROPERTY) < - name = <"aeCodingSystem"> - type = <"OID"> - > - ["amendmentGracePeriod"] = (P_BMM_SINGLE_PROPERTY) < - name = <"amendmentGracePeriod"> - type = <"TIME"> - > - ["companionCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"companionCode"> - type = <"CD"> - > - ["conditionCodingSystem"] = (P_BMM_SINGLE_PROPERTY) < - name = <"conditionCodingSystem"> - type = <"OID"> - > - ["delayedRegistryPostingIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"delayedRegistryPostingIndicator"> - type = <"BL"> - > - ["designConfigurationCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"designConfigurationCode"> - type = <"CD"> - > - ["mandatoryIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"mandatoryIndicator"> - type = <"BL"> - > - ["multiInstitutionIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"multiInstitutionIndicator"> - type = <"BL"> - > - ["participatingLocationCode"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"participatingLocationCode"> - type_def = < - container_type = <"DSET"> - type = <"CD"> - > - > - ["participatingOrganizationTypeCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"participatingOrganizationTypeCode"> - type = <"CD"> - > - ["periodicTargetAccrualNumber"] = (P_BMM_SINGLE_PROPERTY) < - name = <"periodicTargetAccrualNumber"> - type = <"RTO"> - > - ["phaseCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"phaseCode"> - type = <"CD"> - > - ["plannedDuration"] = (P_BMM_SINGLE_PROPERTY) < - name = <"plannedDuration"> - type = <"TIME"> - > - ["plannedSiteNumberRange"] = (P_BMM_GENERIC_PROPERTY) < - name = <"plannedSiteNumberRange"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"POS"> - > - > - ["plannedStudySubjectExperience"] = (P_BMM_SINGLE_PROPERTY) < - name = <"plannedStudySubjectExperience"> - type = <"ST"> - > - ["populationDescription"] = (P_BMM_SINGLE_PROPERTY) < - name = <"populationDescription"> - type = <"ST"> - > - ["primaryPurposeTypeCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"primaryPurposeTypeCode"> - type = <"CD"> - > - ["purposeStatement"] = (P_BMM_SINGLE_PROPERTY) < - name = <"purposeStatement"> - type = <"ST"> - > - ["responsiblePartyCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"responsiblePartyCode"> - type = <"CD"> - > - ["studySchematic"] = (P_BMM_SINGLE_PROPERTY) < - name = <"studySchematic"> - type = <"ED"> - > - ["studySubjectTypeCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"studySubjectTypeCode"> - type = <"CD"> - > - ["targetAccrualNumberRange"] = (P_BMM_GENERIC_PROPERTY) < - name = <"targetAccrualNumberRange"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"NONNEG"> - > - > - ["targetAnatomicalSiteCode"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"targetAnatomicalSiteCode"> - type_def = < - container_type = <"DSET"> - type = <"CD"> - > - > - ["therapeuticAreaCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"therapeuticAreaCode"> - type = <"CD"> - > - ["evaluatedStudyAgent"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"evaluatedStudyAgent"> - type_def = < - container_type = <"Set"> - type = <"StudyAgent"> - > - > - ["executedPerformedActivity"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"executedPerformedActivity"> - type_def = < - container_type = <"Set"> - type = <"PerformedActivity"> - > - > - ["usedStudyActivity"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"usedStudyActivity"> - type_def = < - container_type = <"Set"> - type = <"StudyActivity"> - > - > - > - > - - ["DefinedActivity"] = < - name = <"DefinedActivity"> - ancestors = <"Activity", ...> - properties = < - ["nameCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"nameCode"> - type = <"CD"> - > - ["repeatFrequencyCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"repeatFrequencyCode"> - type = <"CD"> - > - ["categoryCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"categoryCode"> - type = <"CD"> - > - ["repeatDuration"] = (P_BMM_SINGLE_PROPERTY) < - name = <"repeatDuration"> - type = <"TIME"> - is_computed = - > - ["repeatFrequencyRatio"] = (P_BMM_SINGLE_PROPERTY) < - name = <"repeatFrequencyRatio"> - type = <"RTO"> - > - ["repeatQuantityRange"] = (P_BMM_GENERIC_PROPERTY) < - name = <"repeatQuantityRange"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"NONNEG"> - > - > - ["statusCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"statusCode"> - type = <"CD"> - > - ["statusDate"] = (P_BMM_SINGLE_PROPERTY) < - name = <"statusDate"> - type = <"DATETIME"> - > - ["subCategoryCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"subCategoryCode"> - type = <"CD"> - > - ["instantiatingPerformedActivity"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"instantiatingPerformedActivity"> - type_def = < - container_type = <"List"> - type = <"PerformedActivity"> - > - > - ["focusedDefinedObservation"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"focusedDefinedObservation"> - type_def = < - container_type = <"List"> - type = <"DefinedObservation"> - > - > - ["componentDefinedCompositionRelationship"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"componentDefinedCompositionRelationship"> - type_def = < - container_type = <"List"> - type = <"DefinedCompositionRelationship"> - > - > - > - > - - ["DefinedCompositionRelationship"] = < - name = <"DefinedCompositionRelationship"> - ancestors = <"Any", ...> - properties = < - ["componentDefinedActivity"] = (P_BMM_SINGLE_PROPERTY) < - name = <"componentDefinedActivity"> - type = <"DefinedActivity"> - is_mandatory = - > - ["compositeDefinedActivity"] = (P_BMM_SINGLE_PROPERTY) < - name = <"compositeDefinedActivity"> - type = <"DefinedActivity"> - is_mandatory = - > - ["pauseQuantity"] = (P_BMM_GENERIC_PROPERTY) < - name = <"pauseQuantity"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"TIME"> - > - > - ["sequenceNumber"] = (P_BMM_SINGLE_PROPERTY) < - name = <"sequenceNumber"> - type = <"NONNEG"> - > - > - > - - ["DefinedObservation"] = < - name = <"DefinedObservation"> - ancestors = <"DefinedActivity", ...> - properties = < - ["approachAnatomicSiteCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"approachAnatomicSiteCode"> - type = <"CD"> - > - ["bodyPositionCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"bodyPositionCode"> - type = <"CD"> - > - ["methodCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"methodCode"> - type = <"CD"> - > - ["focalDateRange"] = (P_BMM_GENERIC_PROPERTY) < - name = <"focalDateRange"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"DATETIME"> - > - > - ["targetAnatomicSiteCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"targetAnatomicSiteCode"> - type = <"CD"> - > - > - > - - ["PerformedActivity"] = < - name = <"PerformedActivity"> - ancestors = <"Activity", ...> - properties = < - ["dateRange"] = (P_BMM_GENERIC_PROPERTY) < - name = <"dateRange"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"DATETIME"> - > - is_im_runtime = - > - ["dateRangeValidationCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"dateRangeValidationCode"> - type = <"CD"> - is_im_runtime = - > - ["delayDuration"] = (P_BMM_SINGLE_PROPERTY) < - name = <"delayDuration"> - type = <"TIME"> - is_computed = - is_im_runtime = - > - ["duration"] = (P_BMM_SINGLE_PROPERTY) < - name = <"duration"> - type = <"TIME"> - is_computed = - is_im_runtime = - > - ["fastingStatusIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"fastingStatusIndicator"> - type = <"BL"> - is_computed = - is_im_runtime = - > - ["medicalHistoryIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"medicalHistoryIndicator"> - type = <"BL"> - is_computed = - is_im_runtime = - > - ["negationIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"negationIndicator"> - type = <"BL"> - is_im_runtime = - > - ["negationReason"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"negationReason"> - type_def = < - container_type = <"DSET"> - type = <"SC"> - > - is_im_runtime = - > - ["repetitionNumber"] = (P_BMM_SINGLE_PROPERTY) < - name = <"repetitionNumber"> - type = <"POS"> - is_computed = - is_im_runtime = - > - ["statusCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"statusCode"> - type = <"CD"> - > - ["statusDate"] = (P_BMM_SINGLE_PROPERTY) < - name = <"statusDate"> - type = <"DATETIME"> - is_im_runtime = - > - ["studyDayRange"] = (P_BMM_GENERIC_PROPERTY) < - name = <"studyDayRange"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"INT"> - > - is_computed = - is_im_runtime = - > - ["instantiatedPlannedActivity"] = (P_BMM_SINGLE_PROPERTY) < - name = <"instantiatedPlannedActivity"> - type = <"PlannedActivity"> - > - ["instantiatedDefinedActivity"] = (P_BMM_SINGLE_PROPERTY) < - name = <"instantiatedDefinedActivity"> - type = <"DefinedActivity"> - > - ["versionStudyProtocolVersion"] = (P_BMM_SINGLE_PROPERTY) < - name = <"versionStudyProtocolVersion"> - type = <"StudyProtocolVersion"> - > - ["componentPerformedCompositionRelationship"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"componentPerformedCompositionRelationship"> - type_def = < - container_type = <"List"> - type = <"PerformedCompositionRelationship"> - > - > - > - > - - ["PerformedCompositionRelationship"] = < - name = <"PerformedCompositionRelationship"> - ancestors = <"Any", ...> - properties = < - ["componentPerformedActivity"] = (P_BMM_SINGLE_PROPERTY) < - name = <"componentPerformedActivity"> - type = <"PerformedActivity"> - is_mandatory = - > - > - > - - ["PerformedObservation"] = < - name = <"PerformedObservation"> - ancestors = <"PerformedActivity", ...> - properties = < - ["approachAnatomicSiteCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"approachAnatomicSiteCode"> - type = <"CD"> - > - ["bodyPositionCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"bodyPositionCode"> - type = <"CD"> - > - ["bodySystemCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"bodySystemCode"> - type = <"CD"> - > - ["focalDateRange"] = (P_BMM_GENERIC_PROPERTY) < - name = <"focalDateRange"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"DATETIME"> - > - is_computed = - is_im_runtime = - > - ["focalDuration"] = (P_BMM_SINGLE_PROPERTY) < - name = <"focalDuration"> - type = <"TIME"> - is_computed = - is_im_runtime = - > - ["methodCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"methodCode"> - type = <"CD"> - > - ["targetAnatomicSiteCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"targetAnatomicSiteCode"> - type = <"CD"> - > - ["resultedPerformedObservationResult"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"resultedPerformedObservationResult"> - type_def = < - container_type = <"List"> - type = <"PerformedObservationResult"> - > - > - ["commentedPerformedActivity"] = (P_BMM_SINGLE_PROPERTY) < - name = <"commentedPerformedActivity"> - type = <"PerformedActivity"> - > - > - > - - ["PerformedObservationResult"] = < - name = <"PerformedObservationResult"> - ancestors = <"Any", ...> - properties = < - ["baselineIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"baselineIndicator"> - type = <"BL"> - is_im_runtime = - > - ["comment"] = (P_BMM_SINGLE_PROPERTY) < - name = <"comment"> - type = <"ST"> - is_im_runtime = - > - ["confidentialityCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"confidentialityCode"> - type = <"CD"> - is_im_runtime = - > - ["identifier"] = (P_BMM_SINGLE_PROPERTY) < - name = <"identifier"> - type = <"II"> - is_im_runtime = - > - ["reportedDate"] = (P_BMM_SINGLE_PROPERTY) < - name = <"reportedDate"> - type = <"DATETIME"> - is_im_runtime = - > - ["resultClassificationCode"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"resultClassificationCode"> - type_def = < - container_type = <"DSET"> - type = <"CD"> - > - > - ["typeCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"typeCode"> - type = <"CD"> - > - ["uncertaintyCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"uncertaintyCode"> - type = <"CD"> - is_im_runtime = - > - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"21090_ANY"> - > - ["valueCodeModifiedText"] = (P_BMM_SINGLE_PROPERTY) < - name = <"valueCodeModifiedText"> - type = <"ST"> - > - ["valueNullFlavorReason"] = (P_BMM_SINGLE_PROPERTY) < - name = <"valueNullFlavorReason"> - type = <"ST"> - is_im_runtime = - > - ["inferredPerformedObservationResult"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"inferredPerformedObservationResult"> - type_def = < - container_type = <"List"> - type = <"PerformedObservationResult"> - > - > - > - > - - ["Activity"] = < - name = <"Activity"> - ancestors = <"Any", ...> - properties = < - ["comment"] = (P_BMM_SINGLE_PROPERTY) < - name = <"comment"> - type = <"ST"> - > - ["identifier"] = (P_BMM_SINGLE_PROPERTY) < - name = <"identifier"> - type = <"II"> - > - ["reasonCode"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"reasonCode"> - type_def = < - container_type = <"DSET"> - type = <"CD"> - > - > - ["performingPerformer"] = (P_BMM_SINGLE_PROPERTY) < - name = <"performingPerformer"> - type = <"Performer"> - > - ["involvedSubject"] = (P_BMM_SINGLE_PROPERTY) < - name = <"involvedSubject"> - type = <"Subject"> - > - > - > - - ["StudyActivity"] = < - name = <"StudyActivity"> - ancestors = <"PlannedActivity", ...> - properties = < - ["studyFocusIndicator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"studyFocusIndicator"> - type = <"BL"> - > - ["usedDefinedActivity"] = (P_BMM_SINGLE_PROPERTY) < - name = <"usedDefinedActivity"> - type = <"DefinedActivity"> - is_mandatory = - > - ["usingStudyProtocolVersion"] = (P_BMM_SINGLE_PROPERTY) < - name = <"usingStudyProtocolVersion"> - type = <"StudyProtocolVersion"> - is_mandatory = - > - > - > - - ["PlannedActivity"] = < - name = <"PlannedActivity"> - ancestors = <"Activity", ...> - properties = < - ["blindedDescription"] = (P_BMM_SINGLE_PROPERTY) < - name = <"blindedDescription"> - type = <"ST"> - > - ["description"] = (P_BMM_SINGLE_PROPERTY) < - name = <"description"> - type = <"ST"> - > - ["name"] = (P_BMM_SINGLE_PROPERTY) < - name = <"name"> - type = <"ST"> - > - ["duration"] = (P_BMM_SINGLE_PROPERTY) < - name = <"duration"> - type = <"TIME"> - > - ["repeatFrequencyCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"repeatFrequencyCode"> - type = <"CD"> - > - ["repeatDuration"] = (P_BMM_SINGLE_PROPERTY) < - name = <"repeatDuration"> - type = <"TIME"> - is_computed = - > - ["repeatFrequencyRatio"] = (P_BMM_SINGLE_PROPERTY) < - name = <"repeatFrequencyRatio"> - type = <"RTO"> - > - ["repeatQuantityRange"] = (P_BMM_GENERIC_PROPERTY) < - name = <"repeatQuantityRange"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"NONNEG"> - > - > - ["usedStudyActivity"] = (P_BMM_SINGLE_PROPERTY) < - name = <"usedStudyActivity"> - type = <"StudyActivity"> - is_mandatory = - > - ["componentPlannedCompositionRelationship"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"componentPlannedCompositionRelationship"> - type_def = < - container_type = <"List"> - type = <"PlannedCompositionRelationship"> - > - > - > - > - - ["PlannedSubjectActivityGroup"] = < - name = <"PlannedSubjectActivityGroup"> - ancestors = <"PlannedActivity", ...> - properties = < - ["sequenceNumber"] = (P_BMM_SINGLE_PROPERTY) < - name = <"sequenceNumber"> - type = <"NONNEG"> - is_computed = - > - ["targetAccrualNumberRange"] = (P_BMM_GENERIC_PROPERTY) < - name = <"targetAccrualNumberRange"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"NONNEG"> - > - > - > - > - - ["PlannedCompositionRelationship"] = < - name = <"PlannedCompositionRelationship"> - ancestors = <"Any", ...> - properties = < - ["componentPlannedActivity"] = (P_BMM_SINGLE_PROPERTY) < - name = <"componentPlannedActivity"> - type = <"PlannedActivity"> - is_mandatory = - > - ["compositePlannedActivity"] = (P_BMM_SINGLE_PROPERTY) < - name = <"compositePlannedActivity"> - type = <"PlannedActivity"> - is_mandatory = - > - ["pauseQuantity"] = (P_BMM_GENERIC_PROPERTY) < - name = <"pauseQuantity"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"TIME"> - > - > - ["sequenceNumber"] = (P_BMM_SINGLE_PROPERTY) < - name = <"sequenceNumber"> - type = <"NONNEG"> - > - > - > - -> diff --git a/referencemodels/src/main/resources/bmm/CIMI/Release-0.0.3/BMM/CIMI_RM_CLINICAL.v.0.0.3.bmm b/referencemodels/src/main/resources/bmm/CIMI/Release-0.0.3/BMM/CIMI_RM_CLINICAL.v.0.0.3.bmm deleted file mode 100644 index 5174f0006..000000000 --- a/referencemodels/src/main/resources/bmm/CIMI/Release-0.0.3/BMM/CIMI_RM_CLINICAL.v.0.0.3.bmm +++ /dev/null @@ -1,5742 +0,0 @@ --- Basic Metamodel Syntax Version -bmm_version = <"2.1"> - --- ---------------------------------- --- schema identification --- (schema_id computed as __) --- ---------------------------------- -rm_publisher = <"CIMI"> -schema_name = <"RM_CLINICAL"> -rm_release = <"0.0.3"> - --- ---------------------------------- --- schema documentation --- ---------------------------------- -schema_revision = <"Wed Jul 26 08:19:06 PDT 2017"> -schema_lifecycle_state = <"dstu"> -schema_description = <"CIMI_RM_CLINICAL.v0.0.3.mdzip - Schema generated from UML"> - - --- ---------------------------------- --- archetyping --- ---------------------------------- -archetype_rm_closure_packages = <"CIMI_Clinical.ClinicalStatement", "CIMI_Clinical.CommonDataStructures", "CIMI_Clinical.Party", "CIMI_Clinical.Relationship", "CIMI_Clinical.Participation", "CIMI_Clinical.Pharmacy", "CIMI_Clinical.Encounter", "CIMI_Clinical.Assertion", "CIMI_Clinical.EvaluationResult", "CIMI_Clinical.Procedure", "CIMI_Clinical.ContextCore", "CIMI_Clinical.TopicCore", "CIMI_Clinical.Entity", "CIMI_Clinical.Association", "CIMI_Clinical.Provenance", "CIMI_Clinical.PatientEducation", "CIMI_Clinical.AdverseEventReporting", "CIMI_Clinical.AdverseReaction", "CIMI_Clinical.InformationEntry", "CIMI_Clinical.AdverseSensitivityToSubstance"> -includes = < - ["1"] = < - id = <"cimi_rm_core_0.0.3"> - > - ["2"] = < - id = <"cimi_rm_foundation_0.0.3"> - > -> -packages = < - ["CIMI_Clinical"] = < - name = <"CIMI_Clinical"> - packages = < - ["ClinicalStatement"] = < - name = <"ClinicalStatement"> - classes = <"IndivisibleClinicalStatement", "CompoundClinicalStatement", "ClinicalStatement", "Component", "CompositeComponent", "SimpleComponent"> - > - ["CommonDataStructures"] = < - name = <"CommonDataStructures"> - classes = <"DetailedAddress", "Part", "Street", "StreetNumber", "ElectronicContact", "Location", "LocationName", "ReferenceRange", "PartyName", "ActorName", "Use", "BasePersonName", "CommonPersonName", "BaseOrganizationName", "QuantitativeReferenceRange", "QualitativeReferenceRange", "Registration", "Qualification", "Accreditation", "AdvanceDirective", "Age", "BiometricData", "BirthData", "ContactInformation", "Citizenship", "DeathData", "Entitlement", "Industry", "LanguageCapability", "Occupation", "Residency", "Timing", "BaseAddress", "GenericAddress", "Annotation", "TimingRepeat", "ResearchStudy", "GenericPersonName", "GenericOrganizationName"> - > - ["Party"] = < - name = <"Party"> - classes = <"Role", "HealthCareProviderRole", "HealthCareProviderOrganizationRole", "HealthCareProviderIndividualRole", "HealthCareConsumerRole"> - > - ["Relationship"] = < - name = <"Relationship"> - classes = <"PartyRelationship", "NextOfKinRelationship", "HealthCareProviderRelationship", "OrganizationRelationship", "EmployerRelationship"> - > - ["Participation"] = < - name = <"Participation"> - classes = <"SubjectOfInformation",...> - > - ["Pharmacy"] = < - name = <"Pharmacy"> - classes = <"DispenseBase", "DispenseEvent", "DispenseInstructions", "DosageInstruction", "MedicationAct", "MedicationDispensePerformance", "MedicationOrder", "PharmacyPromise", "SubstitutionBase", "SubstitutionInformation", "SubstitutionInstruction", "DosageEvent", "Dosage"> - > - ["Encounter"] = < - name = <"Encounter"> - classes = <"AbstractDurableEncounter", "Admission", "BaseEncounter", "Diagnosis", "Discharge", "EmergencyEncounter", "Encounter", "HomeBasePrimaryCareEncounter", "Hospice", "InpatientEncounter", "LongTermCare", "OutpatientVisit", "Referral", "ShortStay", "VirtualEncounter", "Transfer"> - > - ["Assertion"] = < - name = <"Assertion"> - classes = <"BaseAssertion", "BradenAssessment", "DeviceAssertion", "FindingSiteAssertion", "RiskAssertion", "Tunneling", "WoundAssertion", "WoundBedAndEdge", "WoundDressing", "WoundExudate", "Undermining", "DimensionalFeature", "Assertion"> - > - ["EvaluationResult"] = < - name = <"EvaluationResult"> - classes = <"LaboratoryTestResult", "PhysicalEvaluationResult", "EvaluationResult"> - > - ["Procedure"] = < - name = <"Procedure"> - classes = <"LaboratoryProcedure", "SpecimenCollection", "SurgicalProcedure", "SurgicalProcedureOnDevice", "ImagingProcedure", "ModifyTargetAction"> - > - ["ContextCore"] = < - name = <"ContextCore"> - classes = <"Absent", "ActionContext", "FindingContext", "KnownOrSuspectedPresent", "NonCompletion", "NonPerformance", "Order", "Performance", "Plan", "Promise", "Proposal", "ProposalAgainst", "StatementContext", "Request", "EventContext", "PresenceAbsenceContext", "GoalContext", "NoKnown"> - > - ["TopicCore"] = < - name = <"TopicCore"> - classes = <"BaseProcedureTopic", "EventTopic", "FindingTopic", "StatementTopic"> - > - ["Entity"] = < - name = <"Entity"> - classes = <"AnatomicalLocation", "Device", "Entity", "Medication", "MedicationPackage", "Organization", "Specimen", "Substance", "SpecimenContainer", "SubstanceInstance", "Ingredient", "PackageBatch", "UnitOfDistribution", "SpecimenTreatment", "DetailedPerson", "PackageContent", "Person"> - > - ["Association"] = < - name = <"Association"> - classes = <"ClinicalStatementAssociation", "Justification", "Interpretation"> - > - ["Provenance"] = < - name = <"Provenance"> - classes = <"Signature", "Attribution", "Provenance"> - > - ["PatientEducation"] = < - name = <"PatientEducation"> - classes = <"PatientEducationPerformed", "PatientRelatedEducation"> - > - ["AdverseEventReporting"] = < - name = <"AdverseEventReporting"> - classes = <"ReportableEventEntry", "AdverseFindingReportEntry", "WorkflowBreachReportEntry", "ClinicalStudyAdverseFinding", "WorkflowBreach"> - > - ["AdverseReaction"] = < - name = <"AdverseReaction"> - classes = <"AdverseReaction", "Causality"> - > - ["InformationEntry"] = < - name = <"InformationEntry"> - classes = <"InformationEntry",...> - > - ["AdverseSensitivityToSubstance"] = < - name = <"AdverseSensitivityToSubstance"> - classes = <"AdverseSensitivityToSubstance",...> - > - > - > -> -class_definitions = < - ["IndivisibleClinicalStatement"] = < - documentation = <"The documentation of clinical information about a subject of information such as a patient or a relative of the patient, asserted by a particular source, recorded, and potentially verified. The ClinicalStatement class provides the core pattern for more specific clinical statement archetypes, such as a statement that a finding has been found in a patient or that a procedure has been proposed by a clinical decision support system. - -The ClinicalStatement pattern defines the core attributes common to most clinical statements and specifies a composition pattern that encourage model component reuse and better alignment with the SNOMED CT Concept Model. - -A clinical statement is composed of the StatementTopic class (grouping of attributes for capturing information about a procedure or a clinical finding) and the StatementContext class (grouping of attributes providing the context for the statement topic such as whether a procedure was performed, requested, not performed or whether a finding is suspected present or absent in the patient). At the archetype level, the topic and context components are coordinated to form the clinical statement. For instance, the composition of the ProcedureTopic with the NotPerformed context indicates that the given procedure was not performed. -"> - name = <"IndivisibleClinicalStatement"> - ancestors = <"ClinicalStatement",...> - properties = < - ["component"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The components that make up this complex clinical statement. Components cannot stand alone and apart of the clinical statement that contains them. For instance, in a wound assertion, the size of a wound only makes sense in the context of the specific wound it qualifies. This is unlike a systolic blood pressure measurement which may exist outside the context of a blood pressure panel. Each component has a topic and a context allowing one to state, for instance, that a wound does not have tunneling. Components may be composite or simple. Composite components such as tunneling above may support children components such as tunneling depth and direction."> - name = <"component"> - type_def = < - container_type = <"List"> - type = <"Component"> - > - cardinality = <|>=0|> - > - > - > - ["CompoundClinicalStatement"] = < - documentation = <"Clinical statement representing multiple units of information that are treated as a whole such as a panel. A compound clinical statement is a collection of independent clinical statement, whether indivisible or compound. - -Note that complex medications are indivisible clinical statements even though their structure may be a composite data structure. They are generally treated as an independent entry in a record and their parts do not constitute independent entries in a record."> - name = <"CompoundClinicalStatement"> - ancestors = <"ClinicalStatement",...> - properties = < - ["content"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Clinical statements that make up the composite statement. For instance, panel entries in a panel. Each content item of a compositie clinical statement must be capable of standing alone, independent of its container compound clinical statement."> - name = <"content"> - type_def = < - container_type = <"List"> - type = <"ClinicalStatement"> - > - cardinality = <|>=0|> - > - > - > - ["ClinicalStatement"] = < - documentation = <"The documentation of clinical information about a subject of information such as a patient or a relative of the patient, asserted by a particular source, recorded, and potentially verified. The ClinicalStatement class provides the core pattern for more specific clinical statement archetypes, such as a statement that a finding has been found in a patient or that a procedure has been proposed by a clinical decision support system. - -The ClinicalStatement pattern defines the core attributes common to most clinical statements and specifies a composition pattern that encourage model component reuse and better alignment with the SNOMED CT Concept Model. - -A clinical statement is composed of the StatementTopic class (grouping of attributes for capturing information about a procedure or a clinical finding) and the StatementContext class (grouping of attributes providing the context for the statement topic such as whether a procedure was performed, requested, not performed or whether a finding is suspected present or absent in the patient). At the archetype level, the topic and context components are coordinated to form the clinical statement. For instance, the composition of the ProcedureTopic with the NotPerformed context indicates that the given procedure was not performed. -"> - name = <"ClinicalStatement"> - ancestors = <"InformationEntry",...> - generic_parameter_defs = < - ["T"] = < - name = <"T"> - conforms_to_type = <"StatementTopic"> - > - ["C"] = < - name = <"C"> - conforms_to_type = <"StatementContext"> - > - > - properties = < - ["topic"] = (P_BMM_SINGLE_PROPERTY_OPEN) < - documentation = <"What the statement is about, e.g., the kind of finding or procedure asserted. Attribute aligns with the SNOMED CT Situation with Explicit Context (SWEC) Concept Model attributes 'Associated finding (attribute)' (SCTID: 246090004) and 'Associated procedure (attribute)' (SCTID: 363589002). The range of this attribute is a structure (StatementTopic) rather than a value set. The topic of the clinical statement must align with the range specified by the SWEC Concept Model. For instance, if the 'topic' attribute's meaning is bound to 'Associated finding', then the topic may not be a specialization of the Act statement topic."> - name = <"topic"> - type = <"T"> - > - ["context"] = (P_BMM_SINGLE_PROPERTY_OPEN) < - documentation = <"The ontological status of the statement, e.g., whether it exists, does not exist, is planned, etc. Attribute aligns with the SNOMED CT Situation with Explicit Context Concept Model context attributes 'Finding context (attribute)' (SCTID: 408729009) and 'Procedure context (attribute)' (SCTID: 408730004). The range of this attribute is a structure (StatementContext) rather than a value set. The context of the clinical statement must align with the range specified by the SWEC Concept Model. For instance, if the 'context' attribute's meaning is bound to 'Finding context', then the context may not be a specialization of the ActionContext statement context. Instead, it should be a specialization of the FindingContext statement context."> - name = <"context"> - type = <"C"> - > - ["originatingFrom"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The encounter or episode of care from which this statement originates."> - name = <"originatingFrom"> - type = <"ClinicalStatement"> - > - ["encounter"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Encounter associated with this clinical statement."> - name = <"encounter"> - type = <"Encounter"> - > - > - > - ["Component"] = < - documentation = <"The component abstract class is used to represent dependent observations, findings, or procedures associated with the parent clinical statement. A dependent component is a component that does not have an independent existence outside of its parent. For instance, the description of a wound bed must exist in the context of a wound assertion. However, a systolic blood pressure measurement can exist independently of a blood pressure panel. This distinction is important. Collections of independent statements should be represented using the composition structures offered by Compound Clinical Statement. Collections of dependent structures should be modeled using the Component pattern."> - name = <"Component"> - ancestors = <"CLUSTER",...> - properties = < - ["topic"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The topic for this dependent component."> - name = <"topic"> - type = <"StatementTopic"> - is_mandatory = - > - ["context"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The context associated with the topic of the component."> - name = <"context"> - type = <"StatementContext"> - is_mandatory = - > - > - > - ["CompositeComponent"] = < - documentation = <"A component that itself can contain sub-components - e.g., the dimensional features of a wound or wound tunneling."> - name = <"CompositeComponent"> - ancestors = <"Component",...> - properties = < - ["component"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The components that make up a composite component."> - name = <"component"> - type_def = < - container_type = <"List"> - type = <"Component"> - > - cardinality = <|>=0|> - > - > - > - ["SimpleComponent"] = < - documentation = <"A leaf-level component of a clinical statement such as a component for a complex medication that is ordered as a single unit or individual observation components associated with a wound assertion such as the diameter of a wound."> - name = <"SimpleComponent"> - ancestors = <"Component",...> - > - ["DetailedAddress"] = < - documentation = <"A detailed address model."> - name = <"DetailedAddress"> - ancestors = <"BaseAddress",...> - properties = < - ["lineNumber"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The number of this address line in a multi-line address."> - name = <"lineNumber"> - type = <"COUNT"> - > - ["type"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"NEED DEFINITION"> - name = <"type"> - type = <"CODED_TEXT"> - > - ["additionalLocator"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"NEED DEFINITION"> - name = <"additionalLocator"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["siteName"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The name of the site."> - name = <"siteName"> - type = <"CODED_TEXT"> - > - ["unitNumber"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The number of the unit."> - name = <"unitNumber"> - type = <"CODED_TEXT"> - > - ["unitType"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The type of unit."> - name = <"unitType"> - type = <"CODED_TEXT"> - > - ["postalBoxNumber"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A P.O. Box number."> - name = <"postalBoxNumber"> - type = <"CODED_TEXT"> - > - ["floorOrLevelNumber"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The floor or level of the residence or business."> - name = <"floorOrLevelNumber"> - type = <"CODED_TEXT"> - > - ["floorOrLevelType"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The type of floor or level."> - name = <"floorOrLevelType"> - type = <"CODED_TEXT"> - > - ["lotNumber"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The number of the lot."> - name = <"lotNumber"> - type = <"CODED_TEXT"> - > - ["street"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Information about the street."> - name = <"street"> - type = <"Street"> - > - ["streetNumber"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The number of the location on the street."> - name = <"streetNumber"> - type = <"StreetNumber"> - > - ["intersectionDescription"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Information about the nearest intersection."> - name = <"intersectionDescription"> - type = <"CODED_TEXT"> - > - ["visualization"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"NEED DEFINITION"> - name = <"visualization"> - type = <"CODED_TEXT"> - > - ["censusArea"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The census area."> - name = <"censusArea"> - type = <"CODED_TEXT"> - > - ["deliveryPointIdentifier"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The delivery point identifier."> - name = <"deliveryPointIdentifier"> - type = <"CODED_TEXT"> - > - ["deliveryNumber"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The delivery number."> - name = <"deliveryNumber"> - type = <"CODED_TEXT"> - > - ["deliveryInstallationType"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The category of delivery installation. The valid values are: - -BDP = Bureau De Poste CC = Concession Commerciale CDO = Commercial Dealership Outlet CMC = Community Mail Centre CPC = Centre Postal Communautaire CSP = Comptoir Service Postal LCD = Letter Carrier Depot PDF = Poste De Facteurs PO = Post Office RPO = Retail Postal Outlet STN = Station SUCC = Succursale "> - name = <"deliveryInstallationType"> - type = <"CODED_TEXT"> - > - ["deliveryInstallationArea"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The name of a village, town, municipality, city or metropolitan area that forms part of a DELIVERY INSTALLATION NAME."> - name = <"deliveryInstallationArea"> - type = <"CODED_TEXT"> - > - ["deliveryInstallationQualifier"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"When more than one delivery installation serves an area described by the DELIVERY INSTALLATION AREA NAME, the qualifier name uniquely identifies the delivery installation."> - name = <"deliveryInstallationQualifier"> - type = <"CODED_TEXT"> - > - ["deliveryMode"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Both U.S and Canada have delivery modes and the value set is realm specific: - -https://www.uspsoig.gov/blog/modes-delivery - -https://www.canadapost.ca/cpo/mr/assets/pdf/business/delmodetechspecs_en.pdf"> - name = <"deliveryMode"> - type = <"CODED_TEXT"> - > - ["deliveryModeIdentifier"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"NEED DEFINITION"> - name = <"deliveryModeIdentifier"> - type = <"CODED_TEXT"> - > - ["postalCode"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The postal or zip code."> - name = <"postalCode"> - type = <"CODED_TEXT"> - > - ["district"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The district code."> - name = <"district"> - type = <"CODED_TEXT"> - > - ["suburbTownOrLocality"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The suburb, town, or locality code."> - name = <"suburbTownOrLocality"> - type = <"CODED_TEXT"> - > - ["city"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The city code."> - name = <"city"> - type = <"CODED_TEXT"> - > - ["stateTerritoryOrProvince"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The state or territory or province code."> - name = <"stateTerritoryOrProvince"> - type = <"CODED_TEXT"> - > - ["country"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The country"> - name = <"country"> - type = <"CODED_TEXT"> - > - ["careOf"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Care of information."> - name = <"careOf"> - type = <"CODED_TEXT"> - > - ["delimiter"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"NEED DEFINITION"> - name = <"delimiter"> - type = <"CODED_TEXT"> - > - > - > - ["Part"] = < - documentation = <"A component of a name or an address."> - name = <"Part"> - ancestors = <"CLUSTER",...> - properties = < - ["partNumber"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The position of the part in the overall structure."> - name = <"partNumber"> - type = <"COUNT"> - > - ["value"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The value of the given part - e.g., a given name such as 'John'."> - name = <"value"> - type = <"TEXT"> - > - ["type"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The type of the part - e.g., 'given name' or 'street number'."> - name = <"type"> - type = <"CODED_TEXT"> - > - > - > - ["Street"] = < - documentation = <"The name of a street."> - name = <"Street"> - ancestors = <"CLUSTER",...> - properties = < - ["type"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"NEED DEFINITION - -How does this differ from streetType?"> - name = <"type"> - type = <"CODED_TEXT"> - > - ["streetName"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Name of the street from a list of names maintained by an organization such as the US Postal Service."> - name = <"streetName"> - type = <"CODED_TEXT"> - > - ["streetType"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The type of street - Court, Lane, Street, Road, Circle, etc..."> - name = <"streetType"> - type = <"TEXT"> - > - ["direction"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Direction code such as N, S, W, NE, etc..."> - name = <"direction"> - type = <"CODED_TEXT"> - > - ["suffix"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Term used to qualify the street name suitable for directional references."> - name = <"suffix"> - type = <"TEXT"> - > - > - > - ["StreetNumber"] = < - documentation = <"The number of a residence in a street."> - name = <"StreetNumber"> - ancestors = <"CLUSTER",...> - properties = < - ["type"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Type of street number. - -NEED DEFINITION AND EXAMPLES"> - name = <"type"> - type = <"CODED_TEXT"> - > - ["numeric"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The street number."> - name = <"numeric"> - type = <"TEXT"> - > - ["suffix"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"NEED DEFINITION"> - name = <"suffix"> - type = <"TEXT"> - > - > - > - ["ElectronicContact"] = < - documentation = <"Data structure representing an electronic contact such as an email address."> - name = <"ElectronicContact"> - ancestors = <"CLUSTER",...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The electronic contact address."> - name = <"value"> - type = <"TEXT"> - > - ["protocol"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Telecommunications form for contact point - what communications system is required to make use of the contact."> - name = <"protocol"> - type = <"CODED_TEXT"> - > - ["status"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"NEED A DEFINITION"> - name = <"status"> - type = <"CODED_TEXT"> - > - ["medium"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"NEED A DEFINITION: - -The mime type for the communication. "> - name = <"medium"> - type = <"CODED_TEXT"> - > - ["use"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Identifies the purpose for the contact point."> - name = <"use"> - type = <"CODED_TEXT"> - > - ["preferredTiming"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The period of day during which the contact should be used."> - name = <"preferredTiming"> - type = <"TEXT"> - > - ["dateTimeRange"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"Time period when the contact point was/is in use"> - name = <"dateTimeRange"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE_TIME",...> - > - > - ["preferenceIndicator"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Code indicating whether the contact information is preferred."> - name = <"preferenceIndicator"> - type = <"CODED_TEXT"> - > - > - > - ["Location"] = < - documentation = <"Data structure representing a geographical location such as a location on a map. -"> - name = <"Location"> - ancestors = <"CLUSTER",...> - properties = < - ["identifier"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The identifier of the location."> - name = <"identifier"> - type_def = < - container_type = <"List"> - type = <"IDENTIFIER"> - > - cardinality = <|>=0|> - > - ["description"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A narrative describing the location."> - name = <"description"> - type = <"PLAIN_TEXT"> - > - ["locationName"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Names associated with this location. E.g., 10 West"> - name = <"locationName"> - type_def = < - container_type = <"List"> - type = <"LocationName"> - > - cardinality = <|>=0|> - > - ["type"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The location's category."> - name = <"type"> - type = <"TEXT"> - > - ["condition"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A description of the condition of the location."> - name = <"condition"> - type = <"TEXT"> - > - ["address"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The postal addresses associated with this location."> - name = <"address"> - type_def = < - container_type = <"List"> - type = <"BaseAddress"> - > - cardinality = <|>=0|> - > - ["electronicContact"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Contact information associated with this location - for instance, contact information to reserve the location."> - name = <"electronicContact"> - type_def = < - container_type = <"List"> - type = <"ElectronicContact"> - > - cardinality = <|>=0|> - > - ["dateTimeRange"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"The interval of time when this location is relevant or available."> - name = <"dateTimeRange"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE_TIME",...> - > - > - ["status"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A code representing the status of the location."> - name = <"status"> - type = <"CODED_TEXT"> - > - ["mobileIndicator"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"An indicator of whether or not the location is mobile."> - name = <"mobileIndicator"> - type = <"CODED_TEXT"> - > - ["directions"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"How to navigate to the location. May be context-sensitive."> - name = <"directions"> - type = <"TEXT"> - > - ["position"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Description of the position of the location."> - name = <"position"> - type = <"TEXT"> - > - ["gpsLocation"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The location's geospatial coordinates such as latitude and longitude."> - name = <"gpsLocation"> - type = <"TEXT"> - > - ["pointOfCare"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The care setting at the location."> - name = <"pointOfCare"> - type = <"TEXT"> - > - ["room"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The room at the specified location and floor - E.g., 10 West"> - name = <"room"> - type = <"TEXT"> - > - ["bed"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The bed at the specified location, floor, and room - E.g., 10 West Bed 2"> - name = <"bed"> - type = <"TEXT"> - > - ["floor"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The floor at the specified location."> - name = <"floor"> - type = <"TEXT"> - > - ["building"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The building at the specified location."> - name = <"building"> - type = <"TEXT"> - > - > - > - ["LocationName"] = < - documentation = <"Data structure capturing the name of a location"> - name = <"LocationName"> - ancestors = <"CLUSTER",...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The location's name"> - name = <"value"> - type = <"PLAIN_TEXT"> - is_mandatory = - > - ["use"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Identifies the purpose for this name."> - name = <"use"> - type = <"CODED_TEXT"> - > - ["dateTimeRange"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"Time period when name was/is in use"> - name = <"dateTimeRange"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE_TIME",...> - > - > - > - > - ["ReferenceRange"] = < - documentation = <"A reference range for the specific instance after lookup from, say, a reference range table given specific criteria. Note that this reference range is not definitional in nature but rather refers to the reference range considered for the given observation for a subject."> - name = <"ReferenceRange"> - ancestors = <"CLUSTER",...> - properties = < - ["referenceCriterion"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Indicates whether the given range is normal, critically high, ..."> - name = <"referenceCriterion"> - type = <"CODED_TEXT"> - > - ["narrative"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A human-oriented description of the reference range."> - name = <"narrative"> - type = <"TEXT"> - > - ["criteria"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The specific criteria that apply for the given reference range. For instance, reference ranges may be specified in a lookup table based on a set of criteria. If a row in this table is selected as the applicable reference range for a measurement, 'criteria' lists the specific criteria for that row in the table. E.g., reference range for post-menopausal women."> - name = <"criteria"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - > - > - ["PartyName"] = < - documentation = <"Abstract supertype for the name of a party."> - name = <"PartyName"> - ancestors = <"CLUSTER",...> - properties = < - ["identifier"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"An identifier for the name."> - name = <"identifier"> - type_def = < - container_type = <"List"> - type = <"IDENTIFIER"> - > - cardinality = <|>=0|> - > - > - > - ["ActorName"] = < - documentation = <"The name of an actor - typically either the name of a person or of an organization."> - name = <"ActorName"> - ancestors = <"PartyName",...> - properties = < - ["nameAsText"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The party's name as plain text."> - name = <"nameAsText"> - type = <"PLAIN_TEXT"> - > - ["use"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Context of use"> - name = <"use"> - type_def = < - container_type = <"List"> - type = <"Use"> - > - cardinality = <|>=0|> - > - > - > - ["Use"] = < - documentation = <"Structure capturing usage preferences for, say, a name, an address, or contact information. "> - name = <"Use"> - ancestors = <"CLUSTER",...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A code for the use."> - name = <"value"> - type = <"TEXT"> - is_mandatory = - > - ["dateTimeRange"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"Period when the use is in effect."> - name = <"dateTimeRange"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE_TIME",...> - > - > - ["identifier"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"An identifier for the use."> - name = <"identifier"> - type_def = < - container_type = <"List"> - type = <"IDENTIFIER"> - > - cardinality = <|>=0|> - > - > - > - ["BasePersonName"] = < - documentation = <"The base type for the name of a person. The name of a person can vary greatly across cultures and countries. Naming format variations are left to specializations of this class."> - name = <"BasePersonName"> - ancestors = <"ActorName",...> - properties = < - ["preferredFlag"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Code indicating the preference associated with the use of this name."> - name = <"preferredFlag"> - type = <"CODED_TEXT"> - > - > - > - ["CommonPersonName"] = < - documentation = <"Common human name format."> - name = <"CommonPersonName"> - ancestors = <"BasePersonName",...> - properties = < - ["title"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The person's title - e.g., Dr, Mr, etc..."> - name = <"title"> - type_def = < - container_type = <"List"> - type = <"Part"> - > - cardinality = <|>=0|> - > - ["givenName"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The person's given name - e.g., John"> - name = <"givenName"> - type_def = < - container_type = <"List"> - type = <"Part"> - > - cardinality = <|>=0|> - > - ["middleName"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The person's middle name."> - name = <"middleName"> - type_def = < - container_type = <"List"> - type = <"Part"> - > - cardinality = <|>=0|> - > - ["familyName"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The person's surname (family name)."> - name = <"familyName"> - type_def = < - container_type = <"List"> - type = <"Part"> - > - cardinality = <|>=0|> - > - ["suffix"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The suffix for the name."> - name = <"suffix"> - type_def = < - container_type = <"List"> - type = <"Part"> - > - cardinality = <|>=0|> - > - > - > - ["BaseOrganizationName"] = < - documentation = <"The name of an organization."> - name = <"BaseOrganizationName"> - ancestors = <"ActorName",...> - > - ["QuantitativeReferenceRange"] = < - documentation = <"A reference range specifying a quantity interval."> - name = <"QuantitativeReferenceRange"> - ancestors = <"ReferenceRange",...> - properties = < - ["range"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"The specified reference range."> - name = <"range"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"QUANTITY",...> - > - is_mandatory = - > - > - > - ["QualitativeReferenceRange"] = < - documentation = <"A qualitative reference range specified by a code - e.g., abnormal, severely abnormal."> - name = <"QualitativeReferenceRange"> - ancestors = <"ReferenceRange",...> - properties = < - ["referenceValue"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Code representing the reference range."> - name = <"referenceValue"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=1|> - is_mandatory = - > - > - > - ["Registration"] = < - documentation = <"NEED DEFINITION"> - name = <"Registration"> - ancestors = <"CLUSTER",...> - properties = < - ["identifier"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"NEED DEFINITION"> - name = <"identifier"> - type = <"IDENTIFIER"> - > - ["registeringOrganization"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"NEED DEFINITION"> - name = <"registeringOrganization"> - type = <"TEXT"> - > - ["status"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"NEED DEFINITION"> - name = <"status"> - type = <"CODED_TEXT"> - > - ["dateTimeRange"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"NEED DEFINITION"> - name = <"dateTimeRange"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE_TIME",...> - > - > - > - > - ["Qualification"] = < - documentation = <"Education, training or special skills."> - name = <"Qualification"> - ancestors = <"CLUSTER",...> - properties = < - ["qualification"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The name of the qualification"> - name = <"qualification"> - type = <"TEXT"> - is_mandatory = - > - ["level"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The level of the qualification"> - name = <"level"> - type = <"CODED_TEXT"> - > - ["issuingInstitution"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The organization responsible for issuing the qualification."> - name = <"issuingInstitution"> - type = <"TEXT"> - > - ["issuingCountry"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The issuing country where the qualification is valid."> - name = <"issuingCountry"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["dateIssued"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The date the qualification was issued."> - name = <"dateIssued"> - type = <"DATE"> - > - ["role"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The roles where the qualification applies - e.g. registered nurse, physician"> - name = <"role"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - ["employer"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"A person's employing organization."> - name = <"employer"> - type_def = < - container_type = <"List"> - type = <"EmployerRelationship"> - > - cardinality = <|>=0|> - > - > - > - ["Accreditation"] = < - documentation = <"Type supporting the capture of accreditation information."> - name = <"Accreditation"> - ancestors = <"CLUSTER",...> - properties = < - ["identifier"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"An identifier for the accreditation."> - name = <"identifier"> - type = <"IDENTIFIER"> - > - ["type"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The type of accreditation - e.g., degree, board certified, license."> - name = <"type"> - type = <"TEXT"> - > - ["validityPeriod"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"The period of validity for the accreditation."> - name = <"validityPeriod"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE",...> - > - > - ["accreditationOrganization"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The organization that supplies the accreditation."> - name = <"accreditationOrganization"> - type = <"HealthCareProviderRelationship"> - > - > - > - ["AdvanceDirective"] = < - documentation = <"Patient or proxy-supplied prospective instructions for treatment."> - name = <"AdvanceDirective"> - ancestors = <"CLUSTER",...> - properties = < - ["category"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Legal function of directive; e.g., living will, poa, organ donation permission."> - name = <"category"> - type = <"TEXT"> - > - ["comments"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Additional notes or instructions concerning the directive."> - name = <"comments"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - ["dateRange"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"The period of time during which the directive is intended to apply."> - name = <"dateRange"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE",...> - > - > - ["directiveDocument"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The physical advance directive document such as an image of the document or the document in PDF form."> - name = <"directiveDocument"> - type = <"MULTIMEDIA"> - > - ["paperLocation"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Where the physically signed copy of the directive can be found."> - name = <"paperLocation"> - type = <"TEXT"> - > - ["status"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Whether the directive is applicable. Active, inactive."> - name = <"status"> - type = <"CODED_TEXT"> - > - > - > - ["Age"] = < - documentation = <"Type for the capture of age-related information."> - name = <"Age"> - ancestors = <"CLUSTER",...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The age of the entity."> - name = <"value"> - type = <"DURATION"> - is_mandatory = - > - ["ageGroup"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Classification of age - e.g., neonatal, infant, pre-adolescent, etc..."> - name = <"ageGroup"> - type = <"CODED_TEXT"> - > - > - > - ["BiometricData"] = < - documentation = <"Type supporting the capture of biometric information."> - name = <"BiometricData"> - ancestors = <"CLUSTER",...> - properties = < - ["type"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Type of biometric used - finger print, iris scan, etc..."> - name = <"type"> - type = <"TEXT"> - > - ["dataTemplate"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Electronic persistence algorithm for this biometric pattern. - -WE SOLICIT COMMENTS FOR A BETTER DEFINITION."> - name = <"dataTemplate"> - type = <"TEXT"> - > - ["quality"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The quality of the biometric information capture."> - name = <"quality"> - type = <"CODED_TEXT"> - > - ["creatingAuthority"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The creating authority."> - name = <"creatingAuthority"> - type = <"TEXT"> - > - ["locationOfBiometricIdentifier"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"NEED DEFINITION"> - name = <"locationOfBiometricIdentifier"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - ["schema"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"NEED DEFINITION"> - name = <"schema"> - type = <"TEXT"> - > - ["biometricDeviceIdentification"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Identifier for the device used in the capture of the biometric information."> - name = <"biometricDeviceIdentification"> - type = <"IDENTIFIER"> - > - ["creationDate"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The date the biometric data was captured."> - name = <"creationDate"> - type = <"DATE"> - > - > - > - ["BirthData"] = < - documentation = <"Type supporting the capture of birth-related information."> - name = <"BirthData"> - ancestors = <"CLUSTER",...> - properties = < - ["birthDatetime"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"When the birth occurred."> - name = <"birthDatetime"> - type = <"DATE_TIME"> - > - ["birthAddress"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Address where birth occurred."> - name = <"birthAddress"> - type = <"BaseAddress"> - > - ["multipleBirthIndicator"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Indicates whether the birth event was a multiple birth event."> - name = <"multipleBirthIndicator"> - type = <"CODED_TEXT"> - > - ["birthPlurality"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The number of babies resulting from a single pregnancy"> - name = <"birthPlurality"> - type = <"COUNT"> - > - ["birthOrder"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Integer indicating the sequence number of this birth."> - name = <"birthOrder"> - type = <"COUNT"> - > - ["birthCertificateNumber"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The birth certificate number associated with this birth."> - name = <"birthCertificateNumber"> - type = <"PLAIN_TEXT"> - > - > - > - ["ContactInformation"] = < - documentation = <"Represents contact details such as an emergency contact or contact information for a next-of-kin."> - name = <"ContactInformation"> - ancestors = <"CLUSTER",...> - properties = < - ["type"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The type of contact information - e.g., an emergency contact."> - name = <"type"> - type = <"TEXT"> - > - ["contactName"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The name of the person to contact."> - name = <"contactName"> - type = <"BasePersonName"> - > - ["contact"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The contact information for this person."> - name = <"contact"> - type_def = < - container_type = <"List"> - type = <"ElectronicContact"> - > - cardinality = <|>=0|> - > - > - > - ["Citizenship"] = < - documentation = <"Type supporting the capture of citizenship information. "> - name = <"Citizenship"> - ancestors = <"CLUSTER",...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Code representing the country of citizenship."> - name = <"value"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["dateRange"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"The period when the citizenship was held."> - name = <"dateRange"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE",...> - > - > - > - > - ["DeathData"] = < - documentation = <"Information of about a death event."> - name = <"DeathData"> - ancestors = <"CLUSTER",...> - properties = < - ["deceasedIndicator"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Code indicating whether the patient is deceased."> - name = <"deceasedIndicator"> - type = <"CODED_TEXT"> - > - ["deathDatetime"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The time of death to the level of granularity known."> - name = <"deathDatetime"> - type = <"DATE_TIME"> - > - ["ageAtDeath"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The age of the person at death"> - name = <"ageAtDeath"> - type = <"DURATION"> - > - ["recorded"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Identifier for the entity that provided information about the deceased status of the person."> - name = <"recorded"> - type = <"Attribution"> - > - ["deathAddress"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Address where the patient expired."> - name = <"deathAddress"> - type_def = < - container_type = <"List"> - type = <"BaseAddress"> - > - cardinality = <|>=0|> - > - ["deathCertificateNumber"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The death certificate number."> - name = <"deathCertificateNumber"> - type = <"PLAIN_TEXT"> - > - > - > - ["Entitlement"] = < - documentation = <"Indicates characteristic of patient that may requires special consideration in handling or information disclosure - e.g., royalty, celebrity, felon, etc..."> - name = <"Entitlement"> - ancestors = <"CLUSTER",...> - properties = < - ["number"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Identifier for entitlement."> - name = <"number"> - type = <"IDENTIFIER"> - > - ["type"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Concept representing or description for the entitlement - e.g., queen, convicted murderer, etc..."> - name = <"type"> - type = <"TEXT"> - > - ["dateRange"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"Validity period for entitlement."> - name = <"dateRange"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE",...> - > - > - ["identificationComment"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Description of how entitlement was ascertained."> - name = <"identificationComment"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - ["description"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Description of the entitlement above and beyond that provided by the type."> - name = <"description"> - type = <"PLAIN_TEXT"> - > - > - > - ["Industry"] = < - documentation = <"Type representing an industry."> - name = <"Industry"> - ancestors = <"CLUSTER",...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The industry name."> - name = <"value"> - type = <"TEXT"> - is_mandatory = - > - ["qualifier"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Additional description or further refinement for the industry"> - name = <"qualifier"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - > - > - ["LanguageCapability"] = < - documentation = <"Type representing proficiency in a language."> - name = <"LanguageCapability"> - ancestors = <"CLUSTER",...> - properties = < - ["languageCode"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"ISO code representing the language name. "> - name = <"languageCode"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["mode"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The channel of communication evaluated; e.g., spoken, written, heard."> - name = <"mode"> - type = <"CODED_TEXT"> - > - ["proficiency"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Degree of fluency in the language."> - name = <"proficiency"> - type = <"TEXT"> - > - ["translatorRequired"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Code indicating need for translator."> - name = <"translatorRequired"> - type = <"CODED_TEXT"> - > - ["preferenceIndicator"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Code indicating whether the language is preferred for communication."> - name = <"preferenceIndicator"> - type = <"CODED_TEXT"> - > - > - > - ["Occupation"] = < - documentation = <"An association between a person and a kind of job that the person has held."> - name = <"Occupation"> - ancestors = <"CLUSTER",...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"An occupation. Likely to be realm-specific."> - name = <"value"> - type = <"TEXT"> - is_mandatory = - > - ["qualifier"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Additional description for the occupation such journeyman, master, apprentice, etc..."> - name = <"qualifier"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - ["years"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Years performing this occupation."> - name = <"years"> - type = <"DURATION"> - > - > - > - ["Residency"] = < - documentation = <"Type supporting the capture of residency information."> - name = <"Residency"> - ancestors = <"CLUSTER",...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Residency code."> - name = <"value"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["dateRange"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"Period when residency was in effect."> - name = <"dateRange"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE",...> - > - > - > - > - ["Timing"] = < - documentation = <"A timing schedule that specifies an event that may occur multiple times"> - name = <"Timing"> - ancestors = <"CLUSTER",...> - properties = < - ["event"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"When the event occurs"> - name = <"event"> - type_def = < - container_type = <"List"> - type = <"DATE_TIME"> - > - cardinality = <|>=0|> - > - ["repeat"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"When the event is to occur -+ If there's an offset, there must be a when (and not C, CM, CD, CV) -+ period SHALL be a non-negative value -+ If there's a periodMax, there must be a period -+ If there's a durationMax, there must be a duration -+ If there's a countMax, there must be a count -+ if there's a duration, there needs to be duration units -+ If there's a timeOfDay, there cannot be be a when, or vice versa -+ if there's a period, there needs to be period units -+ duration SHALL be a non-negative value"> - name = <"repeat"> - type = <"TimingRepeat"> - > - ["code"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Timing abbreviation."> - name = <"code"> - type = <"CODED_TEXT"> - > - > - > - ["BaseAddress"] = < - documentation = <"Base class for addresses to be specialized based on regional and realm-specific needs."> - name = <"BaseAddress"> - ancestors = <"CLUSTER",...> - properties = < - ["use"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Code indicating use preference for this address."> - name = <"use"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["preferenceIndicator"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Code indicating whether this address is preferred."> - name = <"preferenceIndicator"> - type = <"CODED_TEXT"> - > - ["noFixedAddressIndicator"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Code indicating if person has no fixed address."> - name = <"noFixedAddressIndicator"> - type = <"CODED_TEXT"> - > - ["addressAsText"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Unstructured address when a structured address is not obtainable or for system that cannot process structured addresses."> - name = <"addressAsText"> - type = <"PLAIN_TEXT"> - > - > - > - ["GenericAddress"] = < - documentation = <"A generic address pattern that can be assembled from address parts. Note that this pattern will likely be deprecated in the future in favor of more expressive and extensible address specifications."> - name = <"GenericAddress"> - ancestors = <"BaseAddress",...> - properties = < - ["addressPart"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"An address component."> - name = <"addressPart"> - type_def = < - container_type = <"List"> - type = <"Part"> - > - cardinality = <|>=0|> - > - > - > - ["Annotation"] = < - documentation = <"Text node with optional attribution"> - name = <"Annotation"> - ancestors = <"CLUSTER",...> - properties = < - ["authored"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The attribution for the given comment or note."> - name = <"authored"> - type = <"Attribution"> - > - ["content"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The annotation's text content."> - name = <"content"> - type = <"TEXT"> - is_mandatory = - > - > - > - ["TimingRepeat"] = < - documentation = <"When an event is to occur."> - name = <"TimingRepeat"> - ancestors = <"CLUSTER",...> - properties = < - ["boundsDuration"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Repeat duration."> - name = <"boundsDuration"> - type = <"QUANTITY"> - > - ["boundsRange"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"Repeat range."> - name = <"boundsRange"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"QUANTITY",...> - > - > - ["boundsPeriod"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"Start and/or end limits"> - name = <"boundsPeriod"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE_TIME",...> - > - > - ["count"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Number of times to repeat"> - name = <"count"> - type = <"COUNT"> - > - ["countMax"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Maximum number of times to repeat"> - name = <"countMax"> - type = <"COUNT"> - > - ["duration"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"How long when it happens."> - name = <"duration"> - type = <"QUANTITY"> - > - ["durationMax"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"How long when it happens (Max)"> - name = <"durationMax"> - type = <"QUANTITY"> - > - ["frequency"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Event occurs frequency times per period"> - name = <"frequency"> - type = <"COUNT"> - > - ["frequencyMax"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Event occurs up to frequencyMax times per period"> - name = <"frequencyMax"> - type = <"COUNT"> - > - ["period"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Event occurs frequency times per period"> - name = <"period"> - type = <"QUANTITY"> - > - ["periodMax"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Upper limit of period (3-4 hours)"> - name = <"periodMax"> - type = <"QUANTITY"> - > - ["dayOfWeek"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"A day of the week such as Monday, Sunday."> - name = <"dayOfWeek"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["timeOfDay"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Time of day for action"> - name = <"timeOfDay"> - type_def = < - container_type = <"List"> - type = <"TIME"> - > - cardinality = <|>=0|> - > - ["when"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Regular life events the event is tied to"> - name = <"when"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["offset"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Minutes from event (before or after)"> - name = <"offset"> - type = <"COUNT"> - > - > - > - ["ResearchStudy"] = < - name = <"ResearchStudy"> - ancestors = <"CLUSTER",...> - > - ["GenericPersonName"] = < - documentation = <"Person name composed of parts."> - name = <"GenericPersonName"> - ancestors = <"BasePersonName",...> - properties = < - ["part"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"A component of a name."> - name = <"part"> - type_def = < - container_type = <"List"> - type = <"Part"> - > - cardinality = <|>=0|> - > - > - > - ["GenericOrganizationName"] = < - documentation = <"An organization name made up of component parts."> - name = <"GenericOrganizationName"> - ancestors = <"BaseOrganizationName",...> - properties = < - ["part"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"A component of a name."> - name = <"part"> - type_def = < - container_type = <"List"> - type = <"Part"> - > - cardinality = <|>=0|> - > - > - > - ["Role"] = < - documentation = <"A role in a participation."> - name = <"Role"> - ancestors = <"BASE_ROLE",...> - properties = < - ["dateTimeRange"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"Time interval when role is assumed."> - name = <"dateTimeRange"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE_TIME",...> - > - > - ["confidentialityLevel"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Confidentiality level conferred to the role. "> - name = <"confidentialityLevel"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["status"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The status of the role."> - name = <"status"> - type = <"CODED_TEXT"> - > - > - > - ["HealthCareProviderRole"] = < - documentation = <"Role associated with the delivery of health care as opposed to a consumer of health care. -"> - name = <"HealthCareProviderRole"> - ancestors = <"Role",...> - properties = < - ["fieldOfPractice"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The field of practice for the given provider."> - name = <"fieldOfPractice"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["value"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"NEED DEFINITION FOR THIS ATTRIBUTE."> - name = <"value"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["primaryIndicator"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"NEED DEFINITION FOR THIS FIELD"> - name = <"primaryIndicator"> - type = <"CODED_TEXT"> - > - ["providerType"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Code indication the type of health care provider role."> - name = <"providerType"> - type = <"TEXT"> - > - ["providerClassification"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Classification for this role."> - name = <"providerClassification"> - type = <"TEXT"> - > - ["organizationRelationship"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Organization affiliations associated with this given role."> - name = <"organizationRelationship"> - type_def = < - container_type = <"List"> - type = <"OrganizationRelationship"> - > - cardinality = <|>=0|> - > - > - > - ["HealthCareProviderOrganizationRole"] = < - documentation = <"A non-person health care entity such as a medical group or other organization."> - name = <"HealthCareProviderOrganizationRole"> - ancestors = <"HealthCareProviderRole",...> - > - ["HealthCareProviderIndividualRole"] = < - documentation = <"A healthcare provider role associated with a person."> - name = <"HealthCareProviderIndividualRole"> - ancestors = <"HealthCareProviderRole",...> - properties = < - ["registration"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"NEED DEFINITION FOR THIS FIELD."> - name = <"registration"> - type_def = < - container_type = <"List"> - type = <"Registration"> - > - cardinality = <|>=0|> - > - ["qualification"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The qualifications conferred to the individual acting in this role."> - name = <"qualification"> - type_def = < - container_type = <"List"> - type = <"Qualification"> - > - cardinality = <|>=0|> - > - ["role"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"NEED DEFINITION FOR THIS ATTRIBUTE. PARTY ALREADY HAS 'type' ATTRIBUTE."> - name = <"role"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - ["employer"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The employer for the entity acting in this role."> - name = <"employer"> - type_def = < - container_type = <"List"> - type = <"EmployerRelationship"> - > - cardinality = <|>=0|> - > - > - > - ["HealthCareConsumerRole"] = < - documentation = <"Role assumed by an entity acting as a health care consumer."> - name = <"HealthCareConsumerRole"> - ancestors = <"Role",...> - properties = < - ["importance"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Importance associated with the given role such as VIP, etc..."> - name = <"importance"> - type = <"TEXT"> - > - ["paperRecord"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"NEED DEFINITION."> - name = <"paperRecord"> - type = <"TEXT"> - > - ["organDonorType"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Type of organ donor."> - name = <"organDonorType"> - type = <"CODED_TEXT"> - > - ["diet"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Diet preferred or requested by entity acting in this role (e.g., a patient diabetic diet)."> - name = <"diet"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - ["healthCareProvider"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The health care provider associated with this role such as the primary provider for a patient."> - name = <"healthCareProvider"> - type_def = < - container_type = <"List"> - type = <"HealthCareProviderRelationship"> - > - cardinality = <|>=0|> - > - ["nextOfKin"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The next of kin for the health care consumer."> - name = <"nextOfKin"> - type_def = < - container_type = <"List"> - type = <"NextOfKinRelationship"> - > - cardinality = <|>=0|> - > - ["preferredWrittenCommunicationFormat"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Preferred format for written communication."> - name = <"preferredWrittenCommunicationFormat"> - type = <"TEXT"> - > - ["preferredContactMethod"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Preferred contact methods."> - name = <"preferredContactMethod"> - type = <"CODED_TEXT"> - > - ["preferredContactTime"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"Preferred time to contact entity acting in this role."> - name = <"preferredContactTime"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE_TIME",...> - > - > - > - > - ["PartyRelationship"] = < - documentation = <"A relationship between two parties."> - name = <"PartyRelationship"> - ancestors = <"PARTY_RELATIONSHIP",...> - properties = < - ["scopingStatus"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Code representing the scope when the relationship holds."> - name = <"scopingStatus"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["location"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The location when the relationship held or holds."> - name = <"location"> - type_def = < - container_type = <"List"> - type = <"Location"> - > - cardinality = <|>=0|> - > - > - > - ["NextOfKinRelationship"] = < - documentation = <"Relationship to specify the next of kin relationship between two parties."> - name = <"NextOfKinRelationship"> - ancestors = <"PartyRelationship",...> - properties = < - ["datetimeRange"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"The time range when the relationship holds."> - name = <"datetimeRange"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE_TIME",...> - > - > - ["status"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The status of the relationship."> - name = <"status"> - type = <"CODED_TEXT"> - > - ["identifier"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Identifier for the relationship."> - name = <"identifier"> - type_def = < - container_type = <"List"> - type = <"IDENTIFIER"> - > - cardinality = <|>=0|> - > - ["priority"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The priority to assign to this relationship."> - name = <"priority"> - type_def = < - container_type = <"List"> - type = <"COUNT"> - > - cardinality = <|>=0|> - > - > - > - ["HealthCareProviderRelationship"] = < - documentation = <"A relationship between an actor and a healthcare provider."> - name = <"HealthCareProviderRelationship"> - ancestors = <"PartyRelationship",...> - properties = < - ["datetimeRange"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"The time range when the relationship holds."> - name = <"datetimeRange"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE_TIME",...> - > - > - ["status"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The status of the relationship."> - name = <"status"> - type = <"CODED_TEXT"> - > - ["identifier"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Identifier for the relationship."> - name = <"identifier"> - type_def = < - container_type = <"List"> - type = <"IDENTIFIER"> - > - cardinality = <|>=0|> - > - ["priority"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The priority to assign to this relationship."> - name = <"priority"> - type = <"COUNT"> - > - > - > - ["OrganizationRelationship"] = < - documentation = <"The relationship between an actor and an organization."> - name = <"OrganizationRelationship"> - ancestors = <"PartyRelationship",...> - > - ["EmployerRelationship"] = < - documentation = <"An employee relationship between a party and an organization."> - name = <"EmployerRelationship"> - ancestors = <"OrganizationRelationship",...> - properties = < - ["role"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The role of the employee within the context of the relationship."> - name = <"role"> - type = <"TEXT"> - > - ["rank"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The rank of the employee."> - name = <"rank"> - type = <"TEXT"> - > - ["occupation"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The occupation relevant to this role."> - name = <"occupation"> - type = <"TEXT"> - > - ["salaryType"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The salary code for the employee relationship - e.g., salaried, hourly, ..."> - name = <"salaryType"> - type = <"TEXT"> - > - ["salaryQuantity"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The salary of the employee."> - name = <"salaryQuantity"> - type = <"QUANTITY"> - > - > - > - ["SubjectOfInformation"] = < - documentation = <"The subject of information of a clinical statement."> - name = <"SubjectOfInformation"> - ancestors = <"PARTICIPATION",...> - properties = < - ["relationshipToSubjectOfRecord"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Indicates the statement's subject relationship to the subject of record. For instance, the statement maybe about the subject of record in which case the relationship is self or the subject of the statement may be a relative to the subject of record such as is the case with family history statements."> - name = <"relationshipToSubjectOfRecord"> - type = <"CODED_TEXT"> - is_mandatory = - > - > - > - ["DispenseBase"] = < - documentation = <"Base class for dispense contexts."> - name = <"DispenseBase"> - ancestors = <"VIRTUAL_CLUSTER",...> - properties = < - ["quantity"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The amount that is to be or that was dispensed."> - name = <"quantity"> - type = <"QUANTITY"> - is_mandatory = - > - > - > - ["DispenseEvent"] = < - documentation = <"Record of the dispensing event."> - name = <"DispenseEvent"> - ancestors = <"DispenseBase",...> - properties = < - ["type"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Indicates the type of dispensing event that is performed. For example, Trial Fill, Completion of Trial, Partial Fill, Emergency Fill, Samples, etc."> - name = <"type"> - type = <"CODED_TEXT"> - > - ["daysSupply"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Amount of medication expressed as a timing amount"> - name = <"daysSupply"> - type = <"QUANTITY"> - > - ["whenPrepared"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The time when the dispensed product was packaged and reviewed."> - name = <"whenPrepared"> - type = <"DATE_TIME"> - > - ["whenHandedOver"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The time the dispensed product was provided to the patient or their representative."> - name = <"whenHandedOver"> - type = <"DATE_TIME"> - > - ["destination"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Identification of the facility/location where the medication was shipped to, as part of the dispense event."> - name = <"destination"> - type = <"PARTICIPATION"> - > - ["receiver"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Identifies the person who picked up the medication. This will usually be a patient or their caregiver, but some cases exist where it can be a healthcare professional."> - name = <"receiver"> - type_def = < - container_type = <"List"> - type = <"PARTICIPATION"> - > - cardinality = <|>=0|> - > - > - > - ["DispenseInstructions"] = < - documentation = <"Medication dispensing instructions for prospective clinical statements."> - name = <"DispenseInstructions"> - ancestors = <"DispenseBase",...> - properties = < - ["areRefillsAuthorizedAsNeeded"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Indicates whether the prescriber has authorized additional fills of this order as needed."> - name = <"areRefillsAuthorizedAsNeeded"> - type = <"YESNO"> - > - ["validityPeriod"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"The period when this dispense request is valid."> - name = <"validityPeriod"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE_TIME",...> - > - > - ["numberOfRepeatsAllowed"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Defines the number of times the requested dispense amount can be given to the patient, subject to local regulation. Refers to outpatient only.' - HL7 Version 2.8, RXO-13. -'The total original number of refills. Outpatient only' - HL7 Version 2.8, RXE-12. -'An integer indicating the number of times, in addition to the original dispense, (aka refills or repeats) that the patient can receive the prescribed medication. Usage Notes: This integer does NOT include the original order dispense. This means that if an order indicates dispense 30 tablets plus '3 repeats', then the order can be dispensed a total of 4 times and the patient can receive a total of 120 tablets.' - HL7 FHIR, MedicationOrder.dispenseRequest.numberOfRepeatsAllowed -'Number of refills authorized by the prescriber.' - NCPDP Telecommunication (Field 415-DF, Data Dictionary 201104). Note that while the NCPDP Telecommunication structure treats this field as a code, it contains a number from 0-99, where zero means no refills authorized, and 1-98 are the number of refills authorized, and 99 means unlimited refills authorized."> - name = <"numberOfRepeatsAllowed"> - type = <"COUNT"> - > - ["expectedSupplyDuration"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Identifies the period time over which the supplied product is expected to be used, or the length of time the dispense is expected to last."> - name = <"expectedSupplyDuration"> - type = <"QUANTITY"> - > - > - > - ["DosageInstruction"] = < - documentation = <"Pattern for the dosing of a medication. Currently the same pattern is used for retrospective and prospective statements."> - name = <"DosageInstruction"> - ancestors = <"CLUSTER", "Dosage"> - properties = < - ["sequence"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The order of the dosage instructions"> - name = <"sequence"> - type = <"COUNT"> - is_mandatory = - > - ["additionalInstructions"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"additionalInstructions"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["patientInstruction"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Supplemental instruction - e.g. 'with meals'"> - name = <"patientInstruction"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - ["timing"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"When medication should be administered"> - name = <"timing"> - type = <"Timing"> - > - ["asNeeded"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Take 'as needed' (for x)"> - name = <"asNeeded"> - type = <"CODED_TEXT"> - > - ["doseRange"] = (P_BMM_SINGLE_PROPERTY) < - name = <"doseRange"> - type = <"QuantitativeReferenceRange"> - > - ["rateRange"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"Amount of medication per unit of time"> - name = <"rateRange"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"QUANTITY",...> - > - > - ["maxDosePerPeriod"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Upper limit on medication per unit of time"> - name = <"maxDosePerPeriod"> - type = <"RATIO"> - > - ["maxDosePerAdministration"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Upper limit on medication per administration"> - name = <"maxDosePerAdministration"> - type = <"QUANTITY"> - > - ["maxDosePerLifetime"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Upper limit on medication per lifetime of the patient"> - name = <"maxDosePerLifetime"> - type = <"QUANTITY"> - > - > - > - ["MedicationAct"] = < - documentation = <"Base class for the act of prescribing, documenting, administering, or dispensing a medication."> - name = <"MedicationAct"> - ancestors = <"BaseProcedureTopic",...> - properties = < - ["medication"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Identifies the medication being administered, ordered, dispensed, or currently being taken."> - name = <"medication"> - type = <"Medication"> - > - ["medicationCode"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Identifies the medication being administered, ordered, dispensed, or currently being taken."> - name = <"medicationCode"> - type = <"CODED_TEXT"> - > - ["device"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The device used in administering the medication to the patient. For example, a particular infusion pump."> - name = <"device"> - type_def = < - container_type = <"List"> - type = <"Device"> - > - cardinality = <|>=0|> - > - ["dosage"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"dosage"> - type_def = < - container_type = <"List"> - type = <"Dosage"> - > - cardinality = <|>=0|> - > - > - > - ["MedicationDispensePerformance"] = < - documentation = <"Context for the documentation of a medication dispense event."> - name = <"MedicationDispensePerformance"> - ancestors = <"Performance",...> - properties = < - ["dispense"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Information about the dispense event."> - name = <"dispense"> - type = <"DispenseEvent"> - is_mandatory = - > - ["substitution"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Information about any substitutions performed during the dispense event."> - name = <"substitution"> - type = <"SubstitutionInformation"> - > - > - > - ["MedicationOrder"] = < - documentation = <"Context for a medication order."> - name = <"MedicationOrder"> - ancestors = <"Order",...> - properties = < - ["dispenseInstructions"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Instructions for the dispense of the medication."> - name = <"dispenseInstructions"> - type = <"DispenseInstructions"> - > - ["substitutionInstructions"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Medication substitution instructions - primarily whether substitutions are allowed."> - name = <"substitutionInstructions"> - type = <"SubstitutionInstruction"> - > - ["pharmacyOrderCategory"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"This optional property is used to group related medication orders. It is included for compatibility with HL7 version 2. -'Defines the general category of pharmacy order which may be used to determine the processing path the order will take.... This field may also be used for grouping of related orders for processing and/or reports. For example, Medication Administration Records often group large volume solutions, medications and small volume solutions differently based upon site-specific workflow.' - HL7 Version 2.8, RXA-26, RXD-32, and RXO-27. Valid values (from HL7 Table 0480) include: Medication; IV Large Volume Solutions; Other solution as medication orders."> - name = <"pharmacyOrderCategory"> - type = <"CODED_TEXT"> - > - ["pharmacyOrderSetting"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Indicates where type of medication order and where the medication is expected to be consumed or administered.' - HL7 FHIR, MedicationOrder.category Possible values include: Inpatient, Outpatient, Community"> - name = <"pharmacyOrderSetting"> - type = <"CODED_TEXT"> - > - > - > - ["PharmacyPromise"] = < - documentation = <"This class represents the prescription context from the perspective of the filling system (i.e., the pharmacy) whereas the Pharmacy Request represents the prescription from the ordering system (i.e., the prescriber). This class is a subtype of the more general Healthcare Promise, which describes properties common to all types or Orders from the filling system perspective– this class adds those properties which are specific to medication orders. This class is called Pharmacy Promise rather than Pharmacy Order following the HL7 V3 convention to use the term Promise to indicate that it is from the filling system’s perspective. There are many properties which are identical to the Order; this is because the pharmacy may change the order, within prescribed limits, for example substituting a generic drug for a brand-named one."> - name = <"PharmacyPromise"> - ancestors = <"Promise",...> - properties = < - ["appointmentTime"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Date and time of the appointment for this clinic location."> - name = <"appointmentTime"> - type = <"DATE_TIME"> - > - ["expirationDate"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The date after which the order may no longer be filled."> - name = <"expirationDate"> - type = <"DATE_TIME"> - > - ["isHospitalSuppliedSelfAdministered"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A flag indicating that the medication given to the patient is to be self administered and is to be supplied by the hospitals pharmacy while they are an inpatient."> - name = <"isHospitalSuppliedSelfAdministered"> - type = <"YESNO"> - > - ["isSelfAdministered"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A flag indicating that the medication given to the patient is to be self administered."> - name = <"isSelfAdministered"> - type = <"YESNO"> - > - ["lastDispenseDate"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The most recent date (and optionally time) that the medication was distributed to a patient, patient care-giver, or the location at which the patient is receiving care. -'Date/time of the most recent refill or dose dispensed.' - HL7 Version 2.8, RXE-18."> - name = <"lastDispenseDate"> - type = <"DATE_TIME"> - > - ["needsHumanReview"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"This optional property is included for compatibility with HL7 version 2. It is used in version 2 messaging to convey that a warning is present in the dispensing instructions field and that downstream applications are expected to alert the human user to the presence of the warning. -'Yes - Indicates that a warning is present. The application receiving the encoded order needs to warn the person administering the drug or treatment to pay attention to the text in RXE-21-pharmacy/treatment special dispensing instructions. No - Indicates no warning ' - HL7 Version 2.8, RXE-20."> - name = <"needsHumanReview"> - type = <"YESNO"> - > - ["numberOfRefillsOrDosesDispensed"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Number of refills remaining.' - HL7 Version 2.8, RXE-17."> - name = <"numberOfRefillsOrDosesDispensed"> - type = <"COUNT"> - > - ["numberOfRefillsRemaining"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Indicates the number of times the order may be filled without additional authorization. It is calculated by substracting the number of fills already completed from the number of fills authorized by the prescriber. -'This field is conditional because it is required when a prescription is dispensed to an outpatient. It is not relevant to inpatient treatment orders.' - HL7 Version 2.8, RXD-8. -'Number of refills remaining.' - HL7 Version 2.8, RXE-16."> - name = <"numberOfRefillsRemaining"> - type = <"COUNT"> - > - ["requestedAdministrationTime"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Specifies when the service is to be performed and how frequently. Note that this is a complex data type that may indicate specific times or intervals (e.g., 10:00 AM, MWF, etc)."> - name = <"requestedAdministrationTime"> - type_def = < - container_type = <"List"> - type_def = (P_BMM_GENERIC_TYPE) < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE_TIME",...> - > - > - cardinality = <|>=0|> - > - ["requestedDuration"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The duration of an order as requested by the ordering clinician. The duration would be expressed as a number of days, weeks, hours, etc. Note that this length of time might be determined by a business rule of the facilty. For example, most facilties will have a limit of 7 days for antibiotics, and 3 days for schedule 1 drugs."> - name = <"requestedDuration"> - type = <"QUANTITY"> - > - ["scheduleType"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'This describes the type of schedule for the dispensing of the medication(s) that make up the order. PRE-OP orders are usually considered to be ON-CALL orders, and orders dispensed as MULTI-DOSE CONTAINERS are usually considered to be FILL ON REQUEST orders. C=Continuous, O=One Time, P=PRN, R=Fill On Request, OC=On Call.' (VistA)"> - name = <"scheduleType"> - type = <"CODED_TEXT"> - > - ["substitution"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"If the Pharmacist has changed the kind of medication to be dispensed to the patient from the one originally ordered by the prescriber, this property provides a categorization of the kind of substitution that was made. -'Refer to HL7 Table 0167 - Substitution Status in Chapter 2C for suggested values.' - HL7 Version 2.8, RXD-11. -'Refer to HL7 Table 0167 - Substitution Status in Chapter 2C for suggested values.' - HL7 Version 2.8, RXE-9. -'Product/Service Substitution, coded' - NCPDP Script (Field 4457, Data Dictionary 201104) -'Code indicating whether or not the prescriber’s instructions regarding generic substitution were followed.' - NCPDP Telecommunication (Field 408-D8, Data Dictionary 201104). - ------ -Possible values include (from HL7 Table 167): -No substitute was dispensed. This is equivalent to the default (null) value; -A generic substitution was dispensed; -A therapeutic substitution was dispensed; -No product selection indicated; -Substitution not allowed by prescriber; -Substitution allowed - patient requested product dispensed; -Substitution allowed - pharmacist selected product dispensed; -Substitution allowed - generic drug not in stock; -Substitution allowed - brand drug dispensed as a generic; -Substitution not allowed - brand drug mandated by law; -Substitution allowed - generic drug not available in marketplace. ------ -Possible values include (From NCPDP ECL): -No Product Selection Indicated -Substitution Not Allowed by Prescriber -Substitution Allowed - Patient Requested Product Dispensed -Substitution Allowed - Pharmacist Selected Product Dispensed -Substitution Allowed - Generic Drug Not in Stock -Substitution Allowed - Brand Drug Dispensed as a Generic Override -Substitution Not Allowed - Brand Drug Mandated by Law -Substitution Allowed - Generic Drug Not Available in Marketplace -Substitution Allowed By Prescriber but Plan Requests Brand - Patient's Plan Requested Brand Product To Be Dispensed"> - name = <"substitution"> - type = <"SubstitutionInformation"> - > - ["totalDailyDose"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'The total daily dose for this particular pharmaceutical as expressed in terms of actual dispense units.' - HL7 Version 2.8, RXE-19."> - name = <"totalDailyDose"> - type = <"QUANTITY"> - > - > - > - ["SubstitutionBase"] = < - documentation = <"Base class for prospective and retrospective medication substitution information."> - name = <"SubstitutionBase"> - ancestors = <"VIRTUAL_CLUSTER",...> - properties = < - ["reason"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Why should or was (not) substitution made"> - name = <"reason"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - > - > - ["SubstitutionInformation"] = < - documentation = <"Information about a substitution that was performed."> - name = <"SubstitutionInformation"> - ancestors = <"SubstitutionBase",...> - properties = < - ["wasSubstituted"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Whether a substitution was or was not performed on the dispense"> - name = <"wasSubstituted"> - type = <"YESNO"> - > - ["type"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Code signifying whether a different drug was dispensed from what was prescribed"> - name = <"type"> - type = <"CODED_TEXT"> - > - ["responsibleParty"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Who is responsible for the substitution"> - name = <"responsibleParty"> - type_def = < - container_type = <"List"> - type = <"PARTICIPATION"> - > - cardinality = <|>=0|> - > - > - > - ["SubstitutionInstruction"] = < - documentation = <"Substitution instructions for prospective dispense clinical statements."> - name = <"SubstitutionInstruction"> - ancestors = <"SubstitutionBase",...> - properties = < - ["allowSubstitutions"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Code indicating whether substitutions are allowed."> - name = <"allowSubstitutions"> - type = <"CODED_TEXT"> - > - > - > - ["DosageEvent"] = < - documentation = <"Pattern for the dosing of a medication. Currently the same pattern is used for retrospective and prospective statements."> - name = <"DosageEvent"> - ancestors = <"CLUSTER", "Dosage"> - > - ["Dosage"] = < - name = <"Dosage"> - properties = < - ["dosageAsText"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"How the medication is/was taken or should be taken"> - name = <"dosageAsText"> - type = <"PLAIN_TEXT"> - > - ["bodySite"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Body site to administer to"> - name = <"bodySite"> - type_def = < - container_type = <"List"> - type = <"AnatomicalLocation"> - > - cardinality = <|>=0|> - > - ["bodySiteCode"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Body site to administer to as a precoordinated code."> - name = <"bodySiteCode"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["route"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"How drug should enter body"> - name = <"route"> - type = <"CODED_TEXT"> - > - ["method"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Technique for administering medication"> - name = <"method"> - type = <"CODED_TEXT"> - > - ["dose"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Amount of medication per dose"> - name = <"dose"> - type = <"QUANTITY"> - > - ["rate"] = (P_BMM_SINGLE_PROPERTY) < - name = <"rate"> - type = <"QUANTITY"> - > - ["rateRatio"] = (P_BMM_SINGLE_PROPERTY) < - name = <"rateRatio"> - type = <"RATIO"> - > - > - > - ["AbstractDurableEncounter"] = < - documentation = <"Contains properties common to multiple kinds of Encounters which last more than a few hours. Such encounters typically include an admission and discharge process."> - name = <"AbstractDurableEncounter"> - ancestors = <"Encounter",...> - properties = < - ["patientAdmission"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Information about the admission process."> - name = <"patientAdmission"> - type = <"ClinicalStatement"> - > - ["patientTransfer"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Information about the transfer process"> - name = <"patientTransfer"> - type_def = < - container_type = <"List"> - type = <"ClinicalStatement"> - > - cardinality = <|>=0|> - > - ["patientDischarge"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Information about the discharge process."> - name = <"patientDischarge"> - type = <"ClinicalStatement"> - > - ["patientCondition"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Indicates the patient's current medical condition for the purpose of communicating to non-medical outside parties, e.g., family, employer, religious minister, media, etc.' - HL7 Version 2.8, PV2-42. Possible values include (from HL7 Table 434): Satisfactory; Critical; Poor; Stable; Other; Unknown."> - name = <"patientCondition"> - type = <"CODED_TEXT"> - > - ["patientStatus"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Indicates the status of the episode of care.' - HL7 Version 2.8, PV2-24. Possible values include (from HL7 Table 216): Active Inpatient; Discharged Inpatient."> - name = <"patientStatus"> - type = <"CODED_TEXT"> - > - > - > - ["Admission"] = < - documentation = <"A record about the admission of a patient to a facility generally for the provision of care."> - name = <"Admission"> - ancestors = <"BaseProcedureTopic",...> - properties = < - ["levelOfCare"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Indicates the acuity level assigned to the patient at the time of admission.' - HL7 Version 2.8, PV2-40. Possible values include (from HL7 Table 432): Acute; Chronic; Comatose; Critical; Improved; Moribund."> - name = <"levelOfCare"> - type = <"CODED_TEXT"> - > - ["source"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Indicates where the patient was admitted.... In the US, this field should use the Official Uniform Billing (UB) 04 2008 numeric codes found on form locator 15 [which is] the Point of Origin for Admission or Visit.' - HL7 Version 2.8, PV1-14."> - name = <"source"> - type = <"CODED_TEXT"> - > - ["dietType"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"'Indicates a special diet type for a patient.' - HL7 Version 2.8, PV1-38. Note that HL7 does not suggest any values for this code (in User-defined Table 114)."> - name = <"dietType"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["needsPreAdmitTest"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Indicates whether the patient must have pre admission testing done in order to be admitted.' - HL7 Version 2.8, PV1-12"> - name = <"needsPreAdmitTest"> - type = <"YESNO"> - > - ["preAdmitAccount"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Uniquely identifies the patient's pre admit account. Some systems will continue to use the pre admit number as the billing number after the patient has been admitted.' - HL7 Version 2.8, PV1-5"> - name = <"preAdmitAccount"> - type = <"YESNO"> - > - ["precautionCode"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Indicates non-clinical precautions that need to be taken with the patient.' - HL7 Version 2.8, PV2-41. Possible values include (from HL7 Table 433): Aggressive; Blind; Confused; Deaf; On IV; 'No-code' (i.e. Do not resuscitate); Paraplegic; Other; Unknown. - -"> - name = <"precautionCode"> - type = <"CODED_TEXT"> - > - ["reAdmissionIndicator"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Indicates that a patient is being re admitted to the healthcare facility and gives the circumstances.' - HL7 Version 2.8, PV1-13."> - name = <"reAdmissionIndicator"> - type = <"CODED_TEXT"> - > - ["admissionDiagnosis"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The diagnosis(es) that was the reason for hospitalization at the time of hospitalization (added for Transition of Care)."> - name = <"admissionDiagnosis"> - type_def = < - container_type = <"List"> - type = <"Diagnosis"> - > - cardinality = <|>=0|> - > - ["preAdmissionIdentifier"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Pre-admission identifier"> - name = <"preAdmissionIdentifier"> - type = <"IDENTIFIER"> - > - > - > - ["BaseEncounter"] = < - documentation = <"An abstract class that represents an encounter class."> - name = <"BaseEncounter"> - ancestors = <"InformationEntry",...> - properties = < - ["confidentialityCode"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Contains a set of values that control the disclosure of information about this patient"> - name = <"confidentialityCode"> - type = <"CODED_TEXT"> - > - ["partOf"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"An encounter under which this encounter occurred. For instance, an encounter with a clinician while this patient was hospitalized."> - name = <"partOf"> - type = <"BaseEncounter"> - > - > - > - ["Diagnosis"] = < - documentation = <"The list of diagnosis relevant to this encounter where a diagnosis is defined as 'a.The act or process of identifying or determining the nature and cause of a disease or injury through evaluation of patient history, examination, and/or review of laboratory data. b.The opinion derived from such an evaluation' American Heritage Dictionary"> - name = <"Diagnosis"> - properties = < - ["rank"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Ranking of the diagnosis (for each role type)."> - name = <"rank"> - type = <"COUNT"> - > - ["diagnosisCode"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Contains a code that most closely identifies the condition or the diagnosis. This code will come from one of several commonly used coding systems, depending on the branch of medicine involved (e.g., clinical medicine, dentistry, mental health), and on the purpose (e.g., clinical, billing). The code will likely come from one of the following: Structured Nomenclature for Medicine (SNOMED), International Classifications of Diseases (ICD), Diagnostic and Statistical Manual of Mental Disorders (DSM)."> - name = <"diagnosisCode"> - type = <"CODED_TEXT"> - > - ["diagnosis"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"Contains a pointer to the finding clinical statement that most closely identifies the condition or the diagnosis. "> - name = <"diagnosis"> - type_def = < - root_type = <"ClinicalStatement"> - generic_parameters = <"FindingTopic",...> - > - > - ["role"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …)."> - name = <"role"> - type = <"CODED_TEXT"> - > - > - > - ["Discharge"] = < - documentation = <"A record pertaining to the discharge of a patient from an institution."> - name = <"Discharge"> - ancestors = <"BaseProcedureTopic",...> - properties = < - ["disposition"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Contains the disposition of the patient at time of discharge (i.e., discharged to home, expired, etc.). ...use the Official Uniform Billing (UB) 04 2008 numeric codes found on form locator 17.' - HL7 Version 2.8, PV1-36 Note that while the encounter is still 'active' (i.e., the encounter does not have an end date yet) this attribute should be interpreted as the expected discharge disposition. When the encounter is 'completed' this attribute contains the actual discharge disposition."> - name = <"disposition"> - type = <"CODED_TEXT"> - > - ["needOutpatientFollowup"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Flag indicating whether patient follow is required post-discharge."> - name = <"needOutpatientFollowup"> - type = <"YESNO"> - > - ["dischargeInstructionsStatement"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Pointer to a Patient Education record which documents the Act of the provision of instructions to the Patient upon the completion of an Encounter. These instructions may be in the form of a pre-defined document that is specific to the Patient's condition or the Procedure which has undergone, or it may be in the form of free-form text, or both. We point to the Patient Education class rather than simply having a discharge instructions string property so that data can be collected regarding who provided the instructions and when, as well as an indication of the patient's level of understanding."> - name = <"dischargeInstructionsStatement"> - type_def = < - container_type = <"List"> - type = <"ClinicalStatement"> - > - cardinality = <|>=0|> - > - ["dischargeInstructions"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Pointer to a Patient Education record which documents the Act of the provision of instructions to the Patient upon the completion of an Encounter. These instructions may be in the form of a pre-defined document that is specific to the Patient's condition or the Procedure which has undergone, or it may be in the form of free-form text, or both. We point to the Patient Education class rather than simply having a discharge instructions string property so that data can be collected regarding who provided the instructions and when, as well as an indication of the patient's level of understanding."> - name = <"dischargeInstructions"> - type = <"TEXT"> - > - ["dischargeFromLocation"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"'The location to which the patient is assigned. It is a role played by a place at which services may be provided. Note that a single physical place can play multiple service delivery location roles each with its own attributes. For example, a Podiatry clinic and Research clinic may meet on alternate days in the same physical location; each clinic uses its own mailing address and telephone number.' (HL7)"> - name = <"dischargeFromLocation"> - type_def = < - container_type = <"List"> - type = <"Location"> - > - cardinality = <|>=0|> - > - ["dischargeToLocation"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Indicates the healthcare facility to which the patient was discharged and the date.' - HL7 Version 2.8, PV1-37"> - name = <"dischargeToLocation"> - type = <"Location"> - > - ["dischargeDiagnosis"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The diagnosis(es) determined to be the reason for hospitalization at the time of discharge (this may be the same or different from the hospital admission diagnosis (added for Transition of Care)."> - name = <"dischargeDiagnosis"> - type_def = < - container_type = <"List"> - type = <"Diagnosis"> - > - cardinality = <|>=0|> - > - > - > - ["EmergencyEncounter"] = < - documentation = <"Emergency is an encounter without a scheduled appointment and urgent clinical services are required."> - name = <"EmergencyEncounter"> - ancestors = <"Encounter",...> - properties = < - ["activityTime"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'The time interval starting with the administrative onset of the encounter (e.g. admission, registration, patient arrival) and ending with the patient's departure (e.g. discharge). (HL7)."> - name = <"activityTime"> - type = <"DATE_TIME"> - > - ["arrivedBy"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Identifies the mode of transportation. ie. ambulance, car, walking etc."> - name = <"arrivedBy"> - type = <"CODED_TEXT"> - > - ["discharge"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The release of a patient from a course of care."> - name = <"discharge"> - type = <"ClinicalStatement"> - > - > - > - ["Encounter"] = < - documentation = <"An interaction between a patient and a practitioner under the auspices of a given organization for the purpose of providing healthcare-related service(s). It is important to understand that if the there is a change in provider or organization, by definition a new encounter will be generated. For example, if a patient is moved from Surgery to Post-Op, a new encounter is generated. Similarly, if a patient receives care from 2 nurses while in Post-Op, there will be 2 encounters."> - name = <"Encounter"> - ancestors = <"BaseEncounter",...> - properties = < - ["accountId"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Contains the account status.' - HL7 Version 2.8, PV1-41. Note that HL7 does not suggest any values for this code (in User-defined Table 117)."> - name = <"accountId"> - type = <"IDENTIFIER"> - > - ["accountStatus"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Contains the account status.' - HL7 Version 2.8, PV1-41. Note that HL7 does not suggest any values for this code (in User-defined Table 117)."> - name = <"accountStatus"> - type = <"CODED_TEXT"> - > - ["alternateVisitId"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"'Contains the alternative, temporary, or pending optional visit ID number to be used if needed. Multiple alternate identifiers may be sent.' - HL7 Version 2.8, PV1-50 -Uniquely identifies this patient visit using an identification scheme other than the one used for the 'id' property. This allows for different systems or organizations to assign different identifiers to the same visit."> - name = <"alternateVisitId"> - type_def = < - container_type = <"List"> - type = <"IDENTIFIER"> - > - cardinality = <|>=0|> - > - ["ambulatoryStatus"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Indicates any permanent or transient handicapped conditions.' - HL7 Version 2.8, PV1-15. -Possible values include (from HL7 V2 Table 9): No functional limitations; Ambulates with assistive device; Wheelchair/stretcher bound; Comatose - non-responsive; Disoriented; Vision impaired; Hearing impaired; Speech impaired; Non-English speaking; Functional level unknown; Oxygen therapy; Special equipment (tubes, IVs, catheters); Amputee; Mastectomy; Paraplegic; Pregnant."> - name = <"ambulatoryStatus"> - type = <"TEXT"> - > - ["chargePriceIndicator"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Contains the code used to determine which price schedule is to be used for room and bed charges.' - HL7 Version 2.8, PV1-21. Note that HL7 does not suggest any values for this code (in User-defined Table 32)."> - name = <"chargePriceIndicator"> - type = <"CODED_TEXT"> - > - ["chiefComplaint"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Describes the primary reason, in the patient's words, for the encounter/visit. This field contrasts with the reasonForVisit, which is the clinician's assessment of the reason for the encounter/visit. Notice that this field is a string, while the reasonForVisit is a code."> - name = <"chiefComplaint"> - type = <"TEXT"> - > - ["encounterBillingType"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Describes the encounter in terms of evaluation and management (e.g., diagnosis or procedure associated with the encounter). For example, Maintenance visit, 5 minutes or less. Uses CPT-4 codes 99200 - 99299."> - name = <"encounterBillingType"> - type = <"CODED_TEXT"> - > - ["financialClass"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Contains the financial class(es) assigned to the patient for the purpose of identifying sources of reimbursement.' - HL7 Version 2.8, PV1-20 Note that HL7 does not suggest any values for this code (in User-defined Table 64)."> - name = <"financialClass"> - type = <"CODED_TEXT"> - > - ["hospitalService"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Contains the treatment or type of surgery that the patient is scheduled to receive.' - HL7 Version 2.8, PV1-10. Possible Values (from HL7 Table 69) include: Cardiac Service, Medical Service, Pulmonary Service, Surgical Service, Urology Service."> - name = <"hospitalService"> - type = <"CODED_TEXT"> - > - ["isEmploymentRelated"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Specifies whether a patient's illness was job-related.' - HL7 Version 2.8, PV2-15"> - name = <"isEmploymentRelated"> - type = <"YESNO"> - > - ["modeOfArrival"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Identifies how the patient was brought to the healthcare facility.' - HL7 Version 2.8, PV2-38. Possible values include (from HL7 Table 430): Ambulance; Car; On foot; Helicopter; Public Transport; Other; Unknown."> - name = <"modeOfArrival"> - type = <"CODED_TEXT"> - > - ["patientClass"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'This field is used by systems to categorize patients by site. It does not have a consistent industry-wide definition. It is subject to site specific variations.' - HL7 Version 2.8, PV1-2. HL7 Version 2 has the following suggested values (table 4): Emergency; Inpatient; Outpatient; Preadmit; Recurring patient; Obstetrics; Commercial Account; Not Applicable; Unknown."> - name = <"patientClass"> - type = <"TEXT"> - > - ["patientType"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Contains site-specific values that identify the patient type.' - HL7 Version 2.8, PV1-18 Note that HL7 does not suggest any values for this code (in User-defined Table 18)."> - name = <"patientType"> - type = <"CODED_TEXT"> - > - ["previousServiceDate"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Contains the date of previous service for the same recurring condition. This may be a required field for billing certain illnesses (e.g., accident related) to a third party.' - HL7 Version 2.8, PV2-14."> - name = <"previousServiceDate"> - type = <"DATE_TIME"> - > - ["publicityCode"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Contains a user-defined code indicating what level of publicity is allowed for a specific visit.' - HL7 Version 2.8, PV2-21. Possible values include (from HL7 V2 Table 215): Family only; No Publicity; Other; Unknown."> - name = <"publicityCode"> - type = <"CODED_TEXT"> - > - ["reasonForVisit"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The reason for the encounter/visit from the clinician's point of view. This field contrasts with the chiefComplaint, which is the patient's description of the reason for the encounter/visit. Notice that this field is a code, while the chiefComplaint is a string."> - name = <"reasonForVisit"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["referralSource"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Identifies the source of the admission or encounter. In other words, identified where the patient was before being sent for this encounter. Possible values include: Community, Other facility, etc."> - name = <"referralSource"> - type = <"CODED_TEXT"> - > - ["servicingFacility"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'This field is used in a multiple facility environment, e.g., multiple campuses or buildings, to indicate the healthcare facility with which this visit is associated.' - HL7 Version 2.8, PV1-39. Note that HL7 does not suggest any values for this code (in User-defined Table 115)."> - name = <"servicingFacility"> - type = <"CODED_TEXT"> - > - ["specialArrangements"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"A set of values representing the types of special arrangements provided or to be provided for this patient encounter (e.g., wheelchair, stretcher, interpreter, attendant, seeing eye dog)"> - name = <"specialArrangements"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["specialCourtesy"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"'Indicates whether the patient will be extended certain special courtesies.' - HL7 Version 2.8, PV1-22. Note that HL7 does not suggest any values for this code (in User-defined Table 45)."> - name = <"specialCourtesy"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["triageNotes"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Triage notes for the patient visit. Added for Public Health Reporting Initiative."> - name = <"triageNotes"> - type = <"CODED_TEXT"> - > - ["assignedPatientLocation"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'This field contains the patient's initial assigned location or the location to which the patient is being moved. The first component may be the nursing station for inpatient locations, or clinic or department, for locations other than inpatient. For canceling a transaction or discharging a patient, the current location (after the cancellation event or before the discharge event) should be in this field.' - HL7 Version 2.8, PV1-3"> - name = <"assignedPatientLocation"> - type = <"Location"> - > - ["pendingLocation"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <" -'Indicates the point of care, room, bed, healthcare facility ID, and bed status to which the patient may be moved. The first component may be the nursing station for inpatient locations, or the clinic, department, or home for locations other than inpatient.' - HL7 Version 2.8, PV1-42"> - name = <"pendingLocation"> - type = <"Location"> - > - ["serviceDeliveryLocation"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'The location to which the patient is assigned. It is a role played by a place at which services may be provided. Note that a single physical place can play multiple service delivery location roles each with its own attributes. For example, a Podiatry clinic and Research clinic may meet on alternate days in the same physical location; each clinic uses its own mailing address and telephone number.' (HL7)"> - name = <"serviceDeliveryLocation"> - type = <"Location"> - > - ["temporaryLocation"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Contains a location other than the assigned location required for a temporary period of time (e.g., OR, operating theatre, etc.).' - HL7 Version 2.8, PV1-11"> - name = <"temporaryLocation"> - type = <"Location"> - > - ["priorTemporaryLocation"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"'This field is used to reflect the patient's temporary location (such as the operating room/theatre or x-ray) prior to a transfer from a temporary location to an actual location, or from a temporary location to another temporary location. The first component may be the nursing station for inpatient locations, or the clinic, department, or home for locations other than inpatient.' - HL7 Version 2.8, PV1-43"> - name = <"priorTemporaryLocation"> - type_def = < - container_type = <"List"> - type = <"Location"> - > - cardinality = <|>=0|> - > - ["origin"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The location from which the patient came before admission"> - name = <"origin"> - type = <"Location"> - > - ["serviceProvider"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"An organization that is in charge of maintaining the information of this Encounter (e.g. who maintains the report or the master service catalog item, etc.). This MAY be the same as the organization on the Patient record, however it could be different. This MAY not be not the Service Delivery Location's Organization."> - name = <"serviceProvider"> - type = <"Organization"> - > - > - > - ["HomeBasePrimaryCareEncounter"] = < - documentation = <"Patient is being treated 'In-Home' for this encounter."> - name = <"HomeBasePrimaryCareEncounter"> - ancestors = <"AbstractDurableEncounter",...> - > - ["Hospice"] = < - documentation = <"A hospice encounter."> - name = <"Hospice"> - ancestors = <"AbstractDurableEncounter",...> - > - ["InpatientEncounter"] = < - documentation = <"Patient has been admitted to the facility and assigned a bed."> - name = <"InpatientEncounter"> - ancestors = <"AbstractDurableEncounter",...> - properties = < - ["lengthOfStay"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Will contain the actual, calculated quantity (the actual days quantity cannot be simply calculated from the admission and discharge dates because of possible leaves of absence) instead of the expected length of stay."> - name = <"lengthOfStay"> - type = <"QUANTITY"> - > - > - > - ["LongTermCare"] = < - documentation = <"A long term care encounter."> - name = <"LongTermCare"> - ancestors = <"AbstractDurableEncounter",...> - > - ["OutpatientVisit"] = < - documentation = <"One or more encounters at one site within a specified length of time."> - name = <"OutpatientVisit"> - ancestors = <"Encounter",...> - properties = < - ["serviceCategory"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A categorization of the outpatient visit, based on the services provided and/or the circumstances under which the visit occurred. Possible values include: Ambulatory, In-Hospital (i.e., an patient made an 'outpatient' visit while concurrently being an inpatient), Day Surgery, Observation, Nursing Home, Day Hospitalization, etc."> - name = <"serviceCategory"> - type = <"CODED_TEXT"> - > - > - > - ["Referral"] = < - documentation = <"Used to record and send details about a request for referral service or transfer of a patient to the care of another provider or provider organization."> - name = <"Referral"> - ancestors = <"BaseProcedureTopic",...> - properties = < - ["groupIdentifier"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Composite request this is part of"> - name = <"groupIdentifier"> - type = <"IDENTIFIER"> - > - ["serviceRequested"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Actions requested as part of the referral"> - name = <"serviceRequested"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["context"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Originating encounter"> - name = <"context"> - type = <"ClinicalStatement"> - > - ["specialty"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The clinical specialty (discipline) that the referral is requested for"> - name = <"specialty"> - type = <"CODED_TEXT"> - > - ["recipient"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Receiver of referral / transfer of care request"> - name = <"recipient"> - type_def = < - container_type = <"List"> - type = <"PARTICIPATION"> - > - cardinality = <|>=0|> - > - ["supportingInformation"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Additonal information to support referral or transfer of care request"> - name = <"supportingInformation"> - type_def = < - container_type = <"List"> - type = <"ClinicalStatement"> - > - cardinality = <|>=0|> - > - > - > - ["ShortStay"] = < - documentation = <"An encounter that is similar to outpatient but the patient is admitted to a bed."> - name = <"ShortStay"> - ancestors = <"AbstractDurableEncounter",...> - properties = < - ["lengthOfStay"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Will contain the actual, calculated quantity (the actual days quantity cannot be simply calculated from the admission and discharge dates because of possible leaves of absence) instead of the expected length of stay."> - name = <"lengthOfStay"> - type = <"QUANTITY"> - > - > - > - ["VirtualEncounter"] = < - documentation = <"Services provided includes Telehealth, Web health etc."> - name = <"VirtualEncounter"> - ancestors = <"Encounter",...> - > - ["Transfer"] = < - documentation = <"The act of transferring a patient from one location or responsible organization to another. Note that a transfer from organization to another will, by definition, trigger a new encounter. Note that a transfer from one location to another may trigger a new encounter depending on whether the responsible organization has changed. A movement from one bed within the same ward to another probably will not, but a movement from one ward to another probably would."> - name = <"Transfer"> - ancestors = <"BaseProcedureTopic",...> - properties = < - ["category"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Categorizes the patient transfer. Possible values include Admission, Transfer, Discharge, etc."> - name = <"category"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["transferFromLocation"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Contains the prior patient location if the patient is being transferred. The old location is null if the patient is new.' - HL7 Version 2.8, PV1-6"> - name = <"transferFromLocation"> - type = <"Location"> - > - ["transferToLocation"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Contains the prior patient location if the patient is being transferred. The old location is null if the patient is new.' - HL7 Version 2.8, PV1-6"> - name = <"transferToLocation"> - type = <"Location"> - > - > - > - ["BaseAssertion"] = < - documentation = <"Base assertion class required for specialization hierarchies. Associates with a key='Assertion', a result with the specific assertion being made."> - name = <"BaseAssertion"> - ancestors = <"FindingTopic",...> - properties = < - ["diagnosisDate"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Date and time the health problem was diagnosed. Added for Public Health Reporting Initiative, 10/5/2012."> - name = <"diagnosisDate"> - type = <"DATE_TIME"> - > - ["verificationStatus"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The state of knowledge concerning the presence of a putative condition; e.g., confirmed, refuted, provisional, suspected. -"> - name = <"verificationStatus"> - type = <"CODED_TEXT"> - > - ["findingMethod"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The means by which a clinical finding is determined. -"> - name = <"findingMethod"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["clinicalStatus"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The physiological state of the condition with respect to whether it is actually of concern. Values may typicall include: Active, Relapse, Remission, Resolved, Confirmed, Ruled out, Unknown."> - name = <"clinicalStatus"> - type = <"CODED_TEXT"> - > - > - > - ["BradenAssessment"] = < - documentation = <"A Braden Assessment represents the Braden score used to assess an adult patient's susceptibility to skin breakdown. The summation of the scores range is from 6-23."> - name = <"BradenAssessment"> - ancestors = <"BaseAssertion",...> - properties = < - ["moistureExposure"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The moisture exposure attribute is an element of the braden score skin assessment tool. It evaluates the degree to which skin is exposed to moisture. Values range from 1-4 and correspond as follows: '1'corresponds to the patients being constantly moist, '2' corresponds to Moist, '3' to Occasionally moist, and a '4' to Rarely moist."> - name = <"moistureExposure"> - type = <"CODED_TEXT"> - > - ["sensoryPerception"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"An element of the braden score skin assessment tool. This section evaluates a patient's ability to respond meaningfully to pressure-related discomfort. Values range from 1-4 and correspond as follows: '1' corresponds completely limited ability, '2' corresponds to a Very Limited ability, '3' to a Slightly Limited ability, and a '4' to No Impairment."> - name = <"sensoryPerception"> - type = <"CODED_TEXT"> - > - ["physicalActivity"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"An element of the braden score skin assessment tool. This section evaluates the patient's degree of physical activity. Values range from 1-4 and the numbers correspond as follows: '1'corresponds to the patients being bedfast, '2' corresponds to Chairfast, '3' to Walks occasionally, and a '4' to Walks frequently."> - name = <"physicalActivity"> - type = <"CODED_TEXT"> - > - ["physicalMobility"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"An element of the braden score skin assessment tool. This section evaluates the patient's ability to change and control their body position. Values range from 1-4 and correspond as follows: '1'corresponds to the patient being completely immobile, '2' corresponds to 'Very limited' mobility, '3' to 'Slightly Limited' mobility, and a '4' to 'No limitations'."> - name = <"physicalMobility"> - type = <"CODED_TEXT"> - > - ["nutritionIntakePattern"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"An element of the braden score skin assessment tool. This section evaluates the patient's usual food intake pattern. Values range from 1-4 and correspond as follows: '1'corresponds to 'very poor' nutrition, '2' corresponds to 'probably inadequate' nutrition, '3' to 'Adequate' nutrition, and a '4' to 'Excellent'."> - name = <"nutritionIntakePattern"> - type = <"CODED_TEXT"> - > - ["frictionAndShear"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"An element of the braden score skin assessment tool. This section evaluates the patient's potential exposure to skin friction and shear. Values range from 1-3 and correspond as follows: '1'corresponds to 'Problem' with friction and shear, '2' corresponds to 'Potential problem', '3' to 'No apparent problem'."> - name = <"frictionAndShear"> - type = <"CODED_TEXT"> - > - ["totalScore"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The summation of the 6 elements of the braden score skin assessment tool. Values range from 6-23."> - name = <"totalScore"> - type = <"QUANTITY"> - > - ["riskLevel"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The overall, qualitative risk to the patient based on the Braden Total Score and the answers are No Risk: Total score 19-23 , Mild risk: total score 15-18 , Moderate risk: total score 13-14 , High risk: total score 10-12 , and Very high risk: total score 9 or lower . modeler: N Davis version: 1.0 status: draft."> - name = <"riskLevel"> - type = <"CODED_TEXT"> - > - > - > - ["DeviceAssertion"] = < - documentation = <"An assertion about the use of a device. At this time, the class is a placeholder."> - name = <"DeviceAssertion"> - ancestors = <"BaseAssertion",...> - > - ["FindingSiteAssertion"] = < - documentation = <"An assertion about a finding found on the body."> - name = <"FindingSiteAssertion"> - ancestors = <"Assertion",...> - properties = < - ["findingSite"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The body site affected by a condition."> - name = <"findingSite"> - type_def = < - container_type = <"List"> - type = <"AnatomicalLocation"> - > - cardinality = <|>=0|> - > - ["findingSitePrecoord"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Captures the pre-coordinated body location information, for example pre-coordinating body side left with body location hand to make left hand."> - name = <"findingSitePrecoord"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - > - > - ["RiskAssertion"] = < - documentation = <"An assertion about a risk to the patient. At this time, the class is a placeholder."> - name = <"RiskAssertion"> - ancestors = <"BaseAssertion",...> - > - ["Tunneling"] = < - documentation = <"whether tunneling is present"> - name = <"Tunneling"> - ancestors = <"CLUSTER",...> - properties = < - ["direction"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"direction from center of wound to tunneling, expressed as the clock number if the 12 position were at the cranial, superior, or proximal position of the wound"> - name = <"direction"> - type = <"CODED_TEXT"> - > - ["length"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"distance from the wound edge to the farthest extent of the tunneling"> - name = <"length"> - type = <"QUANTITY"> - > - > - > - ["WoundAssertion"] = < - documentation = <"An assertion of a wound."> - name = <"WoundAssertion"> - ancestors = <"FindingSiteAssertion",...> - properties = < - ["periwoundCondition"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A description of the skin around the wound (periwound). (LOINC)"> - name = <"periwoundCondition"> - type = <"CODED_TEXT"> - > - ["woundSize"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The dimensional features of the wound such as length, width, perimeter, etc..."> - name = <"woundSize"> - type = <"DimensionalFeature"> - > - ["tunneling"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Description of tunneling observed for this wound."> - name = <"tunneling"> - type_def = < - container_type = <"List"> - type = <"Tunneling"> - > - cardinality = <|>=0|> - > - ["undermining"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Description of undermining observed for this wound."> - name = <"undermining"> - type_def = < - container_type = <"List"> - type = <"Undermining"> - > - cardinality = <|>=0|> - > - ["woundBedAndEdge"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Description of the wound bed and edge."> - name = <"woundBedAndEdge"> - type = <"WoundBedAndEdge"> - > - ["exudate"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Description of the exudate observed on this wound."> - name = <"exudate"> - type = <"WoundExudate"> - > - ["visibleInternalStructure"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Internal structure that is visible outside the body."> - name = <"visibleInternalStructure"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - > - > - ["WoundBedAndEdge"] = < - documentation = <"Characteristics of the wound's base and its edge."> - name = <"WoundBedAndEdge"> - ancestors = <"CLUSTER",...> - properties = < - ["woundBaseAppearance"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"LOINC: 'Described as necrotic, sloughing, fibrinous, granulated, intact, approximated, etc. The wound bed appearance may or may not be differentiated from the wound edge, especially if the wound is healing well.' Need to rewrite, e.g., 'physiological state of wound surface tissue as evaluated by visual inspection'"> - name = <"woundBaseAppearance"> - type = <"CODED_TEXT"> - > - ["woundBedAppearanceToWoundBaseBedRatio"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"the area of identified wound bed appearance (necrotic, sloughing, etc.; see LOINC 72371-8) compared to the total area of the wound bed. For example, 40% of the wound bed is necrotic. Results can either be subjective or measured."> - name = <"woundBedAppearanceToWoundBaseBedRatio"> - type = <"PROPORTION"> - > - ["woundBaseColor"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The color of the base of the wound."> - name = <"woundBaseColor"> - type = <"CODED_TEXT"> - > - ["woundEdgeAppearance"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The appearance of the edge of a wound."> - name = <"woundEdgeAppearance"> - type = <"CODED_TEXT"> - > - ["woundEdgeColor"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The color of the edge of the wound when different than the bed."> - name = <"woundEdgeColor"> - type = <"CODED_TEXT"> - > - ["woundClosureType"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Description of the wound closure."> - name = <"woundClosureType"> - type = <"CODED_TEXT"> - > - > - > - ["WoundDressing"] = < - documentation = <"Description of the dressing on a wound."> - name = <"WoundDressing"> - ancestors = <"CLUSTER",...> - properties = < - ["dressing"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The type of dressing used."> - name = <"dressing"> - type = <"CODED_TEXT"> - > - ["purpose"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The purpose of the dressing."> - name = <"purpose"> - type = <"CODED_TEXT"> - > - > - > - ["WoundExudate"] = < - documentation = <"Description of the exudate from a wound."> - name = <"WoundExudate"> - ancestors = <"CLUSTER",...> - properties = < - ["odor"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The odor of the exudate."> - name = <"odor"> - type = <"CODED_TEXT"> - > - ["color"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The color of the exudate."> - name = <"color"> - type = <"CODED_TEXT"> - > - ["drainageAmount"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The exudate drainage amount when quantifiable."> - name = <"drainageAmount"> - type = <"QUANTITY"> - > - ["drainageAmountQualitative"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A qualitative description of the drainage amount."> - name = <"drainageAmountQualitative"> - type = <"CODED_TEXT"> - > - ["appearance"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The appearance of the exudate."> - name = <"appearance"> - type = <"CODED_TEXT"> - > - > - > - ["Undermining"] = < - documentation = <"whether undermining is present"> - name = <"Undermining"> - ancestors = <"CLUSTER",...> - properties = < - ["direction"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"direction from center of wound to undermining, expressed as the clock number if the 12 position were at the cranial, superior, or proximal position of the wound"> - name = <"direction"> - type = <"CODED_TEXT"> - > - ["length"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"distance from the wound edge to the farthest extent of the undermining"> - name = <"length"> - type = <"QUANTITY"> - > - > - > - ["DimensionalFeature"] = < - documentation = <"Feature's physical attributes such as a growth or wound."> - name = <"DimensionalFeature"> - ancestors = <"CLUSTER",...> - properties = < - ["area"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The area of the feature. For instance, the area of a wound."> - name = <"area"> - type = <"QUANTITY"> - > - ["circumference"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The circumference or perimeter of a 2-dimensional view or slice of the feature."> - name = <"circumference"> - type = <"QUANTITY"> - > - ["volume"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The volume of a 3-dimensional feature. For instance, if an irregular cavity, the amount of liquid required to fill the cavity."> - name = <"volume"> - type = <"QUANTITY"> - > - ["width"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The width of a 2-dimensional view or slice of the feature."> - name = <"width"> - type = <"QUANTITY"> - > - ["depth"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The depth of a 3-dimensional feature such as the depth of a gash or wound."> - name = <"depth"> - type = <"QUANTITY"> - > - ["length"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The length of a 2-dimensional view or slice of a feature."> - name = <"length"> - type = <"QUANTITY"> - > - > - > - ["Assertion"] = < - documentation = <"Clinical Assertions assert the existence of clinical conditions, diseases, symptoms, etc. in the patient."> - name = <"Assertion"> - ancestors = <"BaseAssertion",...> - properties = < - ["dueTo"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"This attribute is used to relate a |Clinical finding| directly to its cause. If a clinical finding merely predisposes to or worsens another disorder, rather than causing it directly, then the more general attribute | ASSOCIATED WITH | is used instead."> - name = <"dueTo"> - type_def = < - container_type = <"List"> - type = <"ClinicalStatement"> - > - cardinality = <|>=0|> - > - ["dueToCode"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The cause of the Clinical finding. This includes such causes as disease vectors and endogenous states (e.g., macular degeneration due to diabetes). Exogenous substances and forces should be captured as causative agent. "> - name = <"dueToCode"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["severity"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Intensity of a symptom or condition. The criteria for this value differ by condition."> - name = <"severity"> - type = <"CODED_TEXT"> - > - ["clinicalCourse"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Both the course and onset of a disease. Many conditions with an acute (sudden) onset also have an acute (short duration) course. Few diseases with a chronic (long - term) course would need to have their onset sub-divided into rapid or gradual subtypes, and thus there is no clear need for separating the rapidity of onset from the duration of a disease; based on testing by implementers and modelers, a single attribute with values that combine these meanings has clearly been more reproducible -and useful than two attributes that attempt to separate the meanings."> - name = <"clinicalCourse"> - type = <"CODED_TEXT"> - > - ["episodicity"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"TO DISCUSS: Do we need this? (STAN) - -|EPISODICITY| is used to represent episodes of care provided by a physician or other care provider, typically a general practitioner, not episodes of disease experienced by the patient. See EPISODICITY no longer modeled in active content (7.1), regarding the origin of the attribute. For example, asthma with |EPISODICITY|=| -first episode | represents the first time the patient presents to their health care provider with asthma. EPISODICITY is not used to model any concepts pre-coordinated in the International Release but it can still be used in post-coordination as a qualifier."> - name = <"episodicity"> - type = <"CODED_TEXT"> - > - ["diseasePhase"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The physiological state of a condition that develops over time. For instance, Incubation period (exposed, asymptomatic), Prodromal (symptoms but not full disease breakout), Acute (full manifestation of disease), Convalescent."> - name = <"diseasePhase"> - type = <"CODED_TEXT"> - > - ["associatedPrecondition"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Previously existing conditions or states that could affect a measurement or assesment. For example; a patients weight taken while clothed, a patients height with or without shoes, a patients blood pressure taken while standing or lying down."> - name = <"associatedPrecondition"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["associatedSignAndSymptom"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Physical observations captured by a clinician or subjective conditions experienced by a patient that are related to a medical condition."> - name = <"associatedSignAndSymptom"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["periodicity"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The length of time from one occurrence to the next (e.g., intermittent, weekly, continuous)."> - name = <"periodicity"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["alleviatingFactor"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"An action or intervention which makes a symptom less severe. Examples of data from the value set may include: rest, heat, ice, etc. - -[TO ADDRESS: we may need a semantic scope: are these substances or procedures? Procedures, with the assumption that if you put in a substance it means “application (procedure)”? -"> - name = <"alleviatingFactor"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["exacerbatingFactor"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"An action or intervention which makes a symptom more severe."> - name = <"exacerbatingFactor"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["causativeAgent"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Substance, medication, microorganism, force, or other agent that resulted in this assertion. "> - name = <"causativeAgent"> - type = <"Entity"> - > - ["causativeAgentCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"causativeAgentCode"> - type = <"CODED_TEXT"> - > - > - > - ["LaboratoryTestResult"] = < - documentation = <"Measurement resulted from a laboratory."> - name = <"LaboratoryTestResult"> - ancestors = <"EvaluationResult",...> - properties = < - ["diagnosticService"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The service completing the observations, e.g. biochemistry, microbiology, blood bank, etc."> - name = <"diagnosticService"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - ["specimen"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The specimen used for the analysis."> - name = <"specimen"> - type_def = < - container_type = <"List"> - type = <"Specimen"> - > - cardinality = <|>=0|> - > - ["poctIndicator"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"'Point of Care Testing (POCT)' - -Indicates whether this result was from point-of-care testing where POC testing."> - name = <"poctIndicator"> - type = <"CODED_TEXT"> - > - ["diagnosis"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"A condition for which the lab result is pathoneumonic. The lab result is sufficient to assert the diagnosis."> - name = <"diagnosis"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - > - > - ["PhysicalEvaluationResult"] = < - documentation = <"Measurement resulting from a physical assessment procedure."> - name = <"PhysicalEvaluationResult"> - ancestors = <"EvaluationResult",...> - properties = < - ["bodyLocation"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Captures the post-coordinated location on the body where the characteristic was observed."> - name = <"bodyLocation"> - type_def = < - container_type = <"List"> - type = <"AnatomicalLocation"> - > - cardinality = <|>=0|> - > - ["bodyLocationPrecoord"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Captures the pre-coordinated body location information, for example pre-coordinating body side left with body location hand to make left hand. ."> - name = <"bodyLocationPrecoord"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["bodyPosition"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Captures the position of the body when an observation is done. E.g., supine, prone, etc..."> - name = <"bodyPosition"> - type = <"CODED_TEXT"> - > - > - > - ["EvaluationResult"] = < - documentation = <"The outcome of an evaluation of a characteristic. This model holds a 'question' in the key and holds a value in the result. This value is further qualified through the model's properties. -"> - name = <"EvaluationResult"> - ancestors = <"FindingTopic",...> - properties = < - ["exceptionValue"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A code if the result cannot be provided."> - name = <"exceptionValue"> - type = <"CODED_TEXT"> - > - ["method"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The means by which a measurement, evaluation, or assessment was made."> - name = <"method"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["deviceCode"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The device used to evaluate the characteristic such as the type of blood pressure cuff used on a patient."> - name = <"deviceCode"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["device"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"device"> - type_def = < - container_type = <"List"> - type = <"Device"> - > - cardinality = <|>=0|> - > - ["priority"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The urgency of the evaluation result. - -To reviewers: should we retain this attribute in the model."> - name = <"priority"> - type = <"CODED_TEXT"> - > - ["sequence"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Sequence is a number placed onto the data which refers to the order it occurred in or needs to be retrieved by."> - name = <"sequence"> - type = <"CODED_TEXT"> - > - ["deltaFlag"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Flag indicating whether there was a significant change from previous results."> - name = <"deltaFlag"> - type = <"CODED_TEXT"> - > - ["referenceRange"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The range for the measurement."> - name = <"referenceRange"> - type_def = < - container_type = <"List"> - type = <"ReferenceRange"> - > - cardinality = <|>=0|> - > - ["evaluationProcedureCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"evaluationProcedureCode"> - type = <"CODED_TEXT"> - > - ["evaluationProcedure"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The evaluation procedure that is the source of the evaluation result."> - name = <"evaluationProcedure"> - type = <"ClinicalStatement"> - > - ["interpretation"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"A clinical judgment concerning the significance of an observation. This attribute refers to the entity being evaluated or interpreted, when an evaluation, interpretation or “judgment” is intrinsic to the meaning of a concept. This attribute is usually grouped with the | HAS INTERPRETATION | attribute."> - name = <"interpretation"> - type_def = < - container_type = <"List"> - type = <"Interpretation"> - > - cardinality = <|>=0|> - > - ["interpretationCode"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A clinical judgment about the significance of an evaluation result. - -Interpretation is used to clarify data from measurements and other evaluations. For example, if a measured analyte is greater than a predetermined threshold the interpretation could be Positive, or if a measurement is lower than a normal physiological range the interpretation could be low or critical low. Some values include normal, abnormal, panic high, panic low, ... - -Interpretation may also be used to indicate whether or not the result is outside the range for the patient."> - name = <"interpretationCode"> - type = <"CODED_TEXT"> - > - ["precondition"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Describes the previously existing conditions or states that could effect a measurement or assesment. For example; a patients weight taken while clothed, a patients height with or without shoes, a patients blood pressure taken while standing or lying down. - -Precondition aligns with the SNOMED CT Observable model attribute 704326004 |Precondition (attribute)| -"> - name = <"precondition"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - > - > - ["LaboratoryProcedure"] = < - documentation = <"Specialization of Procedure that represents a procedure performed on a collected specimen such as a blood panel or a biopsy."> - name = <"LaboratoryProcedure"> - ancestors = <"BaseProcedureTopic",...> - properties = < - ["specimen"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Tissues, objects, or samples taken from the patient during the procedure including biopsies, aspiration fluid, or other samples sent for pathological analysis."> - name = <"specimen"> - type = <"Specimen"> - is_mandatory = - > - ["findings"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"findings"> - type_def = < - container_type = <"List"> - type_def = (P_BMM_GENERIC_TYPE) < - root_type = <"ClinicalStatement"> - generic_parameters = <"FindingTopic",...> - > - > - cardinality = <|>=0|> - > - > - > - ["SpecimenCollection"] = < - documentation = <"Attribution specific to the collection of a specimen."> - name = <"SpecimenCollection"> - ancestors = <"BaseProcedureTopic",...> - properties = < - ["collectionSite"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Anatomical collection site as a post-coordinated body site."> - name = <"collectionSite"> - type_def = < - container_type = <"List"> - type = <"AnatomicalLocation"> - > - cardinality = <|>=0|> - > - ["collectionSiteCode"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Anatomical collection site as a precoordinated code."> - name = <"collectionSiteCode"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["amount"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The quantity of specimen collected"> - name = <"amount"> - type = <"QUANTITY"> - > - ["volume"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The volume of the collected specimen"> - name = <"volume"> - type = <"QUANTITY"> - > - ["size"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The size of the collected specimen."> - name = <"size"> - type = <"TEXT"> - > - ["dimension"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The dimension of the collected specimen."> - name = <"dimension"> - type = <"QUANTITY"> - > - > - > - ["SurgicalProcedure"] = < - documentation = <"A surgical procedure."> - name = <"SurgicalProcedure"> - ancestors = <"BaseProcedureTopic",...> - properties = < - ["directSite"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"directSite"> - type_def = < - container_type = <"List"> - type = <"AnatomicalLocation"> - > - cardinality = <|>=0|> - > - ["directSiteCode"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"directSiteCode"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["indirectSite"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"indirectSite"> - type_def = < - container_type = <"List"> - type = <"AnatomicalLocation"> - > - cardinality = <|>=0|> - > - ["indirectSiteCode"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"indirectSiteCode"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["surgicalApproach"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The technique used to reach the site of the procedure. Approaches may be through the skin or mucous membrane, through an orifice or external."> - name = <"surgicalApproach"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["access"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The route used to access the site of a procedure. It is used to distinguish open, closed, and percutaneous procedures."> - name = <"access"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["usingDevice"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"usingDevice"> - type_def = < - container_type = <"List"> - type = <"Device"> - > - cardinality = <|>=0|> - > - ["usingDeviceCode"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"usingDeviceCode"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["usingAccessDevice"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"usingAccessDevice"> - type_def = < - container_type = <"List"> - type = <"Device"> - > - cardinality = <|>=0|> - > - ["usingAccessDeviceCode"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"usingAccessDeviceCode"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["indirectDevice"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"indirectDevice"> - type_def = < - container_type = <"List"> - type = <"Device"> - > - cardinality = <|>=0|> - > - ["indirectDeviceCode"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"indirectDeviceCode"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - > - > - ["SurgicalProcedureOnDevice"] = < - documentation = <"Procedure for the insertion or removal of an implant."> - name = <"SurgicalProcedureOnDevice"> - ancestors = <"SurgicalProcedure",...> - properties = < - ["implant"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Something placed in a person's body or on its surface during the procedure and remains postoperatively. E.g., stents, tubes, artificial joints, and drains."> - name = <"implant"> - type_def = < - container_type = <"List"> - type = <"Device"> - > - cardinality = <|>=0|> - > - ["implantCode"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Concept representing something placed in a person's body or on its surface during the procedure and remains postoperatively. E.g., stents, tubes, artificial joints, and drains."> - name = <"implantCode"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - > - > - ["ImagingProcedure"] = < - name = <"ImagingProcedure"> - ancestors = <"BaseProcedureTopic",...> - properties = < - ["directSite"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"directSite"> - type_def = < - container_type = <"List"> - type = <"AnatomicalLocation"> - > - cardinality = <|>=0|> - > - ["directSiteCode"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"directSiteCode"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["usingSubstance"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"usingSubstance"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - > - > - ["ModifyTargetAction"] = < - documentation = <"Action intended to modify an existing action such as a request to discontinue the administration of a medication or a proposal to cancel an existing order. - -Experimental"> - name = <"ModifyTargetAction"> - ancestors = <"BaseProcedureTopic",...> - properties = < - ["targetAction"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The target action that this topic modifies."> - name = <"targetAction"> - type_def = < - container_type = <"List"> - type_def = (P_BMM_GENERIC_TYPE) < - root_type = <"ClinicalStatement"> - generic_parameters = <"BaseProcedureTopic",...> - > - > - cardinality = <|>=1|> - is_mandatory = - > - > - > - ["Absent"] = < - documentation = <"Context indicating the known absence of a finding in the subject of information. If the finding is suspected to be absent, use the known or suspected present context instead."> - name = <"Absent"> - ancestors = <"PresenceAbsenceContext",...> - > - ["ActionContext"] = < - documentation = <"The ActionContext class aligns with the SNOMED Situations with Explicit Context and provides the context for the Act topic of a clinical statement. For instance, a statement about a procedure may specify that the procedure has been proposed, ordered, planned, performed or possibly not performed. "> - name = <"ActionContext"> - ancestors = <"StatementContext",...> - properties = < - ["justification"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Reason the action was done or justification for the action. Reasons may also be specified for not performing an action. -"> - name = <"justification"> - type_def = < - container_type = <"List"> - type = <"Justification"> - > - cardinality = <|>=0|> - > - ["currentStatus"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The latest status of an action within the specified context. An action may be interpretable within a specific context such as whether it is planned, ordered, or performed. Moreover, within each of these context, an action may have a set of allowable states in which it can exist. For instance, a proposal may be rejected or an order may be signed, canceled or superceded by another order. It is expected that set of such states will vary based on the type of action context. - -The status code must coincide with the activity code of one of the attribution elements of statusHistory if a context status history is provided."> - name = <"currentStatus"> - type = <"CODED_TEXT"> - > - ["category"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Indicates the type of context and where the context is expected to be carried out. - -E.g., Inpatient, outpatient, community. - -TODO: Handle definition"> - name = <"category"> - type = <"CODED_TEXT"> - > - ["supportingInformation"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Additional information (for example, patient height and weight) that supports the performance, non-performance, ordering, or proposing of the clinical action. - -E.g., documentation of heart rate before administering the medication in case medication needs to be held if heart rate falls in a specific range."> - name = <"supportingInformation"> - type_def = < - container_type = <"List"> - type = <"ClinicalStatement"> - > - cardinality = <|>=0|> - > - > - > - ["FindingContext"] = < - documentation = <"The FindingContext class aligns with the SNOMED Situation with Explicit Context for findings and provides the context for the EvaluationResult and Assertion topics of a clinical statement. For instance, a statement about findings may state that the finding was observed present or absent."> - name = <"FindingContext"> - ancestors = <"StatementContext",...> - properties = < - ["currentStatus"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Current state of the evaluation (e.g., pending, complete, partial)."> - name = <"currentStatus"> - type = <"CODED_TEXT"> - > - > - > - ["KnownOrSuspectedPresent"] = < - documentation = <"Context indicating that finding is known present or suspected present."> - name = <"KnownOrSuspectedPresent"> - ancestors = <"PresenceAbsenceContext",...> - properties = < - ["certainty"] = (P_BMM_SINGLE_PROPERTY) < - name = <"certainty"> - type = <"CODED_TEXT"> - > - ["dateOfOnset"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Date or time when the characteristic was first observed. - -When the asserted condition began manifesting. This property may have a broad precision (e.g., a year rather than a date)."> - name = <"dateOfOnset"> - type = <"DATE_TIME"> - > - ["ageAtOnset"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The age of the patient or subject at onset of the Condition. Note that this property could potentially be derived."> - name = <"ageAtOnset"> - type = <"QUANTITY"> - > - ["dateAbated"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Date, if known, when clinical finding abated."> - name = <"dateAbated"> - type = <"DATE_TIME"> - > - ["hasAbated"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Flag indicating whether a condition has abated when a specific date of, time period, or age at abatement is not known."> - name = <"hasAbated"> - type = <"YESNO"> - > - > - > - ["NonCompletion"] = < - documentation = <"A record that a clinical act was initiated by not completed. "> - name = <"NonCompletion"> - ancestors = <"Performance",...> - properties = < - ["nonCompletionTimeframe"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"The time interval considered when the action had been intended for execution."> - name = <"nonCompletionTimeframe"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE_TIME",...> - > - > - > - > - ["NonPerformance"] = < - documentation = <"A record that a clinical act was not performed and/or never initiated. Do not use this context if the act was initiated or started but aborted or cancelled. Use the NotPerformed context instead."> - name = <"NonPerformance"> - ancestors = <"ActionContext",...> - properties = < - ["nonPerformanceTime"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"The time period during which the act had been intended for execution. -"> - name = <"nonPerformanceTime"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE_TIME",...> - > - > - > - > - ["Order"] = < - documentation = <"An instruction by a healthcare provider to another healthcare provider to perform some act."> - name = <"Order"> - ancestors = <"Request",...> - properties = < - ["groupIdentifier"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A shared identifier common to all requests that were authorized more or less simultaneously by a single author, representing the identifier of the requisition or prescription. - -E.g., an order set for a given patient contains a set of medication orderables. Each child orderable in the order set may contain a group identifier which is the identifier of the order set itself (the requisition)."> - name = <"groupIdentifier"> - type = <"IDENTIFIER"> - > - ["basedOn"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The proposal that is partly or wholly fulfilled by the performance of this act."> - name = <"basedOn"> - type_def = < - container_type = <"List"> - type = <"ClinicalStatement"> - > - cardinality = <|>=0|> - > - ["neededNoLaterThan"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Point in time when order must be performed."> - name = <"neededNoLaterThan"> - type = <"DATE_TIME"> - > - ["patientInstructions"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Identifies the ordering provider's instructions to the patient or to the provider on how to deliver or comply with the ordered procedure."> - name = <"patientInstructions"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - ["startDateTime"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"When the activity should start."> - name = <"startDateTime"> - type = <"DATE_TIME"> - > - ["stopDateTime"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"When the activity should end."> - name = <"stopDateTime"> - type = <"DATE_TIME"> - > - ["priorRequest"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A link to a resource representing an earlier order related order or prescription."> - name = <"priorRequest"> - type = <"ClinicalStatement"> - > - > - > - ["Performance"] = < - documentation = <"Context indicating actual performance or execution of a healthcare-related action, e.g., 3rd dose of Hepatitis B vaccine administered on Dec 4th 2012, appendectomy performed today. -"> - name = <"Performance"> - ancestors = <"ActionContext",...> - properties = < - ["performed"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The party that performed the action."> - name = <"performed"> - type_def = < - container_type = <"List"> - type = <"Attribution"> - > - cardinality = <|>=0|> - > - ["enactsPlan"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The plan that is partly or wholly enacted by the performance of this act. -"> - name = <"enactsPlan"> - type = <"ClinicalStatement"> - > - ["fulfillsOrder"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The order that is partly or wholly enacted by the performance of this act. -"> - name = <"fulfillsOrder"> - type = <"ClinicalStatement"> - > - ["basedOn"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The proposal that is partly or wholly fulfilled by the performance of this act. -"> - name = <"basedOn"> - type_def = < - container_type = <"List"> - type = <"ClinicalStatement"> - > - cardinality = <|>=0|> - > - ["duration"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The duration of time the action was performed."> - name = <"duration"> - type = <"QUANTITY"> - > - ["partOf"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"A larger event of which this particular event is a component or step."> - name = <"partOf"> - type_def = < - container_type = <"List"> - type = <"ClinicalStatement"> - > - cardinality = <|>=0|> - > - > - > - ["Plan"] = < - documentation = <"Description of action that is planned to be performed. Typically, this would include a time at which the action is scheduled to be performed. -"> - name = <"Plan"> - ancestors = <"ActionContext",...> - properties = < - ["fulfillsOrder"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The order that is partly or wholly enacted by the performance of this act. -"> - name = <"fulfillsOrder"> - type = <"ClinicalStatement"> - > - ["basedOn"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The proposal that is partly or wholly fulfilled by the performance of this act."> - name = <"basedOn"> - type_def = < - container_type = <"List"> - type = <"ClinicalStatement"> - > - cardinality = <|>=0|> - > - ["expectedPerformanceTime"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The time when the action is expected to be performed."> - name = <"expectedPerformanceTime"> - type = <"DATE_TIME"> - > - ["expectedPerformer"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Persons who are expected to or intended to perform this action, e.g., the person who will perform the surgery. "> - name = <"expectedPerformer"> - type_def = < - container_type = <"List"> - type = <"PARTICIPATION"> - > - cardinality = <|>=0|> - > - > - > - ["Promise"] = < - documentation = <"An order from the perspective of a fulfillment system. "> - name = <"Promise"> - ancestors = <"ActionContext",...> - properties = < - ["fulfillsOrder"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The order that is partly or wholly enacted by the performance of this act. -"> - name = <"fulfillsOrder"> - type = <"ClinicalStatement"> - > - ["orderModality"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"This is the method the provider used to communicate to the user to enter (or take any other action) on the order. Examples include: Written, Telephoned, Verbal, Electronically Entered, Policy, Service Correction, Duplicate, etc. -'Code indicating the origin of the prescription.' - NCPDP Telecommunication (Field 419-DJ, Data Dictionary 201104). Possible values include: Written; Telephone; Electronic; Facsimile; Pharmacy; Not Known."> - name = <"orderModality"> - type = <"CODED_TEXT"> - > - ["orderDiscontinueDate"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"This is the date the order was discontinued."> - name = <"orderDiscontinueDate"> - type = <"DATE_TIME"> - > - > - > - ["Proposal"] = < - documentation = <"An offer or a suggestion to perform a healthcare act. A recommendation to a provider is an example of proposal made by a CDS system. A proposal must be accepted by an entity in order for it to be performed. -"> - name = <"Proposal"> - ancestors = <"Request",...> - > - ["ProposalAgainst"] = < - documentation = <"Concept represents a recommendation from a clinical decision support system or advice from a consultation to not perform an act."> - name = <"ProposalAgainst"> - ancestors = <"ActionContext",...> - properties = < - ["nonPerformanceTime"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"The time period during which the act should not be performed."> - name = <"nonPerformanceTime"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE_TIME",...> - > - > - > - > - ["StatementContext"] = < - documentation = <"Compositional and reusable grouping of clinical statement attributes that provides the context for the topic of a clinical statement. The StatementContext class aligns with the SNOMED CT Situations with Explicit Context. The StatementContext provides the expressivity required to specify that an act was performed or not performed or that a finding was asserted to be present or absent for the given subject of information. It also often holds provenance information relevant to the context of the clinical statement. It is important to note that by default the context applies to the conjunction of the attribute specified in the statement. For instance, if a clinical statement has a topic describing a rash on left arm and a context of 'absent', then the statement states that the subject of interest did not have a rash on the left arm but might have had one on the right arm."> - name = <"StatementContext"> - ancestors = <"VIRTUAL_CLUSTER",...> - properties = < - ["context"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The ontological status of the statement, e.g., whether it exists, does not exist, is planned, etc. Attribute aligns with the SNOMED CT Situation with Explicit Context (SWEC) Concept Model context attributes: 'Finding context (attribute)' (SCTID: 408729009) and 'Procedure context (attribute)' (SCTID: 408730004). - -The range allowed for this attribute shall be consistent with the SNOMED CT concept model specification for SWEC."> - name = <"context"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["temporalContext"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Whether the topic is prospective or retrospective. E.g., action occurred in the past. This attribute is aligned with the SNOMED Situation With Explicit Context temporal context attribute."> - name = <"temporalContext"> - type = <"CODED_TEXT"> - > - > - > - ["Request"] = < - documentation = <"An request by a healthcare provider or system to another healthcare provider or system to perform some act."> - name = <"Request"> - ancestors = <"ActionContext",...> - properties = < - ["type"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Initiate -Suspend -Discontinue"> - name = <"type"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["expectedPerformanceTime"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"Time when the requested act is expected to be performed."> - name = <"expectedPerformanceTime"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE_TIME",...> - > - > - ["expectedPerformer"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Persons who are expected to or intended to perform this action, e.g., the person who will perform the surgery. "> - name = <"expectedPerformer"> - type_def = < - container_type = <"List"> - type = <"PARTICIPATION"> - > - cardinality = <|>=0|> - > - ["expectedPerformerCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"expectedPerformerCode"> - type = <"CODED_TEXT"> - > - ["priority"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"How quickly the action must be initiated. Includes concepts such as stat, urgent, routine."> - name = <"priority"> - type = <"CODED_TEXT"> - > - ["timing"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The proposed timing for the request."> - name = <"timing"> - type = <"Timing"> - > - ["duration"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"Anticipated duration for the action."> - name = <"duration"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE_TIME",...> - > - > - ["durationCode"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The anticipated duration for the action."> - name = <"durationCode"> - type = <"CODED_TEXT"> - > - > - > - ["EventContext"] = < - documentation = <"Context associated with non-clinical events such as floods, accidents, and tornadoes."> - name = <"EventContext"> - ancestors = <"StatementContext",...> - > - ["PresenceAbsenceContext"] = < - documentation = <"Base class for contexts asserting presence or absence of a finding."> - name = <"PresenceAbsenceContext"> - ancestors = <"FindingContext",...> - > - ["GoalContext"] = < - name = <"GoalContext"> - ancestors = <"FindingContext",...> - properties = < - ["status"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Indicates whether the goal has been reached and is still considered relevant. Look to GoalStatus HL7 FHIR Valueset"> - name = <"status"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["statusDate"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Identifies when the current status. I.e. When initially created, when achieved, when cancelled, etc."> - name = <"statusDate"> - type = <"DATE_TIME"> - > - ["statusReason"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Captures the reason for the current status."> - name = <"statusReason"> - type = <"CODED_TEXT"> - > - ["priority"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Identifies the mutually agreed level of importance associated with reaching/sustaining the goal."> - name = <"priority"> - type = <"CODED_TEXT"> - > - ["start"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The date or event after which the goal should begin being pursued."> - name = <"start"> - type = <"DATA_VALUE"> - > - ["expressedBy"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Indicates whose goal this is - patient goal, practitioner goal, etc."> - name = <"expressedBy"> - type = <"PARTICIPATION"> - > - ["category"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Indicates a category the goal falls within. Dietary, safety, behavioral, nursing, physiotherapy."> - name = <"category"> - type = <"CODED_TEXT"> - > - ["objectiveOfCare"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Human-readable and/or coded description of a specific desired objective of care, such as 'control blood pressure' or 'negotiate an obstacle course' or 'dance with child at wedding'."> - name = <"objectiveOfCare"> - type = <"TEXT"> - > - ["targetDue"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Indicates when goal should be reached."> - name = <"targetDue"> - type = <"DATA_VALUE"> - > - ["addresses"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The identified conditions and other health record elements that are intended to be addressed by the goal"> - name = <"addresses"> - type_def = < - container_type = <"List"> - type = <"ClinicalStatement"> - > - cardinality = <|>=0|> - > - ["outcomeCode"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Identifies the change (or lack of change) at the point when the status of the goal is assessed."> - name = <"outcomeCode"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["outcomeReference"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Details of what's changed (or not changed)."> - name = <"outcomeReference"> - type_def = < - container_type = <"List"> - type = <"ClinicalStatement"> - > - cardinality = <|>=0|> - > - > - > - ["NoKnown"] = < - name = <"NoKnown"> - ancestors = <"FindingContext",...> - > - ["BaseProcedureTopic"] = < - documentation = <"Description of a healthcare action, independent of action context. -"> - name = <"BaseProcedureTopic"> - ancestors = <"StatementTopic",...> - properties = < - ["description"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"An account of the act in narrative form."> - name = <"description"> - type = <"PLAIN_TEXT"> - > - ["reason"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The reason for performing this act."> - name = <"reason"> - type = <"TEXT"> - > - ["method"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Technique or way of accomplishing the act. E.g., endoscopic, arthroscopic, etc..."> - name = <"method"> - type = <"CODED_TEXT"> - > - > - > - ["EventTopic"] = < - documentation = <"An non-clinical event such as a natural disaster. Topic allows the capture of information related to such events when they pertain to the clinical context associated with a given patient."> - name = <"EventTopic"> - ancestors = <"StatementTopic",...> - > - ["FindingTopic"] = < - documentation = <"The characteristics looked for in medical investigations or diagnostics and the outcome. -"> - name = <"FindingTopic"> - ancestors = <"StatementTopic",...> - properties = < - ["result"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The unqualified value of the evaluation or assertion."> - name = <"result"> - type = <"DATA_VALUE"> - > - ["description"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Description of the finding."> - name = <"description"> - type = <"PLAIN_TEXT"> - > - ["multimedia"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Associated media produced during the evaluation such as an X-ray."> - name = <"multimedia"> - type_def = < - container_type = <"List"> - type = <"MULTIMEDIA"> - > - cardinality = <|>=0|> - > - > - > - ["StatementTopic"] = < - documentation = <"Compositional and reusable grouping of clinical statement attributes that make up the clinical focus of the statement. StatementTopic class attributes are aligned with SNOMED CT Concept Model attributes when such an overlap exists. Note that this class does not include contextual attributes such as the nature of the action (ordered, proposed, planned, etc...), the nature of the patient state being described (e.g., present, suspected present, absent), and the provenance of this information (the who, when, where, how, why of the information recorded)."> - name = <"StatementTopic"> - ancestors = <"VIRTUAL_CLUSTER",...> - properties = < - ["key"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The concept representing the finding/event being observed or the action being described. The code attribute's semantics is aligned to either associatedFinding or associatedProcedure in the SNOMED CT Situation with Explicit Context Concept Model. - -For findings, the key contains a concept for an observable entity. - -For assertions, the key contains a concept specifying that an assertion is made. - -For acts, the key contains a concept specifying the procedure described."> - name = <"key"> - type = <"CODED_TEXT"> - is_mandatory = - > - > - > - ["AnatomicalLocation"] = < - documentation = <"A part of the body."> - name = <"AnatomicalLocation"> - ancestors = <"Entity",...> - properties = < - ["bodySite"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The anatomical location code"> - name = <"bodySite"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["laterality"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The laterality of a bilaterally duplicated structure."> - name = <"laterality"> - type = <"TEXT"> - > - ["anatomicalDirection"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Example values: proximal, distal, lateral, medial..."> - name = <"anatomicalDirection"> - type = <"CODED_TEXT"> - > - > - > - ["Device"] = < - documentation = <"This resource identifies an instance or a type of a manufactured item that is used in the provision of healthcare without being substantially changed through that activity. The device may be a medical or non-medical device. Medical devices includes durable (reusable) medical equipment, implantable devices, as well as disposable equipment used for diagnostic, treatment, and research for healthcare and public health. Non-medical devices may include items such as a machine, cellphone, computer, application, etc."> - name = <"Device"> - ancestors = <"Entity",...> - properties = < - ["deviceCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"deviceCode"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["udiCarrier"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Unique device identifier (UDI) barcode or rfid string assigned to device label or package."> - name = <"udiCarrier"> - type = <"IDENTIFIER"> - > - ["status"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Status of the Device availability."> - name = <"status"> - type = <"CODED_TEXT"> - > - ["type"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The kind of device."> - name = <"type"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["lotNumber"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Lot number assigned by the manufacturer."> - name = <"lotNumber"> - type = <"TEXT"> - > - ["manufacturer"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A name of the manufacturer."> - name = <"manufacturer"> - type = <"TEXT"> - > - ["manufactureDate"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The date and time when the device was manufactured."> - name = <"manufactureDate"> - type = <"DATE_TIME"> - > - ["expirationDate"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The date and time beyond which this device is no longer valid or should not be used (if applicable)."> - name = <"expirationDate"> - type = <"DATE_TIME"> - > - ["model"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The 'model' is an identifier assigned by the manufacturer to identify the product by its type. This number is shared by the all devices sold as the same type."> - name = <"model"> - type = <"TEXT"> - > - ["version"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The device software or firmware version label."> - name = <"version"> - type = <"TEXT"> - > - ["owner"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A party that is responsible for the provision and ongoing maintenance of the device."> - name = <"owner"> - type = <"PARTICIPATION"> - > - ["contact"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Contact details for an organization or a particular human that is responsible for the device."> - name = <"contact"> - type_def = < - container_type = <"List"> - type = <"ElectronicContact"> - > - cardinality = <|>=0|> - > - ["url"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A network address on which the device may be contacted directly."> - name = <"url"> - type = <"URI"> - > - ["note"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Descriptive information, usage information or implantation information that is not captured in an existing element."> - name = <"note"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - > - > - ["Entity"] = < - documentation = <"Root class for material entities such as anatomical locations, devices, and substances."> - name = <"Entity"> - ancestors = <"BASE_ENTITY",...> - properties = < - ["identifier"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"An identifier for the material entity."> - name = <"identifier"> - type_def = < - container_type = <"List"> - type = <"IDENTIFIER"> - > - cardinality = <|>=0|> - > - ["description"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"A description of the entity."> - name = <"description"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - ["image"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"image"> - type_def = < - container_type = <"List"> - type = <"MULTIMEDIA"> - > - cardinality = <|>=0|> - > - > - > - ["Medication"] = < - documentation = <"Class representing a medication. It covers the ingredients and the packaging for a medication."> - name = <"Medication"> - ancestors = <"Entity",...> - properties = < - ["medicationCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"medicationCode"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["status"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A code to indicate if the medication is in active use."> - name = <"status"> - type = <"CODED_TEXT"> - > - ["package"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Information that only applies to packages (not products)."> - name = <"package"> - type = <"MedicationPackage"> - > - ["isBrand"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Set to true if the item is attributable to a specific manufacturer."> - name = <"isBrand"> - type = <"CODED_TEXT"> - > - ["isOverTheCounter"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Set to true if the medication can be obtained without an order from a prescriber."> - name = <"isOverTheCounter"> - type = <"CODED_TEXT"> - > - ["manufacturer"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Describes the details of the manufacturer of the medication product. This is not intended to represent the distributor of a medication product."> - name = <"manufacturer"> - type = <"Organization"> - > - ["form"] = (P_BMM_SINGLE_PROPERTY) < - name = <"form"> - type = <"CODED_TEXT"> - > - ["ingredient"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Active or inactive ingredient"> - name = <"ingredient"> - type_def = < - container_type = <"List"> - type = <"Ingredient"> - > - cardinality = <|>=0|> - > - > - > - ["MedicationPackage"] = < - documentation = <"A package for a medication."> - name = <"MedicationPackage"> - ancestors = <"UnitOfDistribution",...> - properties = < - ["container"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The kind of container that this package comes as."> - name = <"container"> - type = <"CODED_TEXT"> - > - ["content"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The set of medication ingredients"> - name = <"content"> - type_def = < - container_type = <"List"> - type = <"PackageContent"> - > - cardinality = <|>=0|> - > - ["packageBatch"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"packageBatch"> - type_def = < - container_type = <"List"> - type = <"PackageBatch"> - > - cardinality = <|>=0|> - > - > - > - ["Organization"] = < - documentation = <"An organization"> - name = <"Organization"> - ancestors = <"Entity",...> - properties = < - ["organizationName"] = (P_BMM_SINGLE_PROPERTY) < - name = <"organizationName"> - type = <"BaseOrganizationName"> - > - ["address"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The address of the organization"> - name = <"address"> - type_def = < - container_type = <"List"> - type = <"BaseAddress"> - > - cardinality = <|>=0|> - > - ["electronicContact"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The electronic contact information for this organization."> - name = <"electronicContact"> - type_def = < - container_type = <"List"> - type = <"ElectronicContact"> - > - cardinality = <|>=0|> - > - ["departmentOrUnit"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The department or unit in question."> - name = <"departmentOrUnit"> - type = <"TEXT"> - > - ["industry"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The industry code associated with this organization."> - name = <"industry"> - type = <"TEXT"> - > - ["status"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The status of the organization."> - name = <"status"> - type = <"CODED_TEXT"> - > - ["accreditation"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Accreditation information associated with this organization."> - name = <"accreditation"> - type_def = < - container_type = <"List"> - type = <"Accreditation"> - > - cardinality = <|>=0|> - > - ["dateRange"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"The date range associated with the existence or relevance of the organization in the given context."> - name = <"dateRange"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE",...> - > - > - > - > - ["Specimen"] = < - documentation = <"Sample for analysis"> - name = <"Specimen"> - ancestors = <"Entity",...> - properties = < - ["specimenCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"specimenCode"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["accessionIdentifier"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Identifier assigned by the lab"> - name = <"accessionIdentifier"> - type = <"IDENTIFIER"> - > - ["status"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Code indicating the status of the specimen. E.g., available, unavailable, unsatisfactory"> - name = <"status"> - type = <"CODED_TEXT"> - > - ["sourceSpecimen"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Identifier for the source specimen from which this specimen was derived."> - name = <"sourceSpecimen"> - type = <"Specimen"> - > - ["type"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Kind of material that forms the specimen"> - name = <"type"> - type = <"TEXT"> - > - ["collection"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Attribution information about the specimen collection activity."> - name = <"collection"> - type = <"SpecimenCollection"> - > - ["container"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Information about the vessel holding the specimen."> - name = <"container"> - type = <"SpecimenContainer"> - > - ["treatment"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Treatment and processing step details"> - name = <"treatment"> - type_def = < - container_type = <"List"> - type = <"SpecimenTreatment"> - > - cardinality = <|>=0|> - > - ["handlingRisk"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Cautions on the handling of this specimen."> - name = <"handlingRisk"> - type = <"TEXT"> - > - ["specialHandling"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Information about the proper handling of the specimen."> - name = <"specialHandling"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - ["receiveAction"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Attribution information associated with receiving the specimen."> - name = <"receiveAction"> - type = <"Attribution"> - > - > - > - ["Substance"] = < - documentation = <"A homogeneous material with a definite composition."> - name = <"Substance"> - ancestors = <"Entity",...> - properties = < - ["substanceCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"substanceCode"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["status"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A code to indicate if the substance is actively used."> - name = <"status"> - type = <"CODED_TEXT"> - > - ["category"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A code that classifies the general type of substance. This is used for searching, sorting and display purposes."> - name = <"category"> - type = <"CODED_TEXT"> - > - ["ingredient"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"A substance can be composed of other substances."> - name = <"ingredient"> - type_def = < - container_type = <"List"> - type = <"Ingredient"> - > - cardinality = <|>=0|> - > - ["instance"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Substance may be used to describe a kind of substance, or a specific package/container of the substance: an instance."> - name = <"instance"> - type_def = < - container_type = <"List"> - type = <"SubstanceInstance"> - > - cardinality = <|>=0|> - > - > - > - ["SpecimenContainer"] = < - documentation = <"Direct container of specimen (tube/slide, etc.)"> - name = <"SpecimenContainer"> - ancestors = <"CLUSTER",...> - properties = < - ["identifier"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"An identifier for the vessel containing the specimen."> - name = <"identifier"> - type = <"IDENTIFIER"> - > - ["description"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Textual description of the container"> - name = <"description"> - type = <"PLAIN_TEXT"> - > - ["type"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Kind of container holding the specimen - e.g. a vial or well."> - name = <"type"> - type = <"TEXT"> - > - ["capacity"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Container volume or size."> - name = <"capacity"> - type = <"QUANTITY"> - > - ["specimenQuantity"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Quantity of specimen within container."> - name = <"specimenQuantity"> - type = <"QUANTITY"> - > - ["additive"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Additive associated with container."> - name = <"additive"> - type_def = < - container_type = <"List"> - type = <"Substance"> - > - cardinality = <|>=0|> - > - ["additiveCode"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Additive associated with container."> - name = <"additiveCode"> - type = <"TEXT"> - > - ["sequenceNumber"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The sequence number for this specimen in a collection of specimens."> - name = <"sequenceNumber"> - type = <"TEXT"> - > - > - > - ["SubstanceInstance"] = < - documentation = <"A specific package/container of the substance."> - name = <"SubstanceInstance"> - ancestors = <"UnitOfDistribution",...> - properties = < - ["identifier"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Identifier of the package/container"> - name = <"identifier"> - type_def = < - container_type = <"List"> - type = <"IDENTIFIER"> - > - cardinality = <|>=0|> - > - ["expiry"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"When no longer valid to use."> - name = <"expiry"> - type = <"DATE_TIME"> - > - ["quantity"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Amount of substance in the package."> - name = <"quantity"> - type = <"QUANTITY"> - > - > - > - ["Ingredient"] = < - documentation = <"A components that go to make up the described item."> - name = <"Ingredient"> - ancestors = <"CLUSTER",...> - properties = < - ["itemCode"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Identifies a component items"> - name = <"itemCode"> - type = <"CODED_TEXT"> - > - ["substance"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Identifies a component item."> - name = <"substance"> - type = <"Substance"> - > - ["medication"] = (P_BMM_SINGLE_PROPERTY) < - name = <"medication"> - type = <"Medication"> - > - ["amount"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The amount of the component item."> - name = <"amount"> - type = <"RATIO"> - > - ["isActive"] = (P_BMM_SINGLE_PROPERTY) < - name = <"isActive"> - type = <"CODED_TEXT"> - > - > - > - ["PackageBatch"] = < - documentation = <"Information about a group of medication produced or packaged from one production run."> - name = <"PackageBatch"> - ancestors = <"CLUSTER",...> - properties = < - ["lotNumber"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The assigned lot number of a batch of the specified product."> - name = <"lotNumber"> - type = <"TEXT"> - > - ["expirationDate"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"When this specific batch of product will expire."> - name = <"expirationDate"> - type = <"DATE_TIME"> - > - > - > - ["UnitOfDistribution"] = < - documentation = <"Abstract class representing a substance container or package."> - name = <"UnitOfDistribution"> - ancestors = <"CLUSTER",...> - > - ["SpecimenTreatment"] = < - documentation = <"Treatment performed on the specimen."> - name = <"SpecimenTreatment"> - ancestors = <"CLUSTER",...> - properties = < - ["description"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Description of the treatment procedure as a human-readable narrative."> - name = <"description"> - type = <"PLAIN_TEXT"> - > - ["procedure"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A coded value specifying the procedure used to process the specimen."> - name = <"procedure"> - type = <"CODED_TEXT"> - > - ["additive"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Material used in the processing step."> - name = <"additive"> - type_def = < - container_type = <"List"> - type = <"Substance"> - > - cardinality = <|>=0|> - > - > - > - ["DetailedPerson"] = < - documentation = <"An entity representing a person."> - name = <"DetailedPerson"> - ancestors = <"Person",...> - properties = < - ["contactPerson"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Contacts for this person."> - name = <"contactPerson"> - type_def = < - container_type = <"List"> - type = <"ContactInformation"> - > - cardinality = <|>=0|> - > - ["mothersIdentifier"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Identifier for the mother of the patient."> - name = <"mothersIdentifier"> - type = <"IDENTIFIER"> - > - ["mothersFamilyName"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The mother's family name."> - name = <"mothersFamilyName"> - type = <"PLAIN_TEXT"> - > - ["fathersName"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The father's family name."> - name = <"fathersName"> - type = <"PLAIN_TEXT"> - > - ["spouseName"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The spouse's name"> - name = <"spouseName"> - type = <"PLAIN_TEXT"> - > - ["race"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The race code associated with this person."> - name = <"race"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - ["ethnicity"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The ethnicity of the person."> - name = <"ethnicity"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - ["citizenship"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The person's citizenship."> - name = <"citizenship"> - type_def = < - container_type = <"List"> - type = <"Citizenship"> - > - cardinality = <|>=0|> - > - ["residency"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The person's country of residence."> - name = <"residency"> - type_def = < - container_type = <"List"> - type = <"Residency"> - > - cardinality = <|>=0|> - > - ["religion"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The religion of the person"> - name = <"religion"> - type = <"TEXT"> - > - ["organDonorType"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The organ donor type code."> - name = <"organDonorType"> - type = <"CODED_TEXT"> - > - ["biometricData"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Related biometric data."> - name = <"biometricData"> - type_def = < - container_type = <"List"> - type = <"BiometricData"> - > - cardinality = <|>=0|> - > - ["translatorRequired"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Code indicating the translation services needed by this person."> - name = <"translatorRequired"> - type = <"CODED_TEXT"> - > - ["educationLevel"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The education level of the person."> - name = <"educationLevel"> - type = <"TEXT"> - > - ["qualification"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The qualifications of the person."> - name = <"qualification"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - ["disability"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Disability status"> - name = <"disability"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - ["occupation"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Person's occupation"> - name = <"occupation"> - type_def = < - container_type = <"List"> - type = <"Occupation"> - > - cardinality = <|>=0|> - > - ["industry"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Industry where this person works."> - name = <"industry"> - type_def = < - container_type = <"List"> - type = <"Industry"> - > - cardinality = <|>=0|> - > - ["studentCategory"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Student category if person is a student."> - name = <"studentCategory"> - type = <"TEXT"> - > - ["advanceDirective"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Advance directive associated with the person if it exists."> - name = <"advanceDirective"> - type_def = < - container_type = <"List"> - type = <"AdvanceDirective"> - > - cardinality = <|>=0|> - > - ["entitlement"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Entitlements the person is allowed to claim."> - name = <"entitlement"> - type_def = < - container_type = <"List"> - type = <"Entitlement"> - > - cardinality = <|>=0|> - > - ["identificationComment"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Comments to help identifier the person such as mole on left cheek."> - name = <"identificationComment"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - ["healthCareProvider"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The person's health care provider."> - name = <"healthCareProvider"> - type_def = < - container_type = <"List"> - type = <"HealthCareProviderRelationship"> - > - cardinality = <|>=0|> - > - > - > - ["PackageContent"] = < - documentation = <"A set of components that go to make up the described item."> - name = <"PackageContent"> - ancestors = <"CLUSTER",...> - properties = < - ["item"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Identifies one of the items in the package."> - name = <"item"> - type = <"Medication"> - > - ["itemCode"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Identifies one of the items in the package."> - name = <"itemCode"> - type = <"CODED_TEXT"> - > - ["amount"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The amount of the product that is in the package."> - name = <"amount"> - type = <"QUANTITY"> - > - > - > - ["Person"] = < - documentation = <"Base person class."> - name = <"Person"> - ancestors = <"Entity",...> - properties = < - ["personName"] = (P_BMM_SINGLE_PROPERTY) < - name = <"personName"> - type = <"BasePersonName"> - > - ["administrativeGender"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The administrative gender of the person. -"> - name = <"administrativeGender"> - type = <"CODED_TEXT"> - > - ["address"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The person's address."> - name = <"address"> - type_def = < - container_type = <"List"> - type = <"BaseAddress"> - > - cardinality = <|>=0|> - > - ["electronicContact"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Contact information for the person. -"> - name = <"electronicContact"> - type_def = < - container_type = <"List"> - type = <"ElectronicContact"> - > - cardinality = <|>=0|> - > - ["maritalStatus"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The person's marital status."> - name = <"maritalStatus"> - type = <"TEXT"> - > - ["birthData"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Birth data information"> - name = <"birthData"> - type = <"BirthData"> - > - ["deathData"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Death data information"> - name = <"deathData"> - type = <"DeathData"> - > - ["language"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Languages spoken by the person."> - name = <"language"> - type_def = < - container_type = <"List"> - type = <"LanguageCapability"> - > - cardinality = <|>=0|> - > - > - > - ["ClinicalStatementAssociation"] = < - documentation = <"Association class used to represent the relationship between a class and one or more clinical statements where the relationship is qualified by one or more attributes."> - name = <"ClinicalStatementAssociation"> - ancestors = <"ASSOCIATION_CLASS",...> - properties = < - ["target"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The associated statement(s)"> - name = <"target"> - type_def = < - container_type = <"List"> - type = <"ClinicalStatement"> - > - cardinality = <|>=1|> - is_mandatory = - > - > - > - ["Justification"] = < - documentation = <"Asserted clinical justification to perform or not perform an act such as a diagnostic test, a medication treatment, or a procedure. - -The justification can be specified as a code or as a clinical statement, e.g., code for diabetes (ICD-9-CM 250.0) or a Condition occurrence statement (with diabetes code) documented elsewhere in a patient's record. -"> - name = <"Justification"> - ancestors = <"ClinicalStatementAssociation",...> - properties = < - ["justificationCode"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A code or narrative representing the justification. Typically, the code is for a condition that is suspected or is observed in a patient."> - name = <"justificationCode"> - type = <"TEXT"> - > - > - > - ["Interpretation"] = < - documentation = <"The interpretation provided by the containing type for the set of clinical statements that comprise the target of the relationship. - -For instance, Assertion.interpretation can be interpreted as follows: the assertion interprets the set of clinical statements specified as the range of Assertion.interpretation.target and the interpretation is specified by the Assertion.interpretation.hasInterpretation code."> - name = <"Interpretation"> - ancestors = <"ClinicalStatementAssociation",...> - properties = < - ["hasInterpretation"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Narrative or code representing the interpretation assigned by the containing class on the set of clinical statements that comprise the target of the relationship."> - name = <"hasInterpretation"> - type = <"TEXT"> - is_mandatory = - > - > - > - ["Signature"] = < - documentation = <"A digital signature along with supporting context. The signature may be electronic/cryptographic in nature, or a graphical image representing a hand-written signature, or a signature process. Different Signature approaches have different utilities."> - name = <"Signature"> - ancestors = <"CLUSTER",...> - properties = < - ["type"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"An indication of the reason that the entity signed this document. This may be explicitly included as part of the signature information and can be used when determining accountability for various actions concerning the document."> - name = <"type"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=1|> - is_mandatory = - > - ["when"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"When the digital signature was signed."> - name = <"when"> - type = <"DATE_TIME"> - is_mandatory = - > - ["who"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A reference to an application-usable description of the identity that signed (e.g. the signature used their private key)."> - name = <"who"> - type = <"PARTICIPATION"> - is_mandatory = - > - ["onBehalfOf"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A reference to an application-usable description of the identity that is represented by the signature."> - name = <"onBehalfOf"> - type = <"PARTICIPATION"> - > - ["mimeType"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A mime type that indicates the technical format of the signature. Important mime types are application/signature+xml for X ML DigSig, application/jwt for JWT, and image/* for a graphical image of a signature, etc."> - name = <"mimeType"> - type = <"CODED_TEXT"> - > - ["signatureContext"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The base64 encoding of the Signature content. When signature is not recorded electronically this element would be empty."> - name = <"signatureContext"> - type = <"ENCAPSULATED"> - > - > - > - ["Attribution"] = < - documentation = <"Attribution provides a formal pattern and reusable structure for attributes of a record that describes an activity in a process involved in producing, delivering or otherwise influencing that resource. Attribution provides a critical foundation for assessing authenticity, enabling trust, and allowing reproducibility. Provenance assertions are a form of contextual metadata and can themselves become important records with their own provenance. Provenance statement indicates clinical significance in terms of confidence in authenticity, reliability, and trustworthiness, integrity, and stage in lifecycle (e.g. Document Completion - has the artifact been legally authenticated), all of which may impact security, privacy, and trust policies. - -Attribution provides a common reference model pattern that may be included directly within a clinical statement (e.g., the metadata associated with the recording of a clinical statement in a system) or within the Provenance pattern when it is preferrable to have such information external to but referencing the clinical statement (see Provenance). Note that, when included directly within a clinical statement, updates made to attribution attribute values will result in a versioning change in the instance. When part of the Provenance class, updates to provenance do not result in an update of the clinical statement referenced by the Provenance class (see Provenance.target)."> - name = <"Attribution"> - ancestors = <"CLUSTER",...> - properties = < - ["identifier"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"A token that uniquely identifies the act of attribution."> - name = <"identifier"> - type_def = < - container_type = <"List"> - type = <"IDENTIFIER"> - > - cardinality = <|>=0|> - > - ["activity"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"An activity is something that occurs over a period of time and acts upon or with entities; it may include asserting, recording, verifying, consuming, processing, transforming, modifying, relocating, using, or generating entities."> - name = <"activity"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["recordedOn"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The time at which the activity was recorded."> - name = <"recordedOn"> - type = <"DATE_TIME"> - > - ["recordedBy"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The person or entity capturing the attribution information."> - name = <"recordedBy"> - type = <"PARTICIPATION"> - > - ["activityTimeRange"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"The period during which the activity occurred."> - name = <"activityTimeRange"> - type_def = < - root_type = <"INTERVAL_VALUE"> - generic_parameters = <"DATE_TIME",...> - > - > - ["reason"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The reason that the activity was taking place."> - name = <"reason"> - type_def = < - container_type = <"List"> - type = <"TEXT"> - > - cardinality = <|>=0|> - > - ["location"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Where the activity occurred, if relevant."> - name = <"location"> - type_def = < - container_type = <"List"> - type = <"PARTICIPATION"> - > - cardinality = <|>=0|> - > - ["policy"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Policy or plan that defines the activity. Typically, a single activity may have multiple applicable policy documents, such as patient consent, guarantor funding, etc."> - name = <"policy"> - type_def = < - container_type = <"List"> - type = <"URI"> - > - cardinality = <|>=0|> - > - ["agent"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"A person or other party responsible for execution of some facet of the activity. The agent in an activity for which it can be assigned some degree of responsibility for the activity taking place. The agent comprises both the party involved and its role."> - name = <"agent"> - type_def = < - container_type = <"List"> - type = <"PARTICIPATION"> - > - cardinality = <|>=0|> - > - ["entity"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"An entity used in this activity."> - name = <"entity"> - type_def = < - container_type = <"List"> - type = <"PARTICIPATION"> - > - cardinality = <|>=0|> - > - ["signature"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"A digital signature on the target Reference(s). The signer should match a Provenance.agent. The purpose of the signature is indicated."> - name = <"signature"> - type_def = < - container_type = <"List"> - type = <"Signature"> - > - cardinality = <|>=0|> - > - ["method"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"This component captures the method used to perform the activity. For instance, in Verified, it captures how verification is achieved (verbal, written, telephone, etc.). In a specimen collection, examples include sputum, finger stick."> - name = <"method"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - > - > - ["Provenance"] = < - documentation = <"The Provenance pattern supports the attachment of attribution information to one or more clinical statements and is not part of the clinical statements themselves. - -The attachment of provenance information to a clinical statement in this manner does not impact the versioning of the clinical statement target since attribution information is external to the statement."> - name = <"Provenance"> - ancestors = <"CLUSTER",...> - properties = < - ["attribution"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The activity provenance details. Refer to the Attribution class."> - name = <"attribution"> - type = <"Attribution"> - is_mandatory = - > - ["target"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The clinical statement that were generated or updated by the activity described. A provenance can point to more than one target if multiple resources were created/updated by the same activity."> - name = <"target"> - type_def = < - container_type = <"List"> - type = <"ClinicalStatement"> - > - cardinality = <|>=1|> - is_mandatory = - > - > - > - ["PatientEducationPerformed"] = < - documentation = <"Context associated with the performance of an educational intervention."> - name = <"PatientEducationPerformed"> - ancestors = <"Performance",...> - properties = < - ["oralCommunicationSummary"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"This property may be used to summarize an oral communication with the Patient."> - name = <"oralCommunicationSummary"> - type = <"TEXT"> - > - ["percentComplete"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The percent of the course or session that was performed."> - name = <"percentComplete"> - type = <"QUANTITY"> - > - ["levelOfUnderstanding"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A qualitative assessment of how well the Patient (or Patient's representative) understood the material presented. Example values include: Poor, Fair, Good, Group - no assessment, Refused, etc."> - name = <"levelOfUnderstanding"> - type = <"CODED_TEXT"> - > - ["professionalTime"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Public «PQ» TimeQuantity professionalTime"> - name = <"professionalTime"> - type = <"QUANTITY"> - > - ["textProvided"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"This property contains the contents of any written materials (usually personalized materials) provided to the Patient. This property may also be used to summarize an oral communication with the Patient. Note that the identification of pre-defined materials should be accomplished using the educationalMaterialsProvided property rather than reproducing the content of such materials here."> - name = <"textProvided"> - type = <"TEXT"> - > - > - > - ["PatientRelatedEducation"] = < - documentation = <"This class captures information about counselling or education provided to (or an attempt to provide to) the Patient or to the Patient's representative and provides a means to note how well the Patient understood the information provided. Patient Education may be in the form of written instructions – either pre-defined materials, or personalized instructions – as well as oral counseling. In the case of pre-defined written materials, the educationalMaterialsProvided property may be used to identify the kind of material provided rather than reproducing the text of that material in this class. When personalized written instructions are provided, the text of such instructions can be placed in the textProvided property. The textProvided property may also be used to store a summary of an oral conversation with the Patient."> - name = <"PatientRelatedEducation"> - ancestors = <"BaseProcedureTopic",...> - properties = < - ["educationBarrier"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Cognitive or sensory barriers to receiving counseling."> - name = <"educationBarrier"> - type = <"CODED_TEXT"> - > - ["educationMethod"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The communication method used to provide the patient counseling."> - name = <"educationMethod"> - type = <"CODED_TEXT"> - > - ["predefinedEducationalMaterial"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"This property identifies any pre-defined written materials provided to the Patient. In many cases, Patient Education is accomplished by the provision of standardized materials produced based on the Patient's condition or based on a Procedure that the Patient has undergone. For example, there is a standardized Discharge Instructions for Diverticulitis. Use this property to identify any pre-printed materials provided to the patient. Use the textProvided property to identify any other personalized instructions."> - name = <"predefinedEducationalMaterial"> - type = <"CODED_TEXT"> - > - ["personalizedEducationMaterial"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"This property contains the contents of any written materials (usually personalized materials) provided to the Patient. "> - name = <"personalizedEducationMaterial"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["location"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Pointer to the location at which the patient education or counseling was provided or is to be provided."> - name = <"location"> - type = <"Location"> - > - > - > - ["ReportableEventEntry"] = < - documentation = <"A reportable event may be an untoward or unexpected finding observed during the course of an activity or an activity that may result in harm to a subject and which must be documented."> - name = <"ReportableEventEntry"> - ancestors = <"InformationEntry",...> - properties = < - ["description"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Description of the adverse event in narrative."> - name = <"description"> - type = <"PLAIN_TEXT"> - > - ["referenceDocumentation"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Any documentation supplied when documenting this event."> - name = <"referenceDocumentation"> - type = <"COMPOSITION"> - > - ["relevantMedicalHistory"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Relevant medical history for documentation purposes."> - name = <"relevantMedicalHistory"> - type_def = < - container_type = <"List"> - type = <"ClinicalStatement"> - > - cardinality = <|>=0|> - > - ["reportingContext"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Attribution metadata relevant to the reporting of an act or finding not already captured in the associated act or finding statement."> - name = <"reportingContext"> - type = <"Attribution"> - > - > - > - ["AdverseFindingReportEntry"] = < - documentation = <"An AdverseFinding is any unexpected clinical finding in a patient in the course of care or clinical investigation subject which does not necessarily have a causal relationship with a specific intervention."> - name = <"AdverseFindingReportEntry"> - ancestors = <"ReportableEventEntry",...> - properties = < - ["reportedFinding"] = (P_BMM_GENERIC_PROPERTY) < - name = <"reportedFinding"> - type_def = < - root_type = <"ClinicalStatement"> - generic_parameters = <"FindingTopic",...> - > - is_mandatory = - > - ["resultOfBreach"] = (P_BMM_SINGLE_PROPERTY) < - name = <"resultOfBreach"> - type = <"WorkflowBreachReportEntry"> - > - > - > - ["WorkflowBreachReportEntry"] = < - documentation = <"An undesired activity or breach of protocol, regardless of whether it resulted in harm to the subject, which must be documented."> - name = <"WorkflowBreachReportEntry"> - ancestors = <"ReportableEventEntry",...> - properties = < - ["workflowBreach"] = (P_BMM_SINGLE_PROPERTY) < - name = <"workflowBreach"> - type = <"WorkflowBreach"> - > - > - > - ["ClinicalStudyAdverseFinding"] = < - documentation = <"An AdverseFinding is any unexpected clinical finding in a patient documented as part of a clinical investigation which does not necessarily have a causal relationship with a specific study intervention. For instance, a study participant developing a fever during the course of the study."> - name = <"ClinicalStudyAdverseFinding"> - ancestors = <"AdverseFindingReportEntry",...> - properties = < - ["associatedClinicalStudy"] = (P_BMM_SINGLE_PROPERTY) < - name = <"associatedClinicalStudy"> - type = <"ResearchStudy"> - > - > - > - ["WorkflowBreach"] = < - documentation = <"A workflow breach consists of an undesired event (e.g., the administration of a wrong medication), a set of possible documented outcomes (note that near misses may not have an associated outcome) and the activity that was expected to be performed as part of the workflow (e.g., the administration of the prescribed medication). - -Workflow breaches may be referenced by a number of different report entries."> - name = <"WorkflowBreach"> - ancestors = <"CLUSTER",...> - properties = < - ["seriousness"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Assessment whether this event was of real importance."> - name = <"seriousness"> - type = <"CODED_TEXT"> - > - ["category"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The overall type of workflow breach intended for search and filtering purposes."> - name = <"category"> - type = <"CODED_TEXT"> - > - ["reportedActivity"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"The activity which represents a breach of protocol."> - name = <"reportedActivity"> - type_def = < - root_type = <"ClinicalStatement"> - generic_parameters = <"Performance", "BaseProcedureTopic"> - > - is_mandatory = - > - ["expectedActivity"] = (P_BMM_GENERIC_PROPERTY) < - documentation = <"The activity that should have been performed."> - name = <"expectedActivity"> - type_def = < - root_type = <"ClinicalStatement"> - generic_parameters = <"BaseProcedureTopic",...> - > - > - ["outcome"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The finding that resulted from the reported activity. "> - name = <"outcome"> - type_def = < - container_type = <"List"> - type_def = (P_BMM_GENERIC_TYPE) < - root_type = <"ClinicalStatement"> - generic_parameters = <"FindingTopic",...> - > - > - cardinality = <|>=0|> - > - > - > - ["AdverseReaction"] = < - documentation = <"An unintended physical injury resulting from exposure to a substance. - -Note that the manifestation of the adverse reaction is captured in FindingTopic.result attribute."> - name = <"AdverseReaction"> - ancestors = <"FindingSiteAssertion",...> - properties = < - ["causality"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"An exogenous physical substance or force that causes the disease. It does not include vectors, e.g. a mosquito that transmits malaria. The range of this attribute can be found in the following SNOMED CT hierarchies: - -| Organism | 410607006 (<<) -| Substance | 105590001 (<<) -| Physical object | 260787004 (<<) -| Physical force | 78621006 (<<) -| Pharmaceutical / biologic product | 373873005 (<< Q only) -| SNOMED CT Concept | 138875005 (==) -"> - name = <"causality"> - type_def = < - container_type = <"List"> - type = <"Causality"> - > - cardinality = <|>=0|> - > - ["exposureRoute"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Identification of the route by which the subject was exposed to the substance."> - name = <"exposureRoute"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - > - > - ["Causality"] = < - documentation = <"An assessment of causality - i.e., whether the reaction was caused by exposure to the causative agent."> - name = <"Causality"> - properties = < - ["confidence"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"An assessment of the confidence in the causal relationship - e.g., certain, likely, possible, unlikely, ..."> - name = <"confidence"> - type = <"CODED_TEXT"> - > - ["productRelatedness"] = (P_BMM_SINGLE_PROPERTY) < - name = <"productRelatedness"> - type = <"TEXT"> - > - ["asserter"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Attribution information relating to the assessment of causality. -"> - name = <"asserter"> - type = <"Attribution"> - > - ["method"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Method used to assess causality - e.g., probability scale, bayesian, or checklist."> - name = <"method"> - type = <"CODED_TEXT"> - > - > - > - ["InformationEntry"] = < - name = <"InformationEntry"> - ancestors = <"ENTRY",...> - properties = < - ["key"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The 'key' attribute is an optional attribute allowing the coding of some of the information represented by the clinical statement. The range of this attribute (i.e., allowable codes assigned as a value for this attribute) must derive from and conform with the SNOMED CT Situation with Explicit Context (SWEC) concept hierarchies defined in SNOMED CT. Note that this attribute may consist of precoordinated codes (not recommended) or SNOMED CT expressions."> - name = <"key"> - type = <"CODED_TEXT"> - > - ["identifier"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The unique identifier(s) of this clinical statement. It must be entered if user wants it returned as part of any output (e.g., a wound number), otherwise it will be auto-generated, if needed, by the system serving the record. An identifier does not need to be the actual identifier of the source system. -"> - name = <"identifier"> - type_def = < - container_type = <"List"> - type = <"IDENTIFIER"> - > - cardinality = <|>=0|> - > - ["subjectOfInformation"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The entity being described by this statement. The entity may be animate (a patient, a relative of the patient, a veterinary patient, a cohort) or inanimate (a well, a geographical location). The subject of information is constrained in archetypes. - -This attribute aligns with the SNOMED CT Situation with Explicit Context (SWEC) and is bound to the SNOMED attribute: 'Subject relationship context (attribute)' (SCTID: 408732007). - -"> - name = <"subjectOfInformation"> - type = <"SubjectOfInformation"> - > - ["authored"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Provenance information specific to the assertion being made (e.g., the author(s), when authored, the location where the assertion was made, etc...)."> - name = <"authored"> - type = <"Attribution"> - > - ["recorded"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Provenance information specific to the recording of the clinical statement (e.g., when recorded, where recorded, etc...)."> - name = <"recorded"> - type = <"Attribution"> - > - ["verified"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Provenance information specific to the verification process associated with this statement (e.g., verifier, verification method, when verified, etc...)."> - name = <"verified"> - type = <"Attribution"> - > - ["signed"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Provenance information specific to the signing of the clinical statement."> - name = <"signed"> - type = <"Attribution"> - > - ["cosigned"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Provenance information specific to the cosigning of the clinical statement."> - name = <"cosigned"> - type_def = < - container_type = <"List"> - type = <"Attribution"> - > - cardinality = <|>=0|> - > - ["additionalText"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Unstructured notes appended to a clinical statement."> - name = <"additionalText"> - type_def = < - container_type = <"List"> - type = <"Annotation"> - > - cardinality = <|>=0|> - > - ["recordStatus"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Concept indicating the state of this record. E.g., 'entered in error'."> - name = <"recordStatus"> - type = <"CODED_TEXT"> - > - > - > - ["AdverseSensitivityToSubstance"] = < - documentation = <"Estimate of the potential clinical harm, or seriousness, of the reaction to the identified substance."> - name = <"AdverseSensitivityToSubstance"> - ancestors = <"BaseAssertion",...> - properties = < - ["substanceCode"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Code representing the substance the subject of information is allergic or sensitive to."> - name = <"substanceCode"> - type = <"CODED_TEXT"> - > - ["substance"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The substance the subject of information is allergic or sensitive to."> - name = <"substance"> - type = <"Entity"> - > - ["sensitivityType"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A code that indicates whether this sensitivity is of an allergic nature or an intolerance to a substance."> - name = <"sensitivityType"> - type = <"CODED_TEXT"> - > - ["category"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Category of the identified substance when such category cannot be derived based on the substance's hierarchy - e.g., food, medication, environment, biologic."> - name = <"category"> - type_def = < - container_type = <"List"> - type = <"CODED_TEXT"> - > - cardinality = <|>=0|> - > - ["criticality"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The potential seriousness of a future reaction. This represents a clinical judgment about the worst case scenario for a future reaction. It would be based on the severity of past reactions, the dose and route of exposure that produced past reactions, and the life-threatening or organ system threatening potential of the reaction type."> - name = <"criticality"> - type = <"CODED_TEXT"> - > - ["associatedReaction"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Adverse reactions related to this allergy/intolerance assertion. -"> - name = <"associatedReaction"> - type_def = < - container_type = <"List"> - type_def = (P_BMM_GENERIC_TYPE) < - root_type = <"ClinicalStatement"> - generic_parameters = <"AdverseReaction",...> - > - > - cardinality = <|>=0|> - > - ["sensitivityTest"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Tests performed to assess sensitivity to the subject."> - name = <"sensitivityTest"> - type_def = < - container_type = <"List"> - type_def = (P_BMM_GENERIC_TYPE) < - root_type = <"ClinicalStatement"> - generic_parameters = <"Performance", "BaseProcedureTopic"> - > - > - cardinality = <|>=0|> - > - > - > -> - diff --git a/referencemodels/src/main/resources/bmm/CIMI/Release-0.0.3/BMM/CIMI_RM_CORE.v.0.0.3.bmm b/referencemodels/src/main/resources/bmm/CIMI/Release-0.0.3/BMM/CIMI_RM_CORE.v.0.0.3.bmm deleted file mode 100644 index b561303ca..000000000 --- a/referencemodels/src/main/resources/bmm/CIMI/Release-0.0.3/BMM/CIMI_RM_CORE.v.0.0.3.bmm +++ /dev/null @@ -1,678 +0,0 @@ --- Basic Metamodel Syntax Version -bmm_version = <"2.1"> - --- ---------------------------------- --- schema identification --- (schema_id computed as __) --- ---------------------------------- -rm_publisher = <"CIMI"> -schema_name = <"RM_CORE"> -rm_release = <"0.0.3"> - --- ---------------------------------- --- schema documentation --- ---------------------------------- -schema_revision = <"Wed Jul 26 08:19:06 PDT 2017"> -schema_lifecycle_state = <"dstu"> -schema_description = <"CIMI_RM_CORE.v0.0.3.mdzip - Schema generated from UML"> - - --- ---------------------------------- --- archetyping --- ---------------------------------- -archetype_rm_closure_packages = <"CIMI_Reference_Model.Core", "CIMI_Reference_Model.Data_Value_Types", "CIMI_Reference_Model.Primitive_Types"> -packages = < - ["CIMI_Reference_Model"] = < - name = <"CIMI_Reference_Model"> - packages = < - ["Core"] = < - name = <"Core"> - classes = <"ARCHETYPED", "ASSOCIATION_CLASS", "LOCATABLE"> - > - ["Data_Value_Types"] = < - name = <"Data_Value_Types"> - classes = <"AMOUNT", "CODED_TEXT", "COUNT", "DATA_VALUE", "DATE", "DATE_TIME", "DURATION", "EHR_URI", "ENCAPSULATED", "IDENTIFIER", "INTERVAL_VALUE", "MULTIMEDIA", "ORDERED_VALUE", "ORDINAL", "PARSABLE", "PLAIN_TEXT", "PROPORTION", "QUANTIFIED", "QUANTITY", "TERM_MAPPING", "TEXT", "TIME", "URI_VALUE", "YESNO", "INSTANT", "POSITIVE_INTEGER_COUNT", "UNSIGNED_INTEGER_COUNT", "RATIO"> - > - ["Primitive_Types"] = < - name = <"Primitive_Types"> - classes = <"Any", "Array", "List", "Boolean", "Byte", "Character", "Integer", "Real", "String", "URI", "TERMINOLOGY_CODE"> - > - > - > -> -class_definitions = < - ["ARCHETYPED"] = < - documentation = <"Archetypes act as the configuration basis for the particular structures of instances defined by the reference model. To enable archetypes to be used to create valid data, key classes in the reference model act as root points for archetyping; accordingly, these classes have the archetype_details attribute set. - -An instance of the class ARCHETYPED contains the relevant archetype identification information, allowing generating archetypes to be matched up with data instances."> - name = <"ARCHETYPED"> - properties = < - ["archetype_id"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Globally unique archetype identifier."> - name = <"archetype_id"> - type = <"String"> - is_mandatory = - > - ["rm_version"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Version of the CIMI reference model used to create this object. Expressed in terms of the release version string, e.g. 1.0 , 1.2.4 ."> - name = <"rm_version"> - type = <"String"> - is_mandatory = - > - > - > - ["ASSOCIATION_CLASS"] = < - documentation = <"Abstract parent type for an association class."> - name = <"ASSOCIATION_CLASS"> - properties = < - ["type"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The type of the association."> - name = <"type"> - type = <"TEXT"> - > - > - > - ["LOCATABLE"] = < - documentation = <"Most classes in the CIMI reference model inherit from the LOCATABLE class, which defines the idea of 'locatability in an archetyped structure'. LOCATABLE defines a runtime name and an archetype_node_id. The archetype_node_id is the standardised semantic code for a node and comes from the corresponding node in the archetype used to create the data. The only exception is at archetype root points in data, where archetype_node_id carries the archetype identifier in string form rather than an interior node id from an archetype. LOCATABLE also provides the attribute archetype_details, which is non-Void for archetype root points in data, and carries meta-data relevant to root points. The name attribute carries a name created at runtime. The 'meaning' of any node is derived formally from the archetype by obtaining the text value for the archetype_node_id code from the archetype ontology section, in the language required."> - name = <"LOCATABLE"> - properties = < - ["archetype_node_id"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The standardised semantic code for a node and comes from the corresponding node in the archetype used to create the data. The only exception is at archetype root points in data, where archetype_node_id carries the archetype identifier in string form rather than an interior node id from an archetype. "> - name = <"archetype_node_id"> - type = <"String"> - is_mandatory = - > - ["name"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A name created at runtime"> - name = <"name"> - type = <"String"> - is_mandatory = - > - ["archetype_details"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"LOCATABLE also provides the attribute Archetype_details, which is non-Void for archetype root points in data, and carries meta-data relevant to root points. "> - name = <"archetype_details"> - type = <"ARCHETYPED"> - > - > - > - ["AMOUNT"] = < - documentation = <"Abstract class defining the concept of relative quantified amounts. For relative quantities, the +' and -' operators are defined."> - name = <"AMOUNT"> - ancestors = <"QUANTIFIED",...> - properties = < - ["accuracy"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Accuracy of measurement, expressed either as a half-range percent value (accuracy_is_percent = True) or a half-range quantity. A value of 0 means that accuracy is 100%, i.e. no error. - -A value of unknown_accuracy_value means that accuracy was not recorded."> - name = <"accuracy"> - type = <"Real"> - > - ["accuracy_is_percent"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"If True, indicates that when this object was created, accuracy was recorded as a percent value; if False, as an absolute quantity value."> - name = <"accuracy_is_percent"> - type = <"Boolean"> - > - > - > - ["CODED_TEXT"] = < - documentation = <"A text item whose value must be the rubric from a controlled terminology, the key (i.e. the code') of which is the code attribute. In other words: a CODED_TEXT is a combination of a CODE_PHRASE (effectively a code) and the rubric of that term, from a terminology service, in the language in which the data was authored. - -Since CODED_TEXT is a subtype of TEXT, it can be used in place of it, effectively allowing the type TEXT to mean a text item, which may optionally be coded. - -Misuse: If the intention is to represent a term code attached in some way to a fragment of plain text, CODED_TEXT should not be used."> - name = <"CODED_TEXT"> - ancestors = <"TEXT",...> - properties = < - ["code"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The identifier of a concept in a terminology."> - name = <"code"> - type = <"TERMINOLOGY_CODE"> - is_mandatory = - > - ["term"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The preferred textual rendition of the code attribute."> - name = <"term"> - type = <"String"> - > - > - > - ["COUNT"] = < - documentation = <"Countable quantities. Used for countable types such as pregnancies and steps (taken by a physiotherapy patient), number of cigarettes smoked in a day. - -Misuse: Not to be used for amounts of physical entities (which all have units)."> - name = <"COUNT"> - ancestors = <"AMOUNT",...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The integer count value."> - name = <"value"> - type = <"Integer"> - is_mandatory = - > - > - > - ["DATA_VALUE"] = < - documentation = <"Serves as a common ancestor of all CIMI complex types."> - name = <"DATA_VALUE"> - > - ["DATE"] = < - documentation = <"Represents an absolute point in time, as measured on the Gregorian calendar, and specified only to the day. Semantics defined by ISO 8601. Used for recording dates in real world time. The partial form is used for approximate birth dates, dates of death, etc."> - name = <"DATE"> - ancestors = <"DATE_TIME",...> - > - ["DATE_TIME"] = < - documentation = <"Represents an absolute point in time, specified to the second. Semantics defined by ISO 8601. - -Used for recording a precise point in real world time, and for approximate time stamps, e.g. the origin of a HISTORY in an OBSERVATION which is only partially known."> - name = <"DATE_TIME"> - ancestors = <"QUANTIFIED",...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"ISO8601 date/time string."> - name = <"value"> - type = <"String"> - is_mandatory = - > - > - > - ["DURATION"] = < - documentation = <"Represents a period of time with respect to a notional point in time, which is not specified. A sign may be used to indicate the duration is backwards in time rather than forwards. - -NOTE -a deviation from ISO8601 is supported, allowing the W' designator to be mixed with other designators. See assumed types section in the Support IM. -Used for recording the duration of something in the real world, particularly when there is a need a) to represent the duration in customary format, i.e. days, hours, minutes etc, and b) if it will be used in computational operations with date/time quantities, i.e. additions, subtractions etc. - -Misuse: Durations cannot be used to represent points in time, or intervals of time."> - name = <"DURATION"> - ancestors = <"QUANTITY",...> - properties = < - ["duration_text"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"ISO8601 duration string."> - name = <"duration_text"> - type = <"String"> - > - > - > - ["EHR_URI"] = < - documentation = <"A EHR_URI is a URI which has the scheme name 'ehr', and which can only reference items in EHRs. - -Used to reference items in an EHR, which may be the same as the current EHR (containing this link), or another."> - name = <"EHR_URI"> - ancestors = <"URI_VALUE",...> - > - ["ENCAPSULATED"] = < - documentation = <"Abstract class defining the common meta-data of all types of encapsulated data."> - name = <"ENCAPSULATED"> - ancestors = <"DATA_VALUE",...> - > - ["IDENTIFIER"] = < - documentation = <"Type for representing identifiers of real-world entities. Typical identifiers include drivers licence number, social security number, veterans affairs number, prescription id, order id, and so on."> - name = <"IDENTIFIER"> - ancestors = <"DATA_VALUE",...> - properties = < - ["use"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The purpose of this identifier. Use is considered a modifying attribute because applications should not mistake a temporary id for a permanent one. Applications can assume that an identifier is permanent unless it explicitly says that it is temporary."> - name = <"use"> - type = <"CODED_TEXT"> - > - ["type"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Optional identifier type, such as prescription, or Social Security Number. One day a controlled vocabulary might be possible for this."> - name = <"type"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["issuer"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Optional organisation that assigned the id to the item being identified."> - name = <"issuer"> - type = <"String"> - is_mandatory = - > - ["namespace"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The namespace in which the id is unique."> - name = <"namespace"> - type = <"URI_VALUE"> - > - ["id"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The identifier value. Often structured, according to the definition of the issuing authority’s rules."> - name = <"id"> - type = <"String"> - is_mandatory = - > - > - > - ["INTERVAL_VALUE"] = < - documentation = <"Generic class defining an interval (i.e. range) of a comparable type. An interval is a contiguous subrange of a comparable base type. Used to define intervals of dates, times, quantities (whose units match) and so on. The type parameter, T, must be a descendant of the type ORDERED_VALUE, which is necessary (but not sufficient) for instances to be compared (strictly_comparable is also needed). - -The basic semantics are derived from the class Interval<T>, described in the support RM."> - name = <"INTERVAL_VALUE"> - ancestors = <"DATA_VALUE",...> - generic_parameter_defs = < - ["T"] = < - name = <"T"> - conforms_to_type = <"ORDERED_VALUE"> - > - > - properties = < - ["lower_included"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"True if the lower bound of the interval is included. False otherwise."> - name = <"lower_included"> - type = <"Boolean"> - is_mandatory = - > - ["lower_unbounded"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"True if the interval does not specify a lower bound. False otherwise."> - name = <"lower_unbounded"> - type = <"Boolean"> - is_mandatory = - > - ["upper_included"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"True if the upper bound of the interval is included. Otherwise, false."> - name = <"upper_included"> - type = <"Boolean"> - is_mandatory = - > - ["upper_unbounded"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"True if the upper bound is unspecified. False otherwise."> - name = <"upper_unbounded"> - type = <"Boolean"> - is_mandatory = - > - ["lower"] = (P_BMM_SINGLE_PROPERTY_OPEN) < - documentation = <"The interval's lower bound. Values outside the lower bound lie outside the range specified by this interval."> - name = <"lower"> - type = <"T"> - > - ["upper"] = (P_BMM_SINGLE_PROPERTY_OPEN) < - documentation = <"The reference range's upper bound. Values outside the upper bound lie outside the range specified by this interval."> - name = <"upper"> - type = <"T"> - > - > - > - ["MULTIMEDIA"] = < - documentation = <"A specialisation of DV_ENCAPSULATED for audiovisual and biosignal types. Includes further metadata relating to multimedia types which are not applicable to other subtypes of DV_ENCAPSULATED."> - name = <"MULTIMEDIA"> - ancestors = <"ENCAPSULATED",...> - properties = < - ["alternate_text"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Text to display in lieu of multimedia display/replay."> - name = <"alternate_text"> - type = <"Byte"> - > - ["data"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The actual data found at uri, if supplied inline."> - name = <"data"> - type_def = < - container_type = <"List"> - type = <"Byte"> - > - cardinality = <|>=0|> - > - ["media_type"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Data media type coded from openEHR code set media types (interface for the IANA MIME types code set)."> - name = <"media_type"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["uri"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"URI reference to electronic information stored outside the record as a file, database entry etc, if supplied as a reference."> - name = <"uri"> - type = <"URI_VALUE"> - > - > - > - ["ORDERED_VALUE"] = < - documentation = <"Abstract class defining the concept of ordered values, which includes ordinals as well as true quantities."> - name = <"ORDERED_VALUE"> - ancestors = <"DATA_VALUE",...> - > - ["ORDINAL"] = < - documentation = <"Models rankings and scores, e.g. pain, Apgar values, etc, where there is a) implied ordering, b) no implication that the distance between each value is constant, and c) the total number of values is finite. Note that although the term ordinal' in mathematics means natural numbers only, here any integer is allowed, since negative and zero values are often used by medical professionals for values around a neutral point. Examples of sets of ordinal values: - --3, -2, -1, 0, 1, 2, 3  — reflex response values -0, 1, 2  — Apgar values -This class is used for recording any clinical datum which is customarily recorded using symbolic values. Example: the results on a urinalysis strip, e.g. {neg, trace, , , } are used for leucocytes, protein, nitrites etc; for non-haemolysed blood {neg, trace, moderate}; for haemolysed blood small, moderate, large}."> - name = <"ORDINAL"> - ancestors = <"ORDERED_VALUE",...> - properties = < - ["symbol"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Coded textual representation of this value in the enumeration, which may be strings made from + symbols, or other enumerations of terms such as mild , moderate , severe , or even the same number series as the values, e.g. 1 , 2 , 3 . Codes come from archetype."> - name = <"symbol"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["value"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Value in ordered enumeration of values. Any integer value can be used."> - name = <"value"> - type = <"Real"> - is_mandatory = - > - > - > - ["PARSABLE"] = < - documentation = <"Encapsulated data expressed as a parsable String. The internal model of the data item is not described in the openEHR model in common with other encapsulated types, but in this case, the form of the data is assumed to be plaintext, rather than compressed or other types of large binary data. -"> - name = <"PARSABLE"> - ancestors = <"ENCAPSULATED",...> - properties = < - ["formalism"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Name of the formalism, e.g. GLIF 1.0 , Proforma etc."> - name = <"formalism"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["value"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The string, which may validly be empty in some syntaxes."> - name = <"value"> - type = <"String"> - is_mandatory = - > - > - > - ["PLAIN_TEXT"] = < - documentation = <"Plain text potentially with simple formatting"> - name = <"PLAIN_TEXT"> - ancestors = <"TEXT",...> - properties = < - ["language"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The text's language."> - name = <"language"> - type = <"CODED_TEXT"> - > - > - > - ["PROPORTION"] = < - documentation = <"Models a ratio of values, i.e. where the numerator and denominator are both pure numbers. The valid_proportion_kind property of the PROPORTION_KIND class is used to control the type attribute to be one of a defined set. - -Used for recording titers (e.g. 1:128), concentration ratios, e.g. Na:K (unitary denominator), albumin:creatinine ratio, and percentages, e.g. red cell distirbution width (RDW). - -Misuse: Should not be used to represent things like blood pressure which are often written using a '/' character, giving the misleading impression that the item is a ratio, when in fact it is a structured value. Similarly, visual acuity, often written as (e.g.) “6/24” in clinical notes is not a ratio but an ordinal (which includes non-numeric symbols like CF = count fingers etc). Should not be used for formulations."> - name = <"PROPORTION"> - ancestors = <"AMOUNT",...> - properties = < - ["denominator"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Denominator of ratio."> - name = <"denominator"> - type = <"Real"> - is_mandatory = - > - ["numerator"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Numerator of ratio."> - name = <"numerator"> - type = <"Real"> - is_mandatory = - > - ["precision"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Precision to which the numerator and denominator values of the proportion are expressed, in terms of number of decimal places. The value 0 implies an integral quantity. The value -1 implies no limit, i.e. any number of decimal places."> - name = <"precision"> - type = <"Integer"> - > - ["type"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Indicates semantic type of proportion, including percent, unitary etc."> - name = <"type"> - type = <"CODED_TEXT"> - is_mandatory = - > - > - > - ["QUANTIFIED"] = < - documentation = <"Abstract class defining the concept of true quantified values, i.e. values which are not only ordered, but which have a precise magnitude."> - name = <"QUANTIFIED"> - ancestors = <"ORDERED_VALUE",...> - properties = < - ["value_status"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Optional status of magnitude with values: - -= : magnitude is a point value -< : value is < magnitude -> : value is > magnitude -<= : value is <= magnitude ->= : value is >= magnitude -~ : value is approximately magnitude -If not present, meaning is = ."> - name = <"value_status"> - type = <"TEXT"> - > - > - > - ["QUANTITY"] = < - documentation = <"Quantitified type representing scientific quantities, i.e. quantities expressed as a magnitude and units. Units were inspired by the Unified Code for Units of Measure (UCUM), developed by Gunther Schadow and Clement J. McDonald of The Regenstrief Institute. - -Can also be used for time durations, where it is more convenient to treat these as simply a number of seconds rather than days, months, years."> - name = <"QUANTITY"> - ancestors = <"AMOUNT",...> - properties = < - ["precision"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Precision to which the value of the quantity is expressed, in terms of number of decimal places. The value 0 implies an integral quantity. The value -1 implies no limit, i.e. any number of decimal places."> - name = <"precision"> - type = <"Integer"> - > - ["units"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Units, expressed expressed as codes (generally UCUM), e.g. 'kg/m2', “mm[Hg]', 'ms-1', 'km/h'. Implemented accordingly in subtypes."> - name = <"units"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["value"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Numeric magnitude of the quantity. - -"> - name = <"value"> - type = <"Real"> - is_mandatory = - > - > - > - ["TERM_MAPPING"] = < - documentation = <"Represents a coded term mapped to a TEXT, and the relative match of the target term with respect to the mapped item. Plain or coded text items may appear in the EHR for which one or mappings in alternative terminologies are required. Mappings are only used to enable computer processing, so they can only be instances of CODED_TEXT. Used for adding classification terms (e.g. adding ICD classifiers to SNOMED descriptive terms), or mapping into equivalents in other terminologies (e.g. across nursing vocabularies)."> - name = <"TERM_MAPPING"> - properties = < - ["match"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The relative match of the target term with respect to the mapped text item. Result meanings: - -'>': the mapping is to a broader term e.g. orginal text = arbovirus infection , target = viral infection -'=': the mapping is to a (supposedly) equivalent to the original item -'<': the mapping is to a narrower term. e.g. original text = diabetes , mapping = diabetes mellitus . -'?': the kind of mapping is unknown. -The first three values are taken from the ISO standards 2788 ( Guide to Establishment and development of monolingual thesauri ) and 5964 ( Guide to Establishment and development of multilingual thesauri )."> - name = <"match"> - type = <"Character"> - is_mandatory = - > - ["purpose"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Purpose of the mapping e.g. automated data mining , billing , interoperability"> - name = <"purpose"> - type = <"CODED_TEXT"> - > - ["target"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The target term of the mapping."> - name = <"target"> - type = <"CODED_TEXT"> - is_mandatory = - > - > - > - ["TEXT"] = < - documentation = <"Abstract parent for text and coded text item, which may contain any amount of legal characters arranged as e.g. words, sentences etc (i.e. one TEXT may be more than one word). Visual formatting and hyperlinks may be included."> - name = <"TEXT"> - ancestors = <"DATA_VALUE",...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Displayable rendition of the item, regardless of its underlying structure. For CODED_TEXT, this is the rubric of the complete term as provided by the terminology service. No carriage returns, line feeds, or other non-printing characters permitted."> - name = <"value"> - type = <"String"> - is_mandatory = - > - ["mapping"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Terms from other terminologies most closely matching this term, typically used where the originator (e.g. pathology lab) of information uses a local terminology but also supplies one or more equivalents from well known terminologies (e.g. LOINC)."> - name = <"mapping"> - type_def = < - container_type = <"List"> - type = <"TERM_MAPPING"> - > - cardinality = <|>=0|> - > - > - > - ["TIME"] = < - documentation = <"Represents an absolute point in time from an origin usually interpreted as meaning the start of the current day, specified to a fraction of a second. Semantics defined by ISO 8601. - -Used for recording real world times, rather than scientifically measured fine amounts of time. The partial form is used for approximate times of events and substance administrations."> - name = <"TIME"> - ancestors = <"DATE_TIME",...> - > - ["URI_VALUE"] = < - documentation = <"A reference to an object which conforms to the Universal Resource Identifier (URI) standard. See 'Universal Resource Identifiers in WWW' by Tim Berners-Lee at http://www.ietf.org/rfc/rfc3986.txt. This is a World-Wide Web RFC for global identification of resources. See http://www.w3.org/Addressing for a starting point on URIs."> - name = <"URI_VALUE"> - ancestors = <"DATA_VALUE",...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Value of URI"> - name = <"value"> - type = <"URI"> - is_mandatory = - > - > - > - ["YESNO"] = < - documentation = <"Items which are truly boolean data, such as true/false or yes/no answers. For such data, it is important to devise the meanings (usually questions in subjective data) carefully, so that the only allowed results are in fact true or false. - -Misuse: The DV_BOOLEAN class should not be used as a replacement for naively modelled enumerated types such as male/female etc. Such values should be coded, and in any case the enumeration often has more than two values."> - name = <"YESNO"> - ancestors = <"DATA_VALUE",...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The boolean value for the type."> - name = <"value"> - type = <"Boolean"> - is_mandatory = - > - > - > - ["INSTANT"] = < - documentation = <"An instant in time - known at least to the second and always includes a time zone. Note: This is intended for precisely observed times (typically system logs etc.), and not human-reported times - for them, use date and dateTime. instant is a more constrained dateTime"> - name = <"INSTANT"> - ancestors = <"DATE_TIME",...> - > - ["POSITIVE_INTEGER_COUNT"] = < - documentation = <"An integer whose value is greater than zero."> - name = <"POSITIVE_INTEGER_COUNT"> - ancestors = <"UNSIGNED_INTEGER_COUNT",...> - > - ["UNSIGNED_INTEGER_COUNT"] = < - documentation = <"An integer whose value is greater or equal to zero."> - name = <"UNSIGNED_INTEGER_COUNT"> - ancestors = <"COUNT",...> - > - ["RATIO"] = < - documentation = <"A parameterizable ratio."> - name = <"RATIO"> - ancestors = <"DATA_VALUE",...> - generic_parameter_defs = < - ["T"] = < - name = <"T"> - conforms_to_type = <"ORDERED_VALUE"> - > - > - properties = < - ["denominator"] = (P_BMM_SINGLE_PROPERTY_OPEN) < - documentation = <"The denominator of the ratio."> - name = <"denominator"> - type = <"T"> - > - ["numerator"] = (P_BMM_SINGLE_PROPERTY_OPEN) < - documentation = <"The numerator of the ratio."> - name = <"numerator"> - type = <"T"> - > - ["type"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Indicates semantic type of the ratio."> - name = <"type"> - type = <"CODED_TEXT"> - > - > - > -> -primitive_types = < - ["Any"] = < - documentation = <"Abstract supertype. Usually maps to a type like “Any” or “Object” in an object system. Defined here to provide the value and reference equality semantics."> - name = <"Any"> - > - ["Array"] = < - documentation = <"physical container of items indexed by number"> - name = <"Array"> - generic_parameter_defs = < - ["T"] = < - name = <"T"> - conforms_to_type = <"Any"> - > - > - > - ["List"] = < - documentation = <"container of items, implied order, non-unique membership"> - name = <"List"> - generic_parameter_defs = < - ["T"] = < - name = <"T"> - conforms_to_type = <"Any"> - > - > - > - ["Boolean"] = < - documentation = <"logical True/False values; usually physically represented as an integer, but need not be"> - name = <"Boolean"> - > - ["Byte"] = < - documentation = <"a type whose value is an 8-bit value."> - name = <"Byte"> - > - ["Character"] = < - documentation = <"a type whose value is a member of an 8-bit character-set (ISO: 'repertoire')."> - name = <"Character"> - > - ["Integer"] = < - documentation = <"An integer type"> - name = <"Integer"> - > - ["Real"] = < - documentation = <"32-bit real numbers in any interoperable representation, including single-width IEEE floating point"> - name = <"Real"> - > - ["String"] = < - documentation = <"represents unicode-enabled strings"> - name = <"String"> - > - ["URI"] = < - documentation = <"A URI"> - name = <"URI"> - > - ["TERMINOLOGY_CODE"] = < - documentation = <"Reference to a concept in a terminology."> - name = <"TERMINOLOGY_CODE"> - properties = < - ["code"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The identifier of a concept in a terminology."> - name = <"code"> - type = <"String"> - is_mandatory = - > - ["terminology_id"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The terminology that provides the namespace for the code attribute."> - name = <"terminology_id"> - type = <"String"> - is_mandatory = - > - ["terminology_version"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The version of the terminology where the concept exists."> - name = <"terminology_version"> - type = <"String"> - > - ["uri"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A URI representation for the identifier of the concept represented by CODED_TEXT."> - name = <"uri"> - type = <"URI"> - > - > - > -> - diff --git a/referencemodels/src/main/resources/bmm/CIMI/Release-0.0.3/BMM/CIMI_RM_FOUNDATION.v.0.0.3.bmm b/referencemodels/src/main/resources/bmm/CIMI/Release-0.0.3/BMM/CIMI_RM_FOUNDATION.v.0.0.3.bmm deleted file mode 100644 index bb78148bb..000000000 --- a/referencemodels/src/main/resources/bmm/CIMI/Release-0.0.3/BMM/CIMI_RM_FOUNDATION.v.0.0.3.bmm +++ /dev/null @@ -1,183 +0,0 @@ --- Basic Metamodel Syntax Version -bmm_version = <"2.1"> - --- ---------------------------------- --- schema identification --- (schema_id computed as __) --- ---------------------------------- -rm_publisher = <"CIMI"> -schema_name = <"RM_FOUNDATION"> -rm_release = <"0.0.3"> - --- ---------------------------------- --- schema documentation --- ---------------------------------- -schema_revision = <"Wed Jul 26 08:19:06 PDT 2017"> -schema_lifecycle_state = <"dstu"> -schema_description = <"CIMI_RM_FOUNDATION.v0.0.3.mdzip - Schema generated from UML"> - - --- ---------------------------------- --- archetyping --- ---------------------------------- -archetype_rm_closure_packages = <"CIMI_Foundation_RM.Foundation", "CIMI_Foundation_RM.Party"> -includes = < - ["1"] = < - id = <"cimi_rm_core_0.0.3"> - > -> -packages = < - ["CIMI_Foundation_RM"] = < - name = <"CIMI_Foundation_RM"> - packages = < - ["Foundation"] = < - name = <"Foundation"> - classes = <"COMPOSITION", "CONTENT", "SECTION", "ENTRY", "CLUSTER", "VIRTUAL_CLUSTER", "BASE_ENTITY"> - > - ["Party"] = < - name = <"Party"> - classes = <"PARTY", "PARTY_RELATIONSHIP", "PARTICIPATION", "BASE_ROLE", "BASE_ACTOR"> - > - > - > -> -class_definitions = < - ["COMPOSITION"] = < - documentation = <"A composition is considered the unit of modification of the record, the unit of transmission in record extracts, and the unit of attestation by authorising clinicians. In this latter sense, it may be considered equivalent to a signed document."> - name = <"COMPOSITION"> - ancestors = <"LOCATABLE",...> - properties = < - ["content"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The content that makes up a composition."> - name = <"content"> - type_def = < - container_type = <"List"> - type = <"CONTENT"> - > - cardinality = <|>=0|> - > - > - > - ["CONTENT"] = < - documentation = <"Abstract ancestor of all concrete content types. A unit of content that makes up a composition - e.g., a clinical statement in a patient record, a simple or composite action is a knowledge document."> - name = <"CONTENT"> - ancestors = <"LOCATABLE",...> - > - ["SECTION"] = < - documentation = <"Represents a heading in a heading structure, or section tree . Can also be used to represent a collection of entries without metadata. (For collections of entries with shared metadata, use COMPOUND _ENTRY instead). Created according to archetyped structures for typical headings such as SOAP, physical examination, but also pathology result heading structures. Should not be used instead of ENTRY hierarchical structures."> - name = <"SECTION"> - ancestors = <"CONTENT",...> - properties = < - ["content"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"The content that makes up a section in a composition."> - name = <"content"> - type_def = < - container_type = <"List"> - type = <"CONTENT"> - > - cardinality = <|>=0|> - > - > - > - ["ENTRY"] = < - documentation = <"An ENTRY is the root of a logical item of hard clinical information created in the clinical statement context, within a clinical session or of clinical knowledge in a knowledge artifact. - -With regards to clinical information entries, there can be numerous such contexts in a clinical session. Observations and other Entry types only ever document information captured/created in the event documented by the enclosing Composition. - -An ENTRY is also the minimal unit of information any query should return, since a whole ENTRY (including subparts) records spatial structure, timing information, and contextual information, as well as the subject and generator of the information. -"> - name = <"ENTRY"> - ancestors = <"CONTENT",...> - > - ["CLUSTER"] = < - documentation = <"Abstract class representing a reusable structure in a model such as an address or an entity such as a device."> - name = <"CLUSTER"> - ancestors = <"LOCATABLE",...> - > - ["VIRTUAL_CLUSTER"] = < - documentation = <"A dependent model structure designed to support attribute reuse but which may be ignored by tooling such as code generators. This allows grouping of attributes to be used in a number of compositional structures in order to encourage pattern reuse and consistency but which can be structurally flattened in a derived artifact (e.g., a java class representing the composition). An example of this pattern is the CIMI Clinical Statement pattern which combines statement context and topic to build the set of relevant clinical statements."> - name = <"VIRTUAL_CLUSTER"> - ancestors = <"CLUSTER",...> - > - ["BASE_ENTITY"] = < - documentation = <"Parent class for all entities."> - name = <"BASE_ENTITY"> - ancestors = <"CLUSTER",...> - > - ["PARTY"] = < - documentation = <"A party involved in an activity. PARTY has two specializations: ACTOR and ROLE."> - name = <"PARTY"> - ancestors = <"LOCATABLE",...> - properties = < - ["type"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Code for the party."> - name = <"type"> - type = <"CODED_TEXT"> - is_mandatory = - > - ["relationship"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"Party relationship(s) associated with this party. E.g., the roles an actor may play."> - name = <"relationship"> - type_def = < - container_type = <"List"> - type = <"PARTY_RELATIONSHIP"> - > - cardinality = <|>=0|> - > - ["identifier"] = (P_BMM_CONTAINER_PROPERTY) < - documentation = <"An identifier for the party."> - name = <"identifier"> - type_def = < - container_type = <"List"> - type = <"IDENTIFIER"> - > - cardinality = <|>=0|> - > - > - > - ["PARTY_RELATIONSHIP"] = < - documentation = <"Association class relating two parties such as the association of an actor with one or more roles."> - name = <"PARTY_RELATIONSHIP"> - ancestors = <"ASSOCIATION_CLASS",...> - properties = < - ["party"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"The party target of the relationship."> - name = <"party"> - type = <"PARTY"> - is_mandatory = - > - > - > - ["PARTICIPATION"] = < - documentation = <"Model of a participation of a Party (any Actor or Role) in an activity. Used to represent any participation of a Party in some activity, which is not explicitly in the model, e.g. assisting nurse. Can be used to record past or future participations. Should not be used in place of more permanent relationships between demographic entities."> - name = <"PARTICIPATION"> - ancestors = <"ASSOCIATION_CLASS",...> - properties = < - ["party"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"A party involved in an activity. PARTY has two specializations: ACTOR and ROLE."> - name = <"party"> - type = <"PARTY"> - is_mandatory = - > - > - > - ["BASE_ROLE"] = < - documentation = <"Capacity in which an actor is involved in an activity. For instance, 'attending physician'."> - name = <"BASE_ROLE"> - ancestors = <"PARTY",...> - > - ["BASE_ACTOR"] = < - documentation = <"An entity acting as an actor assuming a role in a participation. For instance, a person may act as a provider in an encounter with a patient."> - name = <"BASE_ACTOR"> - ancestors = <"PARTY",...> - properties = < - ["actor"] = (P_BMM_SINGLE_PROPERTY) < - documentation = <"Entity involved in an activity. Typically a specific person or organization."> - name = <"actor"> - type = <"BASE_ENTITY"> - is_mandatory = - > - > - > -> - diff --git a/referencemodels/src/main/resources/bmm/FHIR/DSTU/BMM/hl7_fhir_resourceses_dstu.bmm b/referencemodels/src/main/resources/bmm/FHIR/DSTU/BMM/hl7_fhir_resourceses_dstu.bmm deleted file mode 100755 index b7ba8629d..000000000 --- a/referencemodels/src/main/resources/bmm/FHIR/DSTU/BMM/hl7_fhir_resourceses_dstu.bmm +++ /dev/null @@ -1,1882 +0,0 @@ --- --- component: openEHR Archetype Project --- description: FHIR Resources expressed as an Basic Meta-Model (BMM) file --- the BMM object meta-model classes found at https://github.com/wolandscat/EOMF/tree/master/library/bmm --- http://www.openehr.org/svn/ref_impl_eiffel/BRANCHES/specialisation/libraries/common_libs/src/basic_meta_model --- keywords: reference model, meta-model, archetypes --- author: Thomas Beale --- support: Ocean Informatics --- copyright: Copyright (c) 2014 openEHR Foundation --- license: Apache 2.0 --- - - ------------------------------------------------------- --- BMM version on which these schemas are based. --- Current BMM version can be found as value of 'Bmm_internal_version' in --- https://github.com/openEHR/adl-tools/blob/master/libraries/common_libs/src/basic_meta_model/bmm_definitions.e --- ------------------------------------------------------- -bmm_version = <"2.1"> - ------------------------------------------------------- --- schema identification --- (schema_id computed as __) ------------------------------------------------------- -rm_publisher = <"hl7"> -schema_name = <"fhir"> -rm_release = <"0.8.3"> - ------------------------------------------------------- --- schema documentation ------------------------------------------------------- -schema_revision = <"0.9.0"> -schema_lifecycle_state = <"dstu"> -schema_description = <"HL7 FHIR resources"> - ------------------------------------- --- archetyping ------------------------------------- -archetype_rm_closure_packages = <"org.hl7.fhir", ...> - ------------------------------------------------------- --- packages ------------------------------------------------------- -packages = < - ["org.hl7.fhir"] = < - name = <"org.hl7.fhir"> - packages = < - ["data_types"] = < - name = <"data_types"> - packages = < - ["primitive"] = < - name = <"primitive"> - classes = <"Any", "Base64Binary", "Boolean", "Integer", "Decimal", "String", "Code", "Id", "List", "Array", "Set", "Interval", "Ordered", "Aggregate", "Date", "DateTime", "Instant", "Uri", "Oid", "Uuid", "Xhtml"> - > - ["complex"] = < - name = <"complex"> - classes = <"Ratio", "Period", "Range", "Attachment", "Identifier", "HumanName", "Address", "Contact", "SampledData", "Quantity", "Money", "Count", "Duration", "Distance", "Age", "CodeableConcept", "Coding", "Schedule", "Repeat"> - > - ["other"] = < - name = <"other"> - classes = <"Narrative", "Extension", "ResourceReference"> - > - > - > - ["support"] = < - name = <"support"> - classes = <"Resource", "ValueSet"> - > - ["resources"] = < - name = <"resources"> - packages = < - ["administrative"] = < - name = <"administrative"> - packages = < - ["attribution"] = < - name = <"attribution"> - classes = <"Party", "Person", "Practitioner", "Qualification", "Organization", "Patient", "Link", "Animal"> - > - ["entities"] = < - name = <"entities"> - classes = <"Device", "Location", "Substance", "Instance", "Ingredient", "Group", "Characteristic"> - > - ["clinical"] = < - name = <"clinical"> - classes = <"Observation", "Related", "ReferenceRange", "Specimen", "Treatment", "Container", "Collection", "Source"> - > - > - > - > - > - > - > -> - ------------------------------------------------------- --- primitive types ------------------------------------------------------- - -primitive_types = < - ["Any"] = < - name = <"Any"> - is_abstract = - > - ["Base64Binary"] = < - name = <"Base64Binary"> - ancestors = <"Any", ...> - > - ["Boolean"] = < - name = <"Boolean"> - ancestors = <"Any", ...> - > - ["Integer"] = < - name = <"Integer"> - ancestors = <"Any", ...> - > - ["PositiveInt"] = < - name = <"PositiveInt"> - ancestors = <"Integer", ...> - > - ["UnsignedInt"] = < - name = <"UnsignedInt"> - ancestors = <"Integer", ...> - > - ["Decimal"] = < - name = <"Decimal"> - ancestors = <"Any", ...> - > - - ["String"] = < - name = <"String"> - ancestors = <"Any", ...> - > - ["Id"] = < - name = <"Id"> - ancestors = <"String", ...> - > - ["Code"] = < - name = <"Code"> - ancestors = <"String", ...> - > - ["Xhtml"] = < - name = <"Xhtml"> - ancestors = <"String", ...> - > - - ["Uri"] = < - name = <"Uri"> - ancestors = <"Any", ...> - > - ["Oid"] = < - name = <"Oid"> - ancestors = <"Uri", ...> - > - ["Uuid"] = < - name = <"Uuid"> - ancestors = <"Uri", ...> - > - - ["Instant"] = < - name = <"Instant"> - ancestors = <"Any", ...> - > - ["Date"] = < - name = <"Date"> - ancestors = <"Any", ...> - > - ["DateTime"] = < - name = <"DateTime"> - ancestors = <"Any", ...> - > - - ["List"] = < - name = <"List"> - ancestors = <"Any", ...> - generic_parameter_defs = < - ["T"] = < - name = <"T"> - > - > - > - ["Array"] = < - name = <"Array"> - ancestors = <"Any", ...> - generic_parameter_defs = < - ["T"] = < - name = <"T"> - > - > - > - ["Set"] = < - name = <"Set"> - ancestors = <"Any", ...> - generic_parameter_defs = < - ["T"] = < - name = <"T"> - > - > - > - ["Interval"] = < - name = <"Interval"> - ancestors = <"Any", ...> - generic_parameter_defs = < - ["T"] = < - name = <"T"> - conforms_to_type = <"Ordered"> - > - > - properties = < - ["lower"] = (P_BMM_SINGLE_PROPERTY_OPEN) < - name = <"lower"> - type = <"T"> - > - ["upper"] = (P_BMM_SINGLE_PROPERTY_OPEN) < - name = <"upper"> - type = <"T"> - > - ["lowerUnbounded"] = (P_BMM_SINGLE_PROPERTY) < - name = <"lowerUnbounded"> - type = <"Boolean"> - > - ["upperUnbounded"] = (P_BMM_SINGLE_PROPERTY) < - name = <"upperUnbounded"> - type = <"Boolean"> - > - ["lowerIncluded"] = (P_BMM_SINGLE_PROPERTY) < - name = <"lowerIncluded"> - type = <"Boolean"> - > - ["upperIncluded"] = (P_BMM_SINGLE_PROPERTY) < - name = <"upperIncluded"> - type = <"Boolean"> - > - > - > - ["Ordered"] = < - name = <"Ordered"> - is_abstract = - ancestors = <"Any", ...> - > - - ["Aggregate"] = < - name = <"Aggregate"> - ancestors = <"Any", ...> - generic_parameter_defs = < - ["T"] = < - name = <"T"> - > - > - > -> - -class_definitions = < - - -- - ---------------- Data types: Complex types ------------------- - -- - - ["Quantity"] = < - name = <"Quantity"> - ancestors = <"Any", ...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"Decimal"> - > - ["comparator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"comparator"> - type = <"Code"> - > - ["units"] = (P_BMM_SINGLE_PROPERTY) < - name = <"units"> - type = <"String"> - > - ["system"] = (P_BMM_SINGLE_PROPERTY) < - name = <"system"> - type = <"Uri"> - > - ["code"] = (P_BMM_SINGLE_PROPERTY) < - name = <"code"> - type = <"Code"> - > - > - > - - ["Age"] = < - name = <"Age"> - ancestors = <"Quantity", ...> - > - - ["Distance"] = < - name = <"Distance"> - ancestors = <"Quantity", ...> - > - - ["Duration"] = < - name = <"Duration"> - ancestors = <"Quantity", ...> - > - - ["Count"] = < - name = <"Count"> - ancestors = <"Quantity", ...> - > - - ["Money"] = < - name = <"Money"> - ancestors = <"Quantity", ...> - > - - ["Ratio"] = < - name = <"Ratio"> - ancestors = <"Any", ...> - properties = < - ["numerator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"numerator"> - type = <"Quantity"> - > - ["denominator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"denominator"> - type = <"Quantity"> - > - > - > - - ["Range"] = < - name = <"Range"> - ancestors = <"Any", ...> - properties = < - ["low"] = (P_BMM_SINGLE_PROPERTY) < - name = <"low"> - type = <"Quantity"> - > - ["high"] = (P_BMM_SINGLE_PROPERTY) < - name = <"high"> - type = <"Quantity"> - > - > - > - - ["SampledData"] = < - name = <"SampledData"> - ancestors = <"Any", ...> - properties = < - ["origin"] = (P_BMM_SINGLE_PROPERTY) < - name = <"origin"> - type = <"Quantity"> - is_mandatory = - > - ["period"] = (P_BMM_SINGLE_PROPERTY) < - name = <"period"> - type = <"Decimal"> - is_mandatory = - > - ["factor"] = (P_BMM_SINGLE_PROPERTY) < - name = <"factor"> - type = <"Decimal"> - > - ["lowerLimit"] = (P_BMM_SINGLE_PROPERTY) < - name = <"lowerLimit"> - type = <"Decimal"> - > - ["upperLimit"] = (P_BMM_SINGLE_PROPERTY) < - name = <"upperLimit"> - type = <"Decimal"> - > - > - > - - ["Period"] = < - name = <"Period"> - ancestors = <"Any", ...> - properties = < - ["start"] = (P_BMM_SINGLE_PROPERTY) < - name = <"start"> - type = <"DateTime"> - > - ["end"] = (P_BMM_SINGLE_PROPERTY) < - name = <"end"> - type = <"DateTime"> - > - > - > - - ["Identifier"] = < - name = <"Identifier"> - ancestors = <"Any", ...> - properties = < - ["use"] = (P_BMM_SINGLE_PROPERTY) < - name = <"use"> - type = <"Code"> - > - ["label"] = (P_BMM_SINGLE_PROPERTY) < - name = <"label"> - type = <"String"> - > - ["system"] = (P_BMM_SINGLE_PROPERTY) < - name = <"system"> - type = <"Uri"> - > - ["period"] = (P_BMM_SINGLE_PROPERTY) < - name = <"period"> - type = <"Period"> - > - ["assigner"] = (P_BMM_SINGLE_PROPERTY) < - name = <"assigner"> - type = <"Organization"> - > - > - > - - ["Attachment"] = < - name = <"Attachment"> - ancestors = <"Any", ...> - properties = < - ["contentType"] = (P_BMM_SINGLE_PROPERTY) < - name = <"contentType"> - type = <"Code"> - is_mandatory = - > - ["language"] = (P_BMM_SINGLE_PROPERTY) < - name = <"language"> - type = <"Code"> - > - ["uri"] = (P_BMM_SINGLE_PROPERTY) < - name = <"uri"> - type = <"Uri"> - > - ["data"] = (P_BMM_SINGLE_PROPERTY) < - name = <"data"> - type = <"Base64Binary"> - > - ["hash"] = (P_BMM_SINGLE_PROPERTY) < - name = <"hash"> - type = <"Base64Binary"> - > - ["size"] = (P_BMM_SINGLE_PROPERTY) < - name = <"size"> - type = <"Integer"> - > - ["title"] = (P_BMM_SINGLE_PROPERTY) < - name = <"title"> - type = <"String"> - > - > - > - - ["CodeableConcept"] = < - name = <"CodeableConcept"> - ancestors = <"Any", ...> - properties = < - ["coding"] = (P_BMM_SINGLE_PROPERTY) < - name = <"coding"> - type = <"Coding"> - > - ["other_codings"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"other_codings"> - type_def = < - container_type = <"List"> - type = <"Coding"> - > - cardinality = <|>=0|> - > - ["text"] = (P_BMM_SINGLE_PROPERTY) < - name = <"text"> - type = <"String"> - > - > - > - - ["Coding"] = < - name = <"Coding"> - ancestors = <"Any", ...> - properties = < - ["system"] = (P_BMM_SINGLE_PROPERTY) < - name = <"system"> - type = <"Uri"> - > - ["version"] = (P_BMM_SINGLE_PROPERTY) < - name = <"version"> - type = <"String"> - > - ["code"] = (P_BMM_SINGLE_PROPERTY) < - name = <"code"> - type = <"Code"> - > - ["display"] = (P_BMM_SINGLE_PROPERTY) < - name = <"display"> - type = <"String"> - > - ["primary"] = (P_BMM_SINGLE_PROPERTY) < - name = <"primary"> - type = <"Boolean"> - > - ["valueSet"] = (P_BMM_GENERIC_PROPERTY) < - name = <"valueSet"> - type_def = < - root_type = <"ResourceReference"> - generic_parameters = <"ValueSet"> - > - > - > - > - - ["HumanName"] = < - name = <"HumanName"> - ancestors = <"Any", ...> - properties = < - ["use"] = (P_BMM_SINGLE_PROPERTY) < - name = <"use"> - type = <"Code"> - > - ["text"] = (P_BMM_SINGLE_PROPERTY) < - name = <"text"> - type = <"String"> - > - ["family"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"family"> - type_def = < - container_type = <"List"> - type = <"String"> - > - cardinality = <|>=0|> - > - ["given"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"given"> - type_def = < - container_type = <"List"> - type = <"String"> - > - cardinality = <|>=0|> - > - ["prefix"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"prefix"> - type_def = < - container_type = <"List"> - type = <"String"> - > - cardinality = <|>=0|> - > - ["suffix"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"suffix"> - type_def = < - container_type = <"List"> - type = <"String"> - > - cardinality = <|>=0|> - > - ["period"] = (P_BMM_SINGLE_PROPERTY) < - name = <"period"> - type = <"Period"> - > - > - > - - ["Address"] = < - name = <"Address"> - ancestors = <"Any", ...> - properties = < - ["use"] = (P_BMM_SINGLE_PROPERTY) < - name = <"use"> - type = <"Code"> - > - ["text"] = (P_BMM_SINGLE_PROPERTY) < - name = <"text"> - type = <"String"> - > - ["line"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"line"> - type_def = < - container_type = <"List"> - type = <"String"> - > - cardinality = <|>=0|> - > - ["city"] = (P_BMM_SINGLE_PROPERTY) < - name = <"city"> - type = <"String"> - > - ["state"] = (P_BMM_SINGLE_PROPERTY) < - name = <"state"> - type = <"String"> - > - ["zip"] = (P_BMM_SINGLE_PROPERTY) < - name = <"zip"> - type = <"String"> - > - ["country"] = (P_BMM_SINGLE_PROPERTY) < - name = <"country"> - type = <"String"> - > - ["period"] = (P_BMM_SINGLE_PROPERTY) < - name = <"period"> - type = <"Period"> - > - > - > - - ["Schedule"] = < - name = <"Schedule"> - ancestors = <"Any", ...> - properties = < - ["event"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"event"> - type_def = < - container_type = <"List"> - type = <"Period"> - > - cardinality = <|>=0|> - > - > - > - - ["Repeat"] = < - name = <"Repeat"> - ancestors = <"Schedule", ...> - properties = < - ["frequency"] = (P_BMM_SINGLE_PROPERTY) < - name = <"frequency"> - type = <"Integer"> - > - ["when"] = (P_BMM_SINGLE_PROPERTY) < - name = <"when"> - type = <"Code"> - > - ["duration"] = (P_BMM_SINGLE_PROPERTY) < - name = <"duration"> - type = <"Decimal"> - is_mandatory = - > - ["units"] = (P_BMM_SINGLE_PROPERTY) < - name = <"units"> - type = <"Code"> - is_mandatory = - > - ["count"] = (P_BMM_SINGLE_PROPERTY) < - name = <"count"> - type = <"Integer"> - > - ["end"] = (P_BMM_SINGLE_PROPERTY) < - name = <"end"> - type = <"DateTime"> - > - > - > - - ["Contact"] = < - name = <"Contact"> - ancestors = <"Any", ...> - properties = < - ["system"] = (P_BMM_SINGLE_PROPERTY) < - name = <"system"> - type = <"Code"> - > - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"String"> - > - ["use"] = (P_BMM_SINGLE_PROPERTY) < - name = <"use"> - type = <"Code"> - > - ["period"] = (P_BMM_SINGLE_PROPERTY) < - name = <"period"> - type = <"Period"> - > - > - > - - -- - ---------------- Data types: Other types ------------------- - -- - - ["Narrative"] = < - name = <"Narrative"> - ancestors = <"Any", ...> - properties = < - ["status"] = (P_BMM_SINGLE_PROPERTY) < - name = <"status"> - type = <"Code"> - is_mandatory = - > - ["div"] = (P_BMM_SINGLE_PROPERTY) < - name = <"div"> - type = <"Xhtml"> - is_mandatory = - > - > - > - - ["ResourceReference"] = < - name = <"ResourceReference"> - ancestors = <"Any", ...> - generic_parameter_defs = < - ["T"] = < - name = <"T"> - conforms_to_type = <"Resource"> - > - > - properties = < - ["reference"] = (P_BMM_SINGLE_PROPERTY) < - name = <"reference"> - type = <"String"> - is_mandatory = - > - ["resolvesTo"] = (P_BMM_SINGLE_PROPERTY_OPEN) < - name = <"resolvesTo"> - type = <"T"> - is_computed = - > - ["display"] = (P_BMM_SINGLE_PROPERTY) < - name = <"display"> - type = <"String"> - > - > - > - - ["Extension"] = < - name = <"Extension"> - ancestors = <"Any", ...> - properties = < - ["uri"] = (P_BMM_SINGLE_PROPERTY) < - name = <"uri"> - type = <"Uri"> - is_mandatory = - > - ["value"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"value"> - type_def = < - container_type = <"List"> - type = <"Any"> - > - cardinality = <|>=0|> - > - > - > - - -- - ---------------- Support ------------------- - -- - - ["Resource"] = < - name = <"Resource"> - is_abstract = - ancestors = <"Any", ...> - properties = < - ["identifier"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"identifier"> - type_def = < - container_type = <"List"> - type = <"Identifier"> - > - cardinality = <|>=0|> - > - ["extension"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"extension"> - type_def = < - container_type = <"List"> - type = <"Extension"> - > - cardinality = <|>=0|> - > - ["modifierExtension"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"modifierExtension"> - type_def = < - container_type = <"List"> - type = <"Extension"> - > - cardinality = <|>=0|> - > - ["language"] = (P_BMM_SINGLE_PROPERTY) < - name = <"language"> - type = <"Code"> - > - ["text"] = (P_BMM_SINGLE_PROPERTY) < - name = <"text"> - type = <"string"> - > - ["contained"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"contained"> - type_def = < - container_type = <"List"> - type = <"Resource"> - > - cardinality = <|>=0|> - > - > - > - - ["ValueSet"] = < - name = <"ValueSet"> - ancestors = <"Resource", ...> - properties = < - ["version"] = (P_BMM_SINGLE_PROPERTY) < - name = <"version"> - type = <"String"> - > - ["name"] = (P_BMM_SINGLE_PROPERTY) < - name = <"name"> - type = <"String"> - > - ["useContext"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"useContext"> - type_def = < - container_type = <"List"> - type = <"CodeableConcept"> - > - cardinality = <|>=0|> - > - ["immutable"] = (P_BMM_SINGLE_PROPERTY) < - name = <"immutable"> - type = <"Boolean"> - > - ["publisher"] = (P_BMM_SINGLE_PROPERTY) < - name = <"publisher"> - type = <"String"> - > - ["contact"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"contact"> - type_def = < - container_type = <"List"> - type = <"Contact"> - > - cardinality = <|>=0|> - > - ["requirements"] = (P_BMM_SINGLE_PROPERTY) < - name = <"requirements"> - type = <"String"> - > - ["description"] = (P_BMM_SINGLE_PROPERTY) < - name = <"description"> - type = <"String"> - > - ["copyright"] = (P_BMM_SINGLE_PROPERTY) < - name = <"copyright"> - type = <"String"> - > - ["status"] = (P_BMM_SINGLE_PROPERTY) < - name = <"status"> - type = <"Code"> - is_mandatory = - > - ["experimental"] = (P_BMM_SINGLE_PROPERTY) < - name = <"experimental"> - type = <"Boolean"> - > - ["extensible"] = (P_BMM_SINGLE_PROPERTY) < - name = <"extensible"> - type = <"Boolean"> - > - ["date"] = (P_BMM_SINGLE_PROPERTY) < - name = <"date"> - type = <"DateTime"> - > - ["lockedDate"] = (P_BMM_SINGLE_PROPERTY) < - name = <"lockedDate"> - type = <"Date"> - > - > - > - - -- - ---------------- Resources: Administrative ------------------- - -- - - ["Party"] = < - name = <"Party"> - ancestors = <"Resource", ...> - is_abstract = - properties = < - ["telecom"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"telecom"> - type_def = < - container_type = <"List"> - type = <"Contact"> - > - cardinality = <|>=0|> - > - ["address"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"address"> - type_def = < - container_type = <"List"> - type = <"Address"> - > - cardinality = <|>=0|> - > - > - > - - ["Person"] = < - name = <"Person"> - is_abstract = - ancestors = <"Party", ...> - properties = < - ["name"] = (P_BMM_SINGLE_PROPERTY) < - name = <"name"> - type = <"HumanName"> - > - ["gender"] = (P_BMM_SINGLE_PROPERTY) < - name = <"gender"> - type = <"CodeableConcept"> - > - ["birthDate"] = (P_BMM_SINGLE_PROPERTY) < - name = <"birthDate"> - type = <"dateTime"> - > - ["photo"] = (P_BMM_SINGLE_PROPERTY) < - name = <"photo"> - type = <"Attachment"> - > - ["communication"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"communication"> - type_def = < - container_type = <"List"> - type = <"CodeableConcept"> - > - cardinality = <|>=0|> - > - > - > - - ["Practitioner"] = < - name = <"Practitioner"> - ancestors = <"Person", ...> - properties = < - ["organization"] = (P_BMM_GENERIC_PROPERTY) < - name = <"organization"> - type_def = < - root_type = <"ResourceReference"> - generic_parameters = <"Organization"> - > - > - ["role"] = (P_BMM_SINGLE_PROPERTY) < - name = <"role"> - type = <"CodeableConcept"> - > - ["specialty"] = (P_BMM_SINGLE_PROPERTY) < - name = <"specialty"> - type = <"CodeableConcept"> - > - ["period"] = (P_BMM_SINGLE_PROPERTY) < - name = <"period"> - type = <"Period"> - > - ["qualification"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"qualification"> - type_def = < - container_type = <"List"> - type = <"Qualification"> - > - cardinality = <|>=0|> - > - ["location"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"location"> - type_def = < - container_type = <"List"> - type = <"Location"> - > - cardinality = <|>=0|> - > - > - > - - ["Patient"] = < - name = <"Patient"> - ancestors = <"Person", ...> - properties = < - ["deceased"] = (P_BMM_SINGLE_PROPERTY) < - name = <"deceased"> - type = <"Boolean"> - > - ["maritalStatus"] = (P_BMM_SINGLE_PROPERTY) < - name = <"maritalStatus"> - type = <"CodeableConcept"> - > - ["multipleBirth"] = (P_BMM_SINGLE_PROPERTY) < - name = <"multipleBirth"> - type = <"Boolean"> - > - ["period"] = (P_BMM_SINGLE_PROPERTY) < - name = <"period"> - type = <"Period"> - > - ["careProvider"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"careProvider"> - type_def = < - container_type = <"List"> - type_def = (P_BMM_GENERIC_TYPE) < - root_type = <"ResourceReference"> - generic_parameters = <"Party"> - > - > - cardinality = <|>=0|> - > - ["managingOrganization"] = (P_BMM_GENERIC_PROPERTY) < - name = <"managingOrganization"> - type_def = < - root_type = <"ResourceReference"> - generic_parameters = <"Organization"> - > - > - ["active"] = (P_BMM_SINGLE_PROPERTY) < - name = <"active"> - type = <"Boolean"> - > - ["link"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"link"> - type_def = < - container_type = <"List"> - type = <"Link"> - > - cardinality = <|>=0|> - > - ["contact"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"contact"> - type_def = < - container_type = <"List"> - type = <"Contact"> - > - cardinality = <|>=0|> - > - ["animal"] = (P_BMM_SINGLE_PROPERTY) < - name = <"animal"> - type = <"Animal"> - > - > - > - - ["Link"] = < - name = <"Link"> - ancestors = <"Any", ...> - properties = < - ["other"] = (P_BMM_SINGLE_PROPERTY) < - name = <"other"> - type = <"Patient"> - is_mandatory = - > - ["type"] = (P_BMM_SINGLE_PROPERTY) < - name = <"type"> - type = <"Code"> - is_mandatory = - > - > - > - - ["Animal"] = < - name = <"Animal"> - ancestors = <"Any", ...> - properties = < - ["species"] = (P_BMM_SINGLE_PROPERTY) < - name = <"species"> - type = <"CodeableConcept"> - is_mandatory = - > - ["breed"] = (P_BMM_SINGLE_PROPERTY) < - name = <"breed"> - type = <"CodeableConcept"> - > - ["genderStatus"] = (P_BMM_SINGLE_PROPERTY) < - name = <"genderStatus"> - type = <"CodeableConcept"> - > - > - > - - ["Qualification"] = < - name = <"Qualification"> - ancestors = <"Any", ...> - properties = < - ["code"] = (P_BMM_SINGLE_PROPERTY) < - name = <"code"> - type = <"CodeableConcept"> - is_mandatory = - > - ["period"] = (P_BMM_SINGLE_PROPERTY) < - name = <"period"> - type = <"Period"> - > - ["issuer"] = (P_BMM_GENERIC_PROPERTY) < - name = <"issuer"> - type_def = < - root_type = <"ResourceReference"> - generic_parameters = <"Organization"> - > - > - > - > - - ["Organization"] = < - name = <"Organization"> - ancestors = <"Party", ...> - properties = < - ["name"] = (P_BMM_SINGLE_PROPERTY) < - name = <"name"> - type = <"String"> - > - ["type"] = (P_BMM_SINGLE_PROPERTY) < - name = <"type"> - type = <"CodeableConcept"> - > - ["partOf"] = (P_BMM_GENERIC_PROPERTY) < - name = <"partOf"> - type_def = < - root_type = <"ResourceReference"> - generic_parameters = <"Organization"> - > - > - ["active"] = (P_BMM_SINGLE_PROPERTY) < - name = <"active"> - type = <"Boolean"> - > - ["location"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"location"> - type_def = < - container_type = <"List"> - type = <"Location"> - > - cardinality = <|>=0|> - > - > - > - - -- - ---------------- Resources: Entities ------------------- - -- - - ["Location"] = < - name = <"Location"> - ancestors = <"Resource", ...> - properties = < - ["name"] = (P_BMM_SINGLE_PROPERTY) < - name = <"name"> - type = <"String"> - > - > - > - - ["Substance"] = < - name = <"Substance"> - ancestors = <"Resource", ...> - properties = < - ["type"] = (P_BMM_SINGLE_PROPERTY) < - name = <"type"> - type = <"CodeableConcept"> - is_mandatory = - > - ["description"] = (P_BMM_SINGLE_PROPERTY) < - name = <"description"> - type = <"String"> - > - ["ingredient"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"ingredient"> - type_def = < - container_type = <"List"> - type = <"Ingredient"> - > - cardinality = <|>=0|> - > - > - > - - ["Instance"] = < - name = <"Instance"> - ancestors = <"Any", ...> - properties = < - ["identifier"] = (P_BMM_SINGLE_PROPERTY) < - name = <"identifier"> - type = <"Identifier"> - > - ["expiry"] = (P_BMM_SINGLE_PROPERTY) < - name = <"expiry"> - type = <"dateTime"> - > - ["quantity"] = (P_BMM_SINGLE_PROPERTY) < - name = <"quantity"> - type = <"Quantity"> - > - > - > - - ["Ingredient"] = < - name = <"Ingredient"> - ancestors = <"Any", ...> - properties = < - ["quantity"] = (P_BMM_SINGLE_PROPERTY) < - name = <"quantity"> - type = <"Ratio"> - > - ["substance"] = (P_BMM_GENERIC_PROPERTY) < - name = <"substance"> - type_def = < - root_type = <"ResourceReference"> - generic_parameters = <"Substance"> - > - > - > - > - - ["Group"] = < - name = <"Group"> - ancestors = <"Resource", ...> - properties = < - ["type"] = (P_BMM_SINGLE_PROPERTY) < - name = <"type"> - type = <"Code"> - is_mandatory = - > - ["actual"] = (P_BMM_SINGLE_PROPERTY) < - name = <"actual"> - type = <"Boolean"> - is_mandatory = - > - ["code"] = (P_BMM_SINGLE_PROPERTY) < - name = <"code"> - type = <"CodeableConcept"> - > - ["name"] = (P_BMM_SINGLE_PROPERTY) < - name = <"name"> - type = <"String"> - > - ["quantity"] = (P_BMM_SINGLE_PROPERTY) < - name = <"quantity"> - type = <"Integer"> - > - ["member"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"member"> - type_def = < - container_type = <"List"> - type_def = (P_BMM_GENERIC_TYPE) < - root_type = <"ResourceReference"> - generic_parameters = <"Resource"> - > - > - cardinality = <|>=0|> - > - > - > - - ["Characteristic"] = < - name = <"Characteristic"> - ancestors = <"Any", ...> - properties = < - ["code"] = (P_BMM_SINGLE_PROPERTY) < - name = <"code"> - type = <"CodeableConcept"> - is_mandatory = - > - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"CodeableConcept"> - is_mandatory = - > - ["exclude"] = (P_BMM_SINGLE_PROPERTY) < - name = <"exclude"> - type = <"Boolean"> - is_mandatory = - > - > - > - - ["Device"] = < - name = <"Device"> - ancestors = <"Resource", ...> - properties = < - ["type"] = (P_BMM_SINGLE_PROPERTY) < - name = <"type"> - type = <"CodeableConcept"> - is_mandatory = - > - ["manufacturer"] = (P_BMM_SINGLE_PROPERTY) < - name = <"manufacturer"> - type = <"String"> - > - ["model"] = (P_BMM_SINGLE_PROPERTY) < - name = <"model"> - type = <"String"> - > - ["version"] = (P_BMM_SINGLE_PROPERTY) < - name = <"version"> - type = <"String"> - > - ["expiry"] = (P_BMM_SINGLE_PROPERTY) < - name = <"expiry"> - type = <"Date"> - > - ["udi"] = (P_BMM_SINGLE_PROPERTY) < - name = <"udi"> - type = <"String"> - > - ["lotnumber"] = (P_BMM_SINGLE_PROPERTY) < - name = <"lotnumber"> - type = <"String"> - > - ["url"] = (P_BMM_SINGLE_PROPERTY) < - name = <"url"> - type = <"Uri"> - > - ["owner"] = (P_BMM_GENERIC_PROPERTY) < - name = <"owner"> - type_def = < - root_type = <"ResourceReference"> - generic_parameters = <"Organization"> - > - > - ["location"] = (P_BMM_GENERIC_PROPERTY) < - name = <"location"> - type_def = < - root_type = <"ResourceReference"> - generic_parameters = <"Location"> - > - > - ["patient"] = (P_BMM_GENERIC_PROPERTY) < - name = <"patient"> - type_def = < - root_type = <"ResourceReference"> - generic_parameters = <"Patient"> - > - > - ["contact"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"contact"> - type_def = < - container_type = <"List"> - type = <"Contact"> - > - cardinality = <|>=0|> - > - > - > - - -- - ---------------- Resources: Clinical ------------------- - -- - - ["Observation"] = < - name = <"Observation"> - ancestors = <"Resource", ...> - properties = < - ["name"] = (P_BMM_SINGLE_PROPERTY) < - name = <"name"> - type = <"CodeableConcept"> - is_mandatory = - > - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"Any"> - > - ["interpretation"] = (P_BMM_SINGLE_PROPERTY) < - name = <"interpretation"> - type = <"CodeableConcept"> - > - ["comments"] = (P_BMM_SINGLE_PROPERTY) < - name = <"comments"> - type = <"String"> - > - ["applies"] = (P_BMM_SINGLE_PROPERTY) < - name = <"applies"> - type = <"Period"> - > - ["issued"] = (P_BMM_SINGLE_PROPERTY) < - name = <"issued"> - type = <"instant"> - > - ["status"] = (P_BMM_SINGLE_PROPERTY) < - name = <"status"> - type = <"Code"> - is_mandatory = - > - ["reliability"] = (P_BMM_SINGLE_PROPERTY) < - name = <"reliability"> - type = <"Code"> - is_mandatory = - > - ["bodySite"] = (P_BMM_SINGLE_PROPERTY) < - name = <"bodySite"> - type = <"CodeableConcept"> - > - ["method"] = (P_BMM_SINGLE_PROPERTY) < - name = <"method"> - type = <"CodeableConcept"> - > - ["subject"] = (P_BMM_GENERIC_PROPERTY) < - name = <"subject"> - type_def = < - root_type = <"ResourceReference"> - generic_parameters = <"Resource"> - > - > - ["specimen"] = (P_BMM_GENERIC_PROPERTY) < - name = <"specimen"> - type_def = < - root_type = <"ResourceReference"> - generic_parameters = <"Specimen"> - > - > - ["performer"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"performer"> - type_def = < - container_type = <"List"> - type_def = (P_BMM_GENERIC_TYPE) < - root_type = <"ResourceReference"> - generic_parameters = <"Resource"> - > - > - cardinality = <|>=0|> - > - ["related"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"related"> - type_def = < - container_type = <"List"> - type = <"Related"> - > - cardinality = <|>=0|> - > - ["referenceRange"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"referenceRange"> - type_def = < - container_type = <"List"> - type = <"ReferenceRange"> - > - cardinality = <|>=0|> - > - > - > - - ["Related"] = < - name = <"Related"> - ancestors = <"Any", ...> - properties = < - ["type"] = (P_BMM_SINGLE_PROPERTY) < - name = <"type"> - type = <"Code"> - > - ["target"] = (P_BMM_GENERIC_PROPERTY) < - name = <"target"> - type_def = < - root_type = <"ResourceReference"> - generic_parameters = <"Observation"> - > - > - > - > - - ["ReferenceRange"] = < - name = <"ReferenceRange"> - ancestors = <"Any", ...> - properties = < - ["low"] = (P_BMM_SINGLE_PROPERTY) < - name = <"low"> - type = <"Quantity"> - > - ["high"] = (P_BMM_SINGLE_PROPERTY) < - name = <"high"> - type = <"Quantity"> - > - ["meaning"] = (P_BMM_SINGLE_PROPERTY) < - name = <"meaning"> - type = <"CodeableConcept"> - > - ["age"] = (P_BMM_SINGLE_PROPERTY) < - name = <"age"> - type = <"Range"> - > - > - > - - ["Specimen"] = < - name = <"Specimen"> - ancestors = <"Resource", ...> - properties = < - ["type"] = (P_BMM_SINGLE_PROPERTY) < - name = <"type"> - type = <"CodeableConcept"> - > - ["subject"] = (P_BMM_GENERIC_PROPERTY) < - name = <"subject"> - type_def = < - root_type = <"ResourceReference"> - generic_parameters = <"Resource"> - > - is_mandatory = - > - ["accessionIdentifier"] = (P_BMM_SINGLE_PROPERTY) < - name = <"accessionIdentifier"> - type = <"Identifier"> - > - ["receivedTime"] = (P_BMM_SINGLE_PROPERTY) < - name = <"receivedTime"> - type = <"dateTime"> - > - ["treatment"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"treatment"> - type_def = < - container_type = <"List"> - type = <"Treatment"> - > - cardinality = <|>=0|> - > - ["source"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"source"> - type_def = < - container_type = <"List"> - type = <"Source"> - > - cardinality = <|>=0|> - > - ["container"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"container"> - type_def = < - container_type = <"List"> - type = <"Container"> - > - cardinality = <|>=0|> - > - ["collection"] = (P_BMM_SINGLE_PROPERTY) < - name = <"collection"> - type = <"Collection"> - is_mandatory = - > - > - > - - ["Treatment"] = < - name = <"Treatment"> - ancestors = <"Any", ...> - properties = < - ["description"] = (P_BMM_SINGLE_PROPERTY) < - name = <"description"> - type = <"String"> - > - ["procedure"] = (P_BMM_SINGLE_PROPERTY) < - name = <"procedure"> - type = <"CodeableConcept"> - > - ["additive"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"additive"> - type_def = < - container_type = <"List"> - type_def = (P_BMM_GENERIC_TYPE) < - root_type = <"ResourceReference"> - generic_parameters = <"Substance"> - > - > - cardinality = <|>=0|> - > - > - > - - ["Container"] = < - name = <"Container"> - ancestors = <"Any", ...> - properties = < - ["identifier"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"identifier"> - type_def = < - container_type = <"List"> - type = <"Identifier"> - > - cardinality = <|>=0|> - > - ["description"] = (P_BMM_SINGLE_PROPERTY) < - name = <"description"> - type = <"String"> - > - ["type"] = (P_BMM_SINGLE_PROPERTY) < - name = <"type"> - type = <"CodeableConcept"> - > - ["capacity"] = (P_BMM_SINGLE_PROPERTY) < - name = <"capacity"> - type = <"Quantity"> - > - ["specimenQuantity"] = (P_BMM_SINGLE_PROPERTY) < - name = <"specimenQuantity"> - type = <"Quantity"> - > - ["additive"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"additive"> - type_def = < - container_type = <"List"> - type_def = (P_BMM_GENERIC_TYPE) < - root_type = <"ResourceReference"> - generic_parameters = <"Substance"> - > - > - cardinality = <|>=0|> - > - > - > - - ["Collection"] = < - name = <"Collection"> - ancestors = <"Any", ...> - properties = < - ["collector"] = (P_BMM_GENERIC_PROPERTY) < - name = <"collector"> - type_def = < - root_type = <"ResourceReference"> - generic_parameters = <"Practitioner"> - > - > - ["comment"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"comment"> - type_def = < - container_type = <"List"> - type = <"String"> - > - cardinality = <|>=0|> - > - ["collected"] = (P_BMM_SINGLE_PROPERTY) < - name = <"collected"> - type = <"Period"> - > - ["method"] = (P_BMM_SINGLE_PROPERTY) < - name = <"method"> - type = <"CodeableConcept"> - > - ["quantity"] = (P_BMM_SINGLE_PROPERTY) < - name = <"quantity"> - type = <"Quantity"> - > - ["sourceSite"] = (P_BMM_SINGLE_PROPERTY) < - name = <"sourceSite"> - type = <"CodeableConcept"> - > - > - > - - ["Source"] = < - name = <"Source"> - ancestors = <"Any", ...> - properties = < - ["relationship"] = (P_BMM_SINGLE_PROPERTY) < - name = <"relationship"> - type = <"Code"> - is_mandatory = - > - ["target"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"target"> - type_def = < - container_type = <"List"> - type_def = (P_BMM_GENERIC_TYPE) < - root_type = <"ResourceReference"> - generic_parameters = <"Specimen"> - > - > - cardinality = <|>=0|> - > - > - > - - -- - ---------------- Resources: infrastructure ------------------- - -- - - ["Media"] = < - name = <"Media"> - ancestors = <"DomainResource", ...> - properties = < - ["type"] = (P_BMM_SINGLE_PROPERTY) < - name = <"type"> - type = <"Code"> - is_mandatory = - > - ["subType"] = (P_BMM_SINGLE_PROPERTY) < - name = <"subType"> - type = <"CodeableConcept"> - > - ["identifier"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"identifier"> - type_def = < - container_type = <"List"> - type = <"Identifier"> - > - cardinality = <|>=0|> - > - ["subject"] = (P_BMM_GENERIC_PROPERTY) < - name = <"subject"> - type_def = < - root_type = <"ResourceReference"> - generic_parameters = <"Resource"> - > - > - ["operator"] = (P_BMM_GENERIC_PROPERTY) < - name = <"operator"> - type_def = < - root_type = <"ResourceReference"> - generic_parameters = <"Practitioner"> - > - > - ["view"] = (P_BMM_SINGLE_PROPERTY) < - name = <"view"> - type = <"CodeableConcept"> - > - ["deviceName"] = (P_BMM_SINGLE_PROPERTY) < - name = <"deviceName"> - type = <"String"> - > - ["height"] = (P_BMM_SINGLE_PROPERTY) < - name = <"height"> - type = <"PositiveInt"> - > - ["width"] = (P_BMM_SINGLE_PROPERTY) < - name = <"width"> - type = <"PositiveInt"> - > - ["frames"] = (P_BMM_SINGLE_PROPERTY) < - name = <"frames"> - type = <"PositiveInt"> - > - ["duration"] = (P_BMM_SINGLE_PROPERTY) < - name = <"duration"> - type = <"UnsignedInt"> - > - ["content"] = (P_BMM_SINGLE_PROPERTY) < - name = <"content"> - type = <"Attachment"> - is_mandatory = - > - > - > - - ["Basic"] = < - name = <"Basic"> - ancestors = <"DomainResource", ...> - properties = < - ["identifier"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"identifier"> - type_def = < - container_type = <"List"> - type = <"Identifier"> - > - cardinality = <|>=0|> - > - ["code"] = (P_BMM_SINGLE_PROPERTY) < - name = <"code"> - type = <"CodeableConcept"> - is_mandatory = - > - ["subject"] = (P_BMM_GENERIC_PROPERTY) < - name = <"subject"> - type_def = < - root_type = <"ResourceReference"> - generic_parameters = <"Resource"> - > - > - ["author"] = (P_BMM_GENERIC_PROPERTY) < - name = <"author"> - type_def = < - root_type = <"ResourceReference"> - generic_parameters = <"Resource"> - > - > - ["created"] = (P_BMM_SINGLE_PROPERTY) < - name = <"created"> - type = <"Date"> - > - > - > - - ["Provenance"] = < - name = <"Provenance"> - ancestors = <"DomainResource", ...> - properties = < - ["target"] = (P_BMM_GENERIC_PROPERTY) < - name = <"target"> - type_def = < - root_type = <"ResourceReference"> - generic_parameters = <"Resource"> - > - > - ["period"] = (P_BMM_SINGLE_PROPERTY) < - name = <"period"> - type = <"Period"> - > - ["recorded"] = (P_BMM_SINGLE_PROPERTY) < - name = <"recorded"> - type = <"Instant"> - is_mandatory = - > - ["reason"] = (P_BMM_SINGLE_PROPERTY) < - name = <"reason"> - type = <"CodeableConcept"> - > - ["location"] = (P_BMM_GENERIC_PROPERTY) < - name = <"location"> - type_def = < - root_type = <"ResourceReference"> - generic_parameters = <"Location"> - > - > - ["policy"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"policy"> - type_def = < - container_type = <"List"> - type = <"Uri"> - > - cardinality = <|>=0|> - > - ["signature"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"signature"> - type_def = < - container_type = <"List"> - type = <"Signature"> - > - cardinality = <|>=0|> - > - ["entity"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"entity"> - type_def = < - container_type = <"List"> - type = <"Entity"> - > - cardinality = <|>=0|> - > - ["agent"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"agent"> - type_def = < - container_type = <"List"> - type = <"Agent"> - > - cardinality = <|>=0|> - > - > - > - - ["Entity"] = < - name = <"Entity"> - ancestors = <"Any", ...> - properties = < - ["role"] = (P_BMM_SINGLE_PROPERTY) < - name = <"role"> - type = <"Code"> - is_mandatory = - > - ["type"] = (P_BMM_SINGLE_PROPERTY) < - name = <"type"> - type = <"Coding"> - is_mandatory = - > - ["reference"] = (P_BMM_SINGLE_PROPERTY) < - name = <"reference"> - type = <"String"> - is_mandatory = - > - ["display"] = (P_BMM_SINGLE_PROPERTY) < - name = <"display"> - type = <"String"> - > - ["agent"] = (P_BMM_SINGLE_PROPERTY) < - name = <"agent"> - type = <"Agent"> - > - > - > - - ["Agent"] = < - name = <"Agent"> - ancestors = <"Any", ...> - properties = < - ["role"] = (P_BMM_SINGLE_PROPERTY) < - name = <"role"> - type = <"Code"> - is_mandatory = - > - ["type"] = (P_BMM_SINGLE_PROPERTY) < - name = <"type"> - type = <"Coding"> - is_mandatory = - > - ["reference"] = (P_BMM_SINGLE_PROPERTY) < - name = <"reference"> - type = <"String"> - is_mandatory = - > - ["display"] = (P_BMM_SINGLE_PROPERTY) < - name = <"display"> - type = <"String"> - > - > - > - -> diff --git a/referencemodels/src/main/resources/bmm/ISO_13606/2008/BMM/cen_EN13606_0.95.bmm b/referencemodels/src/main/resources/bmm/ISO_13606/2008/BMM/cen_EN13606_0.95.bmm deleted file mode 100755 index c962757f0..000000000 --- a/referencemodels/src/main/resources/bmm/ISO_13606/2008/BMM/cen_EN13606_0.95.bmm +++ /dev/null @@ -1,1029 +0,0 @@ --- --- keywords: reference model, meta-model, archetypes --- author: Christoph Rinner --- support: christoph@rinner.at --- copyright: Copyright (c) 2010 Christoph Rinner --- license: See end of file --- --- TODOs --- * demographic not included --- * unit instead of units since the java ADL parser has problems with units --- * not all cardinalities tested --- - ------------------------------------------------------- --- BMM version on which these schemas are based. --- Current BMM version can be found as value of 'Bmm_internal_version' in --- http://www.openehr.org/svn/ref_impl_eiffel/BRANCHES/adl1.5/libraries/common_libs/src/basic_meta_model/bmm_definitions.e --- ------------------------------------------------------- -bmm_version = <"2.0"> - ------------------------------------------------------- --- schema identification --- (schema_id computed as __) ------------------------------------------------------- -rm_publisher = <"CEN"> -schema_name = <"EN13606"> -rm_release = <"0.95"> - ------------------------------------------------------- --- schema documentation ------------------------------------------------------- -schema_revision = <"$LastChangedRevision: 26 $"> -schema_lifecycle_state = <"experimental"> -schema_description = <"ISO 13606 Release 2008 draft reference model, expressed in openEHR 'basic meta-model' format"> -schema_author = <"christoph.rinner@meduniwien.ac.at"> -schema_contributors = <"thomas.beale@oceaninformatics.com", ...> - ------------------------------------------------------- --- inclusions ------------------------------------------------------- -includes = < - ["1"] = < - id = <"cen_ts14796_0.90"> - > -> - ------------------------------------------------------- --- archetyping ------------------------------------------------------- --- NOTE - 13606 does not use RECORD_COMPONENT as parent of any demographic types, so for now, to allow --- archetyping of those, we don't mention an archetype parent class --- archetype_parent_class = <"RECORD_COMPONENT"> -archetype_visualise_descendants_of = <"RECORD_COMPONENT"> -archetype_rm_closure_packages = <"org.cen.en13606", ...> - - ------------------------------------------------------- --- packages ------------------------------------------------------- -packages = < - ["org.cen.en13606"] = < - name = <"org.cen.en13606"> - packages = < - ["ehr_extract"] = < - name = <"ehr_extract"> - classes = <"EHR_EXTRACT", "EXTRACT_CRITERIA", "FOLDER", "COMPOSITION"> - packages = < - ["base"] = < - name = <"base"> - classes = <"RECORD_COMPONENT", "LINK", "RELATED_PARTY", "FUNCTIONAL_ROLE", "ATTESTATION_INFO"> - > - ["entry"] = < - name = <"entry"> - classes = <"AUDIT_INFO", "SECTION", "ENTRY", "CONTENT", "ITEM", "CLUSTER", "ELEMENT"> - > - > - > - ["demographics"] = < - name = <"demographics"> - classes = <"IDENTIFIED_ENTITY", "TELECOM", "SOFTWARE_OR_DEVICE", "ORGANISATION", "PERSON", - "IDENTIFIED_HEALTHCARE_PROFESSIONAL", "SUBJECT_OF_CARE_PERSON_IDENTIFICATION" , - "POSTAL_ADDRESS", "ENTITY_NAME", "POSTAL_ADDRESS_PART", "ENTITY_NAME_PART", - "HEALTHCARE_PROFESSIONAL_ROLE"> - > - > - > -> - ------------------------------------------------------- --- classes ------------------------------------------------------- - -class_definitions = < - ------------------------------------------------------- ---- ISO 13606-1:2008(E) DEMOGRAPHICS Package ------------------------------------------------------- - - ["IDENTIFIED_ENTITY"] = < - name = <"IDENTIFIED_ENTITY"> - is_abstract = - ancestors = <"Any", ...> - properties = < - ["extract_id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"extract_id"> - type = <"II"> - is_mandatory = - is_im_runtime = - > - ["id"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"id"> - type_def = < - type = <"II"> - container_type = <"Set"> - > - cardinality = <|>=0|> - is_im_runtime = - > - ["telecom"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"telecom"> - type_def = < - type = <"TELECOM"> - container_type = <"Set"> - > - cardinality = <|>=0|> - is_im_runtime = - > - > - > - - ["ORGANISATION"] = < - name = <"ORGANISATION"> - ancestors = <"IDENTIFIED_ENTITY", ...> - properties = < - ["code"] = (P_BMM_SINGLE_PROPERTY) < - name = <"code"> - type = <"CD"> - is_mandatory = - is_im_runtime = - > - ["desc"] = (P_BMM_SINGLE_PROPERTY) < - name = <"desc"> - type = <"String"> - is_mandatory = - > - ["name"] = (P_BMM_SINGLE_PROPERTY) < - name = <"name"> - type = <"String"> - is_mandatory = - is_im_runtime = - > - ["addr"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"addr"> - type_def = < - type = <"POSTAL_ADDRESS"> - container_type = <"Set"> - > - cardinality = <|>=0|> - is_im_runtime = - > - > - > - - ["SOFTWARE_OR_DEVICE"] = < - name = <"SOFTWARE_OR_DEVICE"> - ancestors = <"Any", ...> - properties = < - ["desc"] = (P_BMM_SINGLE_PROPERTY) < - name = <"desc"> - type = <"String"> - is_mandatory = - > - ["manufacturerModelName"] = (P_BMM_SINGLE_PROPERTY) < - name = <"manufacturerModelName"> - type = <"String"> - is_mandatory = - is_im_runtime = - > - ["code"] = (P_BMM_SINGLE_PROPERTY) < - name = <"code"> - type = <"CD"> - is_mandatory = - is_im_runtime = - > - ["version"] = (P_BMM_SINGLE_PROPERTY) < - name = <"version"> - type = <"String"> - is_im_runtime = - > - ["owningOrganisation"] = (P_BMM_SINGLE_PROPERTY) < - name = <"owningOrganisation"> - type = <"ORGANISATION"> - is_im_runtime = - > - > - > - - ["PERSON"] = < - name = <"PERSON"> - ancestors = <"IDENTIFIED_ENTITY", ...> - properties = < - ["code"] = (P_BMM_SINGLE_PROPERTY) < - name = <"code"> - type = <"CD"> - is_mandatory = - is_im_runtime = - > - ["desc"] = (P_BMM_SINGLE_PROPERTY) < - name = <"desc"> - type = <"String"> - is_mandatory = - > - ["addr"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"addr"> - type_def = < - type = <"POSTAL_ADDRESS"> - container_type = <"List"> - > - cardinality = <|>=0|> - is_im_runtime = - > - ["name"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"name"> - type_def = < - type = <"ENTITY_NAME"> - container_type = <"List"> - > - cardinality = <|>=0|> - is_im_runtime = - > - > - > - - ["IDENTIFIED_HEALTHCARE_PROFESSIONAL"] = < - name = <"IDENTIFIED_HEALTHCARE_PROFESSIONAL"> - ancestors = <"PERSON", ...> - properties = < - ["role"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"role"> - type_def = < - type = <"HEALTHCARE_PROFESSIONAL_ROLE"> - container_type = <"Set"> - > - cardinality = <|>=0|> - > - > - > - - ["HEALTHCARE_PROFESSIONAL_ROLE"] = < - name = <"HEALTHCARE_PROFESSIONAL_ROLE"> - ancestors = <"Any", ...> - properties = < - ["specialty"] = (P_BMM_SINGLE_PROPERTY) < - name = <"specialty"> - type = <"CD"> - > - ["profession"] = (P_BMM_SINGLE_PROPERTY) < - name = <"profession"> - type = <"CD"> - > - ["position_or_grade"] = (P_BMM_SINGLE_PROPERTY) < - name = <"position_or_grade"> - type = <"CD"> - > - ["scoping_organisation"] = (P_BMM_SINGLE_PROPERTY) < - name = <"scoping_organisation"> - type = <"ORGANISATION"> - is_im_runtime = - > - ["id"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"id"> - type_def = < - type = <"II"> - container_type = <"Set"> - > - cardinality = <|>=0|> - is_im_runtime = - > - > - > - - ["SUBJECT_OF_CARE_PERSON_IDENTIFICATION"] = < - name = <"SUBJECT_OF_CARE_PERSON_IDENTIFICATION"> - ancestors = <"PERSON", ...> - properties = < - ["administrativeGenderCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"administrativeGenderCode"> - type = <"CS"> - is_mandatory = - > - ["birthTime"] = (P_BMM_SINGLE_PROPERTY) < - name = <"birthTime"> - type = <"TS"> - is_mandatory = - is_im_runtime = - > - ["deceasedTime"] = (P_BMM_SINGLE_PROPERTY) < - name = <"deceasedTime"> - type = <"TS"> - is_im_runtime = - > - ["birthOrderNumber"] = (P_BMM_SINGLE_PROPERTY) < - name = <"birthOrderNumber"> - type = <"Integer"> - is_im_runtime = - > - > - > - - ["POSTAL_ADDRESS"] = < - name = <"POSTAL_ADDRESS"> - ancestors = <"Any", ...> - properties = < - ["postalCode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"postalCode"> - type = <"CD"> - is_im_runtime = - > - ["validTime"] = (P_BMM_GENERIC_PROPERTY) < - name = <"validTime"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"TS"> - > - is_im_runtime = - > - ["addressUse"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"addressUse"> - type_def = < - type = <"CS"> - container_type = <"Set"> - > - cardinality = <|>=0|> - > - ["addrPart"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"addrPart"> - type_def = < - type = <"POSTAL_ADDRESS_PART"> - container_type = <"List"> - > - cardinality = <|>=0|> - is_im_runtime = - > - > - > - - ["POSTAL_ADDRESS_PART"] = < - name = <"POSTAL_ADDRESS_PART"> - ancestors = <"Any", ...> - properties = < - ["addressLine"] = (P_BMM_SINGLE_PROPERTY) < - name = <"addressLine"> - type = <"String"> - is_mandatory = - is_im_runtime = - > - ["addressLineType"] = (P_BMM_SINGLE_PROPERTY) < - name = <"addressLineType"> - type = <"CS"> - > - > - > - - ["TELECOM"] = < - name = <"TELECOM"> - ancestors = <"Any", ...> - properties = < - ["telecomAddress"] = (P_BMM_SINGLE_PROPERTY) < - name = <"telecomAddress"> - type = <"URI"> - is_mandatory = - is_im_runtime = - > - ["validTime"] = (P_BMM_GENERIC_PROPERTY) < - name = <"validTime"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"TS"> - > - is_im_runtime = - > - ["use"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"use"> - type_def = < - type = <"CS"> - container_type = <"Set"> - > - cardinality = <|>=1|> - > - > - > - - ["ENTITY_NAME"] = < - name = <"ENTITY_NAME"> - ancestors = <"Any", ...> - properties = < - ["use"] = (P_BMM_SINGLE_PROPERTY) < - name = <"use"> - type = <"CD"> - is_mandatory = - > - ["validTime"] = (P_BMM_GENERIC_PROPERTY) < - name = <"validTime"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"TS"> - > - is_im_runtime = - > - ["namePart"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"namePart"> - type_def = < - type = <"ENTITY_NAME_PART"> - container_type = <"List"> - > - cardinality = <|>=1|> - is_im_runtime = - > - > - > - - ["ENTITY_NAME_PART"] = < - name = <"ENTITY_NAME_PART"> - ancestors = <"Any", ...> - properties = < - ["entityPartName"] = (P_BMM_SINGLE_PROPERTY) < - name = <"entityPartName"> - type = <"String"> - is_mandatory = - is_im_runtime = - > - ["namePartType"] = (P_BMM_SINGLE_PROPERTY) < - name = <"namePartType"> - type = <"CS"> - is_mandatory = - > - ["namePartQualifier"] = (P_BMM_SINGLE_PROPERTY) < - name = <"namePartQualifier"> - type = <"CS"> - is_mandatory = - > - > - > - ------------------------------------------------------- ---- ISO 13606-1:2008(E) EXTRACT Package ------------------------------------------------------- - ["EHR_EXTRACT"] = < - name = <"EHR_EXTRACT"> - ancestors = <"Any", ...> - properties = < - ["ehr_system"] = (P_BMM_SINGLE_PROPERTY) < - name = <"ehr_system"> - type = <"II"> - is_mandatory = - is_im_runtime = - > - ["ehr_id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"ehr_id"> - type = <"II"> - is_mandatory = - is_im_runtime = - > - ["subject_of_care"] = (P_BMM_SINGLE_PROPERTY) < - name = <"subject_of_care"> - type = <"II"> - is_mandatory = - is_im_runtime = - > - ["time_created"] = (P_BMM_SINGLE_PROPERTY) < - name = <"time_created"> - type = <"TS"> - is_mandatory = - is_im_runtime = - > - ["authorising_party"] = (P_BMM_SINGLE_PROPERTY) < - name = <"authorising_party"> - type = <"II"> - is_im_runtime = - > - ["rm_id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"rm_id"> - type = <"String"> - is_mandatory = - is_im_infrastructure = - > - ["folders"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"folders"> - type_def = < - type = <"FOLDER"> - container_type = <"Set"> - > - cardinality = <|>=0|> - > - ["criteria"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"criteria"> - type_def = < - type = <"EXTRACT_CRITERIA"> - container_type = <"Set"> - > - cardinality = <|>=0|> - > - ["all_compositions"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"all_compositions"> - type_def = < - type = <"COMPOSITION"> - container_type = <"Set"> - > - cardinality = <|>=0|> - > - ["demographic_entity"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"demographic_entity"> - type_def = < - type = <"IDENTIFIED_ENTITY"> - container_type = <"List"> - > - cardinality = <|>=0|> - > - > - > - - ["EXTRACT_CRITERIA"] = < - name = <"EXTRACT_CRITERIA"> - ancestors = <"Any", ...> - properties = < - ["time_period"] = (P_BMM_GENERIC_PROPERTY) < - name = <"time_period"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"TS"> - > - > - ["max_sensitivity"] = (P_BMM_SINGLE_PROPERTY) < - name = <"max_sensitivity"> - type = <"Integer"> - > - ["all_versions"] = (P_BMM_SINGLE_PROPERTY) < - name = <"all_versions"> - type = <"Boolean"> - > - ["multimedia_included"] = (P_BMM_SINGLE_PROPERTY) < - name = <"multimedia_included"> - type = <"Boolean"> - > - ["archetype_ids"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"archetype_ids"> - type_def = < - container_type = <"Set"> - type = <"II"> - > - > - ["other_constraints"] = (P_BMM_SINGLE_PROPERTY) < - name = <"other_constraints"> - type = <"String"> - > - > - > - - ["RECORD_COMPONENT"] = < - name = <"RECORD_COMPONENT"> - is_abstract = - ancestors = <"Any", ...> - properties = < - ["name"] = (P_BMM_SINGLE_PROPERTY) < - name = <"name"> - type = <"TEXT"> - is_mandatory = - > - ["archetype_id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"archetype_id"> - type = <"String"> - is_im_infrastructure = - > - ["rc_id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"rc_id"> - type = <"II"> - is_mandatory = - is_im_infrastructure = - > - ["meaning"] = (P_BMM_SINGLE_PROPERTY) < - name = <"meaning"> - type = <"CD"> - is_im_infrastructure = - > - ["synthesised"] = (P_BMM_SINGLE_PROPERTY) < - name = <"synthesised"> - type = <"Boolean"> - is_mandatory = - is_im_runtime = - > - ["policy_ids"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"policy_ids"> - type_def = < - container_type = <"Set"> - type = <"II"> - > - is_im_runtime = - > - ["sensitivity"] = (P_BMM_SINGLE_PROPERTY) < - name = <"sensitivity"> - type = <"Integer"> - > - ["orig_parent_ref"] = (P_BMM_SINGLE_PROPERTY) < - name = <"orig_parent_ref"> - type = <"II"> - is_im_infrastructure = - > - ["links"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"links"> - type_def = < - type = <"LINK"> - container_type = <"Set"> - > - cardinality = <|>=0|> - > - ["feeder_audit"] = (P_BMM_SINGLE_PROPERTY) < - name = <"feeder_audit"> - type = <"AUDIT_INFO"> - is_im_runtime = - > - > - > - - ["FOLDER"] = < - name = <"FOLDER"> - ancestors = <"RECORD_COMPONENT",...> - properties = < - ["compositions"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"compositions"> - type_def = < - type = <"II"> - container_type = <"Set"> - > - cardinality = <|>=0|> - > - ["sub_folders"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"sub_folders"> - type_def = < - type = <"FOLDER"> - container_type = <"Set"> - > - cardinality = <|>=0|> - > - ["attestations"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"attestations"> - type_def = < - type = <"ATTESTATION_INFO"> - container_type = <"Set"> - > - cardinality = <|>=0|> - is_im_runtime = - > - > - > - - ["COMPOSITION"] = < - name = <"COMPOSITION"> - ancestors = <"RECORD_COMPONENT",...> - properties = < - ["session_time"] = (P_BMM_GENERIC_PROPERTY) < - name = <"session_time"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"TS"> - > - is_im_runtime = - > - ["territory"] = (P_BMM_SINGLE_PROPERTY) < - name = <"territory"> - type = <"CS"> - is_im_infrastructure = - > - ["committal"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"committal"> - is_mandatory = - type_def = < - type = <"AUDIT_INFO"> - container_type = <"Set"> - > - cardinality = <|>=0|> - is_im_infrastructure = - > - ["attestations"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"attestations"> - type_def = < - type = <"ATTESTATION_INFO"> - container_type = <"Set"> - > - cardinality = <|>=0|> - is_im_runtime = - > - ["other_participations"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"other_participations"> - type_def = < - type = <"FUNCTIONAL_ROLE"> - container_type = <"Set"> - > - cardinality = <|>=0|> - > - ["composer"] = (P_BMM_SINGLE_PROPERTY) < - name = <"composer"> - type = <"FUNCTIONAL_ROLE"> - > - ["content"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"content"> - type_def = < - type = <"CONTENT"> - container_type = <"List"> - > - cardinality = <|>=0|> - > - > - > - - ["CONTENT"] = < - name = <"CONTENT"> - ancestors = <"RECORD_COMPONENT",...> - is_abstract = - > - - ["ENTRY"] = < - name = <"ENTRY"> - ancestors = <"CONTENT",...> - properties = < - ["act_id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"act_id"> - type = <"String"> - is_im_runtime = - > - ["act_status"] = (P_BMM_SINGLE_PROPERTY) < - name = <"act_status"> - type = <"CS"> - > - ["uncertainty_expressed"] = (P_BMM_SINGLE_PROPERTY) < - name = <"uncertainty_expressed"> - type = <"Boolean"> - is_mandatory = - is_im_runtime = - > - ["subject_of_information_category"] = (P_BMM_SINGLE_PROPERTY) < - name = <"subject_of_information_category"> - type = <"CS"> - > - ["items"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"items"> - type_def = < - type = <"ITEM"> - container_type = <"List"> - > - cardinality = <|>=0|> - > - ["other_participations"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"other_participations"> - type_def = < - type = <"FUNCTIONAL_ROLE"> - container_type = <"Set"> - > - cardinality = <|>=0|> - > - ["info_provider"] = (P_BMM_SINGLE_PROPERTY) < - name = <"info_provider"> - type = <"FUNCTIONAL_ROLE"> - > - ["subject_of_information"] = (P_BMM_SINGLE_PROPERTY) < - name = <"subject_of_information"> - type = <"RELATED_PARTY"> - > - > - > - - ["SECTION"] = < - name = <"SECTION"> - ancestors = <"CONTENT",...> - properties = < - ["members"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"members"> - type_def = < - type = <"CONTENT"> - container_type = <"List"> - > - cardinality = <|>=0|> - > - > - > - - ["ITEM"] = < - name = <"ITEM"> - ancestors = <"RECORD_COMPONENT",...> - is_abstract = - properties = < - ["emphasis"] = (P_BMM_SINGLE_PROPERTY) < - name = <"emphasis"> - type = <"CD"> - > - ["obs_time"] = (P_BMM_GENERIC_PROPERTY) < - name = <"obs_time"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"TS"> - > - is_im_runtime = - > - ["item_category"] = (P_BMM_SINGLE_PROPERTY) < - name = <"item_category"> - type = <"CS"> - > - > - > - - ["CLUSTER"] = < - name = <"CLUSTER"> - ancestors = <"ITEM",...> - properties = < - ["structure_type"] = (P_BMM_SINGLE_PROPERTY) < - name = <"structure_type"> - type = <"CS"> - is_mandatory = - > - ["parts"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"parts"> - type_def = < - type = <"ITEM"> - container_type = <"Set"> - > - cardinality = <|>=0|> - > - > - > - - ["ELEMENT"] = < - name = <"ELEMENT"> - ancestors = <"ITEM",...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"DATA_VALUE"> - > - > - > - - ["AUDIT_INFO"] = < - name = <"AUDIT_INFO"> - ancestors = <"Any", ...> - properties = < - ["ehr_system"] = (P_BMM_SINGLE_PROPERTY) < - name = <"ehr_system"> - type = <"II"> - is_mandatory = - > - ["time_committed"] = (P_BMM_SINGLE_PROPERTY) < - name = <"time_committed"> - type = <"TS"> - is_mandatory = - > - ["committer"] = (P_BMM_SINGLE_PROPERTY) < - name = <"committer"> - type = <"II"> - is_mandatory = - > - ["version_status"] = (P_BMM_SINGLE_PROPERTY) < - name = <"version_status"> - type = <"CS"> - > - ["reason_for_revision"] = (P_BMM_SINGLE_PROPERTY) < - name = <"reason_for_revision"> - type = <"CD"> - > - ["previous_version"] = (P_BMM_SINGLE_PROPERTY) < - name = <"previous_version"> - type = <"II"> - > - ["version_set_id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"version_set_id"> - type = <"II"> - > - > - > - - ["ATTESTATION_INFO"] = < - name = <"ATTESTATION_INFO"> - ancestors = <"Any", ...> - properties = < - ["time"] = (P_BMM_SINGLE_PROPERTY) < - name = <"time"> - type = <"TS"> - is_mandatory = - > - ["proof"] = (P_BMM_SINGLE_PROPERTY) < - name = <"proof"> - type = <"ED"> - > - ["attested_view"] = (P_BMM_SINGLE_PROPERTY) < - name = <"attested_view"> - type = <"ED"> - > - ["reason_for_attestation"] = (P_BMM_SINGLE_PROPERTY) < - name = <"reason_for_revision"> - type = <"CD"> - is_mandatory = - > - ["attester"] = (P_BMM_SINGLE_PROPERTY) < - name = <"attester"> - type = <"FUNCTIONAL_ROLE"> - is_mandatory = - > - ["target"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"target"> - type_def = < - type = <"II"> - container_type = <"List"> - > - cardinality = <|>=1|> - > - > - > - - ["FUNCTIONAL_ROLE"] = < - name = <"FUNCTIONAL_ROLE"> - ancestors = <"Any", ...> - properties = < - ["function"] = (P_BMM_SINGLE_PROPERTY) < - name = <"function"> - type = <"CD"> - > - ["performer"] = (P_BMM_SINGLE_PROPERTY) < - name = <"performer"> - type = <"II"> - is_mandatory = - > - ["mode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"mode"> - type = <"CS"> - > - ["healthcare_facility"] = (P_BMM_SINGLE_PROPERTY) < - name = <"healthcare_facility"> - type = <"II"> - is_im_runtime = - > - ["service_setting"] = (P_BMM_SINGLE_PROPERTY) < - name = <"service_setting"> - type = <"CD"> - > - > - > - - ["RELATED_PARTY"] = < - name = <"RELATED_PARTY"> - ancestors = <"Any", ...> - properties = < - ["party"] = (P_BMM_SINGLE_PROPERTY) < - name = <"party"> - type = <"II"> - > - ["relationship"] = (P_BMM_SINGLE_PROPERTY) < - name = <"relationship"> - type = <"TEXT"> - is_mandatory = - > - > - > - - ["LINK"] = < - name = <"LINK"> - ancestors = <"Any", ...> - properties = < - ["nature"] = (P_BMM_SINGLE_PROPERTY) < - name = <"nature"> - type = <"CS"> - is_mandatory = - > - ["role"] = (P_BMM_SINGLE_PROPERTY) < - name = <"role"> - type = <"CD"> - > - ["follow_link"] = (P_BMM_SINGLE_PROPERTY) < - name = <"follow_link"> - type = <"Boolean"> - is_mandatory = - > - ["target"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"target"> - type_def = < - type = <"II"> - container_type = <"Set"> - > - cardinality = <|>=1|> - > - > - > - -> - ---| ---| ***** BEGIN LICENSE BLOCK ***** ---| Version: MPL 1.1/GPL 2.0/LGPL 2.1 ---| ---| The contents of this file are subject to the Mozilla Public License Version ---| 1.1 (the 'License'); you may not use this file except in compliance with ---| the License. You may obtain a copy of the License at ---| http://www.mozilla.org/MPL/ ---| ---| Software distributed under the License is distributed on an 'AS IS' basis, ---| WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License ---| for the specific language governing rights and limitations under the ---| License. ---| ---| The Original Code is cen_EN13606_0.9.dadl ---| ---| The Initial Developer of the Original Code is Christoph Rinner. ---| Portions created by the Initial Developer are Copyright (C) 2010 ---| the Initial Developer. All Rights Reserved. ---| ---| Contributor(s): ---| ---| Alternatively, the contents of this file may be used under the terms of ---| either the GNU General Public License Version 2 or later (the 'GPL'), or ---| the GNU Lesser General Public License Version 2.1 or later (the 'LGPL'), ---| in which case the provisions of the GPL or the LGPL are applicable instead ---| of those above. If you wish to allow use of your version of this file only ---| under the terms of either the GPL or the LGPL, and not to allow others to ---| use your version of this file under the terms of the MPL, indicate your ---| decision by deleting the provisions above and replace them with the notice ---| and other provisions required by the GPL or the LGPL. If you do not delete ---| the provisions above, a recipient may use your version of this file under ---| the terms of any one of the MPL, the GPL or the LGPL. ---| ---| ***** END LICENSE BLOCK ***** ---| diff --git a/referencemodels/src/main/resources/bmm/ISO_13606/2008/BMM/cen_ts14796_0.90.bmm b/referencemodels/src/main/resources/bmm/ISO_13606/2008/BMM/cen_ts14796_0.90.bmm deleted file mode 100755 index 7e8de35a8..000000000 --- a/referencemodels/src/main/resources/bmm/ISO_13606/2008/BMM/cen_ts14796_0.90.bmm +++ /dev/null @@ -1,619 +0,0 @@ --- --- keywords: data types, data types --- author: Thomas Beale --- support: thomas.beale@oceaninformatics.com --- copyright: Copyright (c) 2011 openEHR Foundation --- license: See end of file --- --- - ------------------------------------------------------- --- BMM version on which these schemas are based. --- Current BMM version can be found as value of 'Bmm_internal_version' in --- http://www.openehr.org/svn/ref_impl_eiffel/BRANCHES/adl1.5/libraries/common_libs/src/basic_meta_model/bmm_definitions.e --- ------------------------------------------------------- -bmm_version = <"2.0"> - ------------------------------------------------------- --- schema identification --- (schema_id computed as __) ------------------------------------------------------- -rm_publisher = <"cen"> -schema_name = <"TS14796"> -rm_release = <"0.90"> - ------------------------------------------------------- --- schema documentation ------------------------------------------------------- -schema_revision = <"$LastChangedRevision: 93 $"> -schema_lifecycle_state = <"experimental"> -schema_description = <"CEN data types according to CEN/TS 14796:2004"> -schema_author = <"thomas.beale@oceaninformatics.com"> - ------------------------------------------------------- --- inclusions ------------------------------------------------------- -includes = < - ["1"] = < - id = <"openehr_primitive_types_1.0.2"> - > -> - ------------------------------------------------------- --- archetyping ------------------------------------------------------- -archetype_data_value_parent_class = <"DATA_VALUE"> - ------------------------------------------------------- --- packages ------------------------------------------------------- -packages = < - ["org.cen.en13606.data_types"] = < - name = <"org.cen.en13606.data_types"> - packages = < - ["Basic"] = < - name = <"Basic"> - classes = <"DATA_VALUE", "ED", "URI", "BL", "OID", "IVL", "II"> - > - ["Text"] = < - name = <"Text"> - classes = <"CS", "CD", "CV", "TEXT", "SIMPLE_TEXT", "CODED_TEXT"> - > - ["Quantity"] = < - name = <"Quantity"> - classes = <"INT", "RTO", "ORD", "PQ", "QUANTITY", "QUANTITY_RANGE", "DURATION", "IVLPQ"> - > - ["Time"] = < - name = <"Time"> - classes = <"TS", "DATE", "EIVL", "PIVL", "IVLTS"> - > - > - > -> - ------------------------------------------------------- --- classes ------------------------------------------------------- - -class_definitions = < - - ------------------------------------------------------ - --- - ------------------------------------------------------ - - ["DATA_VALUE"] = < - name = <"DATA_VALUE"> - ancestors = <"Any", ...> - is_abstract = - properties = < - ["nullFlavor"] = (P_BMM_SINGLE_PROPERTY) < - name = <"nullFlavor"> - type = <"CS"> - > - > - > - - ["ED"] = < - name = <"ED"> - ancestors = <"DATA_VALUE", ...> - properties = < - ["mediaType"] = (P_BMM_SINGLE_PROPERTY) < - name = <"mediaType"> - type = <"CS"> - is_mandatory = - > - ["charset"] = (P_BMM_SINGLE_PROPERTY) < - name = <"charset"> - type = <"CS"> - is_mandatory = - > - ["language"] = (P_BMM_SINGLE_PROPERTY) < - name = <"language"> - type = <"CS"> - is_mandatory = - > - ["size"] = (P_BMM_SINGLE_PROPERTY) < - name = <"size"> - type = <"Integer"> - is_mandatory = - is_im_runtime = - > - ["compression"] = (P_BMM_SINGLE_PROPERTY) < - name = <"compression"> - type = <"CV"> - is_mandatory = - > - ["reference"] = (P_BMM_SINGLE_PROPERTY) < - name = <"reference"> - type = <"URI"> - is_mandatory = - > - ["integrityCheck"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"integrityCheck"> - type_def = < - container_type = <"Array"> - type = <"Byte"> - > - cardinality = <|>=0|> - > - ["data"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"data"> - type_def = < - container_type = <"Array"> - type = <"Byte"> - > - cardinality = <|>=0|> - > - ["integrityCheckAlgorithm"] = (P_BMM_SINGLE_PROPERTY) < - name = <"integrityCheckAlgorithm"> - type = <"CV"> - is_mandatory = - > - ["thumbnail"] = (P_BMM_SINGLE_PROPERTY) < - name = <"thumbnail"> - type = <"ED"> - > - ["alternateString"] = (P_BMM_SINGLE_PROPERTY) < - name = <"alternateString"> - type = <"TEXT"> - > - > - > - ["URI"] = < - name = <"URI"> - ancestors = <"DATA_VALUE", ...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"String"> - > - ["scheme"] = (P_BMM_SINGLE_PROPERTY) < - name = <"scheme"> - type = <"String"> - > - ["path"] = (P_BMM_SINGLE_PROPERTY) < - name = <"path"> - type = <"String"> - > - ["fragment_id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"fragment_id"> - type = <"String"> - > - ["uri_query"] = (P_BMM_SINGLE_PROPERTY) < - name = <"uri_query"> - type = <"String"> - > - ["literal"] = (P_BMM_SINGLE_PROPERTY) < - name = <"literal"> - type = <"String"> - > - > - > - - ["BL"] = < - name = <"BL"> - ancestors = <"DATA_VALUE", ...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"Boolean"> - > - > - > - - ["OID"] = < - name = <"OID"> - ancestors = <"DATA_VALUE", ...> - properties = < - ["oid"] = (P_BMM_SINGLE_PROPERTY) < - name = <"oid"> - type = <"String"> - is_im_infrastructure = - > - > - > - - ["II"] = < - name = <"II"> - ancestors = <"DATA_VALUE", ...> - properties = < - ["root"] = (P_BMM_SINGLE_PROPERTY) < - name = <"root"> - type = <"OID"> - > - ["extension"] = (P_BMM_SINGLE_PROPERTY) < - name = <"extension"> - type = <"String"> - > - ["assigningAuthorityName"] = (P_BMM_SINGLE_PROPERTY) < - name = <"assigningAuthorityName"> - type = <"String"> - > - ["time_validity"] = (P_BMM_GENERIC_PROPERTY) < - name = <"time_validity"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"TS"> - > - is_im_runtime = - > - > - > - - ["IVL"] = < - name = <"IVL"> - ancestors = <"DATA_VALUE", ...> - generic_parameter_defs = < - ["T"] = < - name = <"T"> - > - > - properties = < - ["low"] = (P_BMM_SINGLE_PROPERTY_OPEN) < - name = <"low"> - type = <"T"> - > - ["high"] = (P_BMM_SINGLE_PROPERTY_OPEN) < - name = <"high"> - type = <"T"> - > - ["lowClosed"] = (P_BMM_SINGLE_PROPERTY) < - name = <"lowClosed"> - type = <"Boolean"> - > - ["highClosed"] = (P_BMM_SINGLE_PROPERTY) < - name = <"highClosed"> - type = <"Boolean"> - > - ["literal"] = (P_BMM_SINGLE_PROPERTY) < - name = <"literal"> - type = <"String"> - > - > - > - - ------------------------------------------------------ - --- Text classes - ------------------------------------------------------ - - ["CS"] = < - name = <"CS"> - ancestors = <"CV", ...> - > - - ["CD"] = < - name = <"CD"> - ancestors = <"DATA_VALUE", ...> - properties = < - ["codeValue"] = (P_BMM_SINGLE_PROPERTY) < - name = <"codeValue"> - type = <"String"> - > - ["codingScheme"] = (P_BMM_SINGLE_PROPERTY) < - name = <"codingScheme"> - type = <"OID"> - > - ["codingSchemeName"] = (P_BMM_SINGLE_PROPERTY) < - name = <"codingSchemeName"> - type = <"String"> - > - ["codingSchemeVersion"] = (P_BMM_SINGLE_PROPERTY) < - name = <"codingSchemeVersion"> - type = <"String"> - > - ["displayName"] = (P_BMM_SINGLE_PROPERTY) < - name = <"displayName"> - type = <"String"> - > - ["translations"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"translations"> - type_def = < - type = <"CD"> - container_type = <"Set"> - > - > - > - > - - ["CV"] = < - name = <"CV"> - ancestors = <"CD", ...> - > - - ["TEXT"] = < - name = <"TEXT"> - ancestors = <"DATA_VALUE", ...> - properties = < - ["originalText"] = (P_BMM_SINGLE_PROPERTY) < - name = <"originalText"> - type = <"String"> - > - ["language"] = (P_BMM_SINGLE_PROPERTY) < - name = <"language"> - type = <"CS"> - is_im_infrastructure = - > - ["charset"] = (P_BMM_SINGLE_PROPERTY) < - name = <"charset"> - type = <"CS"> - > - > - > - - ["SIMPLE_TEXT"] = < - name = <"SIMPLE_TEXT"> - ancestors = <"TEXT", ...> - > - - ["CODED_TEXT"] = < - name = <"CODED_TEXT"> - ancestors = <"TEXT", ...> - properties = < - ["codedValue"] = (P_BMM_SINGLE_PROPERTY) < - name = <"codedValue"> - type = <"CD"> - > - > - > - - ------------------------------------------------------ - --- Quantity types - ------------------------------------------------------ - - ["QUANTITY"] = < - name = <"QUANTITY"> - ancestors = <"DATA_VALUE", ...> - is_abstract = - > - - ["RTO"] = < - name = <"RTO"> - ancestors = <"DATA_VALUE", ...> - properties = < - ["numerator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"numerator"> - type = <"PQ"> - > - ["denominator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"denominator"> - type = <"PQ"> - > - > - > - - ["INT"] = < - name = <"INT"> - ancestors = <"DATA_VALUE", ...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"Integer"> - > - > - > - - ["ORD"] = < - name = <"ORD"> - ancestors = <"DATA_VALUE", ...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"Integer"> - > - ["symbol"] = (P_BMM_SINGLE_PROPERTY) < - name = <"symbol"> - type = <"CODED_TEXT"> - > - > - > - - ["PQ"] = < - name = <"PQ"> - ancestors = <"QUANTITY", ...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"Real"> - > - ["property"] = (P_BMM_SINGLE_PROPERTY) < - name = <"property"> - type = <"CD"> - > - ["units"] = (P_BMM_SINGLE_PROPERTY) < - name = <"units"> - type = <"CS"> - > - ["precision"] = (P_BMM_SINGLE_PROPERTY) < - name = <"precision"> - type = <"Integer"> - > - > - > - - ["DURATION"] = < - name = <"DURATION"> - ancestors = <"QUANTITY", ...> - properties = < - ["days"] = (P_BMM_SINGLE_PROPERTY) < - name = <"days"> - type = <"Integer"> - > - ["hours"] = (P_BMM_SINGLE_PROPERTY) < - name = <"hours"> - type = <"Integer"> - > - ["minutes"] = (P_BMM_SINGLE_PROPERTY) < - name = <"minutes"> - type = <"Integer"> - > - ["seconds"] = (P_BMM_SINGLE_PROPERTY) < - name = <"seconds"> - type = <"Integer"> - > - ["fractional_second"] = (P_BMM_SINGLE_PROPERTY) < - name = <"fractional_second"> - type = <"Double"> - > - ["sign"] = (P_BMM_SINGLE_PROPERTY) < - name = <"sign"> - type = <"Integer"> - > - > - > - - ["QUANTITY_RANGE"] = < - name = <"QUANTITY_RANGE"> - ancestors = <"DATA_VALUE", ...> - properties = < - ["range"] = (P_BMM_GENERIC_PROPERTY) < - name = <"range"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"PQ"> - > - > - > - > - - -- - -- replacement for IVT; synonym type for QUANTITY_RANGE - -- - ["IVLPQ"] = < - name = <"IVLPQ"> - ancestors = <"IVL", ...> - properties = < - ["low"] = (P_BMM_SINGLE_PROPERTY) < - name = <"low"> - type = <"PQ"> - > - ["high"] = (P_BMM_SINGLE_PROPERTY) < - name = <"high"> - type = <"PQ"> - > - > - > - - -- - -- replacement for IVL_ - -- - ["IVLTS"] = < - name = <"IVLTS"> - ancestors = <"IVL", ...> - properties = < - ["low"] = (P_BMM_SINGLE_PROPERTY) < - name = <"low"> - type = <"TS"> - > - ["high"] = (P_BMM_SINGLE_PROPERTY) < - name = <"high"> - type = <"TS"> - > - ["width"] = (P_BMM_SINGLE_PROPERTY) < - name = <"width"> - type = <"DURATION"> - > - > - > - - ------------------------------------------------------ - --- Time types - ------------------------------------------------------ - - ["EIVL"] = < - name = <"EIVL"> - ancestors = <"DATA_VALUE", ...> - properties = < - ["event"] = (P_BMM_SINGLE_PROPERTY) < - name = <"event"> - type = <"CD"> - > - ["offset"] = (P_BMM_SINGLE_PROPERTY) < - name = <"offset"> - type = <"DURATION"> - > - > - > - - ["PIVL"] = < - name = <"PIVL"> - ancestors = <"DATA_VALUE", ...> - properties = < - ["phase"] = (P_BMM_GENERIC_PROPERTY) < - name = <"phase"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"TS"> - > - > - ["period"] = (P_BMM_SINGLE_PROPERTY) < - name = <"period"> - type = <"DURATION"> - > - ["alignment"] = (P_BMM_SINGLE_PROPERTY) < - name = <"alignment"> - type = <"CD"> - > - > - > - - ["TS"] = < - name = <"TS"> - ancestors = <"DATA_VALUE", ...> - properties = < - ["time"] = (P_BMM_SINGLE_PROPERTY) < - name = <"time"> - type = <"String"> - > - > - > - - ["DATE"] = < - name = <"DATE"> - ancestors = <"DATA_VALUE", ...> - properties = < - ["date"] = (P_BMM_SINGLE_PROPERTY) < - name = <"date"> - type = <"String"> - > - > - > - -> - ---| ---| ***** BEGIN LICENSE BLOCK ***** ---| Version: MPL 1.1/GPL 2.0/LGPL 2.1 ---| ---| The contents of this file are subject to the Mozilla Public License Version ---| 1.1 (the 'License'); you may not use this file except in compliance with ---| the License. You may obtain a copy of the License at ---| http://www.mozilla.org/MPL/ ---| ---| Software distributed under the License is distributed on an 'AS IS' basis, ---| WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License ---| for the specific language governing rights and limitations under the ---| License. ---| ---| The Original Code is cen_data_types_0.90.bmm ---| ---| The Initial Developer of the Original Code is Thomas Beale. ---| Portions created by the Initial Developer are Copyright (C) 2011 ---| the Initial Developer. All Rights Reserved. ---| ---| Contributor(s): ---| ---| Alternatively, the contents of this file may be used under the terms of ---| either the GNU General Public License Version 2 or later (the 'GPL'), or ---| the GNU Lesser General Public License Version 2.1 or later (the 'LGPL'), ---| in which case the provisions of the GPL or the LGPL are applicable instead ---| of those above. If you wish to allow use of your version of this file only ---| under the terms of either the GPL or the LGPL, and not to allow others to ---| use your version of this file under the terms of the MPL, indicate your ---| decision by deleting the provisions above and replace them with the notice ---| and other provisions required by the GPL or the LGPL. If you do not delete ---| the provisions above, a recipient may use your version of this file under ---| the terms of any one of the MPL, the GPL or the LGPL. ---| ---| ***** END LICENSE BLOCK ***** ---| diff --git a/referencemodels/src/main/resources/bmm/ISO_21090/2011/BMM/iso_21090_0.9.0.bmm b/referencemodels/src/main/resources/bmm/ISO_21090/2011/BMM/iso_21090_0.9.0.bmm deleted file mode 100755 index f9e4fce07..000000000 --- a/referencemodels/src/main/resources/bmm/ISO_21090/2011/BMM/iso_21090_0.9.0.bmm +++ /dev/null @@ -1,883 +0,0 @@ --- --- keywords: data types, 21090 --- author: Thomas Beale --- support: thomas.beale@oceaninformatics.com --- copyright: Copyright (c) 2011 openEHR Foundation --- license: Apache 2.0 --- --- - ------------------------------------------------------- --- BMM version on which these schemas are based. --- Current BMM version can be found as value of 'Bmm_internal_version' in --- http://www.openehr.org/svn/ref_impl_eiffel/BRANCHES/adl1.5/libraries/common_libs/src/basic_meta_model/bmm_definitions.e --- ------------------------------------------------------- -bmm_version = <"2.0"> - ------------------------------------------------------- --- schema identification --- (schema_id computed as __) ------------------------------------------------------- -rm_publisher = <"iso"> -schema_name = <"21090"> -rm_release = <"0.9.0"> - ------------------------------------------------------- --- schema documentation ------------------------------------------------------- -schema_revision = <"0.9.5"> -schema_lifecycle_state = <"experimental"> -schema_description = <"13606 Release 2008 draft reference model, expressed in 'basic meta-model' format described in ISO 13606"> -schema_author = <"thomas.beale@oceaninformatics.com"> - ------------------------------------------------------- --- inclusions ------------------------------------------------------- -includes = < - ["1"] = < - id = <"openehr_primitive_types_1.0.2"> - > -> - ------------------------------------------------------- --- archetyping ------------------------------------------------------- -archetype_data_value_parent_class = <"HXIT"> - ------------------------------------------------------- --- packages ------------------------------------------------------- -packages = < - ["org.iso.21090.data_types"] = < - name = <"org.iso.21090.data_types"> - classes = <"21090_ANY", "ED", "TS", "URI", "BL", "OID", "IVL", "IVLTS", "II", - "CS", "CD", "CV", "TEXT", "SIMPLE", "CODED_TEXT", - "RTO", "CO", "PQ", "QTY", "INT", "NONNEG", "POS", "PQR", - "DATE", "TIME", "DATETIME", "INSTANT", "EIVL", "PIVL", "HXIT", "ST", "SC", "MO", - "QSET", "DSET", - "EN", "ENXP", "EntityNameUse", "EntityNamePartQualifier", "EntityNamePartType", "ON", - "AD", "ADXP", "AddressPartType", "PostalAddressUse", "TEL", "TelecommunicationAddressUse"> - > - ["org.openehr.rm.assumed_types"] = < - name = <"org.openehr.rm.assumed_types"> - classes = <"Binary", "Uid", "Decimal", "Bag", "Sequence"> - > -> - ------------------------------------------------------- --- primitive types ------------------------------------------------------- - -primitive_types = < - ["Binary"] = < - name = <"Binary"> - ancestors = <"Any", ...> - > - ["Decimal"] = < - name = <"Decimal"> - ancestors = <"Any", ...> - > - ["Uid"] = < - name = <"Uid"> - ancestors = <"Any", ...> - > - ["Bag"] = < - name = <"Bag"> - ancestors = <"Any", ...> - generic_parameter_defs = < - ["T"] = < - name = <"T"> - > - > - > - ["Sequence"] = < - name = <"Sequence"> - ancestors = <"Any", ...> - generic_parameter_defs = < - ["T"] = < - name = <"T"> - > - > - > -> - ------------------------------------------------------- --- classes ------------------------------------------------------- - -class_definitions = < - - ------------------------------------------------------ - --- Core - ------------------------------------------------------ - - ["HXIT"] = < - name = <"HXIT"> - is_abstract = - properties = < - ["validTimeLow"] = (P_BMM_SINGLE_PROPERTY) < - name = <"validTimeLow"> - type = <"String"> - > - ["validTimeHigh"] = (P_BMM_SINGLE_PROPERTY) < - name = <"validTimeHigh"> - type = <"String"> - > - ["contolInformationRoot"] = (P_BMM_SINGLE_PROPERTY) < - name = <"contolInformationRoot"> - type = <"Uid"> - > - ["contolInformationExtension"] = (P_BMM_SINGLE_PROPERTY) < - name = <"contolInformationExtension"> - type = <"Uid"> - > - > - > - - ["21090_ANY"] = < - name = <"21090_ANY"> - ancestors = <"HXIT", ...> - is_abstract = - properties = < - ["nullFlavor"] = (P_BMM_SINGLE_PROPERTY) < - name = <"nullFlavor"> - type = <"CS"> - > - ["flavorId"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"flavorId"> - type_def = < - type = <"String"> - container_type = <"Set"> - > - > - ["updateMode"] = (P_BMM_SINGLE_PROPERTY) < - name = <"updateMode"> - type = <"CS"> - > - > - > - - ["ED"] = < - name = <"ED"> - ancestors = <"21090_ANY", ...> - properties = < - ["mediaType"] = (P_BMM_SINGLE_PROPERTY) < - name = <"mediaType"> - type = <"CS"> - > - ["charset"] = (P_BMM_SINGLE_PROPERTY) < - name = <"charset"> - type = <"CS"> - > - ["language"] = (P_BMM_SINGLE_PROPERTY) < - name = <"language"> - type = <"CS"> - > - ["size"] = (P_BMM_SINGLE_PROPERTY) < - name = <"size"> - type = <"Integer"> - > - ["compression"] = (P_BMM_SINGLE_PROPERTY) < - name = <"compression"> - type = <"CS"> - > - ["reference"] = (P_BMM_SINGLE_PROPERTY) < - name = <"reference"> - type = <"URI"> - > - ["integrityCheck"] = (P_BMM_SINGLE_PROPERTY) < - name = <"integrityCheck"> - type = <"Binary"> - > - ["data"] = (P_BMM_SINGLE_PROPERTY) < - name = <"data"> - type = <"Binary"> - > - ["integrityCheckAlgorithm"] = (P_BMM_SINGLE_PROPERTY) < - name = <"integrityCheckAlgorithm"> - type = <"String"> - > - ["thumbnail"] = (P_BMM_SINGLE_PROPERTY) < - name = <"thumbnail"> - type = <"ED"> - > - > - > - ["URI"] = < - name = <"URI"> - ancestors = <"21090_ANY", ...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"String"> - is_mandatory = - > - ["scheme"] = (P_BMM_SINGLE_PROPERTY) < - name = <"scheme"> - type = <"String"> - is_mandatory = - > - ["path"] = (P_BMM_SINGLE_PROPERTY) < - name = <"path"> - type = <"String"> - is_mandatory = - > - ["fragment_id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"fragment_id"> - type = <"String"> - is_mandatory = - > - ["query"] = (P_BMM_SINGLE_PROPERTY) < - name = <"query"> - type = <"String"> - is_mandatory = - > - ["literal"] = (P_BMM_SINGLE_PROPERTY) < - name = <"literal"> - type = <"String"> - is_mandatory = - > - > - > - - ["BL"] = < - name = <"BL"> - ancestors = <"21090_ANY", ...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"Boolean"> - > - > - > - - ["OID"] = < - name = <"OID"> - ancestors = <"21090_ANY", ...> - properties = < - ["oid"] = (P_BMM_SINGLE_PROPERTY) < - name = <"oid"> - type = <"String"> - is_mandatory = - > - > - > - - ["II"] = < - name = <"II"> - ancestors = <"21090_ANY", ...> - properties = < - ["root"] = (P_BMM_SINGLE_PROPERTY) < - name = <"codingSchemeName"> - type = <"Uid"> - > - ["extension"] = (P_BMM_SINGLE_PROPERTY) < - name = <"extension"> - type = <"String"> - > - ["identifiedName"] = (P_BMM_SINGLE_PROPERTY) < - name = <"identifiedName"> - type = <"String"> - > - ["scope"] = (P_BMM_SINGLE_PROPERTY) < - name = <"scope"> - type = <"CS"> - > - ["identifierReliability"] = (P_BMM_SINGLE_PROPERTY) < - name = <"identifierReliability"> - type = <"CS"> - > - ["displayable"] = (P_BMM_SINGLE_PROPERTY) < - name = <"displayable"> - type = <"Boolean"> - > - > - > - - ["IVL"] = < - name = <"IVL"> - ancestors = <"21090_ANY", ...> - generic_parameter_defs = < - ["T"] = < - name = <"T"> - conforms_to_type = <"QTY"> - > - > - properties = < - ["low"] = (P_BMM_SINGLE_PROPERTY_OPEN) < - name = <"low"> - type = <"T"> - > - ["high"] = (P_BMM_SINGLE_PROPERTY_OPEN) < - name = <"high"> - type = <"T"> - > - ["lowClosed"] = (P_BMM_SINGLE_PROPERTY) < - name = <"lowClosed"> - type = <"Boolean"> - > - ["highClosed"] = (P_BMM_SINGLE_PROPERTY) < - name = <"highClosed"> - type = <"Boolean"> - > - ["width"] = (P_BMM_SINGLE_PROPERTY) < - name = <"width"> - type = <"QTY"> - > - ["any"] = (P_BMM_SINGLE_PROPERTY_OPEN) < - name = <"any"> - type = <"T"> - > - > - > - - ["IVLTS"] = < - name = <"IVLTS"> - ancestors = <"IVL", ...> - properties = < - ["low"] = (P_BMM_SINGLE_PROPERTY) < - name = <"low"> - type = <"TS"> - > - ["high"] = (P_BMM_SINGLE_PROPERTY) < - name = <"high"> - type = <"TS"> - > - ["any"] = (P_BMM_SINGLE_PROPERTY) < - name = <"any"> - type = <"TS"> - > - > - > - - ------------------------------------------------------ - --- Text classes - ------------------------------------------------------ - - ["ST"] = < - name = <"ST"> - ancestors = <"21090_ANY", ...> - properties = < - ["language"] = (P_BMM_SINGLE_PROPERTY) < - name = <"language"> - type = <"CS"> - > - ["translation"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"translation"> - type_def = < - type = <"ST"> - container_type = <"Set"> - > - > - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"String"> - > - > - > - - ["SC"] = < - name = <"SC"> - ancestors = <"ST", ...> - properties = < - ["code"] = (P_BMM_SINGLE_PROPERTY) < - name = <"code"> - type = <"CD"> - > - > - > - - ------------------------------------------------------ - --- coded Text classes - ------------------------------------------------------ - - ["CS"] = < - name = <"CS"> - ancestors = <"21090_ANY", ...> - properties = < - ["codeValue"] = (P_BMM_SINGLE_PROPERTY) < - name = <"codeValue"> - type = <"String"> - > - ["codingSystem"] = (P_BMM_SINGLE_PROPERTY) < - name = <"codeSystem"> - type = <"Uid"> - > - ["codeSystemName"] = (P_BMM_SINGLE_PROPERTY) < - name = <"codeSystemName"> - type = <"String"> - > - ["codeSystemVersion"] = (P_BMM_SINGLE_PROPERTY) < - name = <"codeSystemVersion"> - type = <"String"> - > - ["originalText"] = (P_BMM_SINGLE_PROPERTY) < - name = <"originalText"> - type = <"ED"> - > - > - > - - ["CD"] = < - name = <"CD"> - ancestors = <"CS", ...> - properties = < - ["valueSet"] = (P_BMM_SINGLE_PROPERTY) < - name = <"valueSet"> - type = <"Uid"> - > - ["valueSetVersion"] = (P_BMM_SINGLE_PROPERTY) < - name = <"valueSetVersion"> - type = <"String"> - > - ["displayName"] = (P_BMM_SINGLE_PROPERTY) < - name = <"displayName"> - type = <"ST"> - > - ["codingRationale"] = (P_BMM_SINGLE_PROPERTY) < - name = <"codingRationale"> - type = <"CS"> - > - ["source"] = (P_BMM_SINGLE_PROPERTY) < - name = <"source"> - type = <"CD"> - > - ["translation"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"translation"> - type_def = < - type = <"CD"> - container_type = <"Set"> - > - > - > - > - - ["CV"] = < - name = <"CV"> - ancestors = <"CD", ...> - > - - ["TEXT"] = < - name = <"TEXT"> - ancestors = <"ED", ...> - > - - ["SIMPLE"] = < - name = <"SIMPLE"> - ancestors = <"ST", ...> - > - - ["CODED_TEXT"] = < - name = <"CODED_TEXT"> - ancestors = <"CD", ...> - > - - ------------------------------------------------------ - --- Quantity types - ------------------------------------------------------ - - ["QTY"] = < - name = <"QTY"> - ancestors = <"21090_ANY", ...> - is_abstract = - properties = < - ["expression"] = (P_BMM_SINGLE_PROPERTY) < - name = <"expression"> - type = <"ED"> - > - ["originalText"] = (P_BMM_SINGLE_PROPERTY) < - name = <"originalText"> - type = <"TEXT"> - > - ["uncertainty"] = (P_BMM_SINGLE_PROPERTY) < - name = <"uncertainty"> - type = <"QTY"> - > - ["uncertaintyType"] = (P_BMM_SINGLE_PROPERTY) < - name = <"uncertaintyType"> - type = <"CS"> - > - ["uncertainRange"] = (P_BMM_GENERIC_PROPERTY) < - name = <"uncertainRange"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"QTY"> - > - > - > - > - - ["INT"] = < - name = <"INT"> - ancestors = <"QTY", ...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"Integer"> - > - > - > - - ["NONNEG"] = < - name = <"NONNEG"> - ancestors = <"INT", ...> - > - - ["POS"] = < - name = <"POS"> - ancestors = <"NONNEG", ...> - > - - ["RTO"] = < - name = <"RTO"> - ancestors = <"QTY", ...> - properties = < - ["numerator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"numerator"> - type = <"QTY"> - > - ["denominator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"denominator"> - type = <"QTY"> - > - > - > - - ["CO"] = < - name = <"CO"> - ancestors = <"QTY", ...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"Decimal"> - > - ["code"] = (P_BMM_SINGLE_PROPERTY) < - name = <"code"> - type = <"CD"> - > - > - > - ["PQ"] = < - name = <"PQ"> - ancestors = <"QTY", ...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"Decimal"> - > - ["units"] = (P_BMM_SINGLE_PROPERTY) < - name = <"units"> - type = <"CS"> - > - ["translation"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"translation"> - type_def = < - type = <"PQR"> - container_type = <"Set"> - > - > - ["codingRationale"] = (P_BMM_SINGLE_PROPERTY) < - name = <"codingRationale"> - type = <"CS"> - > - > - > - ["PQR"] = < - name = <"PQR"> - ancestors = <"CD", ...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"Decimal"> - > - > - > - - ["MO"] = < - name = <"MO"> - ancestors = <"QTY", ...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"Decimal"> - > - ["currency"] = (P_BMM_SINGLE_PROPERTY) < - name = <"currency"> - type = <"CS"> - > - > - > - - ["QSET"] = < - name = <"QSET"> - ancestors = <"21090_ANY", ...> - properties = < - ["originalText"] = (P_BMM_SINGLE_PROPERTY) < - name = <"originalText"> - type = <"TEXT"> - > - > - > - - ["EIVL"] = < - name = <"EIVL"> - ancestors = <"QSET", ...> - properties = < - ["event"] = (P_BMM_SINGLE_PROPERTY) < - name = <"event"> - type = <"CD"> - > - ["offset"] = (P_BMM_GENERIC_PROPERTY) < - name = <"offset"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"PQ"> - > - > - > - > - - ["PIVL"] = < - name = <"PIVL"> - ancestors = <"QSET", ...> - properties = < - ["phase"] = (P_BMM_GENERIC_PROPERTY) < - name = <"phase"> - type_def = < - root_type = <"IVL"> - generic_parameters = <"TS"> - > - > - ["frequency"] = (P_BMM_SINGLE_PROPERTY) < - name = <"frequency"> - type = <"RTO"> - > - ["period"] = (P_BMM_SINGLE_PROPERTY) < - name = <"period"> - type = <"PQ"> - > - ["alignment"] = (P_BMM_SINGLE_PROPERTY) < - name = <"alignment"> - type = <"CD"> - > - ["isFlexible"] = (P_BMM_SINGLE_PROPERTY) < - name = <"isFlexible"> - type = <"Boolean"> - > - ["count"] = (P_BMM_SINGLE_PROPERTY) < - name = <"count"> - type = <"INT"> - > - > - > - - ["TS"] = < - name = <"TS"> - ancestors = <"QTY", ...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"String"> - > - > - > - - ["INSTANT"] = < - name = <"INSTANT"> - ancestors = <"TS", ...> - > - - ["DATE"] = < - name = <"DATE"> - ancestors = <"TS", ...> - > - - ["TIME"] = < - name = <"TIME"> - ancestors = <"TS", ...> - > - - ["DATETIME"] = < - name = <"DATETIME"> - ancestors = <"TS", ...> - > - - ------------------------------------------------------ - --- Container classes - ------------------------------------------------------ - - ["DSET"] = < - name = <"DSET"> - ancestors = <"21090_ANY", ...> - generic_parameter_defs = < - ["T"] = < - name = <"T"> - conforms_to_type = <"21090_ANY"> - > - > - properties = < - ["item"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"item"> - type_def = < - type = <"T"> - container_type = <"Bag"> - > - > - > - > - - ------------------------------------------------------ - --- Entity Name classes - ------------------------------------------------------ - - ["EN"] = < - name = <"EN"> - ancestors = <"21090_ANY", ...> - properties = < - ["part"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"part"> - type_def = < - type = <"ENXP"> - container_type = <"Sequence"> - > - > - ["use"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"use"> - type_def = < - type = <"EntityNameUse"> - container_type = <"Set"> - > - > - > - > - - ["EntityNameUse"] = (P_BMM_ENUMERATION_STRING) < - name = <"EntityNameUse"> - ancestors = <"String", ...> - item_names = <"C", "OR", "T", "I", "P", "A", "R", "OLD", "DN", "M", "SRCH", "PHON", "ABC", "SYL", "IDE"> - > - - ["EntityNamePartQualifier"] = (P_BMM_ENUMERATION_STRING) < - name = <"EntityNamePartQualifier"> - ancestors = <"String", ...> - item_names = <"LS", "AC", "NB", "PR", "HON", "BR", "AD", "SP", "MID", "CL", "IN", "PFX", "SFX"> - > - - ["EntityNamePartType"] = (P_BMM_ENUMERATION_STRING) < - name = <"EntityNamePartType"> - ancestors = <"String", ...> - item_names = <"FAM", "GIV", "TITLE", "DEL"> - > - - ["ENXP"] = < - name = <"ENXP"> - ancestors = <"Any", ...> - properties = < - ["qualifier"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"qualifier"> - type_def = < - type = <"EntityNamePartQualifier"> - container_type = <"Set"> - > - > - ["type"] = (P_BMM_SINGLE_PROPERTY) < - name = <"type"> - type = <"EntityNamePartType"> - > - > - > - - ["ON"] = < - name = <"ON"> - ancestors = <"EN", ...> - > - - ------------------------------------------------------ - --- Address classes - ------------------------------------------------------ - - ["AD"] = < - name = <"AD"> - ancestors = <"21090_ANY", ...> - properties = < - ["part"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"part"> - type_def = < - type = <"ADXP"> - container_type = <"Sequence"> - > - > - ["use"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"use"> - type_def = < - type = <"PostalAddressUse"> - container_type = <"Set"> - > - > - > - > - - ["PostalAddressUse"] = (P_BMM_ENUMERATION_STRING) < - name = <"PostalAddressUse"> - ancestors = <"String", ...> - item_names = <"H", "HP", "HV", "WP", "DIR", "PUB", "BAD", "PHYS", "PST", "TMP", "ABC", "IDE", "SYL", "SRCH", "SNDX", "PHON"> - > - - ["ADXP"] = < - name = <"ADXP"> - ancestors = <"Any", ...> - properties = < - ["qualifier"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"qualifier"> - type_def = < - type = <"EntityNamePartQualifier"> - container_type = <"Set"> - > - > - ["type"] = (P_BMM_SINGLE_PROPERTY) < - name = <"type"> - type = <"EntityNamePartType"> - > - > - > - - ["AddressPartType"] = (P_BMM_ENUMERATION_STRING) < - name = <"AddressPartType"> - ancestors = <"String", ...> - item_names = <"AL", "ADL", "UNID", "UNIT", "DAL", "DINST", "DINSTA", "DINSTQ", "DMOD", "DMODID", "SAL", "BNR", "BNN", "BNS", "STR", "STB", "STTYP", "DIR", "INT", "CAR", "CEN", "CNT", "CPA", "CTY", "DEL", "POB", "PRE", "STA", "ZIP"> - > - - ["TEL"] = < - name = <"TEL"> - ancestors = <"21090_ANY", ...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"Uri"> - > - ["usablePeriod"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"usablePeriod"> - type_def = < - type = <"TS"> - container_type = <"QSET"> - > - > - ["use"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"use"> - type_def = < - type = <"TelecommunicationAddressUse"> - container_type = <"Set"> - > - > - > - > - - ["TelecommunicationAddressUse"] = (P_BMM_ENUMERATION_STRING) < - name = <"TelecommunicationAddressUse"> - ancestors = <"String", ...> - item_names = <"H", "HP", "HV", "WP", "DIR", "PUB", "BAD", "TMP", "AS", "EC", "MC", "PG"> - > - -> - diff --git a/referencemodels/src/test/java/org/openehr/referencemodels/BuiltInReferenceModelsTest.java b/referencemodels/src/test/java/org/openehr/referencemodels/AllMetaModelsInitialiserTest.java similarity index 81% rename from referencemodels/src/test/java/org/openehr/referencemodels/BuiltInReferenceModelsTest.java rename to referencemodels/src/test/java/org/openehr/referencemodels/AllMetaModelsInitialiserTest.java index ae6c28fa0..bfb1b4764 100644 --- a/referencemodels/src/test/java/org/openehr/referencemodels/BuiltInReferenceModelsTest.java +++ b/referencemodels/src/test/java/org/openehr/referencemodels/AllMetaModelsInitialiserTest.java @@ -1,39 +1,35 @@ package org.openehr.referencemodels; -import com.google.common.collect.Sets; import com.nedap.archie.aom.Archetype; import com.nedap.archie.aom.ArchetypeHRID; import com.nedap.archie.rminfo.MetaModels; import org.junit.Test; -import org.openehr.bmm.core.BmmModel; import org.openehr.bmm.v2.validation.BmmRepository; import org.openehr.bmm.v2.validation.BmmValidationResult; -import java.util.Map; - import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; -public class BuiltInReferenceModelsTest { +public class AllMetaModelsInitialiserTest { @Test public void bmmRepository() throws Exception { - BmmRepository bmmRepository = BuiltinReferenceModels.getBmmRepository(); + BmmRepository bmmRepository = AllMetaModelsInitialiser.getBmmRepository(); for(BmmValidationResult validation:bmmRepository.getInvalidModels()) { System.out.println("validation " + validation.getSchemaId() + " contains errors:"); System.out.println(validation.getLogger().toString()); } - assertEquals(35, bmmRepository.getPersistentSchemas().size()); - assertEquals(35, bmmRepository.getModels().size()); - assertEquals(32, bmmRepository.getValidModels().size()); - assertEquals(3, bmmRepository.getInvalidModels().size()); + assertEquals(39, bmmRepository.getPersistentSchemas().size()); + assertEquals(39, bmmRepository.getModels().size()); + assertEquals(37, bmmRepository.getValidModels().size()); + assertEquals(2, bmmRepository.getInvalidModels().size()); } @Test public void overrideModelVersion() throws Exception { - MetaModels metaModels = BuiltinReferenceModels.getMetaModels(); + MetaModels metaModels = AllMetaModelsInitialiser.getMetaModels(); Archetype archetype = new Archetype(); archetype.setArchetypeId(new ArchetypeHRID("openEHR-EHR-CLUSTER.test.v1.0.0")); archetype.setRmRelease("1.0.3"); diff --git a/referencemodels/src/test/java/org/openehr/referencemodels/RMComparedWithBmmTest.java b/referencemodels/src/test/java/org/openehr/referencemodels/RMComparedWithBmmTest.java index 01782f920..9c37953e2 100644 --- a/referencemodels/src/test/java/org/openehr/referencemodels/RMComparedWithBmmTest.java +++ b/referencemodels/src/test/java/org/openehr/referencemodels/RMComparedWithBmmTest.java @@ -2,7 +2,7 @@ import com.google.common.base.Joiner; import com.google.common.collect.Sets; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import org.junit.Test; import org.openehr.bmm.core.BmmClass; import org.openehr.bmm.core.BmmModel; @@ -42,7 +42,7 @@ public void compareBmmWithRM() { typeNamesOverride.put("Interval.lower", "object"); typeNamesOverride.put("Interval.upper", "object"); - BmmRepository bmmRepository = BuiltinReferenceModels.getBmmRepository(); + BmmRepository bmmRepository = AllMetaModelsInitialiser.getBmmRepository(); BmmModel model = bmmRepository.getModel("openehr_rm_1.1.0").getModel(); List compared = new BmmComparison(extraParams, typeMap, typeNamesOverride).compare(model, OpenEhrRmInfoLookup.getInstance()); @@ -107,9 +107,6 @@ public void compareBmmWithRM() { //BMM changed VERSION_STATUS to an enum. For now this remains a string until some further major release knownDifferences.add(new ModelDifference(ModelDifferenceType.CLASS_MISSING_IN_MODEL, "", "VERSION_STATUS", null)); - // Not needed in BMM since it defines constants / static functions but no data - knownDifferences.add(new ModelDifference(ModelDifferenceType.CLASS_MISSING_IN_BMM, "", "TIME_DEFINITIONS", null)); - knownDifferences.add(new ModelDifference(ModelDifferenceType.PROPERTY_MISSING_IN_BMM, "", "DV_ABSOLUTE_QUANTITY", "magnitude")); knownDifferences.add(new ModelDifference(ModelDifferenceType.PROPERTY_MISSING_IN_BMM, "", "DV_AMOUNT", "magnitude")); knownDifferences.add(new ModelDifference(ModelDifferenceType.PROPERTY_MISSING_IN_BMM, "", "DV_DATE", "magnitude")); diff --git a/referencemodels/src/test/resources/aom/openehr_am_230.bmm b/referencemodels/src/test/resources/aom/openehr_am_230.bmm deleted file mode 100644 index fe24d0b05..000000000 --- a/referencemodels/src/test/resources/aom/openehr_am_230.bmm +++ /dev/null @@ -1,979 +0,0 @@ --- --- component: openEHR BMM Implementation Technology Specification --- description: openEHR AM component formal expression. This file is an ODIN serialisation of --- the BMM object meta-model classes found at --- https://www.openehr.org/releases/LANG/latest/p_bmm.html --- keywords: reference model, meta-model, archetypes --- author: Thomas Beale --- support: https://openehr.atlassian.net/issues/?filter=11117 --- copyright: Copyright (c) 2021- openEHR Foundation --- license: Apache 2.0 --- - ------------------------------------------------------- --- BMM version on which these schemas are based. --- Current BMM version can be found as the top version in the specification: --- https://www.openehr.org/releases/LANG/latest/bmm_persistence.html#_amendment_record --- ------------------------------------------------------- -bmm_version = <"2.3"> - ------------------------------------------------------- --- schema identification --- (schema_id computed as __) ------------------------------------------------------- -rm_publisher = <"openehr"> -schema_name = <"am"> -rm_release = <"2.3.0"> -model_name = <"AOM2"> - ------------------------------------------------------- --- schema documentation ------------------------------------------------------- -schema_revision = <"2.3.0.1"> -schema_lifecycle_state = <"stable"> -schema_description = <"openEHR Release 2.3.0 AM schema"> -schema_author = <"Thomas Beale "> - ------------------------------------------------------- --- inclusions ------------------------------------------------------- -includes = < - ["1"] = < - id = <"openehr_base_1.1.0"> - > - ["2"] = < - id = <"openehr_expression_1.0.4"> - > -> - ------------------------------------------------------- --- packages - software structure ------------------------------------------------------- - -packages = < - ["org.openehr.am.aom2"] = < - name = <"org.openehr.am.aom2"> - packages = < - ["definitions"] = < - name = <"definitions"> - classes = <"ADL_CODE_DEFINITIONS"> - > - ["archetype"] = < - name = <"archetype"> - classes = <"AUTHORED_ARCHETYPE", "ARCHETYPE", "TEMPLATE", "TEMPLATE_OVERLAY", "OPERATIONAL_TEMPLATE"> - > - ["constraint_model"] = < - name = <"constraint_model"> - packages = < - ["definition"] = < - name = <"primitive"> - classes = <"C_REAL", "C_ORDERED", "C_BOOLEAN", "C_STRING", "C_INTEGER", "C_TERMINOLOGY_CODE", - "C_TEMPORAL", "C_TIME", "C_DATE", "C_DATE_TIME", "C_DURATION", "CONSTRAINT_STATUS" - > - > - > - classes = <"C_COMPLEX_OBJECT", "C_PRIMITIVE_OBJECT", "C_PRIMITIVE_TUPLE", "C_SECOND_ORDER", - "C_ATTRIBUTE_TUPLE", "C_ATTRIBUTE", "ARCHETYPE_SLOT", "C_OBJECT", "C_COMPLEX_OBJECT_PROXY", "C_DEFINED_OBJECT", - "SIBLING_ORDER", "C_ARCHETYPE_ROOT", "ARCHETYPE_CONSTRAINT" - > - > - ["rm_overlay"] = < - name = <"rm_overlay"> - classes = <"RM_OVERLAY", "RM_ATTRIBUTE_VISIBILITY", "VISIBILITY_TYPE"> - > - ["profile"] = < - name = <"profile"> - classes = <"AOM_PROFILE", "AOM_TYPE_MAPPING", "AOM_PROPERTY_MAPPING"> - > - ["terminology"] = < - name = <"terminology"> - classes = <"ARCHETYPE_TERM", "ARCHETYPE_TERMINOLOGY", "TERMINOLOGY_RELATION", "VALUE_SET"> - > - ["persistence"] = < - name = <"persistence"> - > - > - > -> - ------------------------------------------------------- --- classes ------------------------------------------------------- - -class_definitions = < - - ------------------------------------------------------ - -- definitions package - ------------------------------------------------------ - - ["ADL_CODE_DEFINITIONS"] = (P_BMM_CLASS) < - name = <"ADL_CODE_DEFINITIONS"> - ancestors = <"Any"> - > - - ------------------------------------------------------ - -- archetype package - ------------------------------------------------------ - - ["ARCHETYPE"] = (P_BMM_CLASS) < - name = <"ARCHETYPE"> - properties = < - ["parent_archetype_id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"parent_archetype_id"> - type = <"String"> - > - ["archetype_id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"archetype_id"> - type = <"ARCHETYPE_HRID"> - is_mandatory = - > - ["rules"] = (P_BMM_SINGLE_PROPERTY) < - name = <"rules"> - type = <"STATEMENT"> - > - ["is_differential"] = (P_BMM_SINGLE_PROPERTY) < - name = <"is_differential"> - type = <"Boolean"> - is_mandatory = - > - ["terminology"] = (P_BMM_SINGLE_PROPERTY) < - name = <"terminology"> - type = <"ARCHETYPE_TERMINOLOGY"> - is_mandatory = - > - ["definition"] = (P_BMM_SINGLE_PROPERTY) < - name = <"definition"> - type = <"C_COMPLEX_OBJECT"> - is_mandatory = - > - > - > - ["AUTHORED_ARCHETYPE"] = (P_BMM_CLASS) < - name = <"AUTHORED_ARCHETYPE"> - ancestors = <"ARCHETYPE", "AUTHORED_RESOURCE"> - properties = < - ["adl_version"] = (P_BMM_SINGLE_PROPERTY) < - name = <"adl_version"> - type = <"String"> - > - ["rm_release"] = (P_BMM_SINGLE_PROPERTY) < - name = <"rm_release"> - type = <"String"> - is_mandatory = - > - ["is_generated"] = (P_BMM_SINGLE_PROPERTY) < - name = <"is_generated"> - type = <"Boolean"> - is_mandatory = - > - ["build_uid"] = (P_BMM_SINGLE_PROPERTY) < - name = <"build_uid"> - type = <"UUID"> - is_mandatory = - > - ["other_meta_data"] = (P_BMM_GENERIC_PROPERTY) < - name = <"other_meta_data"> - type_def = < - root_type = <"Hash"> - generic_parameters = <"String", "String"> - > - is_mandatory = - > - > - > - - ["OPERATIONAL_TEMPLATE"] = (P_BMM_CLASS) < - name = <"OPERATIONAL_TEMPLATE"> - ancestors = <"AUTHORED_ARCHETYPE"> - properties = < - ["component_terminologies"] = (P_BMM_GENERIC_PROPERTY) < - name = <"component_terminologies"> - type_def = < - root_type = <"Hash"> - generic_parameters = <"String", "ARCHETYPE_TERMINOLOGY"> - > - > - ["terminology_extracts"] = (P_BMM_GENERIC_PROPERTY) < - name = <"terminology_extracts"> - type_def = < - root_type = <"Hash"> - generic_parameters = <"String", "ARCHETYPE_TERMINOLOGY"> - > - > - > - > - ["TEMPLATE"] = (P_BMM_CLASS) < - name = <"TEMPLATE"> - ancestors = <"AUTHORED_ARCHETYPE"> - properties = < - ["template_overlays"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"template_overlays"> - type_def = < - container_type = <"List"> - type = <"TEMPLATE_OVERLAY"> - > - is_mandatory = - > - > - > - ["TEMPLATE_OVERLAY"] = (P_BMM_CLASS) < - name = <"TEMPLATE_OVERLAY"> - ancestors = <"ARCHETYPE"> - > - - ------------------------------------------------------ - -- terminology package - ------------------------------------------------------ - - ["ARCHETYPE_TERMINOLOGY"] = (P_BMM_CLASS) < - name = <"ARCHETYPE_TERMINOLOGY"> - ancestors = <"Any"> - properties = < - ["term_bindings"] = (P_BMM_GENERIC_PROPERTY) < - name = <"term_bindings"> - type_def = < - root_type = <"Hash"> - generic_parameter_defs = < - ["K"] = (P_BMM_SIMPLE_TYPE) < - type = <"String"> - > - ["V"] = (P_BMM_GENERIC_TYPE) < - root_type = <"Hash"> - generic_parameters = <"String", "Uri"> - > - > - > - > - ["original_language"] = (P_BMM_SINGLE_PROPERTY) < - name = <"original_language"> - type = <"String"> - is_mandatory = - > - ["value_sets"] = (P_BMM_GENERIC_PROPERTY) < - name = <"value_sets"> - type_def = < - root_type = <"Hash"> - generic_parameters = <"String", "VALUE_SET"> - > - > - ["concept_code"] = (P_BMM_SINGLE_PROPERTY) < - name = <"concept_code"> - type = <"String"> - is_mandatory = - > - ["terminology_extracts"] = (P_BMM_GENERIC_PROPERTY) < - name = <"terminology_extracts"> - type_def = < - root_type = <"Hash"> - generic_parameter_defs = < - ["K"] = (P_BMM_SIMPLE_TYPE) < - type = <"String"> - > - ["V"] = (P_BMM_GENERIC_TYPE) < - root_type = <"Hash"> - generic_parameters = <"String", "ARCHETYPE_TERM"> - > - > - > - > - ["term_definitions"] = (P_BMM_GENERIC_PROPERTY) < - name = <"term_definitions"> - type_def = < - root_type = <"Hash"> - generic_parameter_defs = < - ["K"] = (P_BMM_SIMPLE_TYPE) < - type = <"String"> - > - ["V"] = (P_BMM_GENERIC_TYPE) < - root_type = <"Hash"> - generic_parameters = <"String", "ARCHETYPE_TERM"> - > - > - > - is_mandatory = - > - ["is_differential"] = (P_BMM_SINGLE_PROPERTY) < - name = <"is_differential"> - type = <"Boolean"> - is_mandatory = - > - > - > - ["TERMINOLOGY_RELATION"] = (P_BMM_CLASS) < - name = <"TERMINOLOGY_RELATION"> - ancestors = <"Any"> - properties = < - ["id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"id"> - type = <"String"> - is_mandatory = - > - > - > - ["VALUE_SET"] = (P_BMM_CLASS) < - name = <"VALUE_SET"> - ancestors = <"TERMINOLOGY_RELATION"> - > - - ["ARCHETYPE_TERM"] = (P_BMM_CLASS) < - name = <"ARCHETYPE_TERM"> - ancestors = <"Any"> - properties = < - ["code"] = (P_BMM_SINGLE_PROPERTY) < - name = <"code"> - type = <"String"> - is_mandatory = - > - ["text"] = (P_BMM_SINGLE_PROPERTY) < - name = <"text"> - type = <"String"> - is_mandatory = - > - ["description"] = (P_BMM_SINGLE_PROPERTY) < - name = <"description"> - type = <"String"> - is_mandatory = - > - ["other_items"] = (P_BMM_GENERIC_PROPERTY) < - name = <"other_items"> - type_def = < - root_type = <"Hash"> - generic_parameters = <"String", "String"> - > - > - > - > - - ------------------------------------------------------ - -- constraint_model package - ------------------------------------------------------ - - ["ARCHETYPE_CONSTRAINT"] = (P_BMM_CLASS) < - name = <"ARCHETYPE_CONSTRAINT"> - ancestors = <"Any"> - is_abstract = - properties = < - ["parent"] = (P_BMM_SINGLE_PROPERTY) < - name = <"parent"> - type = <"ARCHETYPE_CONSTRAINT"> - > - ["soc_parent"] = (P_BMM_SINGLE_PROPERTY) < - name = <"soc_parent"> - type = <"C_SECOND_ORDER"> - > - > - > - ["C_ATTRIBUTE"] = (P_BMM_CLASS) < - name = <"C_ATTRIBUTE"> - ancestors = <"ARCHETYPE_CONSTRAINT"> - properties = < - ["rm_attribute_name"] = (P_BMM_SINGLE_PROPERTY) < - name = <"rm_attribute_name"> - type = <"String"> - is_mandatory = - > - ["existence"] = (P_BMM_SINGLE_PROPERTY) < - name = <"existence"> - type = <"Multiplicity_interval"> - > - ["children"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"children"> - type_def = < - container_type = <"List"> - type = <"C_OBJECT"> - > - > - ["differential_path"] = (P_BMM_SINGLE_PROPERTY) < - name = <"differential_path"> - type = <"String"> - > - ["cardinality"] = (P_BMM_SINGLE_PROPERTY) < - name = <"cardinality"> - type = <"Cardinality"> - > - ["is_multiple"] = (P_BMM_SINGLE_PROPERTY) < - name = <"is_multiple"> - type = <"Boolean"> - is_mandatory = - > - > - > - - ["C_OBJECT"] = (P_BMM_CLASS) < - name = <"C_OBJECT"> - ancestors = <"ARCHETYPE_CONSTRAINT"> - properties = < - ["rm_type_name"] = (P_BMM_SINGLE_PROPERTY) < - name = <"rm_type_name"> - type = <"String"> - is_mandatory = - > - ["occurrences"] = (P_BMM_SINGLE_PROPERTY) < - name = <"occurrences"> - type = <"Multiplicity_interval"> - > - ["node_id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"node_id"> - type = <"String"> - is_mandatory = - > - ["is_deprecated"] = (P_BMM_SINGLE_PROPERTY) < - name = <"is_deprecated"> - type = <"Boolean"> - > - ["sibling_order"] = (P_BMM_SINGLE_PROPERTY) < - name = <"sibling_order"> - type = <"SIBLING_ORDER"> - > - > - is_abstract = - > - - ["SIBLING_ORDER"] = (P_BMM_CLASS) < - name = <"SIBLING_ORDER"> - ancestors = <"Any"> - properties = < - ["sibling_node_id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"sibling_node_id"> - type = <"String"> - is_mandatory = - > - ["is_before"] = (P_BMM_SINGLE_PROPERTY) < - name = <"is_before"> - type = <"Boolean"> - is_mandatory = - > - > - > - ["C_DEFINED_OBJECT"] = (P_BMM_CLASS) < - name = <"C_DEFINED_OBJECT"> - ancestors = <"C_OBJECT"> - properties = < - ["default_value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"default_value"> - type = <"Any"> - > - > - is_abstract = - > - ["C_COMPLEX_OBJECT"] = (P_BMM_CLASS) < - name = <"C_COMPLEX_OBJECT"> - ancestors = <"C_DEFINED_OBJECT"> - properties = < - ["attributes"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"attributes"> - type_def = < - container_type = <"List"> - type = <"C_ATTRIBUTE"> - > - > - ["attribute_tuples"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"attribute_tuples"> - type_def = < - container_type = <"List"> - type = <"C_ATTRIBUTE_TUPLE"> - > - > - > - > - - ["C_ARCHETYPE_ROOT"] = (P_BMM_CLASS) < - name = <"C_ARCHETYPE_ROOT"> - ancestors = <"C_COMPLEX_OBJECT"> - properties = < - ["archetype_ref"] = (P_BMM_SINGLE_PROPERTY) < - name = <"archetype_ref"> - type = <"String"> - is_mandatory = - > - > - > - ["ARCHETYPE_SLOT"] = (P_BMM_CLASS) < - name = <"ARCHETYPE_SLOT"> - ancestors = <"C_OBJECT"> - properties = < - ["excludes"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"excludes"> - type_def = < - container_type = <"List"> - type = <"ASSERTION"> - > - > - ["includes"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"includes"> - type_def = < - container_type = <"List"> - type = <"ASSERTION"> - > - > - ["closed"] = (P_BMM_SINGLE_PROPERTY) < - name = <"closed"> - type = <"Boolean"> - is_mandatory = - > - > - > - ["C_COMPLEX_OBJECT_PROXY"] = (P_BMM_CLASS) < - name = <"C_COMPLEX_OBJECT_PROXY"> - ancestors = <"C_OBJECT"> - properties = < - ["target_path"] = (P_BMM_SINGLE_PROPERTY) < - name = <"target_path"> - type = <"String"> - is_mandatory = - > - > - > - - ["C_PRIMITIVE_OBJECT"] = (P_BMM_CLASS) < - name = <"C_PRIMITIVE_OBJECT"> - ancestors = <"C_DEFINED_OBJECT"> - properties = < - ["is_enumerated_type_constraint"] = (P_BMM_SINGLE_PROPERTY) < - name = <"is_enumerated_type_constraint"> - type = <"Boolean"> - > - ["assumed_value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"assumed_value"> - type = <"Any"> - > - ["constraint"] = (P_BMM_SINGLE_PROPERTY) < - name = <"constraint"> - type = <"Any"> - is_mandatory = - > - > - is_abstract = - > - - ["C_SECOND_ORDER"] = (P_BMM_CLASS) < - name = <"C_SECOND_ORDER"> - ancestors = <"Any"> - properties = < - ["members"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"members"> - type_def = < - container_type = <"List"> - type = <"ARCHETYPE_CONSTRAINT"> - > - is_mandatory = - > - > - > - ["C_ATTRIBUTE_TUPLE"] = (P_BMM_CLASS) < - name = <"C_ATTRIBUTE_TUPLE"> - ancestors = <"C_SECOND_ORDER"> - properties = < - ["tuples"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"tuples"> - type_def = < - container_type = <"List"> - type = <"C_PRIMITIVE_TUPLE"> - > - > - ["members"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"members"> - type_def = < - container_type = <"List"> - type = <"C_ATTRIBUTE"> - > - is_mandatory = - > - > - > - ["C_PRIMITIVE_TUPLE"] = (P_BMM_CLASS) < - name = <"C_PRIMITIVE_TUPLE"> - ancestors = <"C_SECOND_ORDER"> - properties = < - ["members"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"members"> - type_def = < - container_type = <"List"> - type = <"C_PRIMITIVE_OBJECT"> - > - is_mandatory = - > - > - > - - - ------------------------------------------------------ - -- constraint_model.primitive package - ------------------------------------------------------ - - ["C_BOOLEAN"] = (P_BMM_CLASS) < - name = <"C_BOOLEAN"> - ancestors = <"C_PRIMITIVE_OBJECT"> - properties = < - ["constraint"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"constraint"> - type_def = < - container_type = <"List"> - type = <"Boolean"> - > - > - ["assumed_value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"assumed_value"> - type = <"Boolean"> - > - ["default_value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"default_value"> - type = <"Boolean"> - > - > - > - - ["C_STRING"] = (P_BMM_CLASS) < - name = <"C_STRING"> - ancestors = <"C_PRIMITIVE_OBJECT"> - properties = < - ["constraint"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"constraint"> - type_def = < - container_type = <"List"> - type = <"String"> - > - is_mandatory = - > - ["assumed_value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"assumed_value"> - type = <"String"> - > - ["default_value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"default_value"> - type = <"String"> - > - > - > - ["C_TERMINOLOGY_CODE"] = (P_BMM_CLASS) < - name = <"C_TERMINOLOGY_CODE"> - ancestors = <"C_PRIMITIVE_OBJECT"> - properties = < - ["constraint"] = (P_BMM_SINGLE_PROPERTY) < - name = <"constraint"> - type = <"String"> - is_mandatory = - > - ["constraint_status"] = (P_BMM_SINGLE_PROPERTY) < - name = <"constraint_status"> - type = <"CONSTRAINT_STATUS"> - > - ["assumed_value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"assumed_value"> - type = <"Terminology_code"> - > - ["default_value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"default_value"> - type = <"Terminology_code"> - > - > - > - - ["CONSTRAINT_STATUS"] = (P_BMM_ENUMERATION_INTEGER) < - name = <"CONSTRAINT_STATUS"> - ancestors = <"Integer"> - item_names = <"required", "extensible", "preferred", "example"> - item_values = <0, 1, 2, 3> - > - - ["C_ORDERED"] = (P_BMM_CLASS) < - name = <"C_ORDERED"> - ancestors = <"C_PRIMITIVE_OBJECT"> - is_abstract = - properties = < - ["constraint"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"constraint"> - type_def = < - container_type = <"List"> - type_def = (P_BMM_GENERIC_TYPE) < - root_type = <"Interval"> - generic_parameters = <"Ordered"> - > - > - > - > - > - ["C_INTEGER"] = (P_BMM_CLASS) < - name = <"C_INTEGER"> - ancestors = <"C_ORDERED"> - properties = < - ["constraint"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"constraint"> - type_def = < - container_type = <"List"> - type_def = (P_BMM_GENERIC_TYPE) < - root_type = <"Interval"> - generic_parameters = <"Integer"> - > - > - is_mandatory = - > - ["assumed_value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"assumed_value"> - type = <"Integer"> - > - ["default_value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"default_value"> - type = <"Integer"> - > - > - > - ["C_REAL"] = (P_BMM_CLASS) < - name = <"C_REAL"> - ancestors = <"C_ORDERED"> - properties = < - ["constraint"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"constraint"> - type_def = < - container_type = <"List"> - type_def = (P_BMM_GENERIC_TYPE) < - root_type = <"Interval"> - generic_parameters = <"Real"> - > - > - is_mandatory = - > - ["assumed_value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"assumed_value"> - type = <"Real"> - > - ["default_value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"default_value"> - type = <"Real"> - > - > - > - - ["C_TEMPORAL"] = (P_BMM_CLASS) < - name = <"C_TEMPORAL"> - ancestors = <"C_ORDERED"> - properties = < - ["pattern_constraint"] = (P_BMM_SINGLE_PROPERTY) < - name = <"pattern_constraint"> - type = <"String"> - > - > - is_abstract = - > - - ["C_DATE"] = (P_BMM_CLASS) < - name = <"C_DATE"> - ancestors = <"C_TEMPORAL"> - properties = < - ["constraint"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"constraint"> - type_def = < - container_type = <"List"> - type_def = (P_BMM_GENERIC_TYPE) < - root_type = <"Interval"> - generic_parameters = <"Date"> - > - > - is_mandatory = - > - ["assumed_value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"assumed_value"> - type = <"Date"> - > - ["default_value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"default_value"> - type = <"Date"> - > - > - > - ["C_TIME"] = (P_BMM_CLASS) < - name = <"C_TIME"> - ancestors = <"C_TEMPORAL"> - properties = < - ["constraint"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"constraint"> - type_def = < - container_type = <"List"> - type_def = (P_BMM_GENERIC_TYPE) < - root_type = <"Interval"> - generic_parameters = <"Time"> - > - > - is_mandatory = - > - ["assumed_value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"assumed_value"> - type = <"Time"> - > - ["default_value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"default_value"> - type = <"Time"> - > - > - > - ["C_DATE_TIME"] = (P_BMM_CLASS) < - name = <"C_DATE_TIME"> - ancestors = <"C_TEMPORAL"> - properties = < - ["constraint"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"constraint"> - type_def = < - container_type = <"List"> - type_def = (P_BMM_GENERIC_TYPE) < - root_type = <"Interval"> - generic_parameters = <"Date_time"> - > - > - is_mandatory = - > - ["assumed_value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"assumed_value"> - type = <"Date_time"> - > - ["default_value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"default_value"> - type = <"Date_time"> - > - > - > - ["C_DURATION"] = (P_BMM_CLASS) < - name = <"C_DURATION"> - ancestors = <"C_TEMPORAL"> - properties = < - ["constraint"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"constraint"> - type_def = < - container_type = <"List"> - type_def = (P_BMM_GENERIC_TYPE) < - root_type = <"Interval"> - generic_parameters = <"Duration"> - > - > - is_mandatory = - > - ["assumed_value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"assumed_value"> - type = <"Duration"> - > - > - > - - ------------------------------------------------------ - -- rm_overlay package - ------------------------------------------------------ - - ["RM_OVERLAY"] = (P_BMM_CLASS) < - name = <"RM_OVERLAY"> - ancestors = <"Any"> - properties = < - ["rm_visibility"] = (P_BMM_GENERIC_PROPERTY) < - name = <"rm_visibility"> - type_def = < - root_type = <"Hash"> - generic_parameters = <"String", "RM_ATTRIBUTE_VISIBILITY"> - > - > - > - > - - ["RM_ATTRIBUTE_VISIBILITY"] = (P_BMM_CLASS) < - name = <"RM_ATTRIBUTE_VISIBILITY"> - ancestors = <"Any"> - properties = < - ["alias"] = (P_BMM_SINGLE_PROPERTY) < - name = <"alias"> - type = <"Terminology_code"> - > - ["visibility"] = (P_BMM_SINGLE_PROPERTY) < - name = <"visibility"> - type = <"VISIBILITY_TYPE"> - > - > - > - - ["VISIBILITY_TYPE"] = (P_BMM_ENUMERATION_STRING) < - name = <"VISIBILITY_TYPE"> - ancestors = <"String"> - item_names = <"hide", "show"> - > - - ------------------------------------------------------ - -- profile package - ------------------------------------------------------ - - ["AOM_PROFILE"] = (P_BMM_CLASS) < - name = <"AOM_PROFILE"> - ancestors = <"Any"> - properties = < - ["profile_name"] = (P_BMM_SINGLE_PROPERTY) < - name = <"profile_name"> - type = <"String"> - is_mandatory = - > - ["aom_rm_type_substitutions"] = (P_BMM_GENERIC_PROPERTY) < - name = <"aom_rm_type_substitutions"> - type_def = < - root_type = <"Hash"> - generic_parameters = <"String", "String"> - > - > - ["aom_lifecycle_mappings"] = (P_BMM_GENERIC_PROPERTY) < - name = <"aom_lifecycle_mappings"> - type_def = < - root_type = <"Hash"> - generic_parameters = <"String", "String"> - > - > - ["aom_rm_type_mappings"] = (P_BMM_GENERIC_PROPERTY) < - name = <"aom_rm_type_mappings"> - type_def = < - root_type = <"Hash"> - generic_parameters = <"String", "AOM_TYPE_MAPPING"> - > - > - ["rm_primitive_type_equivalences"] = (P_BMM_GENERIC_PROPERTY) < - name = <"rm_primitive_type_equivalences"> - type_def = < - root_type = <"Hash"> - generic_parameters = <"String", "String"> - > - > - > - > - - ["AOM_TYPE_MAPPING"] = (P_BMM_CLASS) < - name = <"AOM_TYPE_MAPPING"> - ancestors = <"Any"> - properties = < - ["source_class_name"] = (P_BMM_SINGLE_PROPERTY) < - name = <"source_class_name"> - type = <"String"> - is_mandatory = - > - ["target_class_name"] = (P_BMM_SINGLE_PROPERTY) < - name = <"target_class_name"> - type = <"String"> - is_mandatory = - > - ["property_mappings"] = (P_BMM_GENERIC_PROPERTY) < - name = <"property_mappings"> - type_def = < - root_type = <"Hash"> - generic_parameters = <"String", "AOM_PROPERTY_MAPPING"> - > - > - > - > - ["AOM_PROPERTY_MAPPING"] = (P_BMM_CLASS) < - name = <"AOM_PROPERTY_MAPPING"> - ancestors = <"Any"> - properties = < - ["source_property"] = (P_BMM_SINGLE_PROPERTY) < - name = <"source_property"> - type = <"String"> - is_mandatory = - > - ["target_property"] = (P_BMM_SINGLE_PROPERTY) < - name = <"target_property"> - type = <"String"> - is_mandatory = - > - > - > -> \ No newline at end of file diff --git a/referencemodels/src/test/resources/aom/openehr_base_110.bmm b/referencemodels/src/test/resources/aom/openehr_base_110.bmm deleted file mode 100644 index 23ae89be3..000000000 --- a/referencemodels/src/test/resources/aom/openehr_base_110.bmm +++ /dev/null @@ -1,858 +0,0 @@ --- --- component: openEHR Implementation Technology Specification (ITS) --- description: openEHR BASE Component schema. This file format is based on the BMM specification --- http://www.openehr.org/releases/BASE/latest/docs/bmm/bmm.html --- keywords: reference model, meta-model, archetypes --- author: Thomas Beale --- support: https://openehr.atlassian.net/projects/SPECPR --- copyright: Copyright (c) 2016 openEHR Foundation --- license: Apache 2.0 --- - ------------------------------------------------------- --- BMM version on which these schemas are based. ------------------------------------------------------- -bmm_version = <"2.3"> - ------------------------------------------------------- --- schema identification --- (schema_id computed as __) ------------------------------------------------------- -rm_publisher = <"openehr"> -schema_name = <"base"> -rm_release = <"1.1.0"> - ------------------------------------------------------- --- schema documentation ------------------------------------------------------- -schema_revision = <"1.1.0.1"> -schema_lifecycle_state = <"stable"> -schema_description = <"openEHR Release 1.1.0 BASE model foundation and base types packages"> -schema_author = <"Thomas Beale "> - ------------------------------------------------------- --- packages ------------------------------------------------------- -packages = < - ["org.openehr.base.foundation_types"] = < - name = <"org.openehr.base.foundation_types"> - packages = < - ["base_types"] = < - name = <"base_types"> - classes = <"Any", "Ordered", "Numeric", "Ordered_Numeric", "Octet", "Byte", "Boolean", "Integer", - "Integer64", "Real", "Double", "Character", "String", "Uri", "Terminology_code", "Terminology_term" - > - > - ["structures"] = < - name = <"structures"> - classes = <"List", "Array", "Set", "Hash", "Container"> - > - ["interval"] = < - name = <"interval"> - classes = <"Interval", "Multiplicity_interval", "Cardinality"> - > - ["iso8601_time"] = < - name = <"iso8601_time"> - classes = < - "Temporal", "Iso8601_type", - "Date", "Time", "Date_time", "Duration", - "Iso8601_date", "Iso8601_time", "Iso8601_date_time", "Iso8601_duration" - > - > - > - > - ["org.openehr.base.base_types"] = < - name = <"org.openehr.base.base_types"> - packages = < - ["definitions"] = < - name = <"definitions"> - classes = <"VALIDITY_KIND", "VERSION_STATUS"> - > - ["identification"] = < - name = <"identification"> - classes = <"OBJECT_REF", "OBJECT_ID", "UID", "LOCATABLE_REF", "PARTY_REF", "ACCESS_GROUP_REF", - "TERMINOLOGY_ID", - "UID_BASED_ID", "GENERIC_ID", "ARCHETYPE_ID", "ARCHETYPE_HRID", "TEMPLATE_ID", "OBJECT_VERSION_ID", - "HIER_OBJECT_ID", "VERSION_TREE_ID", "INTERNET_ID", "UUID", "ISO_OID" - > - > - ["resource"] = < - name = <"resource"> - classes = <"AUTHORED_RESOURCE", "TRANSLATION_DETAILS", "RESOURCE_DESCRIPTION", "RESOURCE_DESCRIPTION_ITEM", "RESOURCE_ANNOTATIONS"> - > - > - > -> - ------------------------------------------------------- --- primitive types ------------------------------------------------------- - -primitive_types = < - ["Any"] = < - name = <"Any"> - is_abstract = - > - ["Ordered"] = < - name = <"Ordered"> - is_abstract = - documentation = <"Ancestor of types with total order relation defined, i.e. '<' and '='."> - ancestors = <"Any"> - > - ["Numeric"] = < - name = <"Numeric"> - is_abstract = - documentation = <"Ancestor of numeric types."> - ancestors = <"Any"> - > - ["Ordered_Numeric"] = < - name = <"Ordered_Numeric"> - is_abstract = - documentation = <"Ancestor of ordered numeric types."> - ancestors = <"Numeric", "Ordered"> - > - ["Byte"] = < - name = <"Byte"> - ancestors = <"Ordered"> - > - ["Octet"] = < - name = <"Octet"> - ancestors = <"Ordered"> - > - ["Boolean"] = < - name = <"Boolean"> - ancestors = <"Any"> - > - ["Integer"] = < - name = <"Integer"> - ancestors = <"Ordered_Numeric"> - > - ["Integer64"] = < - name = <"Integer64"> - ancestors = <"Ordered_Numeric"> - > - ["Real"] = < - name = <"Real"> - ancestors = <"Ordered_Numeric"> - > - ["Double"] = < - name = <"Double"> - ancestors = <"Ordered_Numeric"> - > - ["Character"] = < - name = <"Character"> - ancestors = <"Ordered"> - > - ["String"] = < - name = <"String"> - ancestors = <"Ordered"> - > - ["Uri"] = < - name = <"Uri"> - ancestors = <"String"> - > - - ["Temporal"] = < - name = <"Temporal"> - ancestors = <"Ordered"> - is_abstract = - > - - ["Iso8601_type"] = < - name = <"Iso8601_type"> - documentation = <"Parent of ISO8601 types."> - ancestors = <"Temporal"> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"String"> - > - > - > - - ["Date"] = < - name = <"Date"> - documentation = <"Date type based on IS8601 representation."> - ancestors = <"Iso8601_type"> - > - - ["Time"] = < - name = <"Time"> - documentation = <"Time type based on IS8601 representation."> - ancestors = <"Iso8601_type"> - > - - ["Date_time"] = < - name = <"Date_time"> - documentation = <"Date Time type based on IS8601 representation."> - ancestors = <"Iso8601_type"> - > - - ["Duration"] = < - name = <"Duration"> - documentation = <"Duration type based on IS8601 representation."> - ancestors = <"Iso8601_type"> - > - - ["Iso8601_date"] = < - name = <"Iso8601_date"> - documentation = <"Date type based on IS8601 representation."> - ancestors = <"Iso8601_type"> - > - - ["Iso8601_time"] = < - name = <"Iso8601_time"> - documentation = <"Time type based on IS8601 representation."> - ancestors = <"Iso8601_type"> - > - - ["Iso8601_date_time"] = < - name = <"Iso8601_date_time"> - documentation = <"Date Time type based on IS8601 representation."> - ancestors = <"Iso8601_type"> - > - - ["Iso8601_duration"] = < - name = <"Iso8601_duration"> - documentation = <"Duration type based on IS8601 representation."> - ancestors = <"Iso8601_type"> - > - - ["Terminology_term"] = < - name = <"Terminology_term"> - ancestors = <"Any"> - properties = < - ["text"] = (P_BMM_SINGLE_PROPERTY) < - name = <"text"> - type = <"String"> - is_mandatory = - > - ["concept"] = (P_BMM_SINGLE_PROPERTY) < - name = <"concept"> - type = <"Terminology_code"> - is_mandatory = - > - > - > - - ["Terminology_code"] = < - name = <"Terminology_code"> - ancestors = <"Any"> - properties = < - ["terminology_id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"terminology_id"> - type = <"String"> - is_mandatory = - > - ["terminology_version"] = (P_BMM_SINGLE_PROPERTY) < - name = <"terminology_version"> - type = <"String"> - > - ["code_string"] = (P_BMM_SINGLE_PROPERTY) < - name = <"code_string"> - type = <"String"> - is_mandatory = - > - ["uri"] = (P_BMM_SINGLE_PROPERTY) < - name = <"uri"> - type = <"Uri"> - is_mandatory = - > - > - > - - ["Container"] = < - name = <"Container"> - ancestors = <"Any"> - generic_parameter_defs = < - ["V"] = < - name = <"V"> - > - > - is_abstract = - > - - ["List"] = < - name = <"List"> - ancestors = <"Container"> - generic_parameter_defs = < - ["V"] = < - name = <"V"> - > - > - > - - ["Array"] = < - name = <"Array"> - ancestors = <"Container"> - generic_parameter_defs = < - ["V"] = < - name = <"V"> - > - > - > - - ["Set"] = < - name = <"Set"> - ancestors = <"Container"> - generic_parameter_defs = < - ["V"] = < - name = <"V"> - > - > - > - - ["Interval"] = < - name = <"Interval"> - documentation = <"Type defining an interval of any ordered type."> - ancestors = <"Any"> - generic_parameter_defs = < - ["T"] = < - name = <"T"> - conforms_to_type = <"Ordered"> - > - > - properties = < - ["lower"] = (P_BMM_SINGLE_PROPERTY_OPEN) < - name = <"lower"> - type = <"T"> - > - ["upper"] = (P_BMM_SINGLE_PROPERTY_OPEN) < - name = <"upper"> - type = <"T"> - > - ["lower_unbounded"] = (P_BMM_SINGLE_PROPERTY) < - name = <"lower_unbounded"> - type = <"Boolean"> - is_mandatory = - > - ["upper_unbounded"] = (P_BMM_SINGLE_PROPERTY) < - name = <"upper_unbounded"> - type = <"Boolean"> - is_mandatory = - > - ["lower_included"] = (P_BMM_SINGLE_PROPERTY) < - name = <"lower_included"> - type = <"Boolean"> - is_mandatory = - > - ["upper_included"] = (P_BMM_SINGLE_PROPERTY) < - name = <"upper_included"> - type = <"Boolean"> - is_mandatory = - > - > - > - ["Cardinality"] = (P_BMM_CLASS) < - name = <"Cardinality"> - ancestors = <"Any", ...> - properties = < - ["is_ordered"] = (P_BMM_SINGLE_PROPERTY) < - name = <"is_ordered"> - type = <"Boolean"> - > - ["is_unique"] = (P_BMM_SINGLE_PROPERTY) < - name = <"is_unique"> - type = <"Boolean"> - > - ["interval"] = (P_BMM_SINGLE_PROPERTY) < - name = <"interval"> - type = <"Multiplicity_interval"> - is_mandatory = - > - > - > - - ["Multiplicity_interval"] = (P_BMM_CLASS) < - name = <"Multiplicity_interval"> - ancestor_defs = < - ["Interval"] = (P_BMM_GENERIC_TYPE) < - root_type = <"Interval"> - generic_parameters = <"Integer"> - > - > - > - - - ["Hash"] = < - name = <"Hash"> - documentation = <"Type defining Hash table / hash map structure, whose type parameters V and K represent a value type and an Ordered key type respectively."> - ancestors = <"Container"> - generic_parameter_defs = < - ["K"] = < - name = <"K"> - conforms_to_type = <"Ordered"> - > - ["V"] = < - name = <"V"> - > - > - > - -> - ------------------------------------------------------- --- classes ------------------------------------------------------- - -class_definitions = < - - ------------------------------------------------------------ - ------------------ base.base_types.identification --------------- - ------------------------------------------------------------ - - ["OBJECT_REF"] = < - name = <"OBJECT_REF"> - ancestors = <"Any"> - properties = < - ["id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"id"> - type = <"OBJECT_ID"> - is_mandatory = - > - ["namespace"] = (P_BMM_SINGLE_PROPERTY) < - name = <"namespace"> - type = <"String"> - > - ["type"] = (P_BMM_SINGLE_PROPERTY) < - name = <"type"> - type = <"String"> - is_mandatory = - > - > - > - - ["LOCATABLE_REF"] = < - name = <"LOCATABLE_REF"> - ancestors = <"OBJECT_REF"> - properties = < - ["id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"id"> - type = <"UID_BASED_ID"> - is_mandatory = - > - ["path"] = (P_BMM_SINGLE_PROPERTY) < - name = <"path"> - type = <"String"> - is_im_infrastructure = - > - > - > - - ["PARTY_REF"] = < - name = <"PARTY_REF"> - ancestors = <"OBJECT_REF"> - > - - ["ACCESS_GROUP_REF"] = < - name = <"ACCESS_GROUP_REF"> - ancestors = <"OBJECT_REF"> - > - - ["OBJECT_ID"] = < - name = <"OBJECT_ID"> - is_abstract = - ancestors = <"Any"> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"String"> - is_mandatory = - > - > - > - - ["TERMINOLOGY_ID"] = < - name = <"TERMINOLOGY_ID"> - ancestors = <"OBJECT_ID"> - > - - ["UID_BASED_ID"] = < - name = <"UID_BASED_ID"> - ancestors = <"OBJECT_ID"> - is_abstract = - > - - ["GENERIC_ID"] = < - name = <"GENERIC_ID"> - ancestors = <"OBJECT_ID"> - properties = < - ["scheme"] = (P_BMM_SINGLE_PROPERTY) < - name = <"scheme"> - type = <"String"> - is_mandatory = - > - > - > - - ["ARCHETYPE_ID"] = < - name = <"ARCHETYPE_ID"> - ancestors = <"OBJECT_ID"> - > - - ["ARCHETYPE_HRID"] = < - name = <"ARCHETYPE_HRID"> - ancestors = <"Any"> - properties = < - ["namespace"] = (P_BMM_SINGLE_PROPERTY) < - name = <"namespace"> - type = <"String"> - is_mandatory = - > - ["rm_publisher"] = (P_BMM_SINGLE_PROPERTY) < - name = <"rm_publisher"> - type = <"String"> - is_mandatory = - > - ["rm_package"] = (P_BMM_SINGLE_PROPERTY) < - name = <"rm_package"> - type = <"String"> - is_mandatory = - > - ["rm_class"] = (P_BMM_SINGLE_PROPERTY) < - name = <"rm_class"> - type = <"String"> - is_mandatory = - > - ["concept_id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"concept_id"> - type = <"String"> - is_mandatory = - > - ["release_version"] = (P_BMM_SINGLE_PROPERTY) < - name = <"release_version"> - type = <"String"> - is_mandatory = - > - ["version_status"] = (P_BMM_SINGLE_PROPERTY) < - name = <"version_status"> - type = <"VERSION_STATUS"> - is_mandatory = - > - ["build_count"] = (P_BMM_SINGLE_PROPERTY) < - name = <"build_count"> - type = <"String"> - is_mandatory = - > - > - > - - ["TEMPLATE_ID"] = < - name = <"TEMPLATE_ID"> - ancestors = <"OBJECT_ID"> - > - - ["OBJECT_VERSION_ID"] = < - name = <"OBJECT_VERSION_ID"> - ancestors = <"UID_BASED_ID"> - > - - ["HIER_OBJECT_ID"] = < - name = <"HIER_OBJECT_ID"> - ancestors = <"UID_BASED_ID"> - > - - ["VERSION_TREE_ID"] = < - name = <"VERSION_TREE_ID"> - ancestors = <"Any"> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"String"> - is_mandatory = - > - > - > - - ["UID"] = < - name = <"UID"> - is_abstract = - ancestors = <"Any"> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - type = <"String"> - is_mandatory = - > - > - > - - ["INTERNET_ID"] = < - name = <"INTERNET_ID"> - ancestors = <"UID"> - > - - ["UUID"] = < - name = <"UUID"> - ancestors = <"UID"> - > - - ["ISO_OID"] = < - name = <"ISO_OID"> - ancestors = <"UID"> - > - - -- - --------------------- base.base_types.definitions ------------------ - -- - - ["VALIDITY_KIND"] = (P_BMM_ENUMERATION_STRING) < - name = <"VALIDITY_KIND"> - ancestors = <"String"> - item_names = <"mandatory", "optional", "prohibited"> - > - - ["VERSION_STATUS"] = (P_BMM_ENUMERATION_STRING) < - name = <"VERSION_STATUS"> - ancestors = <"String"> - item_names = <"alpha", "beta", "release_candidate", "released", "build"> - > - - -- - --------------------- base.rsource ------------------ - -- - - ["AUTHORED_RESOURCE"] = < - name = <"AUTHORED_RESOURCE"> - ancestors = <"Any", ...> - is_abstract = - properties = < - ["original_language"] = (P_BMM_SINGLE_PROPERTY) < - name = <"original_language"> - type = <"Terminology_code"> - is_mandatory = - > - ["is_controlled"] = (P_BMM_SINGLE_PROPERTY) < - name = <"is_controlled"> - type = <"Boolean"> - > - ["translations"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"translations"> - type_def = < - container_type = <"List"> - type = <"TRANSLATION_DETAILS"> - > - cardinality = <|>=1|> - > - ["description"] = (P_BMM_SINGLE_PROPERTY) < - name = <"description"> - type = <"RESOURCE_DESCRIPTION"> - > - ["annotations"] = (P_BMM_SINGLE_PROPERTY) < - name = <"annotations"> - type = <"RESOURCE_ANNOTATIONS"> - > - > - > - - ["TRANSLATION_DETAILS"] = < - name = <"TRANSLATION_DETAILS"> - ancestors = <"Any", ...> - properties = < - ["language"] = (P_BMM_SINGLE_PROPERTY) < - name = <"language"> - type = <"Terminology_code"> - is_mandatory = - > - ["author"] = (P_BMM_GENERIC_PROPERTY) < - name = <"author"> - type_def = < - root_type = <"Hash"> - generic_parameters = <"String", "String"> - > - is_mandatory = - > - ["accreditation"] = (P_BMM_SINGLE_PROPERTY) < - name = <"accreditation"> - type = <"String"> - > - ["other_details"] = (P_BMM_GENERIC_PROPERTY) < - name = <"other_details"> - type_def = < - root_type = <"Hash"> - generic_parameters = <"String", "String"> - > - > - > - > - - ["RESOURCE_DESCRIPTION"] = < - name = <"RESOURCE_DESCRIPTION"> - ancestors = <"Any", ...> - properties = < - ["original_author"] = (P_BMM_GENERIC_PROPERTY) < - name = <"original_author"> - type_def = < - root_type = <"Hash"> - generic_parameters = <"String", "String"> - > - is_mandatory = - > - ["original_namespace"] = (P_BMM_SINGLE_PROPERTY) < - name = <"original_namespace"> - type = <"String"> - > - ["other_contributors"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"other_contributors"> - type_def = < - container_type = <"List"> - type = <"String"> - > - cardinality = <|>=0|> - > - ["custodian_namespace"] = (P_BMM_SINGLE_PROPERTY) < - name = <"custodian_namespace"> - type = <"String"> - > - ["custodian_organisation"] = (P_BMM_SINGLE_PROPERTY) < - name = <"custodian_organisation"> - type = <"String"> - > - ["copyright"] = (P_BMM_SINGLE_PROPERTY) < - name = <"copyright"> - type = <"String"> - > - ["licence"] = (P_BMM_SINGLE_PROPERTY) < - name = <"licence"> - type = <"String"> - > - ["lifecycle_state"] = (P_BMM_SINGLE_PROPERTY) < - name = <"lifecycle_state"> - type = <"String"> - is_mandatory = - > - ["resource_package_uri"] = (P_BMM_SINGLE_PROPERTY) < - name = <"resource_package_uri"> - type = <"String"> - > - ["ip_acknowledgements"] = (P_BMM_GENERIC_PROPERTY) < - name = <"ip_acknowledgements"> - type_def = < - root_type = <"Hash"> - generic_parameters = <"String", "String"> - > - > - ["references"] = (P_BMM_GENERIC_PROPERTY) < - name = <"references"> - type_def = < - root_type = <"Hash"> - generic_parameters = <"String", "String"> - > - > - ["conversion_details"] = (P_BMM_GENERIC_PROPERTY) < - name = <"conversion_details"> - type_def = < - root_type = <"Hash"> - generic_parameters = <"String", "String"> - > - > - ["other_details"] = (P_BMM_GENERIC_PROPERTY) < - name = <"other_details"> - type_def = < - root_type = <"Hash"> - generic_parameters = <"String", "String"> - > - > - ["parent_resource"] = (P_BMM_SINGLE_PROPERTY) < - name = <"parent_resource"> - type = <"AUTHORED_RESOURCE"> - is_mandatory = - > - ["details"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"details"> - type_def = < - container_type = <"List"> - type = <"RESOURCE_DESCRIPTION_ITEM"> - > - cardinality = <|>=1|> - > - > - > - - ["RESOURCE_DESCRIPTION_ITEM"] = < - name = <"RESOURCE_DESCRIPTION_ITEM"> - ancestors = <"Any", ...> - properties = < - ["language"] = (P_BMM_SINGLE_PROPERTY) < - name = <"language"> - type = <"Terminology_code"> - is_mandatory = - > - ["purpose"] = (P_BMM_SINGLE_PROPERTY) < - name = <"purpose"> - type = <"String"> - is_mandatory = - > - ["keywords"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"keywords"> - type_def = < - container_type = <"List"> - type = <"String"> - > - cardinality = <|>=0|> - > - ["use"] = (P_BMM_SINGLE_PROPERTY) < - name = <"use"> - type = <"String"> - > - ["misuse"] = (P_BMM_SINGLE_PROPERTY) < - name = <"misuse"> - type = <"String"> - > - ["copyright"] = (P_BMM_SINGLE_PROPERTY) < - name = <"copyright"> - type = <"String"> - > - ["original_resource_uri"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"original_resource_uri"> - type_def = < - container_type = <"List"> - type_def = (P_BMM_GENERIC_TYPE) < - root_type = <"Hash"> - generic_parameters = <"String", "String"> - > - > - cardinality = <|>=0|> - > - ["other_details"] = (P_BMM_GENERIC_PROPERTY) < - name = <"other_details"> - type_def = < - root_type = <"Hash"> - generic_parameters = <"String", "String"> - > - is_mandatory = - > - > - > - - ["RESOURCE_ANNOTATIONS"] = < - name = <"RESOURCE_ANNOTATIONS"> - ancestors = <"Any"> - properties = < - ["documentation"] = (P_BMM_GENERIC_PROPERTY) < - name = <"documentation"> - type_def = < - root_type = <"Hash"> - generic_parameter_defs = < - ["K"] = (P_BMM_SIMPLE_TYPE) < - type = <"String"> - > - ["V"] = (P_BMM_GENERIC_TYPE) < - root_type = <"Hash"> - generic_parameter_defs = < - ["K"] = (P_BMM_SIMPLE_TYPE) < - type = <"String"> - > - ["V"] = (P_BMM_GENERIC_TYPE) < - root_type = <"Hash"> - generic_parameters = <"String", "String"> - > - > - > - > - > - is_mandatory = - > - > - > -> \ No newline at end of file diff --git a/referencemodels/src/test/resources/aom/openehr_expression_104.bmm b/referencemodels/src/test/resources/aom/openehr_expression_104.bmm deleted file mode 100644 index 4e390b7fb..000000000 --- a/referencemodels/src/test/resources/aom/openehr_expression_104.bmm +++ /dev/null @@ -1,222 +0,0 @@ --- --- component: openEHR Reference Model (RM) --- description: openEHR Reference Model schema. This file format is based on the BMM specification --- http://www.openehr.org/releases/BASE/latest/docs/bmm/bmm.html --- keywords: reference model, meta-model, archetypes --- author: Thomas Beale --- support: https://openehr.atlassian.net/projects/SPECPR --- copyright: Copyright (c) 2016 openEHR Foundation --- license: Apache 2.0 License --- - ------------------------------------------------------- --- BMM version on which these schemas are based. ------------------------------------------------------- -bmm_version = <"2.3"> - ------------------------------------------------------- --- schema identification --- (schema_id computed as __) ------------------------------------------------------- -rm_publisher = <"openehr"> -schema_name = <"expression"> -rm_release = <"1.0.4"> - ------------------------------------------------------- --- schema documentation ------------------------------------------------------- -schema_revision = <"1.0.4.1"> -schema_lifecycle_state = <"development"> -schema_description = <"openEHR Release 1.0.4 BASE model Expression package"> -schema_author = <"Thomas Beale "> - -includes = < - ["1"] = < - id = <"openehr_base_1.1.0"> - > -> - ------------------------------------------------------- --- packages ------------------------------------------------------- -packages = < - ["org.openehr.base"] = < - name = <"org.openehr.base"> - packages = < - ["expression"] = < - name = <"expression"> - classes = <"STATEMENT", "VARIABLE_DECLARATION", "ASSIGNMENT", "ASSERTION", "EXPRESSION", "EXPR_VALUE", - "EXTERNAL_QUERY", "EXPR_VARIABLE_REF", - "EXPR_LEAF", "EXPR_OPERATOR", "EXPR_LITERAL", "EXPR_UNARY_OPERATOR", - "EXPR_BINARY_OPERATOR", "EXPR_VALUE_REF", "EXPR_FUNCTION", "EXPR_TYPE_DEF" - > - > - > - > -> - ------------------------------------------------------- --- classes ------------------------------------------------------- - -class_definitions = < - - ------------------------------------------------------------ - ------------------ base.expression --------------- - ------------------------------------------------------------ - - ["STATEMENT"] = < - name = <"STATEMENT"> - ancestors = <"Any"> - is_abstract = - > - - ["VARIABLE_DECLARATION"] = < - name = <"VARIABLE_DECLARATION"> - ancestors = <"STATEMENT"> - properties = < - ["name"] = (P_BMM_SINGLE_PROPERTY) < - name = <"name"> - type = <"String"> - is_mandatory = - > - ["type"] = (P_BMM_SINGLE_PROPERTY) < - name = <"type"> - type = <"EXPR_TYPE_DEF"> - > - > - > - - ["ASSIGNMENT"] = < - name = <"ASSIGNMENT"> - ancestors = <"STATEMENT"> - properties = < - ["source"] = (P_BMM_SINGLE_PROPERTY) < - name = <"source"> - type = <"EXPR_VALUE"> - > - ["target"] = (P_BMM_SINGLE_PROPERTY) < - name = <"target"> - type = <"VARIABLE_DECLARATION"> - > - > - > - - ["ASSERTION"] = < - name = <"ASSERTION"> - ancestors = <"STATEMENT"> - properties = < - ["tag"] = (P_BMM_SINGLE_PROPERTY) < - name = <"tag"> - type = <"String"> - > - > - > - - ["EXPR_VALUE"] = < - name = <"EXPR_VALUE"> - is_abstract = - > - - ["EXTERNAL_QUERY"] = < - name = <"EXTERNAL_QUERY"> - ancestors = <"EXPR_VALUE"> - properties = < - ["context"] = (P_BMM_SINGLE_PROPERTY) < - name = <"context"> - type = <"String"> - is_mandatory = - > - ["query_id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"query_id"> - type = <"String"> - is_mandatory = - > - ["query_args"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"query_args"> - type_def = (P_BMM_CONTAINER_TYPE) < - container_type = <"List"> - type = <"String"> - > - > - > - > - - ["EXPRESSION"] = < - name = <"EXPRESSION"> - ancestors = <"EXPR_VALUE"> - is_abstract = - > - - ["EXPR_LEAF"] = < - name = <"EXPR_LEAF"> - ancestors = <"EXPRESSION"> - is_abstract = - properties = < - ["item"] = (P_BMM_SINGLE_PROPERTY) < - name = <"item"> - type = <"Any"> - > - > - > - - ["EXPR_OPERATOR"] = < - name = <"EXPR_OPERATOR"> - ancestors = <"EXPRESSION"> - is_abstract = - properties = < - ["precedence_overridden"] = (P_BMM_SINGLE_PROPERTY) < - name = <"precedence_overridden"> - type = <"Boolean"> - > - ["symbol"] = (P_BMM_SINGLE_PROPERTY) < - name = <"symbol"> - type = <"String"> - > - > - > - - ["EXPR_UNARY_OPERATOR"] = < - name = <"EXPR_UNARY_OPERATOR"> - ancestors = <"EXPR_OPERATOR"> - > - - ["EXPR_BINARY_OPERATOR"] = < - name = <"EXPR_BINARY_OPERATOR"> - ancestors = <"EXPR_OPERATOR"> - > - - ["EXPR_LITERAL"] = < - name = <"EXPR_LITERAL"> - ancestors = <"EXPR_LEAF"> - > - - ["EXPR_FUNCTION"] = < - name = <"EXPR_FUNCTION"> - ancestors = <"EXPR_LEAF"> - > - - ["EXPR_VARIABLE_REF"] = < - name = <"EXPR_VARIABLE_REF"> - ancestors = <"EXPR_LEAF"> - properties = < - ["item"] = (P_BMM_SINGLE_PROPERTY) < - name = <"item"> - type = <"VARIABLE_DECLARATION"> - > - > - > - - ["EXPR_VALUE_REF"] = < - name = <"EXPR_VALUE_REF"> - ancestors = <"EXPR_LEAF"> - is_abstract = - > - - ["EXPR_TYPE_DEF"] = < - name = <"EXPR_TYPE_DEF"> - ancestors = <"EXPR_LEAF"> - is_abstract = - > - -> \ No newline at end of file diff --git a/referencemodels/src/test/resources/cimi/CIMI-RM-3.0.5.bmm b/referencemodels/src/test/resources/cimi/CIMI-RM-3.0.5.bmm deleted file mode 100644 index 2ff66f8fa..000000000 --- a/referencemodels/src/test/resources/cimi/CIMI-RM-3.0.5.bmm +++ /dev/null @@ -1,715 +0,0 @@ --- xxx -bmm_version = <"2.0"> - - --- schema identification --- (schema_id computed as __) - -rm_publisher = <"CIMI"> -schema_name = <"RM"> -rm_release = <"3.0.5"> - - --- schema documentation - -schema_revision = <"Monday, October 19, 2015"> -schema_lifecycle_state = <"dstu"> -schema_description = <"CIMI_Reference_Model v3.0.5 schema generated from UML"> - - --- archetyping - -archetype_rm_closure_packages = <"CIMI_Reference_Model.Core", ...> - - --- packages - - -packages = < - ["CIMI_Reference_Model"] = < - name = <"CIMI_Reference_Model"> - packages = < - ["Core"] = < - name = <"Core"> - classes = <"ARCHETYPED", "ELEMENT", "ITEM", "ITEM_GROUP", "LINK", "LOCATABLE", "PARTICIPATION"> - > - ["Data_Value_Types"] = < - name = <"Data_Value_Types"> - classes = <"AMOUNT", "CODED_TEXT", "COUNT", "DATA_VALUE", "DATE", "DATE_TIME", "DURATION", "EHR_URI", "ENCAPSULATED", "IDENTIFIER", "INTERVAL_VALUE", "MULTIMEDIA", "ORDERED_VALUE", "ORDINAL", "PARSABLE", "PLAIN_TEXT", "PROPORTION", "QUANTIFIED", "QUANTITY", "TERM_MAPPING", "TEXT", "TIME", "URI_VALUE", "YESNO"> - > - ["Party"] = < - name = <"Party"> - classes = <"ACTOR", "PARTY", "PARTY_RELATIONSHIP", "ROLE"> - > - ["Primitive_Types"] = < - name = <"Primitive_Types"> - classes = <"Any", "Array", "List", "Boolean", "Byte", "Character", "Integer", "Real", "String", "URI"> - > - > - > -> - --- classes - - -class_definitions = < - - --- Core - - - ["ARCHETYPED"] = < - name = <"ARCHETYPED"> - properties = < - ["archetype_id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"archetype_id"> - bmmType = <"String"> - is_mandatory = - is_im_infrastructure = - > - ["rm_version"] = (P_BMM_SINGLE_PROPERTY) < - name = <"rm_version"> - bmmType = <"String"> - is_mandatory = - is_im_infrastructure = - > - > - > - - ["ELEMENT"] = < - name = <"ELEMENT"> - ancestors = <"ITEM", ...> - properties = < - ["null_flavor"] = (P_BMM_SINGLE_PROPERTY) < - name = <"null_flavor"> - bmmType = <"CODED_TEXT"> - > - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - bmmType = <"DATA_VALUE"> - > - > - > - - ["ITEM"] = < - name = <"ITEM"> - ancestors = <"LOCATABLE", ...> - is_abstract = - > - - ["ITEM_GROUP"] = < - name = <"ITEM_GROUP"> - ancestors = <"ITEM", ...> - properties = < - ["item"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"item"> - type_def = < - container_type = <"List"> - bmmType = <"ITEM"> - > - cardinality = <|>=1|> - is_mandatory = - > - ["participation"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"participation"> - type_def = < - container_type = <"List"> - bmmType = <"PARTICIPATION"> - > - cardinality = <|>=0|> - > - > - > - - ["LINK"] = < - name = <"LINK"> - properties = < - ["meaning"] = (P_BMM_SINGLE_PROPERTY) < - name = <"meaning"> - bmmType = <"TEXT"> - is_mandatory = - > - ["details"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"details"> - type_def = < - container_type = <"List"> - bmmType = <"ITEM"> - > - cardinality = <|>=0|> - > - ["target"] = (P_BMM_SINGLE_PROPERTY) < - name = <"target"> - bmmType = <"LOCATABLE"> - is_mandatory = - > - > - > - - ["LOCATABLE"] = < - name = <"LOCATABLE"> - is_abstract = - properties = < - ["archetype_node_id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"archetype_node_id"> - bmmType = <"String"> - is_mandatory = - is_im_infrastructure = - > - ["name"] = (P_BMM_SINGLE_PROPERTY) < - name = <"name"> - bmmType = <"String"> - is_mandatory = - > - ["archetype_details"] = (P_BMM_SINGLE_PROPERTY) < - name = <"archetype_details"> - bmmType = <"ARCHETYPED"> - is_im_infrastructure = - > - ["link"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"link"> - type_def = < - container_type = <"List"> - bmmType = <"LINK"> - > - cardinality = <|>=0|> - > - > - > - - ["PARTICIPATION"] = < - name = <"PARTICIPATION"> - ancestors = <"LOCATABLE", ...> - properties = < - ["bmmType"] = (P_BMM_SINGLE_PROPERTY) < - name = <"bmmType"> - bmmType = <"CODED_TEXT"> - is_mandatory = - > - ["details"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"details"> - type_def = < - container_type = <"List"> - bmmType = <"ITEM"> - > - cardinality = <|>=0|> - > - ["party"] = (P_BMM_SINGLE_PROPERTY) < - name = <"party"> - bmmType = <"PARTY"> - is_mandatory = - > - > - > - --- Data_Value_Types - - ["AMOUNT"] = < - name = <"AMOUNT"> - ancestors = <"QUANTIFIED", ...> - is_abstract = - properties = < - ["accuracy"] = (P_BMM_SINGLE_PROPERTY) < - name = <"accuracy"> - bmmType = <"Real"> - > - ["accuracy_is_percent"] = (P_BMM_SINGLE_PROPERTY) < - name = <"accuracy_is_percent"> - bmmType = <"Boolean"> - > - > - > - - ["CODED_TEXT"] = < - name = <"CODED_TEXT"> - ancestors = <"TEXT", ...> - properties = < - ["uri"] = (P_BMM_SINGLE_PROPERTY) < - name = <"uri"> - bmmType = <"URI"> - > - ["terminology_id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"terminology_id"> - bmmType = <"String"> - is_mandatory = - > - ["code"] = (P_BMM_SINGLE_PROPERTY) < - name = <"code"> - bmmType = <"String"> - is_mandatory = - > - ["terminology_version"] = (P_BMM_SINGLE_PROPERTY) < - name = <"terminology_version"> - bmmType = <"String"> - > - ["term"] = (P_BMM_SINGLE_PROPERTY) < - name = <"term"> - bmmType = <"String"> - > - > - > - - ["COUNT"] = < - name = <"COUNT"> - ancestors = <"AMOUNT", ...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - bmmType = <"Integer"> - is_mandatory = - > - > - > - - ["DATA_VALUE"] = < - name = <"DATA_VALUE"> - is_abstract = - > - - ["DATE"] = < - name = <"DATE"> - ancestors = <"DATE_TIME", ...> - > - - ["DATE_TIME"] = < - name = <"DATE_TIME"> - ancestors = <"QUANTIFIED", ...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - bmmType = <"String"> - is_mandatory = - > - > - > - - ["DURATION"] = < - name = <"DURATION"> - ancestors = <"QUANTITY", ...> - properties = < - ["duration_text"] = (P_BMM_SINGLE_PROPERTY) < - name = <"duration_text"> - bmmType = <"String"> - > - > - > - - ["EHR_URI"] = < - name = <"EHR_URI"> - ancestors = <"URI_VALUE", ...> - > - - ["ENCAPSULATED"] = < - name = <"ENCAPSULATED"> - ancestors = <"DATA_VALUE", ...> - is_abstract = - > - - ["IDENTIFIER"] = < - name = <"IDENTIFIER"> - ancestors = <"DATA_VALUE", ...> - properties = < - ["id"] = (P_BMM_SINGLE_PROPERTY) < - name = <"id"> - bmmType = <"String"> - is_mandatory = - > - ["bmmType"] = (P_BMM_SINGLE_PROPERTY) < - name = <"bmmType"> - bmmType = <"CODED_TEXT"> - is_mandatory = - > - ["issuer"] = (P_BMM_SINGLE_PROPERTY) < - name = <"issuer"> - bmmType = <"String"> - is_mandatory = - > - > - > - - ["INTERVAL_VALUE"] = < - name = <"INTERVAL_VALUE"> - ancestors = <"DATA_VALUE", ...> - generic_parameter_defs = < - ["T"] = < - name = <"T"> - > - > - properties = < - ["upper_unbounded"] = (P_BMM_SINGLE_PROPERTY) < - name = <"upper_unbounded"> - bmmType = <"Boolean"> - is_mandatory = - > - ["lower_unbounded"] = (P_BMM_SINGLE_PROPERTY) < - name = <"lower_unbounded"> - bmmType = <"Boolean"> - is_mandatory = - > - ["upper_included"] = (P_BMM_SINGLE_PROPERTY) < - name = <"upper_included"> - bmmType = <"Boolean"> - is_mandatory = - > - ["lower_included"] = (P_BMM_SINGLE_PROPERTY) < - name = <"lower_included"> - bmmType = <"Boolean"> - is_mandatory = - > - ["lower"] = (P_BMM_SINGLE_PROPERTY_OPEN) < - name = <"lower"> - bmmType = <"T"> - > - ["upper"] = (P_BMM_SINGLE_PROPERTY_OPEN) < - name = <"upper"> - bmmType = <"T"> - > - > - > - - ["MULTIMEDIA"] = < - name = <"MULTIMEDIA"> - ancestors = <"ENCAPSULATED", ...> - properties = < - ["alternate_text"] = (P_BMM_SINGLE_PROPERTY) < - name = <"alternate_text"> - bmmType = <"Byte"> - > - ["data"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"data"> - type_def = < - container_type = <"Array"> - bmmType = <"Byte"> - > - cardinality = <|>=0|> - > - ["media_type"] = (P_BMM_SINGLE_PROPERTY) < - name = <"media_type"> - bmmType = <"CODED_TEXT"> - is_mandatory = - > - ["uri"] = (P_BMM_SINGLE_PROPERTY) < - name = <"uri"> - bmmType = <"URI_VALUE"> - > - > - > - - ["ORDERED_VALUE"] = < - name = <"ORDERED_VALUE"> - ancestors = <"DATA_VALUE", ...> - is_abstract = - > - - ["ORDINAL"] = < - name = <"ORDINAL"> - ancestors = <"ORDERED_VALUE", ...> - properties = < - ["symbol"] = (P_BMM_SINGLE_PROPERTY) < - name = <"symbol"> - bmmType = <"CODED_TEXT"> - is_mandatory = - > - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - bmmType = <"Real"> - is_mandatory = - > - > - > - - ["PARSABLE"] = < - name = <"PARSABLE"> - ancestors = <"ENCAPSULATED", ...> - properties = < - ["formalism"] = (P_BMM_SINGLE_PROPERTY) < - name = <"formalism"> - bmmType = <"CODED_TEXT"> - is_mandatory = - > - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - bmmType = <"String"> - is_mandatory = - > - > - > - - ["PLAIN_TEXT"] = < - name = <"PLAIN_TEXT"> - ancestors = <"TEXT", ...> - properties = < - ["language"] = (P_BMM_SINGLE_PROPERTY) < - name = <"language"> - bmmType = <"CODED_TEXT"> - > - > - > - - ["PROPORTION"] = < - name = <"PROPORTION"> - ancestors = <"AMOUNT", ...> - properties = < - ["numerator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"numerator"> - bmmType = <"Real"> - is_mandatory = - > - ["denominator"] = (P_BMM_SINGLE_PROPERTY) < - name = <"denominator"> - bmmType = <"Real"> - is_mandatory = - > - ["precision"] = (P_BMM_SINGLE_PROPERTY) < - name = <"precision"> - bmmType = <"Integer"> - > - ["bmmType"] = (P_BMM_SINGLE_PROPERTY) < - name = <"bmmType"> - bmmType = <"CODED_TEXT"> - is_mandatory = - > - > - > - - ["QUANTIFIED"] = < - name = <"QUANTIFIED"> - ancestors = <"ORDERED_VALUE", ...> - is_abstract = - properties = < - ["value_status"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value_status"> - bmmType = <"String"> - > - > - > - - ["QUANTITY"] = < - name = <"QUANTITY"> - ancestors = <"AMOUNT", ...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - bmmType = <"Real"> - is_mandatory = - > - ["units"] = (P_BMM_SINGLE_PROPERTY) < - name = <"units"> - bmmType = <"CODED_TEXT"> - is_mandatory = - > - ["precision"] = (P_BMM_SINGLE_PROPERTY) < - name = <"precision"> - bmmType = <"Integer"> - > - > - > - - ["TERM_MAPPING"] = < - name = <"TERM_MAPPING"> - properties = < - ["match"] = (P_BMM_SINGLE_PROPERTY) < - name = <"match"> - bmmType = <"Character"> - is_mandatory = - > - ["purpose"] = (P_BMM_SINGLE_PROPERTY) < - name = <"purpose"> - bmmType = <"CODED_TEXT"> - > - ["target"] = (P_BMM_SINGLE_PROPERTY) < - name = <"target"> - bmmType = <"CODED_TEXT"> - is_mandatory = - > - > - > - - ["TEXT"] = < - name = <"TEXT"> - ancestors = <"DATA_VALUE", ...> - is_abstract = - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - bmmType = <"String"> - is_mandatory = - > - ["mapping"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"mapping"> - type_def = < - container_type = <"List"> - bmmType = <"TERM_MAPPING"> - > - cardinality = <|>=0|> - > - > - > - - ["TIME"] = < - name = <"TIME"> - ancestors = <"DATE_TIME", ...> - > - - ["URI_VALUE"] = < - name = <"URI_VALUE"> - ancestors = <"DATA_VALUE", ...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - bmmType = <"URI"> - is_mandatory = - > - > - > - - ["YESNO"] = < - name = <"YESNO"> - ancestors = <"DATA_VALUE", ...> - properties = < - ["value"] = (P_BMM_SINGLE_PROPERTY) < - name = <"value"> - bmmType = <"Boolean"> - is_mandatory = - > - > - > - --- Party - - ["ACTOR"] = < - name = <"ACTOR"> - ancestors = <"PARTY", ...> - properties = < - ["bmmType"] = (P_BMM_SINGLE_PROPERTY) < - name = <"bmmType"> - bmmType = <"CODED_TEXT"> - is_mandatory = - > - ["role"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"role"> - type_def = < - container_type = <"List"> - bmmType = <"ROLE"> - > - cardinality = <|>=0|> - > - > - > - - ["PARTY"] = < - name = <"PARTY"> - ancestors = <"LOCATABLE", ...> - is_abstract = - properties = < - ["details"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"details"> - type_def = < - container_type = <"List"> - bmmType = <"ITEM"> - > - cardinality = <|>=0|> - > - ["relationship"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"relationship"> - type_def = < - container_type = <"List"> - bmmType = <"PARTY_RELATIONSHIP"> - > - cardinality = <|>=0|> - > - > - > - - ["PARTY_RELATIONSHIP"] = < - name = <"PARTY_RELATIONSHIP"> - ancestors = <"LOCATABLE", ...> - properties = < - ["bmmType"] = (P_BMM_SINGLE_PROPERTY) < - name = <"bmmType"> - bmmType = <"CODED_TEXT"> - is_mandatory = - > - ["details"] = (P_BMM_CONTAINER_PROPERTY) < - name = <"details"> - type_def = < - container_type = <"List"> - bmmType = <"ITEM"> - > - cardinality = <|>=0|> - > - ["target"] = (P_BMM_SINGLE_PROPERTY) < - name = <"target"> - bmmType = <"PARTY"> - is_mandatory = - > - > - > - - ["ROLE"] = < - name = <"ROLE"> - ancestors = <"PARTY", ...> - properties = < - ["bmmType"] = (P_BMM_SINGLE_PROPERTY) < - name = <"bmmType"> - bmmType = <"CODED_TEXT"> - is_mandatory = - > - > - > - -> - --- primitive types - -primitive_types = < - ["Any"] = < - name = <"Any"> - > - - ["Array"] = < - name = <"Array"> - generic_parameter_defs = < - ["T"] = < - name = <"T"> - > - > - > - - ["List"] = < - name = <"List"> - generic_parameter_defs = < - ["T"] = < - name = <"T"> - > - > - > - - ["Boolean"] = < - name = <"Boolean"> - > - - ["Byte"] = < - name = <"Byte"> - > - - ["Character"] = < - name = <"Character"> - > - - ["Integer"] = < - name = <"Integer"> - > - - ["Real"] = < - name = <"Real"> - > - - ["String"] = < - name = <"String"> - > - - ["URI"] = < - name = <"URI"> - > - -> diff --git a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/TestRMInfoLookup.java b/test-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrTestRmInfoLookup.java similarity index 90% rename from test-rm/src/main/java/com/nedap/archie/openehrtestrm/TestRMInfoLookup.java rename to test-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrTestRmInfoLookup.java index 85b2686ed..c69ae7497 100644 --- a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/TestRMInfoLookup.java +++ b/test-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrTestRmInfoLookup.java @@ -1,17 +1,17 @@ -package com.nedap.archie.openehrtestrm; +package com.nedap.archie.openehr.rminfo; -import com.fasterxml.jackson.databind.ObjectMapper; import com.nedap.archie.aom.Archetype; import com.nedap.archie.aom.CObject; import com.nedap.archie.aom.CPrimitiveObject; import com.nedap.archie.aom.primitives.*; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DataValue; -import com.nedap.archie.rm.datavalues.DvCodedText; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DataValue; +import org.openehr.rm.datavalues.DvCodedText; import com.nedap.archie.rminfo.ArchieModelNamingStrategy; import com.nedap.archie.rminfo.RMAttributeInfo; import com.nedap.archie.rminfo.RMPackageId; import com.nedap.archie.rminfo.ReflectionModelInfoLookup; +import org.openehr.test_rm.TestRMBase; import java.time.temporal.Temporal; import java.time.temporal.TemporalAccessor; @@ -20,19 +20,19 @@ /** * Created by pieter.bos on 02/02/16. */ -public class TestRMInfoLookup extends ReflectionModelInfoLookup { +public class OpenEhrTestRmInfoLookup extends ReflectionModelInfoLookup { - private static TestRMInfoLookup instance; + private static OpenEhrTestRmInfoLookup instance; - private TestRMInfoLookup() { + private OpenEhrTestRmInfoLookup() { super(new ArchieModelNamingStrategy(), TestRMBase.class); addSubtypesOf(DataValue.class); //extra class from the base package. No RMObject because it is also used in the AOM addSubtypesOf(CodePhrase.class); } - public static TestRMInfoLookup getInstance() { + public static OpenEhrTestRmInfoLookup getInstance() { if(instance == null) { - instance = new TestRMInfoLookup(); + instance = new OpenEhrTestRmInfoLookup(); } return instance; } diff --git a/test-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrTestRmMetaModelsInitialiser.java b/test-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrTestRmMetaModelsInitialiser.java new file mode 100644 index 000000000..10dbdc48e --- /dev/null +++ b/test-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrTestRmMetaModelsInitialiser.java @@ -0,0 +1,29 @@ +package com.nedap.archie.openehr.rminfo; + +import com.nedap.archie.rminfo.MetaModelsInitialiser; +import com.nedap.archie.rminfo.ReferenceModels; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * Global meta-model access for openEHR RM + */ +public class OpenEhrTestRmMetaModelsInitialiser extends MetaModelsInitialiser { + + private static final Logger logger = LoggerFactory.getLogger(OpenEhrTestRmMetaModelsInitialiser.class); + + /** + * Returns the model info lookups that are built in archie and are available in the classloader. Add the reference + * models to your dependencies to make this return values + * @return + */ + public ReferenceModels getNativeRms() { + ReferenceModels result = new ReferenceModels(); + result.registerModel(OpenEhrTestRmInfoLookup.getInstance(), null); + return result; + } + + public String getParentPackage() { + return "org.openehr"; + } +} \ No newline at end of file diff --git a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/TestRMBase.java b/test-rm/src/main/java/com/nedap/archie/openehrtestrm/TestRMBase.java deleted file mode 100644 index 633055365..000000000 --- a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/TestRMBase.java +++ /dev/null @@ -1,4 +0,0 @@ -package com.nedap.archie.openehrtestrm; - -public class TestRMBase { -} diff --git a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/Book.java b/test-rm/src/main/java/org/openehr/test_rm/Book.java similarity index 93% rename from test-rm/src/main/java/com/nedap/archie/openehrtestrm/Book.java rename to test-rm/src/main/java/org/openehr/test_rm/Book.java index e22fd4baf..72c3a6b29 100644 --- a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/Book.java +++ b/test-rm/src/main/java/org/openehr/test_rm/Book.java @@ -1,4 +1,4 @@ -package com.nedap.archie.openehrtestrm; +package org.openehr.test_rm; import java.lang.String; import java.util.List; diff --git a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/Car.java b/test-rm/src/main/java/org/openehr/test_rm/Car.java similarity index 94% rename from test-rm/src/main/java/com/nedap/archie/openehrtestrm/Car.java rename to test-rm/src/main/java/org/openehr/test_rm/Car.java index c192f70bd..606f48ce8 100644 --- a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/Car.java +++ b/test-rm/src/main/java/org/openehr/test_rm/Car.java @@ -1,4 +1,4 @@ -package com.nedap.archie.openehrtestrm; +package org.openehr.test_rm; import java.util.List; import javax.annotation.Nullable; diff --git a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/CarBody.java b/test-rm/src/main/java/org/openehr/test_rm/CarBody.java similarity index 94% rename from test-rm/src/main/java/com/nedap/archie/openehrtestrm/CarBody.java rename to test-rm/src/main/java/org/openehr/test_rm/CarBody.java index cb337581b..44f129393 100644 --- a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/CarBody.java +++ b/test-rm/src/main/java/org/openehr/test_rm/CarBody.java @@ -1,4 +1,4 @@ -package com.nedap.archie.openehrtestrm; +package org.openehr.test_rm; import java.lang.String; import java.util.List; diff --git a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/CarBodyPart.java b/test-rm/src/main/java/org/openehr/test_rm/CarBodyPart.java similarity index 55% rename from test-rm/src/main/java/com/nedap/archie/openehrtestrm/CarBodyPart.java rename to test-rm/src/main/java/org/openehr/test_rm/CarBodyPart.java index 9e3ab8503..23571d5a0 100644 --- a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/CarBodyPart.java +++ b/test-rm/src/main/java/org/openehr/test_rm/CarBodyPart.java @@ -1,4 +1,4 @@ -package com.nedap.archie.openehrtestrm; +package org.openehr.test_rm; public class CarBodyPart extends TestRMBase { } diff --git a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/Chapter.java b/test-rm/src/main/java/org/openehr/test_rm/Chapter.java similarity index 84% rename from test-rm/src/main/java/com/nedap/archie/openehrtestrm/Chapter.java rename to test-rm/src/main/java/org/openehr/test_rm/Chapter.java index 03cdb33ae..d21ceaef5 100644 --- a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/Chapter.java +++ b/test-rm/src/main/java/org/openehr/test_rm/Chapter.java @@ -1,4 +1,4 @@ -package com.nedap.archie.openehrtestrm; +package org.openehr.test_rm; import java.lang.String; diff --git a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/Cluster.java b/test-rm/src/main/java/org/openehr/test_rm/Cluster.java similarity index 84% rename from test-rm/src/main/java/com/nedap/archie/openehrtestrm/Cluster.java rename to test-rm/src/main/java/org/openehr/test_rm/Cluster.java index 8ac3ea48d..beedc66d4 100644 --- a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/Cluster.java +++ b/test-rm/src/main/java/org/openehr/test_rm/Cluster.java @@ -1,4 +1,4 @@ -package com.nedap.archie.openehrtestrm; +package org.openehr.test_rm; import java.util.List; diff --git a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/Element.java b/test-rm/src/main/java/org/openehr/test_rm/Element.java similarity index 75% rename from test-rm/src/main/java/com/nedap/archie/openehrtestrm/Element.java rename to test-rm/src/main/java/org/openehr/test_rm/Element.java index 30cd3af0f..7cc39a3a5 100644 --- a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/Element.java +++ b/test-rm/src/main/java/org/openehr/test_rm/Element.java @@ -1,7 +1,7 @@ -package com.nedap.archie.openehrtestrm; +package org.openehr.test_rm; -import com.nedap.archie.rm.datavalues.DataValue; -import com.nedap.archie.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.DataValue; +import org.openehr.rm.datavalues.DvCodedText; import javax.annotation.Nullable; diff --git a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/EnginePart.java b/test-rm/src/main/java/org/openehr/test_rm/EnginePart.java similarity index 88% rename from test-rm/src/main/java/com/nedap/archie/openehrtestrm/EnginePart.java rename to test-rm/src/main/java/org/openehr/test_rm/EnginePart.java index 97c89f11f..17f5b7398 100644 --- a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/EnginePart.java +++ b/test-rm/src/main/java/org/openehr/test_rm/EnginePart.java @@ -1,4 +1,4 @@ -package com.nedap.archie.openehrtestrm; +package org.openehr.test_rm; import java.util.List; import javax.annotation.Nullable; diff --git a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/EnginePartItem.java b/test-rm/src/main/java/org/openehr/test_rm/EnginePartItem.java similarity index 91% rename from test-rm/src/main/java/com/nedap/archie/openehrtestrm/EnginePartItem.java rename to test-rm/src/main/java/org/openehr/test_rm/EnginePartItem.java index af7c75536..0b7aa48ab 100644 --- a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/EnginePartItem.java +++ b/test-rm/src/main/java/org/openehr/test_rm/EnginePartItem.java @@ -1,4 +1,4 @@ -package com.nedap.archie.openehrtestrm; +package org.openehr.test_rm; import java.lang.String; import javax.annotation.Nullable; diff --git a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/Entry.java b/test-rm/src/main/java/org/openehr/test_rm/Entry.java similarity index 83% rename from test-rm/src/main/java/com/nedap/archie/openehrtestrm/Entry.java rename to test-rm/src/main/java/org/openehr/test_rm/Entry.java index 4598c11ef..e595e3c05 100644 --- a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/Entry.java +++ b/test-rm/src/main/java/org/openehr/test_rm/Entry.java @@ -1,9 +1,9 @@ -package com.nedap.archie.openehrtestrm; +package org.openehr.test_rm; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DataValue; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.quantity.DvOrdinal; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DataValue; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.quantity.DvOrdinal; import java.util.List; import javax.annotation.Nullable; diff --git a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/Item.java b/test-rm/src/main/java/org/openehr/test_rm/Item.java similarity index 56% rename from test-rm/src/main/java/com/nedap/archie/openehrtestrm/Item.java rename to test-rm/src/main/java/org/openehr/test_rm/Item.java index ac53199de..4e77bf033 100644 --- a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/Item.java +++ b/test-rm/src/main/java/org/openehr/test_rm/Item.java @@ -1,4 +1,4 @@ -package com.nedap.archie.openehrtestrm; +package org.openehr.test_rm; public abstract class Item extends TestRMBase { } diff --git a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/MultiplicityObject.java b/test-rm/src/main/java/org/openehr/test_rm/MultiplicityObject.java similarity index 93% rename from test-rm/src/main/java/com/nedap/archie/openehrtestrm/MultiplicityObject.java rename to test-rm/src/main/java/org/openehr/test_rm/MultiplicityObject.java index d8ecd6f3c..4f648bb55 100644 --- a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/MultiplicityObject.java +++ b/test-rm/src/main/java/org/openehr/test_rm/MultiplicityObject.java @@ -1,4 +1,4 @@ -package com.nedap.archie.openehrtestrm; +package org.openehr.test_rm; import java.lang.Long; import java.lang.String; diff --git a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/Rim.java b/test-rm/src/main/java/org/openehr/test_rm/Rim.java similarity index 91% rename from test-rm/src/main/java/com/nedap/archie/openehrtestrm/Rim.java rename to test-rm/src/main/java/org/openehr/test_rm/Rim.java index 5c16e6528..74a6b60df 100644 --- a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/Rim.java +++ b/test-rm/src/main/java/org/openehr/test_rm/Rim.java @@ -1,4 +1,4 @@ -package com.nedap.archie.openehrtestrm; +package org.openehr.test_rm; import java.lang.Long; import java.lang.String; diff --git a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/SomeType.java b/test-rm/src/main/java/org/openehr/test_rm/SomeType.java similarity index 93% rename from test-rm/src/main/java/com/nedap/archie/openehrtestrm/SomeType.java rename to test-rm/src/main/java/org/openehr/test_rm/SomeType.java index 8a43e9e92..28da063db 100644 --- a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/SomeType.java +++ b/test-rm/src/main/java/org/openehr/test_rm/SomeType.java @@ -1,11 +1,11 @@ -package com.nedap.archie.openehrtestrm; - -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DataValue; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.quantity.DvInterval; -import com.nedap.archie.rm.datavalues.quantity.DvOrdinal; -import com.nedap.archie.rm.datavalues.quantity.DvQuantity; +package org.openehr.test_rm; + +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DataValue; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.quantity.DvInterval; +import org.openehr.rm.datavalues.quantity.DvOrdinal; +import org.openehr.rm.datavalues.quantity.DvQuantity; import javax.annotation.Nullable; diff --git a/test-rm/src/main/java/org/openehr/test_rm/TestRMBase.java b/test-rm/src/main/java/org/openehr/test_rm/TestRMBase.java new file mode 100644 index 000000000..4d2c82f58 --- /dev/null +++ b/test-rm/src/main/java/org/openehr/test_rm/TestRMBase.java @@ -0,0 +1,4 @@ +package org.openehr.test_rm; + +public class TestRMBase { +} diff --git a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/Wheel.java b/test-rm/src/main/java/org/openehr/test_rm/Wheel.java similarity index 92% rename from test-rm/src/main/java/com/nedap/archie/openehrtestrm/Wheel.java rename to test-rm/src/main/java/org/openehr/test_rm/Wheel.java index 8f0ec7a0b..abdd93355 100644 --- a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/Wheel.java +++ b/test-rm/src/main/java/org/openehr/test_rm/Wheel.java @@ -1,4 +1,4 @@ -package com.nedap.archie.openehrtestrm; +package org.openehr.test_rm; import java.lang.String; import java.util.List; diff --git a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/Whole.java b/test-rm/src/main/java/org/openehr/test_rm/Whole.java similarity index 99% rename from test-rm/src/main/java/com/nedap/archie/openehrtestrm/Whole.java rename to test-rm/src/main/java/org/openehr/test_rm/Whole.java index a30875e10..9da5c0c02 100644 --- a/test-rm/src/main/java/com/nedap/archie/openehrtestrm/Whole.java +++ b/test-rm/src/main/java/org/openehr/test_rm/Whole.java @@ -1,4 +1,4 @@ -package com.nedap.archie.openehrtestrm; +package org.openehr.test_rm; import java.lang.Boolean; import java.lang.Double; diff --git a/referencemodels/src/main/resources/aom_profiles/iso13606_aom_profile.arp b/test-rm/src/main/resources/org/openehr/aom_profiles/openehr_aom_profile.arp similarity index 71% rename from referencemodels/src/main/resources/aom_profiles/iso13606_aom_profile.arp rename to test-rm/src/main/resources/org/openehr/aom_profiles/openehr_aom_profile.arp index c1a2ea601..a80720917 100755 --- a/referencemodels/src/main/resources/aom_profiles/iso13606_aom_profile.arp +++ b/test-rm/src/main/resources/org/openehr/aom_profiles/openehr_aom_profile.arp @@ -1,6 +1,6 @@ -- -- component: openEHR Archetype Project --- description: Archetype profile for ISO 13606 RM schemas +-- description: Archetype profile for openEHR RM schemas -- keywords: reference model, meta-model, archetypes -- author: Thomas Beale -- support: http://www.openehr.org/issues/browse/AWB @@ -8,21 +8,21 @@ -- license: See end of file -- -profile_name = <"iso13606"> +profile_name = <"openEHR"> ---------------------------------------------------------------------------------------- -- id or PERL regex based on id Reference Models to which this profile applies. -- This is used to match the 'schema_id' generated in BMM_SCHEMA class based on model -- publisher, model name, model release as defined in .bmm files. -- -rm_schema_pattern = <"cen_en13606_.*"> +rm_schema_pattern = <"openehr_ehr_.*|openehr_demographic_.*|openehr_ehr_extract_.*|openehr_rm_.*|openehr_adltest_.*|openehr_proc_.*"> ---------------------------------------------------------------------------------------- -- id of terminologies and code sets to use -- terminology_profile = < - terminology_issuer = <"CEN"> - code_sets_issuer = <"CEN"> + terminology_issuer = <"openehr"> + code_sets_issuer = <"openehr"> > ---------------------------------------------------------------------------------------- @@ -37,31 +37,20 @@ archetype_visualise_descendants_of = <"ITEM"> aom_rm_type_mappings = < ["TERMINOLOGY_CODE"] = < source_class_name = <"TERMINOLOGY_CODE"> - target_class_name = <"CD"> + target_class_name = <"CODE_PHRASE"> property_mappings = < ["terminology_id"] = < source_property_name = <"terminology_id"> - target_property_name = <"codingSchemeName"> + target_property_name = <"terminology_id"> > ["code_string"] = < source_property_name = <"code_string"> - target_property_name = <"codeValue"> + target_property_name = <"code_string"> > > > > ----------------------------------------------------------------------------------------- --- allowed substitutions from AOM built-in types to RM types --- - -aom_rm_type_substitutions = < - ["ISO8601_DATE"] = <"String"> - ["ISO8601_DATE_TIME"] = <"String"> - ["ISO8601_TIME"] = <"String"> - ["ISO8601_DURATION"] = <"String"> -> - ---------------------------------------------------------------------------------------- -- Equivalences of RM primitive types to in-built set of primitive types -- Used to determine which AOM C_PRIMITIVE_OBJECT descendant is used for a primitive type @@ -76,19 +65,38 @@ rm_primitive_type_equivalences = < ["ISO8601_DURATION"] = <"Duration"> > +---------------------------------------------------------------------------------------- +-- Allowed substitutions from AOM built-in types to RM types. AOM type on the left can be used +-- as a constrainer type for the RM type on the right, even though they are not equivalents. +-- Useful to deal with two problems: stringified values and numeric type promotions, e.g. +-- Integer => Real or Double. +-- + +aom_rm_type_substitutions = < + ["DATE"] = <"String"> + ["DATE_TIME"] = <"String"> + ["TIME"] = <"String"> + ["DURATION"] = <"String"> + ["CODE_PHRASE"] = <"DV_CODED_TEXT"> + ["INTEGER"] = <"Real"> + ["REAL"] = <"Double"> + ["Real"] = <"Double"> +> + ---------------------------------------------------------------------------------------- -- allowed substitutions from source RM lifecycle states to AOM lifecycle states -- States on the value side (right hand side) must be the AOM states: -- -- "unmanaged" --- "in_review" --- "suspended" --- "unstable" +-- "in_development" +-- "draft" +-- "in_review" +-- "suspended" -- "release_candidate" -- "published" --- "obsolete" --- "superseded" -- "deprecated" +-- "obsolete" +-- "superseded" -- @@ -100,5 +108,7 @@ aom_lifecycle_mappings = < ["ReviewSuspended"] = <"in_development"> ["Review Suspended"] = <"in_development"> ["Reassess"] = <"published"> + ["Published"] = <"published"> + ["Rejected"] = <"rejected"> > diff --git a/referencemodels/src/main/resources/bmm/openEHR/adl_test/Release-1.0.0/BMM/openehr_adltest_100.bmm b/test-rm/src/main/resources/org/openehr/bmm/adl_test/Release-1.0.0/BMM/openehr_adltest_100.bmm similarity index 100% rename from referencemodels/src/main/resources/bmm/openEHR/adl_test/Release-1.0.0/BMM/openehr_adltest_100.bmm rename to test-rm/src/main/resources/org/openehr/bmm/adl_test/Release-1.0.0/BMM/openehr_adltest_100.bmm diff --git a/tools/src/test/java/com/nedap/archie/adl14/ADL14DefaultOccurrencesConversionTest.java b/tools/src/test/java/com/nedap/archie/adl14/ADL14DefaultOccurrencesConversionTest.java index 0353165d7..b79b74364 100644 --- a/tools/src/test/java/com/nedap/archie/adl14/ADL14DefaultOccurrencesConversionTest.java +++ b/tools/src/test/java/com/nedap/archie/adl14/ADL14DefaultOccurrencesConversionTest.java @@ -1,17 +1,14 @@ package com.nedap.archie.adl14; import com.google.common.collect.Lists; -import com.nedap.archie.adlparser.ADLParseException; import com.nedap.archie.aom.Archetype; import com.nedap.archie.aom.CAttribute; import com.nedap.archie.aom.CComplexObject; import com.nedap.archie.base.MultiplicityInterval; import com.nedap.archie.serializer.adl.ADLArchetypeSerializer; -import com.nedap.archie.testutil.TestUtil; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; -import java.io.IOException; import java.io.InputStream; import static org.junit.Assert.assertEquals; @@ -22,10 +19,10 @@ public class ADL14DefaultOccurrencesConversionTest { @Test public void testDefaultOccurrencesConversion() throws Exception { ADL14ConversionConfiguration conversionConfiguration = ConversionConfigForTest.getConfig(); - ADL14Converter converter = new ADL14Converter(BuiltinReferenceModels.getMetaModels(), conversionConfiguration); + ADL14Converter converter = new ADL14Converter(AllMetaModelsInitialiser.getMetaModels(), conversionConfiguration); //apply the first conversion and store the log. It has created an at code to bind to [openehr::124], used in a DV_QUANTITY.property try (InputStream stream = getClass().getResourceAsStream("/adl14/entry/evaluation/openEHR-EHR-EVALUATION.goal.v1.adl")) { - ADL14Parser parser = new ADL14Parser(BuiltinReferenceModels.getMetaModels()); + ADL14Parser parser = new ADL14Parser(AllMetaModelsInitialiser.getMetaModels()); Archetype parsed = parser.parse(stream, conversionConfiguration); ADL2ConversionResultList result = converter.convert(Lists.newArrayList(parsed)); System.out.println(ADLArchetypeSerializer.serialize(result.getConversionResults().get(0).getArchetype())); diff --git a/tools/src/test/java/com/nedap/archie/adl14/ADL14ExternalTerminologyConversionTest.java b/tools/src/test/java/com/nedap/archie/adl14/ADL14ExternalTerminologyConversionTest.java index 13ebcb689..e4f9b99a9 100644 --- a/tools/src/test/java/com/nedap/archie/adl14/ADL14ExternalTerminologyConversionTest.java +++ b/tools/src/test/java/com/nedap/archie/adl14/ADL14ExternalTerminologyConversionTest.java @@ -6,7 +6,7 @@ import com.nedap.archie.aom.primitives.CTerminologyCode; import com.nedap.archie.aom.utils.AOMUtils; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.io.IOException; import java.io.InputStream; @@ -22,11 +22,11 @@ public class ADL14ExternalTerminologyConversionTest { @Test public void terminologyBindingsConverted() throws IOException, ADLParseException { ADL14ConversionConfiguration conversionConfiguration = ConversionConfigForTest.getConfig(); - ADL14Converter converter = new ADL14Converter(BuiltinReferenceModels.getMetaModels(), conversionConfiguration); + ADL14Converter converter = new ADL14Converter(AllMetaModelsInitialiser.getMetaModels(), conversionConfiguration); //apply the first conversion and store the log. It has created an at code to bind to [openehr::124], used in a DV_QUANTITY.property try(InputStream stream = getClass().getResourceAsStream("/adl14/openEHR-EHR-CLUSTER.value_binding.v1.0.0.adl")) { ADL2ConversionResultList result = converter.convert( - Lists.newArrayList(new ADL14Parser(BuiltinReferenceModels.getMetaModels()).parse(stream, conversionConfiguration))); + Lists.newArrayList(new ADL14Parser(AllMetaModelsInitialiser.getMetaModels()).parse(stream, conversionConfiguration))); Archetype converted = result.getConversionResults().get(0).getArchetype(); CTerminologyCode termCodeConstraint = converted.itemAtPath("/items/value/property[1]"); String atCode = termCodeConstraint.getConstraint().get(0); @@ -43,10 +43,10 @@ public void terminologyBindingsConverted() throws IOException, ADLParseException @Test public void twoTermbindingsInOneConstraint() throws Exception { ADL14ConversionConfiguration conversionConfiguration = ConversionConfigForTest.getConfig(); - ADL14Converter converter = new ADL14Converter(BuiltinReferenceModels.getMetaModels(), conversionConfiguration); + ADL14Converter converter = new ADL14Converter(AllMetaModelsInitialiser.getMetaModels(), conversionConfiguration); //apply the first conversion and store the log. It has created an at code to bind to [openehr::124], used in a DV_QUANTITY.property try(InputStream stream = getClass().getResourceAsStream("openEHR-EHR-CLUSTER.termbinding.v1.adl")) { - ADL14Parser parser = new ADL14Parser(BuiltinReferenceModels.getMetaModels()); + ADL14Parser parser = new ADL14Parser(AllMetaModelsInitialiser.getMetaModels()); ADL2ConversionResultList result = converter.convert( Lists.newArrayList(parser.parse(stream, conversionConfiguration))); assertFalse(parser.getErrors().hasErrors()); diff --git a/tools/src/test/java/com/nedap/archie/adl14/ADL14InternalTerminologyTest.java b/tools/src/test/java/com/nedap/archie/adl14/ADL14InternalTerminologyTest.java index 3a9ac0951..56bc8eb72 100644 --- a/tools/src/test/java/com/nedap/archie/adl14/ADL14InternalTerminologyTest.java +++ b/tools/src/test/java/com/nedap/archie/adl14/ADL14InternalTerminologyTest.java @@ -5,7 +5,7 @@ import com.nedap.archie.aom.Archetype; import com.nedap.archie.aom.terminology.ArchetypeTerm; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.io.IOException; import java.io.InputStream; @@ -19,11 +19,11 @@ public class ADL14InternalTerminologyTest { @Test public void internalTerminologyRemoved() throws IOException, ADLParseException { ADL14ConversionConfiguration conversionConfiguration = ConversionConfigForTest.getConfig(); - ADL14Converter converter = new ADL14Converter(BuiltinReferenceModels.getMetaModels(), conversionConfiguration); + ADL14Converter converter = new ADL14Converter(AllMetaModelsInitialiser.getMetaModels(), conversionConfiguration); try(InputStream stream = getClass().getResourceAsStream("/adl14/openEHR-EHR-OBSERVATION.internal_terminology_test.v0.adl")) { ADL2ConversionResultList result = converter.convert( - Lists.newArrayList(new ADL14Parser(BuiltinReferenceModels.getMetaModels()).parse(stream, conversionConfiguration))); + Lists.newArrayList(new ADL14Parser(AllMetaModelsInitialiser.getMetaModels()).parse(stream, conversionConfiguration))); Archetype converted = result.getConversionResults().get(0).getArchetype(); // A terminology code is unnecessary if: // - The text.length < 19 diff --git a/tools/src/test/java/com/nedap/archie/adl14/ADL14TerminologyConversionTest.java b/tools/src/test/java/com/nedap/archie/adl14/ADL14TerminologyConversionTest.java index 99cf29b0d..c10938ad8 100644 --- a/tools/src/test/java/com/nedap/archie/adl14/ADL14TerminologyConversionTest.java +++ b/tools/src/test/java/com/nedap/archie/adl14/ADL14TerminologyConversionTest.java @@ -4,7 +4,7 @@ import com.nedap.archie.aom.Archetype; import com.nedap.archie.serializer.adl.ADLArchetypeSerializer; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.io.InputStream; @@ -16,10 +16,10 @@ public class ADL14TerminologyConversionTest { @Test public void twoTermbindingsInOneConstraint() throws Exception { ADL14ConversionConfiguration conversionConfiguration = ConversionConfigForTest.getConfig(); - ADL14Converter converter = new ADL14Converter(BuiltinReferenceModels.getMetaModels(), conversionConfiguration); + ADL14Converter converter = new ADL14Converter(AllMetaModelsInitialiser.getMetaModels(), conversionConfiguration); //apply the first conversion and store the log. It has created an at code to bind to [openehr::124], used in a DV_QUANTITY.property try(InputStream stream = getClass().getResourceAsStream("openEHR-EHR-CLUSTER.termbinding.v1.adl")) { - ADL14Parser parser = new ADL14Parser(BuiltinReferenceModels.getMetaModels()); + ADL14Parser parser = new ADL14Parser(AllMetaModelsInitialiser.getMetaModels()); ADL2ConversionResultList result = converter.convert( Lists.newArrayList(parser.parse(stream, conversionConfiguration))); Archetype converted = result.getConversionResults().get(0).getArchetype(); diff --git a/tools/src/test/java/com/nedap/archie/adl14/ArchetypeSlotConversionTest.java b/tools/src/test/java/com/nedap/archie/adl14/ArchetypeSlotConversionTest.java index 95be42330..c24d28ff7 100644 --- a/tools/src/test/java/com/nedap/archie/adl14/ArchetypeSlotConversionTest.java +++ b/tools/src/test/java/com/nedap/archie/adl14/ArchetypeSlotConversionTest.java @@ -8,9 +8,8 @@ import com.nedap.archie.rules.Assertion; import com.nedap.archie.rules.BinaryOperator; import com.nedap.archie.rules.Constraint; -import com.nedap.archie.serializer.adl.ADLArchetypeSerializer; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.io.InputStream; @@ -21,12 +20,12 @@ public class ArchetypeSlotConversionTest { @Test public void testSlotConversion() throws Exception { ADL14ConversionConfiguration conversionConfiguration = ConversionConfigForTest.getConfig(); - ADL14Converter converter = new ADL14Converter(BuiltinReferenceModels.getMetaModels(), conversionConfiguration); + ADL14Converter converter = new ADL14Converter(AllMetaModelsInitialiser.getMetaModels(), conversionConfiguration); ADL2ConversionRunLog log = null; try(InputStream stream = getClass().getResourceAsStream("/com/nedap/archie/adl14/openEHR-EHR-OBSERVATION.respiration.v1.adl")) { ADL2ConversionResultList result = converter.convert( - Lists.newArrayList(new ADL14Parser(BuiltinReferenceModels.getMetaModels()).parse(stream, conversionConfiguration))); + Lists.newArrayList(new ADL14Parser(AllMetaModelsInitialiser.getMetaModels()).parse(stream, conversionConfiguration))); Archetype archetype = result.getConversionResults().get(0).getArchetype(); ArchetypeSlot slot = archetype.itemAtPath("/data/events[1]/state[id23]/items[id56]"); String includesPattern = getPattern(slot.getIncludes().get(0)); diff --git a/tools/src/test/java/com/nedap/archie/adl14/AssumedValueConversionTest.java b/tools/src/test/java/com/nedap/archie/adl14/AssumedValueConversionTest.java index df7d572db..85760a80c 100644 --- a/tools/src/test/java/com/nedap/archie/adl14/AssumedValueConversionTest.java +++ b/tools/src/test/java/com/nedap/archie/adl14/AssumedValueConversionTest.java @@ -7,7 +7,7 @@ import com.nedap.archie.archetypevalidator.ArchetypeValidator; import com.nedap.archie.archetypevalidator.ValidationResult; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.io.InputStream; @@ -18,11 +18,11 @@ public class AssumedValueConversionTest { @Test public void testAssumedValueConversion() throws Exception { ADL14ConversionConfiguration conversionConfiguration = ConversionConfigForTest.getConfig(); - ADL14Converter converter = new ADL14Converter(BuiltinReferenceModels.getMetaModels(), conversionConfiguration); + ADL14Converter converter = new ADL14Converter(AllMetaModelsInitialiser.getMetaModels(), conversionConfiguration); Archetype adl14archetype; try(InputStream stream = getClass().getResourceAsStream("openEHR-EHR-OBSERVATION.height.v2.adl")) { - adl14archetype = new ADL14Parser(BuiltinReferenceModels.getMetaModels()).parse(stream, conversionConfiguration); + adl14archetype = new ADL14Parser(AllMetaModelsInitialiser.getMetaModels()).parse(stream, conversionConfiguration); } ADL2ConversionResultList result = converter.convert( @@ -35,7 +35,7 @@ public void testAssumedValueConversion() throws Exception { assertNull(cTerminologyCode.getAssumedValue().getTerminologyId()); assertEquals("at17", cTerminologyCode.getAssumedValue().getCodeString()); - ValidationResult validationResult = new ArchetypeValidator(BuiltinReferenceModels.getMetaModels()).validate(archetype); + ValidationResult validationResult = new ArchetypeValidator(AllMetaModelsInitialiser.getMetaModels()).validate(archetype); assertTrue(validationResult.toString(), validationResult.passes()); } diff --git a/tools/src/test/java/com/nedap/archie/adl14/ConversionConfigForTest.java b/tools/src/test/java/com/nedap/archie/adl14/ConversionConfigForTest.java index 02eec72e4..0c1ea9004 100644 --- a/tools/src/test/java/com/nedap/archie/adl14/ConversionConfigForTest.java +++ b/tools/src/test/java/com/nedap/archie/adl14/ConversionConfigForTest.java @@ -1,6 +1,6 @@ package com.nedap.archie.adl14; -import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; +import com.nedap.archie.openehr.serialisation.json.OpenEhrRmJacksonUtil; import java.io.IOException; import java.io.InputStream; diff --git a/tools/src/test/java/com/nedap/archie/adl14/ConversionConfigurationTest.java b/tools/src/test/java/com/nedap/archie/adl14/ConversionConfigurationTest.java index a2144d322..23628b183 100644 --- a/tools/src/test/java/com/nedap/archie/adl14/ConversionConfigurationTest.java +++ b/tools/src/test/java/com/nedap/archie/adl14/ConversionConfigurationTest.java @@ -3,7 +3,7 @@ import com.google.common.collect.Lists; import com.nedap.archie.aom.Archetype; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.io.InputStream; @@ -15,17 +15,17 @@ public class ConversionConfigurationTest { public void testRmRelease() throws Exception { ADL14ConversionConfiguration conversionConfiguration = ConversionConfigForTest.getConfig(); - ADL14Converter converter = new ADL14Converter(BuiltinReferenceModels.getMetaModels(), conversionConfiguration); + ADL14Converter converter = new ADL14Converter(AllMetaModelsInitialiser.getMetaModels(), conversionConfiguration); try(InputStream stream = getClass().getResourceAsStream("openehr-EHR-COMPOSITION.review.v1.adl")) { - Archetype adl14 = new ADL14Parser(BuiltinReferenceModels.getMetaModels()).parse(stream, conversionConfiguration); + Archetype adl14 = new ADL14Parser(AllMetaModelsInitialiser.getMetaModels()).parse(stream, conversionConfiguration); ADL2ConversionResultList result = converter.convert(Lists.newArrayList(adl14)); assertEquals("1.1.0", result.getConversionResults().get(0).getArchetype().getRmRelease()); conversionConfiguration.setRmRelease("1.0.4"); - converter = new ADL14Converter(BuiltinReferenceModels.getMetaModels(), conversionConfiguration); + converter = new ADL14Converter(AllMetaModelsInitialiser.getMetaModels(), conversionConfiguration); result = converter.convert(Lists.newArrayList(adl14)); assertEquals("1.0.4", result.getConversionResults().get(0).getArchetype().getRmRelease()); diff --git a/tools/src/test/java/com/nedap/archie/adl14/DvScaleConversionTest.java b/tools/src/test/java/com/nedap/archie/adl14/DvScaleConversionTest.java index e58ad4e4c..ec5c34866 100644 --- a/tools/src/test/java/com/nedap/archie/adl14/DvScaleConversionTest.java +++ b/tools/src/test/java/com/nedap/archie/adl14/DvScaleConversionTest.java @@ -4,7 +4,7 @@ import com.nedap.archie.aom.Archetype; import com.nedap.archie.aom.CComplexObject; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.io.InputStream; @@ -18,11 +18,11 @@ public class DvScaleConversionTest { public void testDvScale() throws Exception { ADL14ConversionConfiguration conversionConfiguration = ConversionConfigForTest.getConfig(); - ADL14Converter converter = new ADL14Converter(BuiltinReferenceModels.getMetaModels(), conversionConfiguration); + ADL14Converter converter = new ADL14Converter(AllMetaModelsInitialiser.getMetaModels(), conversionConfiguration); try(InputStream stream = getClass().getResourceAsStream("openEHR-EHR-CLUSTER.ordinalandscale.v0.adl")) { - ADL14Parser adl14Parser = new ADL14Parser(BuiltinReferenceModels.getMetaModels()); + ADL14Parser adl14Parser = new ADL14Parser(AllMetaModelsInitialiser.getMetaModels()); Archetype adl14 = adl14Parser.parse(stream, conversionConfiguration); assertFalse(adl14Parser.getErrors().hasErrors()); ADL2ConversionResultList result = converter.convert(Lists.newArrayList(adl14)); diff --git a/tools/src/test/java/com/nedap/archie/adl14/LargeSetOfADL14sTest.java b/tools/src/test/java/com/nedap/archie/adl14/LargeSetOfADL14sTest.java index a19f82afa..ee72cbeb4 100644 --- a/tools/src/test/java/com/nedap/archie/adl14/LargeSetOfADL14sTest.java +++ b/tools/src/test/java/com/nedap/archie/adl14/LargeSetOfADL14sTest.java @@ -9,7 +9,7 @@ import org.antlr.v4.runtime.CodePointCharStream; import org.junit.Before; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import org.reflections.Reflections; import org.reflections.scanners.Scanners; import org.slf4j.Logger; @@ -58,14 +58,14 @@ public void parseUrn() { @Test public void testRiskFamilyhistory() throws Exception { - ADL14Parser parser = new ADL14Parser(BuiltinReferenceModels.getMetaModels()); + ADL14Parser parser = new ADL14Parser(AllMetaModelsInitialiser.getMetaModels()); Archetype riskParent = parser.parse(getClass().getResourceAsStream("/adl14/risk_parent.adl"), conversionConfiguration); Archetype riskFamilyHistory = parser.parse(getClass().getResourceAsStream("/adl14/risk_history.adl"), conversionConfiguration); List archetypes = Arrays.asList(riskParent, riskFamilyHistory); - ADL2ConversionResultList converted = new ADL14Converter(BuiltinReferenceModels.getMetaModels(), conversionConfiguration) + ADL2ConversionResultList converted = new ADL14Converter(AllMetaModelsInitialiser.getMetaModels(), conversionConfiguration) .convert(archetypes); for(ADL2ConversionResult conversionResult:converted.getConversionResults()) { @@ -85,7 +85,7 @@ public void testRiskFamilyhistory() throws Exception { adl2Repository.addArchetype(conversionResult.getArchetype()); } } - adl2Repository.compile(BuiltinReferenceModels.getMetaModels()); + adl2Repository.compile(AllMetaModelsInitialiser.getMetaModels()); for(ValidationResult validationResult:adl2Repository.getAllValidationResults()) { if(!validationResult.passes()) { @@ -113,7 +113,7 @@ public void parseLots() throws Exception { } } - ADL2ConversionResultList converted = new ADL14Converter(BuiltinReferenceModels.getMetaModels(), conversionConfiguration) + ADL2ConversionResultList converted = new ADL14Converter(AllMetaModelsInitialiser.getMetaModels(), conversionConfiguration) .convert(archetypes); for(ADL2ConversionResult result:converted.getConversionResults()) { if(result.getArchetype() != null) {// && result.getArchetype().getParentArchetypeId() != null) { @@ -160,7 +160,7 @@ public void parseLots() throws Exception { adl2Repository.addArchetype(conversionResult.getArchetype()); } } - adl2Repository.compile(BuiltinReferenceModels.getMetaModels()); + adl2Repository.compile(AllMetaModelsInitialiser.getMetaModels()); int passingValidations = 0; for(ValidationResult validationResult:adl2Repository.getAllValidationResults()) { if(validationResult.passes()) { @@ -193,7 +193,7 @@ public void parseLots() throws Exception { private Archetype parse(Map exceptions, Map parseErrors, String file) { try (InputStream stream = getClass().getResourceAsStream("/" + file)) { logger.info("trying to parse " + file); - ADL14Parser parser = new ADL14Parser(BuiltinReferenceModels.getMetaModels()); + ADL14Parser parser = new ADL14Parser(AllMetaModelsInitialiser.getMetaModels()); Archetype archetype = parser.parse(stream, conversionConfiguration); //logger.info(JacksonUtil.getObjectMapper().writeValueAsString(conversionResult.getConversionLog())); diff --git a/tools/src/test/java/com/nedap/archie/adl14/PreviousLogConversionTest.java b/tools/src/test/java/com/nedap/archie/adl14/PreviousLogConversionTest.java index e8dc8d013..045964d42 100644 --- a/tools/src/test/java/com/nedap/archie/adl14/PreviousLogConversionTest.java +++ b/tools/src/test/java/com/nedap/archie/adl14/PreviousLogConversionTest.java @@ -9,8 +9,7 @@ import com.nedap.archie.archetypevalidator.ArchetypeValidator; import com.nedap.archie.archetypevalidator.ValidationResult; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; -import org.openehr.utils.message.MessageCode; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import org.openehr.utils.message.MessageDescriptor; import org.openehr.utils.message.MessageSeverity; @@ -26,12 +25,12 @@ public class PreviousLogConversionTest { public void applyConsistentConversion() throws Exception { ADL14ConversionConfiguration conversionConfiguration = ConversionConfigForTest.getConfig(); - ADL14Converter converter = new ADL14Converter(BuiltinReferenceModels.getMetaModels(), conversionConfiguration); + ADL14Converter converter = new ADL14Converter(AllMetaModelsInitialiser.getMetaModels(), conversionConfiguration); ADL2ConversionRunLog log = null; try(InputStream stream = getClass().getResourceAsStream("openehr-EHR-COMPOSITION.review.v1.adl")) { ADL2ConversionResultList result = converter.convert( - Lists.newArrayList(new ADL14Parser(BuiltinReferenceModels.getMetaModels()).parse(stream, conversionConfiguration))); + Lists.newArrayList(new ADL14Parser(AllMetaModelsInitialiser.getMetaModels()).parse(stream, conversionConfiguration))); log = result.getConversionLog(); } @@ -39,7 +38,7 @@ public void applyConsistentConversion() throws Exception { try(InputStream stream = getClass().getResourceAsStream("openEHR-EHR-COMPOSITION.review.v1.modified.adl")) { ADL2ConversionResultList result = converter.convert( - Lists.newArrayList(new ADL14Parser(BuiltinReferenceModels.getMetaModels()).parse(stream, conversionConfiguration)), + Lists.newArrayList(new ADL14Parser(AllMetaModelsInitialiser.getMetaModels()).parse(stream, conversionConfiguration)), log); CAttribute attribute = result.getConversionResults().get(0).getArchetype().itemAtPath("/category"); assertEquals(2, attribute.getChildren().size()); @@ -56,15 +55,15 @@ public void applyConsistentConversion() throws Exception { @Test public void testValueSet() throws Exception { ADL14ConversionConfiguration conversionConfiguration = ConversionConfigForTest.getConfig(); - ADL14Converter converter = new ADL14Converter(BuiltinReferenceModels.getMetaModels(), conversionConfiguration); + ADL14Converter converter = new ADL14Converter(AllMetaModelsInitialiser.getMetaModels(), conversionConfiguration); ADL2ConversionRunLog log = null; try(InputStream stream = getClass().getResourceAsStream("openEHR-EHR-OBSERVATION.respiration.v1.adl")) { ADL2ConversionResultList result = converter.convert( - Lists.newArrayList(new ADL14Parser(BuiltinReferenceModels.getMetaModels()).parse(stream, conversionConfiguration))); + Lists.newArrayList(new ADL14Parser(AllMetaModelsInitialiser.getMetaModels()).parse(stream, conversionConfiguration))); log = result.getConversionLog(); Archetype converted = result.getConversionResults().get(0).getArchetype(); - ValidationResult validated = new ArchetypeValidator(BuiltinReferenceModels.getMetaModels()).validate(converted); + ValidationResult validated = new ArchetypeValidator(AllMetaModelsInitialiser.getMetaModels()).validate(converted); assertTrue(validated.toString(), validated.passes() ); assertTrue(converted.getTerminology().getTermDefinitions().get("nl").containsKey("ac9000")); assertTrue(converted.getTerminology().getTermDefinitions().get("nl").containsKey("ac9001")); @@ -76,11 +75,11 @@ public void testValueSet() throws Exception { try(InputStream stream = getClass().getResourceAsStream("openEHR-EHR-OBSERVATION.respiration.v1.adl")) { ADL2ConversionResultList result = converter.convert( - Lists.newArrayList(new ADL14Parser(BuiltinReferenceModels.getMetaModels()).parse(stream, conversionConfiguration)), + Lists.newArrayList(new ADL14Parser(AllMetaModelsInitialiser.getMetaModels()).parse(stream, conversionConfiguration)), log); Archetype converted = result.getConversionResults().get(0).getArchetype(); - ValidationResult validated = new ArchetypeValidator(BuiltinReferenceModels.getMetaModels()).validate(converted); + ValidationResult validated = new ArchetypeValidator(AllMetaModelsInitialiser.getMetaModels()).validate(converted); assertTrue(validated.toString(), validated.passes() ); assertTrue(converted.getTerminology().getTermDefinitions().get("nl").containsKey("ac9000")); assertTrue(converted.getTerminology().getTermDefinitions().get("nl").containsKey("ac9001")); @@ -93,16 +92,16 @@ public void testValueSet() throws Exception { @Test public void unusedValuesAreRemoved() throws Exception { ADL14ConversionConfiguration conversionConfiguration = ConversionConfigForTest.getConfig(); - ADL14Converter converter = new ADL14Converter(BuiltinReferenceModels.getMetaModels(), conversionConfiguration); + ADL14Converter converter = new ADL14Converter(AllMetaModelsInitialiser.getMetaModels(), conversionConfiguration); ADL2ConversionRunLog log = null; String createdAtCode = null; //apply the first conversion and store the log. It has created an at code to bind to [openehr::124], used in a DV_QUANTITY.property try(InputStream stream = getClass().getResourceAsStream("/adl14/openEHR-EHR-CLUSTER.value_binding.v1.0.0.adl")) { ADL2ConversionResultList result = converter.convert( - Lists.newArrayList(new ADL14Parser(BuiltinReferenceModels.getMetaModels()).parse(stream, conversionConfiguration))); + Lists.newArrayList(new ADL14Parser(AllMetaModelsInitialiser.getMetaModels()).parse(stream, conversionConfiguration))); log = result.getConversionLog(); Archetype converted = result.getConversionResults().get(0).getArchetype(); - ValidationResult validated = new ArchetypeValidator(BuiltinReferenceModels.getMetaModels()).validate(converted); + ValidationResult validated = new ArchetypeValidator(AllMetaModelsInitialiser.getMetaModels()).validate(converted); assertTrue(validated.toString(), validated.passes() ); createdAtCode = log.getConversionLog("openEHR-EHR-CLUSTER.value_binding.v1").getCreatedCodes().get("[openehr::124]").getGeneratedCode(); ArchetypeTerm termDefinition = converted.getTerminology().getTermDefinition("en", createdAtCode); @@ -114,10 +113,10 @@ public void unusedValuesAreRemoved() throws Exception { //apply the first conversion. The openehr::124 term binding is gone, and should not be present in the result, but should remain in the conversion log for future readdition try(InputStream stream = getClass().getResourceAsStream("/adl14/openEHR-EHR-CLUSTER.value_binding.v1.0.1.adl")) { ADL2ConversionResultList result = converter.convert( - Lists.newArrayList(new ADL14Parser(BuiltinReferenceModels.getMetaModels()).parse(stream, conversionConfiguration)), + Lists.newArrayList(new ADL14Parser(AllMetaModelsInitialiser.getMetaModels()).parse(stream, conversionConfiguration)), log); Archetype converted = result.getConversionResults().get(0).getArchetype(); - ValidationResult validated = new ArchetypeValidator(BuiltinReferenceModels.getMetaModels()).validate(converted); + ValidationResult validated = new ArchetypeValidator(AllMetaModelsInitialiser.getMetaModels()).validate(converted); assertTrue(validated.toString(), validated.passes() ); ArchetypeTerm termDefinition = converted.getTerminology().getTermDefinition("en", "at9000"); @@ -142,12 +141,12 @@ public void unusedValuesAreRemoved() throws Exception { public void acceptExplicitlySetCode() throws Exception { ADL14ConversionConfiguration conversionConfiguration = ConversionConfigForTest.getConfig(); - ADL14Converter converter = new ADL14Converter(BuiltinReferenceModels.getMetaModels(), conversionConfiguration); + ADL14Converter converter = new ADL14Converter(AllMetaModelsInitialiser.getMetaModels(), conversionConfiguration); ADL2ConversionRunLog log = null; try(InputStream stream = getClass().getResourceAsStream("openehr-EHR-COMPOSITION.review.v1.adl")) { ADL2ConversionResultList result = converter.convert( - Lists.newArrayList(new ADL14Parser(BuiltinReferenceModels.getMetaModels()).parse(stream, conversionConfiguration))); + Lists.newArrayList(new ADL14Parser(AllMetaModelsInitialiser.getMetaModels()).parse(stream, conversionConfiguration))); log = result.getConversionLog(); } @@ -155,7 +154,7 @@ public void acceptExplicitlySetCode() throws Exception { try(InputStream stream = getClass().getResourceAsStream("openEHR-EHR-COMPOSITION.review.v1.codeadded.adl")) { ADL2ConversionResultList result = converter.convert( - Lists.newArrayList(new ADL14Parser(BuiltinReferenceModels.getMetaModels()).parse(stream, conversionConfiguration)), + Lists.newArrayList(new ADL14Parser(AllMetaModelsInitialiser.getMetaModels()).parse(stream, conversionConfiguration)), log); CAttribute attribute = result.getConversionResults().get(0).getArchetype().itemAtPath("/category"); diff --git a/tools/src/test/java/com/nedap/archie/adlparser/AomUtilsPathFindingTest.java b/tools/src/test/java/com/nedap/archie/adlparser/AomUtilsPathFindingTest.java index 149e5b259..9ee976832 100644 --- a/tools/src/test/java/com/nedap/archie/adlparser/AomUtilsPathFindingTest.java +++ b/tools/src/test/java/com/nedap/archie/adlparser/AomUtilsPathFindingTest.java @@ -5,7 +5,7 @@ import com.nedap.archie.rminfo.MetaModels; import com.nedap.archie.testutil.TestUtil; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; @@ -15,7 +15,7 @@ public class AomUtilsPathFindingTest { @Test public void isPathInArchetypeOrRm() throws Exception{ Archetype archetype = TestUtil.parseFailOnErrors("/basic.adl"); - MetaModels metaModels = BuiltinReferenceModels.getMetaModels(); + MetaModels metaModels = AllMetaModelsInitialiser.getMetaModels(); metaModels.selectModel(archetype); //AOM path assertTrue(AOMUtils.isPathInArchetypeOrRm(metaModels.getSelectedModel(), "/context[id11]", archetype)); diff --git a/tools/src/test/java/com/nedap/archie/adlparser/RMPathQueryTest.java b/tools/src/test/java/com/nedap/archie/adlparser/RMPathQueryTest.java index 38920c1d9..5a539d28c 100644 --- a/tools/src/test/java/com/nedap/archie/adlparser/RMPathQueryTest.java +++ b/tools/src/test/java/com/nedap/archie/adlparser/RMPathQueryTest.java @@ -8,17 +8,17 @@ import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; import com.nedap.archie.query.RMObjectWithPath; import com.nedap.archie.query.RMPathQuery; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.composition.Composition; -import com.nedap.archie.rm.datastructures.Element; -import com.nedap.archie.rm.datastructures.ItemTree; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.composition.Composition; +import org.openehr.rm.datastructures.Element; +import org.openehr.rm.datastructures.ItemTree; +import org.openehr.rm.datavalues.DvText; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ModelInfoLookup; import com.nedap.archie.testutil.TestUtil; import org.junit.Before; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.util.List; @@ -121,7 +121,7 @@ public void findMatchSpecialisedNodes() throws Exception { inMemoryFullArchetypeRepository.addArchetype(archetype); Archetype archetype_specialised = TestUtil.parseFailOnErrors("/basic_specialised.adls"); inMemoryFullArchetypeRepository.addArchetype(archetype_specialised); - Flattener flattener = new Flattener(inMemoryFullArchetypeRepository, BuiltinReferenceModels.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); + Flattener flattener = new Flattener(inMemoryFullArchetypeRepository, AllMetaModelsInitialiser.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); OperationalTemplate opt = (OperationalTemplate) flattener.flatten(archetype_specialised); root = (Pathable) testUtil.constructEmptyRMObject(opt.getDefinition()); @@ -136,7 +136,7 @@ public void findListMatchSpecialisedNodes() throws Exception { inMemoryFullArchetypeRepository.addArchetype(archetype); Archetype archetype_specialised = TestUtil.parseFailOnErrors("/basic_specialised.adls"); inMemoryFullArchetypeRepository.addArchetype(archetype_specialised); - Flattener flattener = new Flattener(inMemoryFullArchetypeRepository, BuiltinReferenceModels.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); + Flattener flattener = new Flattener(inMemoryFullArchetypeRepository, AllMetaModelsInitialiser.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); OperationalTemplate opt = (OperationalTemplate) flattener.flatten(archetype_specialised); root = (Pathable) testUtil.constructEmptyRMObject(opt.getDefinition()); @@ -153,7 +153,7 @@ public void findListMatchTwiceSpecialisedNodes() throws Exception { Archetype archetype_specialised_twice = TestUtil.parseFailOnErrors("/basic_specialised2.adls"); inMemoryFullArchetypeRepository.addArchetype(archetype_specialised); inMemoryFullArchetypeRepository.addArchetype(archetype_specialised_twice); - Flattener flattener = new Flattener(inMemoryFullArchetypeRepository, BuiltinReferenceModels.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); + Flattener flattener = new Flattener(inMemoryFullArchetypeRepository, AllMetaModelsInitialiser.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); OperationalTemplate opt = (OperationalTemplate) flattener.flatten(archetype_specialised_twice); root = (Pathable) testUtil.constructEmptyRMObject(opt.getDefinition()); diff --git a/tools/src/test/java/com/nedap/archie/aom/ArchetypeTerminologyTest.java b/tools/src/test/java/com/nedap/archie/aom/ArchetypeTerminologyTest.java index 7289c9eca..02f015707 100644 --- a/tools/src/test/java/com/nedap/archie/aom/ArchetypeTerminologyTest.java +++ b/tools/src/test/java/com/nedap/archie/aom/ArchetypeTerminologyTest.java @@ -2,14 +2,13 @@ import com.nedap.archie.ArchieLanguageConfiguration; import com.nedap.archie.adlparser.ADLParseException; -import com.nedap.archie.archetypevalidator.ValidationResult; import com.nedap.archie.flattener.Flattener; import com.nedap.archie.flattener.FlattenerConfiguration; import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; import com.nedap.archie.flattener.specexamples.FlattenerTestUtil; import org.junit.After; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.io.IOException; @@ -32,11 +31,11 @@ public void termForUseArchetype() throws IOException, ADLParseException { repository.addArchetype(FlattenerTestUtil.parse("/com/nedap/archie/aom/openEHR-EHR-GENERIC_ENTRY.included.v1.0.0.adls")); //check that they are valid, just to be sure - repository.compile(BuiltinReferenceModels.getMetaModels()); + repository.compile(AllMetaModelsInitialiser.getMetaModels()); repository.getAllValidationResults().forEach(s -> assertTrue(s.getErrors().toString(), s.getErrors().isEmpty())); //create operational template - Flattener flattener = new Flattener(repository, BuiltinReferenceModels.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); + Flattener flattener = new Flattener(repository, AllMetaModelsInitialiser.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); OperationalTemplate opt = (OperationalTemplate) flattener.flatten(repository.getArchetype("openEHR-EHR-COMPOSITION.parent.v1.0.0")); //and check the getTerm() functionality diff --git a/tools/src/test/java/com/nedap/archie/aom/AttributeTupleConstraintsTest.java b/tools/src/test/java/com/nedap/archie/aom/AttributeTupleConstraintsTest.java index 526690cb5..41b48ddc0 100644 --- a/tools/src/test/java/com/nedap/archie/aom/AttributeTupleConstraintsTest.java +++ b/tools/src/test/java/com/nedap/archie/aom/AttributeTupleConstraintsTest.java @@ -1,7 +1,7 @@ package com.nedap.archie.aom; -import com.nedap.archie.rm.datavalues.quantity.DvQuantity; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import org.openehr.rm.datavalues.quantity.DvQuantity; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.testutil.TestUtil; import org.junit.BeforeClass; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/aom/TerminologyCodeConstraintsTest.java b/tools/src/test/java/com/nedap/archie/aom/TerminologyCodeConstraintsTest.java index c60bc041d..e0146205b 100644 --- a/tools/src/test/java/com/nedap/archie/aom/TerminologyCodeConstraintsTest.java +++ b/tools/src/test/java/com/nedap/archie/aom/TerminologyCodeConstraintsTest.java @@ -12,13 +12,13 @@ import com.nedap.archie.flattener.FlattenerConfiguration; import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; import com.nedap.archie.flattener.specexamples.FlattenerTestUtil; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DvCodedText; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rules.evaluation.DummyRulesPrimitiveObjectParent; import org.junit.Before; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.net.URI; import java.util.*; @@ -185,7 +185,7 @@ public void validationInOptTest() throws Exception { repository.addArchetype(FlattenerTestUtil.parse("/com/nedap/archie/aom/openEHR-EHR-GENERIC_ENTRY.included.v1.0.0.adls")); //create operational template - Flattener flattener = new Flattener(repository, BuiltinReferenceModels.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); + Flattener flattener = new Flattener(repository, AllMetaModelsInitialiser.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); OperationalTemplate opt = (OperationalTemplate) flattener.flatten(repository.getArchetype("openEHR-EHR-COMPOSITION.parent.v1.0.0")); CTerminologyCode code = opt.itemAtPath("/content/data/items/value/defining_code[1]"); assertEquals(Lists.newArrayList("at4", "at5", "at6"), code.getValueSetExpanded()); diff --git a/tools/src/test/java/com/nedap/archie/archetypevalidator/ArchetypeValidatorTest.java b/tools/src/test/java/com/nedap/archie/archetypevalidator/ArchetypeValidatorTest.java index 1e73db2a8..0bee19455 100644 --- a/tools/src/test/java/com/nedap/archie/archetypevalidator/ArchetypeValidatorTest.java +++ b/tools/src/test/java/com/nedap/archie/archetypevalidator/ArchetypeValidatorTest.java @@ -4,12 +4,12 @@ import com.nedap.archie.adlparser.ADLParser; import com.nedap.archie.aom.Archetype; import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; -import com.nedap.archie.openehrtestrm.TestRMInfoLookup; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.openehr.rminfo.OpenEhrTestRmInfoLookup; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ReferenceModels; import org.junit.Before; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.io.IOException; import java.util.List; @@ -31,7 +31,7 @@ public void setup() { parser = new ADLParser(); models = new ReferenceModels(); models.registerModel(OpenEhrRmInfoLookup.getInstance()); - models.registerModel(TestRMInfoLookup.getInstance()); + models.registerModel(OpenEhrTestRmInfoLookup.getInstance()); } @Test @@ -212,7 +212,7 @@ public void parentWithDifferentRmRelease() throws IOException, ADLParseException repository.addArchetype(child); repository.addArchetype(parent); - ArchetypeValidator archetypeValidator = new ArchetypeValidator(BuiltinReferenceModels.getMetaModels()); + ArchetypeValidator archetypeValidator = new ArchetypeValidator(AllMetaModelsInitialiser.getMetaModels()); ValidationResult validatedChild = archetypeValidator.validate(child, repository); ValidationResult validatedParent = archetypeValidator.validate(parent, repository); @@ -224,7 +224,7 @@ public void parentWithDifferentRmRelease() throws IOException, ADLParseException repository.addArchetype(child); repository.addArchetype(parent); - ArchetypeValidator archetypeValidator = new ArchetypeValidator(BuiltinReferenceModels.getMetaModels()); + ArchetypeValidator archetypeValidator = new ArchetypeValidator(AllMetaModelsInitialiser.getMetaModels()); ValidationResult validatedParent = archetypeValidator.validate(parent, repository); ValidationResult validatedChild = archetypeValidator.validate(child, repository); @@ -295,7 +295,7 @@ public void infiniteSpecialisationTreeLoopTest() throws IOException, ADLParseExc repository.addArchetype(child1); repository.addArchetype(child2); - ArchetypeValidator archetypeValidator = new ArchetypeValidator(BuiltinReferenceModels.getMetaModels()); + ArchetypeValidator archetypeValidator = new ArchetypeValidator(AllMetaModelsInitialiser.getMetaModels()); ValidationResult result = archetypeValidator.validate(child1, repository); assertFalse(result.passes()); assertEquals("Infinite loop caused by specialising: openEHR-EHR-CLUSTER.infinite_loop_child1.v0.0.1 in openEHR-EHR-CLUSTER.infinite_loop_child2.v0.0.1", result.getErrors().get(0).getMessage()); @@ -312,7 +312,7 @@ public void specializationAfterExclusionTest() throws IOException, ADLParseExcep repository.addArchetype(parent); repository.addArchetype(childWithSpecializationAfterExclusion); - ArchetypeValidator archetypeValidator = new ArchetypeValidator(BuiltinReferenceModels.getMetaModels()); + ArchetypeValidator archetypeValidator = new ArchetypeValidator(AllMetaModelsInitialiser.getMetaModels()); ValidationResult result = archetypeValidator.validate(childWithSpecializationAfterExclusion, repository); assertTrue(result.passes()); assertEquals(2, result.getErrors().size()); @@ -327,7 +327,7 @@ public void incompatibleNodeIdValidationTest() throws IOException, ADLParseExcep { InMemoryFullArchetypeRepository repository = new InMemoryFullArchetypeRepository(); repository.addArchetype(archetypeWithIncompatibleNodeId); - ArchetypeValidator archetypeValidator = new ArchetypeValidator(BuiltinReferenceModels.getMetaModels()); + ArchetypeValidator archetypeValidator = new ArchetypeValidator(AllMetaModelsInitialiser.getMetaModels()); ValidationResult result = archetypeValidator.validate(archetypeWithIncompatibleNodeId, repository); assertTrue(result.passes()); assertEquals(6, result.getErrors().size()); diff --git a/tools/src/test/java/com/nedap/archie/archetypevalidator/ArchetypeValidatorVersionsTest.java b/tools/src/test/java/com/nedap/archie/archetypevalidator/ArchetypeValidatorVersionsTest.java index e018b36e0..31a96c3cb 100644 --- a/tools/src/test/java/com/nedap/archie/archetypevalidator/ArchetypeValidatorVersionsTest.java +++ b/tools/src/test/java/com/nedap/archie/archetypevalidator/ArchetypeValidatorVersionsTest.java @@ -5,7 +5,7 @@ import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; import com.nedap.archie.testutil.TestUtil; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.io.IOException; @@ -23,7 +23,7 @@ public void testMultipleVersions() throws IOException, ADLParseException { repo.addArchetype(parentv1); repo.addArchetype(parentv11); repo.addArchetype(child); - ArchetypeValidator archetypeValidator = new ArchetypeValidator(BuiltinReferenceModels.getMetaModels()); + ArchetypeValidator archetypeValidator = new ArchetypeValidator(AllMetaModelsInitialiser.getMetaModels()); //the order of validation is important for this test! //first validate the first parent, which is valid assertTrue(archetypeValidator.validate(parentv1, repo).passes()); @@ -47,7 +47,7 @@ public void testMultipleVersionsFullyCompile() throws Exception { repo.addArchetype(parentv1); repo.addArchetype(parentv11); repo.addArchetype(child); - repo.compile(new ArchetypeValidator(BuiltinReferenceModels.getMetaModels())); + repo.compile(new ArchetypeValidator(AllMetaModelsInitialiser.getMetaModels())); for(ValidationResult result:repo.getAllValidationResults()) { assertTrue(result.getErrors().toString(), result.passes()); } diff --git a/tools/src/test/java/com/nedap/archie/archetypevalidator/BigArchetypeValidatorTest.java b/tools/src/test/java/com/nedap/archie/archetypevalidator/BigArchetypeValidatorTest.java index fe686e8ee..00c59f3e5 100644 --- a/tools/src/test/java/com/nedap/archie/archetypevalidator/BigArchetypeValidatorTest.java +++ b/tools/src/test/java/com/nedap/archie/archetypevalidator/BigArchetypeValidatorTest.java @@ -9,14 +9,15 @@ import com.nedap.archie.aom.Archetype; import com.nedap.archie.flattener.FullArchetypeRepository; import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.MetaModels; import com.nedap.archie.rminfo.ReferenceModels; import org.apache.commons.io.FilenameUtils; import org.junit.Assert; import org.junit.Test; import org.openehr.bmm.v2.validation.BmmRepository; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; +import com.nedap.archie.openehr.rminfo.OpenEhrTestRmInfoLookup; import org.reflections.Reflections; import org.reflections.scanners.Scanners; import org.slf4j.Logger; @@ -127,7 +128,7 @@ private FullArchetypeRepository parseAll() { @Test public void testFullValidityPackageBmm() { - testInner(new MetaModels(null, BuiltinReferenceModels.getBmmRepository(), BuiltinReferenceModels.getAomProfiles())); + testInner(new MetaModels(null, AllMetaModelsInitialiser.getBmmRepository(), AllMetaModelsInitialiser.getAomProfiles())); } @@ -136,7 +137,7 @@ public void testFullValidityPackageModelInfoLookup() { ReferenceModels models = new ReferenceModels(); models.registerModel(OpenEhrRmInfoLookup.getInstance()); - models.registerModel(com.nedap.archie.openehrtestrm.TestRMInfoLookup.getInstance()); + models.registerModel(OpenEhrTestRmInfoLookup.getInstance()); // access.initializeAll(schemaDirectories); testInner(new MetaModels(models, (BmmRepository) null)); diff --git a/tools/src/test/java/com/nedap/archie/archetypevalidator/CKMArchetypeValidatorTest.java b/tools/src/test/java/com/nedap/archie/archetypevalidator/CKMArchetypeValidatorTest.java index cd7b3836a..f38bba9da 100644 --- a/tools/src/test/java/com/nedap/archie/archetypevalidator/CKMArchetypeValidatorTest.java +++ b/tools/src/test/java/com/nedap/archie/archetypevalidator/CKMArchetypeValidatorTest.java @@ -1,12 +1,12 @@ package com.nedap.archie.archetypevalidator; import com.nedap.archie.flattener.FullArchetypeRepository; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.MetaModels; import com.nedap.archie.rminfo.ReferenceModels; import com.nedap.archie.testutil.TestUtil; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -58,7 +58,7 @@ public void fullCKMTest() { @Test public void fullCKMTestBmm() { - MetaModels bmmReferenceModels = new MetaModels(null, BuiltinReferenceModels.getBmmRepository(), BuiltinReferenceModels.getAomProfiles()); + MetaModels bmmReferenceModels = new MetaModels(null, AllMetaModelsInitialiser.getBmmRepository(), AllMetaModelsInitialiser.getAomProfiles()); FullArchetypeRepository repository = TestUtil.parseCKM(); logger.info("archetypes parsed: " + repository.getAllArchetypes().size()); diff --git a/tools/src/test/java/com/nedap/archie/archetypevalidator/ComplexArchetypeValidatorTest.java b/tools/src/test/java/com/nedap/archie/archetypevalidator/ComplexArchetypeValidatorTest.java index 31d40ba70..36c1c2282 100644 --- a/tools/src/test/java/com/nedap/archie/archetypevalidator/ComplexArchetypeValidatorTest.java +++ b/tools/src/test/java/com/nedap/archie/archetypevalidator/ComplexArchetypeValidatorTest.java @@ -6,7 +6,7 @@ import com.nedap.archie.rminfo.ReferenceModels; import org.junit.Before; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.util.List; @@ -24,7 +24,7 @@ public class ComplexArchetypeValidatorTest { @Before public void setup() throws Exception { - models = BuiltinReferenceModels.getAvailableModelInfoLookups(); + models = AllMetaModelsInitialiser.getNativeRms(); simpleTestCluster = new ADLParser().parse(ComplexArchetypeValidatorTest.class.getResourceAsStream("openEHR-EHR-CLUSTER.simple_test_cluster.v1.0.0.adls")); simpleTestObservation = new ADLParser().parse(ComplexArchetypeValidatorTest.class.getResourceAsStream("openEHR-EHR-OBSERVATION.simple_test_observation.v1.0.0.adls")); diff --git a/tools/src/test/java/com/nedap/archie/archetypevalidator/TermCodeSpecializationTest.java b/tools/src/test/java/com/nedap/archie/archetypevalidator/TermCodeSpecializationTest.java index 3c3862542..cfca8ccb5 100644 --- a/tools/src/test/java/com/nedap/archie/archetypevalidator/TermCodeSpecializationTest.java +++ b/tools/src/test/java/com/nedap/archie/archetypevalidator/TermCodeSpecializationTest.java @@ -9,7 +9,7 @@ import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; import com.nedap.archie.testutil.TestUtil; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.io.IOException; import java.util.Arrays; @@ -26,12 +26,12 @@ public void validRequiredBindingStrength() throws Exception { InMemoryFullArchetypeRepository repo = new InMemoryFullArchetypeRepository(); repo.addArchetype(parent); repo.addArchetype(child); - ArchetypeValidator archetypeValidator = new ArchetypeValidator(BuiltinReferenceModels.getMetaModels()); + ArchetypeValidator archetypeValidator = new ArchetypeValidator(AllMetaModelsInitialiser.getMetaModels()); repo.compile(archetypeValidator); for(ValidationResult validationResult:repo.getAllValidationResults()) { assertTrue(validationResult.toString(), validationResult.passes()); } - Flattener flattener = new Flattener(repo, BuiltinReferenceModels.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); + Flattener flattener = new Flattener(repo, AllMetaModelsInitialiser.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); OperationalTemplate opt = (OperationalTemplate) flattener.flatten(child); ValueSet valueSet = opt.getTerminology().getValueSets().get("ac0.2"); assertEquals(new LinkedHashSet<>(Arrays.asList("at1", "at2", "at3", "at0.1")), valueSet.getMembers()); @@ -44,7 +44,7 @@ public void invalidRequiredBindingStrength() throws Exception { InMemoryFullArchetypeRepository repo = new InMemoryFullArchetypeRepository(); repo.addArchetype(parent); repo.addArchetype(child); - ArchetypeValidator archetypeValidator = new ArchetypeValidator(BuiltinReferenceModels.getMetaModels()); + ArchetypeValidator archetypeValidator = new ArchetypeValidator(AllMetaModelsInitialiser.getMetaModels()); repo.compile(archetypeValidator); ValidationResult validationResult = repo.getValidationResult("openEHR-EHR-CLUSTER.constraint_strength_invalid_child.v1.0.0"); assertFalse(validationResult.toString(), validationResult.passes()); @@ -58,7 +58,7 @@ public void invalidConstraintStrengthRedefinition() throws Exception { InMemoryFullArchetypeRepository repo = new InMemoryFullArchetypeRepository(); repo.addArchetype(parent); repo.addArchetype(child); - ArchetypeValidator archetypeValidator = new ArchetypeValidator(BuiltinReferenceModels.getMetaModels()); + ArchetypeValidator archetypeValidator = new ArchetypeValidator(AllMetaModelsInitialiser.getMetaModels()); repo.compile(archetypeValidator); ValidationResult validationResult = repo.getValidationResult("openEHR-EHR-CLUSTER.constraint_strength_invalid_redefinition.v1.0.0"); assertFalse(validationResult.toString(), validationResult.passes()); @@ -72,7 +72,7 @@ public void valueSetCodeChanges() throws IOException, ADLParseException { InMemoryFullArchetypeRepository repo = new InMemoryFullArchetypeRepository(); repo.addArchetype(parent); repo.addArchetype(child); - ArchetypeValidator archetypeValidator = new ArchetypeValidator(BuiltinReferenceModels.getMetaModels()); + ArchetypeValidator archetypeValidator = new ArchetypeValidator(AllMetaModelsInitialiser.getMetaModels()); repo.compile(archetypeValidator); ValidationResult validationResult = repo.getValidationResult("openEHR-EHR-CLUSTER.constraint_strength_change_valueset_code.v1.0.0"); assertFalse(validationResult.toString(), validationResult.passes()); @@ -96,7 +96,7 @@ public void invalidValueSetRedefinition() throws IOException, ADLParseException InMemoryFullArchetypeRepository repo = new InMemoryFullArchetypeRepository(); repo.addArchetype(parent); repo.addArchetype(child); - ArchetypeValidator archetypeValidator = new ArchetypeValidator(BuiltinReferenceModels.getMetaModels()); + ArchetypeValidator archetypeValidator = new ArchetypeValidator(AllMetaModelsInitialiser.getMetaModels()); repo.compile(archetypeValidator); ValidationResult validationResult = repo.getValidationResult("openEHR-EHR-CLUSTER.constraint_strength_invalid_redefined_value-set.v1.0.0"); assertFalse(validationResult.toString(), validationResult.passes()); @@ -110,7 +110,7 @@ public void nonExistingParentValueSet() throws IOException, ADLParseException { InMemoryFullArchetypeRepository repo = new InMemoryFullArchetypeRepository(); repo.addArchetype(parent); repo.addArchetype(child); - ArchetypeValidator archetypeValidator = new ArchetypeValidator(BuiltinReferenceModels.getMetaModels()); + ArchetypeValidator archetypeValidator = new ArchetypeValidator(AllMetaModelsInitialiser.getMetaModels()); repo.compile(archetypeValidator); ValidationResult validationResult = repo.getValidationResult("openEHR-EHR-CLUSTER.incorrect_parent_valueset_code.v1.0.0"); assertFalse(validationResult.toString(), validationResult.passes()); diff --git a/tools/src/test/java/com/nedap/archie/creation/ExampleJsonInstanceGeneratorTest.java b/tools/src/test/java/com/nedap/archie/creation/ExampleJsonInstanceGeneratorTest.java index 001d003e0..0ed856520 100644 --- a/tools/src/test/java/com/nedap/archie/creation/ExampleJsonInstanceGeneratorTest.java +++ b/tools/src/test/java/com/nedap/archie/creation/ExampleJsonInstanceGeneratorTest.java @@ -14,11 +14,11 @@ import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; import com.nedap.archie.flattener.OperationalTemplateProvider; import com.nedap.archie.json.ArchieJacksonConfiguration; -import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; +import com.nedap.archie.openehr.serialisation.json.OpenEhrRmJacksonUtil; import com.nedap.archie.json.JsonSchemaValidator; import com.nedap.archie.base.RMObject; -import com.nedap.archie.rm.composition.Observation; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import org.openehr.rm.composition.Observation; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rmobjectvalidator.RMObjectValidationMessage; import com.nedap.archie.rmobjectvalidator.RMObjectValidationMessageType; import com.nedap.archie.rmobjectvalidator.RMObjectValidator; @@ -27,7 +27,7 @@ import org.junit.Test; import org.leadpony.justify.api.Problem; import org.openehr.bmm.core.BmmModel; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -158,8 +158,8 @@ public void generateAllCKMExamples() throws Exception { int numberCreated = 0, validationFailed = 0, generatedException = 0, jsonSchemaValidationRan = 0, jsonSchemaValidationFailed = 0; int secondJsonSchemaValidationRan = 0, reserializedJsonSchemaValidationFailed = 0; int rmObjectValidatorRan = 0, rmObjectValidatorFailed = 0; - repository.compile(BuiltinReferenceModels.getMetaModels()); - BmmModel model = BuiltinReferenceModels.getBmmRepository().getModel("openehr_rm_1.0.4").getModel(); + repository.compile(AllMetaModelsInitialiser.getMetaModels()); + BmmModel model = AllMetaModelsInitialiser.getBmmRepository().getModel("openehr_rm_1.0.4").getModel(); JsonSchemaValidator firstValidator = new JsonSchemaValidator(model, true); JsonSchemaValidator secondValidator = new JsonSchemaValidator(model,false); @@ -170,7 +170,7 @@ public void generateAllCKMExamples() throws Exception { if(result.passes()) { String json = ""; try { - Flattener flattener = new Flattener(repository, BuiltinReferenceModels.getMetaModels()).createOperationalTemplate(true); + Flattener flattener = new Flattener(repository, AllMetaModelsInitialiser.getMetaModels()).createOperationalTemplate(true); OperationalTemplate template = (OperationalTemplate) flattener.flatten(result.getSourceArchetype()); Map example = structureGenerator.generate(template); json = mapper.writeValueAsString(example); @@ -242,7 +242,7 @@ public void generateAllCKMExamples() throws Exception { } private ExampleJsonInstanceGenerator createExampleJsonInstanceGenerator() { - ExampleJsonInstanceGenerator structureGenerator = new ExampleJsonInstanceGenerator(BuiltinReferenceModels.getMetaModels(), "en"); + ExampleJsonInstanceGenerator structureGenerator = new ExampleJsonInstanceGenerator(AllMetaModelsInitialiser.getMetaModels(), "en"); structureGenerator.setTypePropertyName(TYPE_PROPERTY_NAME); return structureGenerator; } @@ -252,7 +252,7 @@ private OperationalTemplate createOPT(String s2) throws IOException, ADLParseExc Archetype archetype = parse(s2); InMemoryFullArchetypeRepository repository = new InMemoryFullArchetypeRepository(); repository.addArchetype(archetype); - return (OperationalTemplate) new Flattener(repository, BuiltinReferenceModels.getMetaModels()).createOperationalTemplate(true).flatten(archetype); + return (OperationalTemplate) new Flattener(repository, AllMetaModelsInitialiser.getMetaModels()).createOperationalTemplate(true).flatten(archetype); } private Archetype parse(String filename) throws IOException, ADLParseException { diff --git a/tools/src/test/java/com/nedap/archie/creation/RMObjectCreatorTest.java b/tools/src/test/java/com/nedap/archie/creation/RMObjectCreatorTest.java index cc75ac84a..6934835fc 100644 --- a/tools/src/test/java/com/nedap/archie/creation/RMObjectCreatorTest.java +++ b/tools/src/test/java/com/nedap/archie/creation/RMObjectCreatorTest.java @@ -4,12 +4,12 @@ import com.nedap.archie.aom.*; import com.nedap.archie.aom.terminology.ArchetypeTerm; import com.nedap.archie.aom.terminology.ArchetypeTerminology; -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.composition.Observation; -import com.nedap.archie.rm.datastructures.Cluster; -import com.nedap.archie.rm.datastructures.Element; -import com.nedap.archie.rm.datavalues.DvBoolean; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.composition.Observation; +import org.openehr.rm.datastructures.Cluster; +import org.openehr.rm.datastructures.Element; +import org.openehr.rm.datavalues.DvBoolean; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import org.junit.Test; import java.util.LinkedHashMap; diff --git a/tools/src/test/java/com/nedap/archie/diff/DiffTestUtil.java b/tools/src/test/java/com/nedap/archie/diff/DiffTestUtil.java index 5f4587c99..91b396ec5 100644 --- a/tools/src/test/java/com/nedap/archie/diff/DiffTestUtil.java +++ b/tools/src/test/java/com/nedap/archie/diff/DiffTestUtil.java @@ -8,7 +8,7 @@ import com.nedap.archie.serializer.adl.ADLArchetypeSerializer; import com.nedap.archie.testutil.TestUtil; import org.openehr.bmm.v2.validation.BmmRepository; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import static org.junit.Assert.assertEquals; @@ -26,7 +26,7 @@ public DiffTestUtil(String archetypesResourceLocation, String expectationsResour this.archetypesResourceLocation = archetypesResourceLocation; this.expectationsResourceLocation = expectationsResourceLocation; repository = new InMemoryFullArchetypeRepository(); - models = new MetaModels(BuiltinReferenceModels.getAvailableModelInfoLookups(), (BmmRepository) null); + models = new MetaModels(AllMetaModelsInitialiser.getNativeRms(), (BmmRepository) null); } public void test(String parentFileName, String childFileName) throws Exception { @@ -36,7 +36,7 @@ public void test(String parentFileName, String childFileName) throws Exception { Archetype flattened = new Flattener(repository, models).flatten(child); assertEquals(child.getParentArchetypeId(), flattened.getParentArchetypeId()); - Archetype diffed = new Differentiator(BuiltinReferenceModels.getMetaModels()).differentiate(flattened, parent); + Archetype diffed = new Differentiator(AllMetaModelsInitialiser.getMetaModels()).differentiate(flattened, parent); child.setGenerated(true);//this is set by the diff tool :) String originalSerialized = ADLArchetypeSerializer.serialize(child); String diffedSerialized = ADLArchetypeSerializer.serialize(diffed); @@ -56,7 +56,7 @@ public void testWithExplicitExpect(String parentFileName, String childFileName) Archetype flattened = new Flattener(repository, models).flatten(child); assertEquals(child.getParentArchetypeId(), flattened.getParentArchetypeId()); - Archetype diffed = new Differentiator(BuiltinReferenceModels.getMetaModels()).differentiate(flattened, parent); + Archetype diffed = new Differentiator(AllMetaModelsInitialiser.getMetaModels()).differentiate(flattened, parent); expectedDiff.setGenerated(true);//this is set by the diff tool :) String expectedSerialized = ADLArchetypeSerializer.serialize(expectedDiff); String diffedSerialized = ADLArchetypeSerializer.serialize(diffed); diff --git a/tools/src/test/java/com/nedap/archie/diff/SiblingOrderDiffTest.java b/tools/src/test/java/com/nedap/archie/diff/SiblingOrderDiffTest.java index 1a729ccd4..5865cd913 100644 --- a/tools/src/test/java/com/nedap/archie/diff/SiblingOrderDiffTest.java +++ b/tools/src/test/java/com/nedap/archie/diff/SiblingOrderDiffTest.java @@ -1,30 +1,7 @@ package com.nedap.archie.diff; -import com.google.common.collect.Lists; -import com.nedap.archie.diff.Differentiator; -import com.nedap.archie.adlparser.ADLParser; -import com.nedap.archie.aom.Archetype; -import com.nedap.archie.aom.CAttribute; -import com.nedap.archie.aom.CObject; -import com.nedap.archie.aom.SiblingOrder; -import com.nedap.archie.archetypevalidator.ValidationResult; -import com.nedap.archie.flattener.Flattener; -import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; -import com.nedap.archie.flattener.SimpleArchetypeRepository; -import com.nedap.archie.flattener.specexamples.FlattenerTestUtil; -import com.nedap.archie.rminfo.MetaModels; -import com.nedap.archie.serializer.adl.ADLArchetypeSerializer; -import com.nedap.archie.testutil.TestUtil; import org.junit.Before; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; - -import java.io.IOException; -import java.io.InputStream; -import java.util.List; -import java.util.stream.Collectors; - -import static org.junit.Assert.*; public class SiblingOrderDiffTest { diff --git a/tools/src/test/java/com/nedap/archie/diff/specexamples/DifferentiatorExamplesFromSpecTest.java b/tools/src/test/java/com/nedap/archie/diff/specexamples/DifferentiatorExamplesFromSpecTest.java index 14408dabc..dc66066c2 100644 --- a/tools/src/test/java/com/nedap/archie/diff/specexamples/DifferentiatorExamplesFromSpecTest.java +++ b/tools/src/test/java/com/nedap/archie/diff/specexamples/DifferentiatorExamplesFromSpecTest.java @@ -1,19 +1,8 @@ package com.nedap.archie.diff.specexamples; -import com.nedap.archie.aom.Archetype; import com.nedap.archie.diff.DiffTestUtil; -import com.nedap.archie.diff.Differentiator; -import com.nedap.archie.flattener.Flattener; -import com.nedap.archie.flattener.SimpleArchetypeRepository; -import com.nedap.archie.flattener.specexamples.FlattenerTestUtil; -import com.nedap.archie.rminfo.MetaModels; -import com.nedap.archie.serializer.adl.ADLArchetypeSerializer; -import com.nedap.archie.testutil.TestUtil; import org.junit.Before; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; - -import java.io.IOException; import static org.junit.Assert.assertEquals; diff --git a/tools/src/test/java/com/nedap/archie/flattener/AnnotationsFlattenerTest.java b/tools/src/test/java/com/nedap/archie/flattener/AnnotationsFlattenerTest.java index a978f24e1..fa16e93e0 100644 --- a/tools/src/test/java/com/nedap/archie/flattener/AnnotationsFlattenerTest.java +++ b/tools/src/test/java/com/nedap/archie/flattener/AnnotationsFlattenerTest.java @@ -6,7 +6,7 @@ import com.nedap.archie.aom.Archetype; import org.junit.Before; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import static org.junit.Assert.assertEquals; @@ -25,7 +25,7 @@ public class AnnotationsFlattenerTest { @Before public void setup() throws Exception { - models = BuiltinReferenceModels.getAvailableModelInfoLookups(); + models = AllMetaModelsInitialiser.getNativeRms(); parent = new ADLParser().parse(FlattenerTest.class.getResourceAsStream("openEHR-EHR-OBSERVATION.to_flatten_parent_with_annotations.v1.adls")); child = new ADLParser().parse(FlattenerTest.class.getResourceAsStream("openEHR-EHR-OBSERVATION.to_flatten_child_with_annotations.v1.adls")); diff --git a/tools/src/test/java/com/nedap/archie/flattener/FlattenerTest.java b/tools/src/test/java/com/nedap/archie/flattener/FlattenerTest.java index 8f6e7eca4..a44df767d 100644 --- a/tools/src/test/java/com/nedap/archie/flattener/FlattenerTest.java +++ b/tools/src/test/java/com/nedap/archie/flattener/FlattenerTest.java @@ -11,12 +11,13 @@ import com.nedap.archie.aom.CObject; import com.nedap.archie.aom.OperationalTemplate; import com.nedap.archie.archetypevalidator.ValidationResult; -import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.openehr.serialisation.json.OpenEhrRmJacksonUtil; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ReferenceModels; import org.junit.Before; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; +import com.nedap.archie.openehr.rminfo.OpenEhrTestRmInfoLookup; import java.util.List; import java.util.Stack; @@ -50,7 +51,7 @@ public class FlattenerTest { @Before public void setup() throws Exception { - models = BuiltinReferenceModels.getAvailableModelInfoLookups(); + models = AllMetaModelsInitialiser.getNativeRms(); // reportresult specializes report. // blood pressure composition specializes report result. @@ -272,7 +273,7 @@ public void removeLanguagesFromMetaData() throws Exception { public void validate() { ReferenceModels models = new ReferenceModels(); models.registerModel(OpenEhrRmInfoLookup.getInstance()); - models.registerModel(com.nedap.archie.openehrtestrm.TestRMInfoLookup.getInstance()); + models.registerModel(OpenEhrTestRmInfoLookup.getInstance()); ((InMemoryFullArchetypeRepository) repository).compile(models); for(ValidationResult result:((InMemoryFullArchetypeRepository) repository).getAllValidationResults()) { assertTrue(result.getArchetypeId() + " had errors or warnings: " + result.getErrors(), result.passes()); diff --git a/tools/src/test/java/com/nedap/archie/flattener/OperationalTemplateCreatorTest.java b/tools/src/test/java/com/nedap/archie/flattener/OperationalTemplateCreatorTest.java index 179a1fd00..d7d2949dd 100644 --- a/tools/src/test/java/com/nedap/archie/flattener/OperationalTemplateCreatorTest.java +++ b/tools/src/test/java/com/nedap/archie/flattener/OperationalTemplateCreatorTest.java @@ -7,10 +7,10 @@ import com.nedap.archie.archetypevalidator.ArchetypeValidator; import com.nedap.archie.archetypevalidator.ValidationResult; import com.nedap.archie.flattener.specexamples.FlattenerTestUtil; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ReferenceModels; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.io.IOException; import java.io.InputStream; @@ -26,8 +26,8 @@ public class OperationalTemplateCreatorTest { @Test public void fillEmptyOccurrences() throws Exception { try(InputStream stream = getClass().getResourceAsStream("openEHR-EHR-CLUSTER.cluster_with_annotations.v1.adls")) { - Archetype archetype = new ADLParser(BuiltinReferenceModels.getMetaModels()).parse(stream); - Flattener flattener = new Flattener(new SimpleArchetypeRepository(), BuiltinReferenceModels.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); + Archetype archetype = new ADLParser(AllMetaModelsInitialiser.getMetaModels()).parse(stream); + Flattener flattener = new Flattener(new SimpleArchetypeRepository(), AllMetaModelsInitialiser.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); OperationalTemplate template = (OperationalTemplate) flattener.flatten(archetype); Stack workList = new Stack<>(); @@ -49,10 +49,10 @@ public void fillEmptyOccurrences() throws Exception { @Test public void dontFillEmptyOccurrencesUnlessSet() throws Exception { try(InputStream stream = getClass().getResourceAsStream("openEHR-EHR-CLUSTER.cluster_with_annotations.v1.adls")) { - Archetype archetype = new ADLParser(BuiltinReferenceModels.getMetaModels()).parse(stream); + Archetype archetype = new ADLParser(AllMetaModelsInitialiser.getMetaModels()).parse(stream); FlattenerConfiguration flattenerConfiguration = FlattenerConfiguration.forOperationalTemplate(); flattenerConfiguration.setFillEmptyOccurrences(false); - Flattener flattener = new Flattener(new SimpleArchetypeRepository(), BuiltinReferenceModels.getMetaModels(), flattenerConfiguration); + Flattener flattener = new Flattener(new SimpleArchetypeRepository(), AllMetaModelsInitialiser.getMetaModels(), flattenerConfiguration); OperationalTemplate template = (OperationalTemplate) flattener.flatten(archetype); Stack workList = new Stack<>(); @@ -74,9 +74,9 @@ public void dontFillEmptyOccurrencesUnlessSet() throws Exception { public void failOnMissingArchetypeEnabled() throws Exception { SimpleArchetypeRepository repository = new SimpleArchetypeRepository(); try(InputStream stream = getClass().getResourceAsStream("openEHR-EHR-OBSERVATION.with_used_archetype.v1.adls")) { - Archetype archetype = new ADLParser(BuiltinReferenceModels.getMetaModels()).parse(stream); + Archetype archetype = new ADLParser(AllMetaModelsInitialiser.getMetaModels()).parse(stream); FlattenerConfiguration flattenerConfiguration = FlattenerConfiguration.forOperationalTemplate(); - Flattener flattener = new Flattener(repository, BuiltinReferenceModels.getMetaModels(), flattenerConfiguration); + Flattener flattener = new Flattener(repository, AllMetaModelsInitialiser.getMetaModels(), flattenerConfiguration); OperationalTemplate template = (OperationalTemplate) flattener.flatten(archetype); fail(); } @@ -85,10 +85,10 @@ public void failOnMissingArchetypeEnabled() throws Exception { @Test public void failOnMissingArchetypeDisabled() throws Exception { try(InputStream stream = getClass().getResourceAsStream("openEHR-EHR-OBSERVATION.with_used_archetype.v1.adls")) { - Archetype archetype = new ADLParser(BuiltinReferenceModels.getMetaModels()).parse(stream); + Archetype archetype = new ADLParser(AllMetaModelsInitialiser.getMetaModels()).parse(stream); FlattenerConfiguration flattenerConfiguration = FlattenerConfiguration.forOperationalTemplate(); flattenerConfiguration.setFailOnMissingUsedArchetype(false); - Flattener flattener = new Flattener(new SimpleArchetypeRepository(), BuiltinReferenceModels.getMetaModels(), flattenerConfiguration); + Flattener flattener = new Flattener(new SimpleArchetypeRepository(), AllMetaModelsInitialiser.getMetaModels(), flattenerConfiguration); OperationalTemplate template = (OperationalTemplate) flattener.flatten(archetype); CArchetypeRoot archetypeRoot = template.getDefinition().itemAtPath("/data[id2]/events[id3]/data[id4]/items[id8]"); @@ -140,7 +140,7 @@ private Archetype parseAndCreateOPTWithConfig(String fileName, InMemoryFullArche models.registerModel(OpenEhrRmInfoLookup.getInstance()); ValidationResult validationResult = new ArchetypeValidator(models).validate(result, repository); assertTrue(validationResult.getErrors().toString(), validationResult.passes()); - return new Flattener(repository, BuiltinReferenceModels.getMetaModels(), config).flatten(parse(fileName)); + return new Flattener(repository, AllMetaModelsInitialiser.getMetaModels(), config).flatten(parse(fileName)); } private Archetype parse(String filePath) throws IOException, ADLParseException { diff --git a/tools/src/test/java/com/nedap/archie/flattener/RMOverlayFlattenerTest.java b/tools/src/test/java/com/nedap/archie/flattener/RMOverlayFlattenerTest.java index f297c67a5..2edd931b0 100644 --- a/tools/src/test/java/com/nedap/archie/flattener/RMOverlayFlattenerTest.java +++ b/tools/src/test/java/com/nedap/archie/flattener/RMOverlayFlattenerTest.java @@ -6,7 +6,7 @@ import com.nedap.archie.archetypevalidator.ArchetypeValidator; import com.nedap.archie.testutil.TestUtil; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import static org.junit.Assert.*; @@ -19,7 +19,7 @@ public void flattenParentChild() throws Exception{ InMemoryFullArchetypeRepository repository = new InMemoryFullArchetypeRepository(); repository.addArchetype(parent); repository.addArchetype(child); - repository.compile(new ArchetypeValidator(BuiltinReferenceModels.getMetaModels())); + repository.compile(new ArchetypeValidator(AllMetaModelsInitialiser.getMetaModels())); repository.getAllValidationResults().forEach(v -> assertTrue(v.getErrors().toString(), !v.hasWarningsOrErrors())); Archetype flattenedChild = repository.getFlattenedArchetype("openEHR-EHR-OBSERVATION.to_flatten_child_with_overlay.v1.0.0"); @@ -39,10 +39,10 @@ public void flattenIncludedArchetype() throws Exception { InMemoryFullArchetypeRepository repository = new InMemoryFullArchetypeRepository(); repository.addArchetype(parent); repository.addArchetype(composition); - repository.compile(new ArchetypeValidator(BuiltinReferenceModels.getMetaModels())); + repository.compile(new ArchetypeValidator(AllMetaModelsInitialiser.getMetaModels())); repository.getAllValidationResults().forEach(v -> assertTrue(v.getErrors().toString(), !v.hasWarningsOrErrors())); - OperationalTemplate opt = (OperationalTemplate) new Flattener(repository, BuiltinReferenceModels.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()).flatten(composition); + OperationalTemplate opt = (OperationalTemplate) new Flattener(repository, AllMetaModelsInitialiser.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()).flatten(composition); assertEquals(VisibilityType.HIDE, opt.getRmOverlay().getRmVisibility().get("/content[id2]/subject").getVisibility()); assertEquals("at12", opt.getRmOverlay().getRmVisibility().get("/content[id2]/subject").getAlias().getCodeString()); } diff --git a/tools/src/test/java/com/nedap/archie/flattener/RulesFlattenerTest.java b/tools/src/test/java/com/nedap/archie/flattener/RulesFlattenerTest.java index 1f398cad4..ee8930bfd 100644 --- a/tools/src/test/java/com/nedap/archie/flattener/RulesFlattenerTest.java +++ b/tools/src/test/java/com/nedap/archie/flattener/RulesFlattenerTest.java @@ -11,7 +11,7 @@ import com.nedap.archie.serializer.adl.ADLArchetypeSerializer; import org.junit.Before; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import static org.junit.Assert.*; @@ -31,7 +31,7 @@ public class RulesFlattenerTest { @Before public void setup() throws Exception { - models = BuiltinReferenceModels.getAvailableModelInfoLookups(); + models = AllMetaModelsInitialiser.getNativeRms(); withRules = new ADLParser().parse(FlattenerTest.class.getResourceAsStream("openEHR-EHR-OBSERVATION.with_rules.v1.adls")); specializedRules = new ADLParser().parse(FlattenerTest.class.getResourceAsStream("openEHR-EHR-OBSERVATION.specialized_rules.v1.adls")); diff --git a/tools/src/test/java/com/nedap/archie/flattener/SiblingOrderFlattenerTest.java b/tools/src/test/java/com/nedap/archie/flattener/SiblingOrderFlattenerTest.java index 396780237..159dbf323 100644 --- a/tools/src/test/java/com/nedap/archie/flattener/SiblingOrderFlattenerTest.java +++ b/tools/src/test/java/com/nedap/archie/flattener/SiblingOrderFlattenerTest.java @@ -9,11 +9,11 @@ import com.nedap.archie.archetypevalidator.ArchetypeValidator; import com.nedap.archie.archetypevalidator.ValidationResult; import com.nedap.archie.flattener.specexamples.FlattenerTestUtil; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ReferenceModels; import org.junit.Before; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.io.IOException; import java.util.List; @@ -32,7 +32,7 @@ public class SiblingOrderFlattenerTest { public void setup() throws Exception { repository = new InMemoryFullArchetypeRepository(); parentArchetype = parse("openEHR-EHR-CLUSTER.order-parent.v1.0.0.adls"); - ReferenceModels models = BuiltinReferenceModels.getAvailableModelInfoLookups(); + ReferenceModels models = AllMetaModelsInitialiser.getNativeRms(); ValidationResult validationResult = new ArchetypeValidator(models).validate(parentArchetype, repository); assertTrue(validationResult.getErrors().toString(), validationResult.passes()); repository.addArchetype(parentArchetype); @@ -221,7 +221,7 @@ private Archetype parseAndFlatten(String fileName) throws IOException, ADLParseE ValidationResult validationResult = new ArchetypeValidator(models).validate(result, repository); assertTrue(validationResult.getErrors().toString(), validationResult.passes()); - return new Flattener(repository, BuiltinReferenceModels.getAvailableModelInfoLookups()).flatten(parse(fileName)); + return new Flattener(repository, AllMetaModelsInitialiser.getNativeRms()).flatten(parse(fileName)); } private Archetype parseAndCreateOPT(String fileName) throws IOException, ADLParseException { @@ -231,7 +231,7 @@ private Archetype parseAndCreateOPT(String fileName) throws IOException, ADLPars ValidationResult validationResult = new ArchetypeValidator(models).validate(result, repository); assertTrue(validationResult.getErrors().toString(), validationResult.passes()); - return new Flattener(repository, BuiltinReferenceModels.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()).flatten(parse(fileName)); + return new Flattener(repository, AllMetaModelsInitialiser.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()).flatten(parse(fileName)); } private Archetype parseAndFlattenRemoveZeroOccurrences(String fileName) throws IOException, ADLParseException { @@ -242,6 +242,6 @@ private Archetype parseAndFlattenRemoveZeroOccurrences(String fileName) throws I assertTrue(validationResult.getErrors().toString(), validationResult.passes()); FlattenerConfiguration config = FlattenerConfiguration.forFlattened(); config.setRemoveZeroOccurrencesObjects(true); - return new Flattener(repository, BuiltinReferenceModels.getMetaModels(), config).flatten(parse(fileName)); + return new Flattener(repository, AllMetaModelsInitialiser.getMetaModels(), config).flatten(parse(fileName)); } } diff --git a/tools/src/test/java/com/nedap/archie/flattener/specexamples/FlattenerExamplesFromSpecBMMTest.java b/tools/src/test/java/com/nedap/archie/flattener/specexamples/FlattenerExamplesFromSpecBMMTest.java index 2a26a2738..6a014fc4e 100644 --- a/tools/src/test/java/com/nedap/archie/flattener/specexamples/FlattenerExamplesFromSpecBMMTest.java +++ b/tools/src/test/java/com/nedap/archie/flattener/specexamples/FlattenerExamplesFromSpecBMMTest.java @@ -3,13 +3,13 @@ import com.nedap.archie.flattener.SimpleArchetypeRepository; import com.nedap.archie.rminfo.MetaModels; import org.junit.Before; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; public class FlattenerExamplesFromSpecBMMTest extends FlattenerExamplesFromSpecTest { @Before public void setup() throws Exception { repository = new SimpleArchetypeRepository(); - models = new MetaModels(null, BuiltinReferenceModels.getBmmRepository(), BuiltinReferenceModels.getAomProfiles()); + models = new MetaModels(null, AllMetaModelsInitialiser.getBmmRepository(), AllMetaModelsInitialiser.getAomProfiles()); } } diff --git a/tools/src/test/java/com/nedap/archie/flattener/specexamples/FlattenerExamplesFromSpecTest.java b/tools/src/test/java/com/nedap/archie/flattener/specexamples/FlattenerExamplesFromSpecTest.java index a9cabaaac..3ab69a8b9 100644 --- a/tools/src/test/java/com/nedap/archie/flattener/specexamples/FlattenerExamplesFromSpecTest.java +++ b/tools/src/test/java/com/nedap/archie/flattener/specexamples/FlattenerExamplesFromSpecTest.java @@ -19,7 +19,7 @@ import org.junit.Before; import org.junit.Test; import org.openehr.bmm.v2.validation.BmmRepository; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.util.List; import java.util.stream.Collectors; @@ -37,7 +37,7 @@ public class FlattenerExamplesFromSpecTest { @Before public void setup() throws Exception { repository = new SimpleArchetypeRepository(); - models = new MetaModels(BuiltinReferenceModels.getAvailableModelInfoLookups(), (BmmRepository) null); + models = new MetaModels(AllMetaModelsInitialiser.getNativeRms(), (BmmRepository) null); } @Test diff --git a/tools/src/test/java/com/nedap/archie/flattener/specexamples/TerminologyFlattenerExamplesFromSpec.java b/tools/src/test/java/com/nedap/archie/flattener/specexamples/TerminologyFlattenerExamplesFromSpec.java index 44ac3cb97..adfbf2653 100644 --- a/tools/src/test/java/com/nedap/archie/flattener/specexamples/TerminologyFlattenerExamplesFromSpec.java +++ b/tools/src/test/java/com/nedap/archie/flattener/specexamples/TerminologyFlattenerExamplesFromSpec.java @@ -7,7 +7,7 @@ import com.nedap.archie.flattener.SimpleArchetypeRepository; import org.junit.Before; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.util.Map; @@ -30,7 +30,7 @@ public void internalValueSetRedefinition() throws Exception { Archetype specialized = parse("openEHR-EHR-ELEMENT.interval_value_set_specialized.v1.0.0.adls"); - Archetype flat = new Flattener(repository, BuiltinReferenceModels.getAvailableModelInfoLookups()).flatten(specialized); + Archetype flat = new Flattener(repository, AllMetaModelsInitialiser.getNativeRms()).flatten(specialized); Map valueSets = flat.getTerminology().getValueSets(); CTerminologyCode code = flat.itemAtPath("/name/defining_code[1]"); diff --git a/tools/src/test/java/com/nedap/archie/json/AOMJacksonTest.java b/tools/src/test/java/com/nedap/archie/json/AOMJacksonTest.java index 53bbd9f60..48476c4a5 100644 --- a/tools/src/test/java/com/nedap/archie/json/AOMJacksonTest.java +++ b/tools/src/test/java/com/nedap/archie/json/AOMJacksonTest.java @@ -18,12 +18,12 @@ import com.nedap.archie.rules.Constraint; import com.nedap.archie.rules.ModelReference; import com.nedap.archie.rules.OperatorKind; -import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; +import com.nedap.archie.openehr.serialisation.json.OpenEhrRmJacksonUtil; import com.nedap.archie.serializer.adl.ADLArchetypeSerializer; import com.nedap.archie.testutil.TestUtil; import org.junit.Ignore; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import org.threeten.extra.PeriodDuration; import java.io.File; @@ -75,7 +75,7 @@ public void roundTripDeliriumObservationScreening() throws Exception { @Test public void motricityIndex() throws Exception { try(InputStream stream = getClass().getResourceAsStream( "/com/nedap/archie/rules/evaluation/openEHR-EHR-OBSERVATION.motricity_index.v1.0.0.adls")) { - Archetype archetype = new ADLParser(BuiltinReferenceModels.getMetaModels()).parse(stream); + Archetype archetype = new ADLParser(AllMetaModelsInitialiser.getMetaModels()).parse(stream); String serialized = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()).writeValueAsString(archetype); //System.out.println(serialized); assertTrue(serialized.contains("EXPR_BINARY_OPERATOR")); @@ -117,7 +117,7 @@ public void motricityIndexRulesOldFormatAsList() throws Exception { @Test public void motriciyIndexJavascriptFormat() throws Exception { try(InputStream stream = getClass().getResourceAsStream( "/com/nedap/archie/rules/evaluation/openEHR-EHR-OBSERVATION.motricity_index.v1.0.0.adls")) { - Archetype archetype = new ADLParser(BuiltinReferenceModels.getMetaModels()).parse(stream); + Archetype archetype = new ADLParser(AllMetaModelsInitialiser.getMetaModels()).parse(stream); String serialized = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createConfigForJavascriptUsage()).writeValueAsString(archetype); //System.out.println(serialized); assertTrue(serialized.contains("EXPR_BINARY_OPERATOR")); @@ -137,7 +137,7 @@ public void motriciyIndexJavascriptFormat() throws Exception { @Test public void motricityIndexOldFormat() throws Exception { try(InputStream stream = getClass().getResourceAsStream( "/com/nedap/archie/rules/evaluation/openEHR-EHR-OBSERVATION.motricity_index.v1.0.0.adls")) { - Archetype archetype = new ADLParser(BuiltinReferenceModels.getMetaModels()).parse(stream); + Archetype archetype = new ADLParser(AllMetaModelsInitialiser.getMetaModels()).parse(stream); ArchieJacksonConfiguration config = ArchieJacksonConfiguration.createStandardsCompliant(); config.setStandardsCompliantExpressions(false); String serialized = OpenEhrRmJacksonUtil.getObjectMapper(config).writeValueAsString(archetype); @@ -156,7 +156,7 @@ public void motricityIndexOldFormat() throws Exception { @Test public void archetypeSlot() throws Exception { try(InputStream stream = getClass().getResourceAsStream( "/basic.adl")) { - Archetype archetype = new ADLParser(BuiltinReferenceModels.getMetaModels()).parse(stream); + Archetype archetype = new ADLParser(AllMetaModelsInitialiser.getMetaModels()).parse(stream); ObjectMapper objectMapper = new ObjectMapper(); OpenEhrRmJacksonUtil.configureObjectMapper(objectMapper, ArchieJacksonConfiguration.createStandardsCompliant()); objectMapper.disable(SerializationFeature.INDENT_OUTPUT); @@ -182,7 +182,7 @@ private void assertArchetypeSlot(ObjectMapper objectMapper, String serialized) t @Test public void archetypeSlotOldExpressionClassNames() throws Exception { try(InputStream stream = getClass().getResourceAsStream( "/basic.adl")) { - Archetype archetype = new ADLParser(BuiltinReferenceModels.getMetaModels()).parse(stream); + Archetype archetype = new ADLParser(AllMetaModelsInitialiser.getMetaModels()).parse(stream); ArchieJacksonConfiguration config = ArchieJacksonConfiguration.createStandardsCompliant(); config.setStandardsCompliantExpressions(false); ObjectMapper objectMapper = OpenEhrRmJacksonUtil.getObjectMapper(config); diff --git a/tools/src/test/java/com/nedap/archie/json/JSONSchemaCreatorTest.java b/tools/src/test/java/com/nedap/archie/json/JSONSchemaCreatorTest.java index 5781d3cfc..e2de73e3e 100644 --- a/tools/src/test/java/com/nedap/archie/json/JSONSchemaCreatorTest.java +++ b/tools/src/test/java/com/nedap/archie/json/JSONSchemaCreatorTest.java @@ -3,7 +3,7 @@ import org.junit.Test; import org.openehr.bmm.core.BmmModel; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import jakarta.json.Json; import jakarta.json.JsonObject; @@ -16,7 +16,7 @@ public class JSONSchemaCreatorTest { @Test public void createSchema() { - BmmModel model = BuiltinReferenceModels.getBmmRepository().getModel("openehr_rm_1.1.0").getModel(); + BmmModel model = AllMetaModelsInitialiser.getBmmRepository().getModel("openehr_rm_1.1.0").getModel(); Map schemas = new OpenEHRRmJSONSchemaCreator().create(model); Map config = new HashMap<>(); @@ -37,7 +37,7 @@ private void printSchemas(Map schemas, JsonWriterFact @Test public void createSchemaWithoutAdditionalProperties() { - BmmModel model = BuiltinReferenceModels.getBmmRepository().getModel("openehr_rm_1.1.0").getModel(); + BmmModel model = AllMetaModelsInitialiser.getBmmRepository().getModel("openehr_rm_1.1.0").getModel(); Map schemas = new OpenEHRRmJSONSchemaCreator().allowAdditionalProperties(false).create(model); @@ -50,7 +50,7 @@ public void createSchemaWithoutAdditionalProperties() { @Test public void createMultiFileSchemaWithoutAdditionalProperties() { - BmmModel model = BuiltinReferenceModels.getBmmRepository().getModel("openehr_rm_1.1.0").getModel(); + BmmModel model = AllMetaModelsInitialiser.getBmmRepository().getModel("openehr_rm_1.1.0").getModel(); Map schemas = new OpenEHRRmJSONSchemaCreator().allowAdditionalProperties(false).splitInMultipleFiles(true).create(model); diff --git a/tools/src/test/java/com/nedap/archie/json/JacksonRMRoundTripTest.java b/tools/src/test/java/com/nedap/archie/json/JacksonRMRoundTripTest.java index ec7ccf79a..3f7346d61 100644 --- a/tools/src/test/java/com/nedap/archie/json/JacksonRMRoundTripTest.java +++ b/tools/src/test/java/com/nedap/archie/json/JacksonRMRoundTripTest.java @@ -7,20 +7,20 @@ import com.nedap.archie.query.RMQueryContext; import com.nedap.archie.base.RMObject; -import com.nedap.archie.rm.composition.Composition; -import com.nedap.archie.rm.datastructures.Cluster; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.datavalues.DvURI; -import com.nedap.archie.rm.datavalues.quantity.DvQuantity; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDate; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvTime; -import com.nedap.archie.rm.support.identification.HierObjectId; -import com.nedap.archie.rm.support.identification.UIDBasedId; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; -import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; +import org.openehr.rm.composition.Composition; +import org.openehr.rm.datastructures.Cluster; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.datavalues.DvURI; +import org.openehr.rm.datavalues.quantity.DvQuantity; +import org.openehr.rm.datavalues.quantity.datetime.DvDate; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.datavalues.quantity.datetime.DvTime; +import org.openehr.rm.support.identification.HierObjectId; +import org.openehr.rm.support.identification.UIDBasedId; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.openehr.serialisation.json.OpenEhrRmJacksonUtil; import com.nedap.archie.testutil.TestUtil; -import com.nedap.archie.serialisation.xml.OpenEhrRmJAXBUtil; +import com.nedap.archie.openehr.serialisation.xml.OpenEhrRmJAXBUtil; import org.junit.Before; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/json/RMJacksonTest.java b/tools/src/test/java/com/nedap/archie/json/RMJacksonTest.java index 34cfb2172..49774689d 100644 --- a/tools/src/test/java/com/nedap/archie/json/RMJacksonTest.java +++ b/tools/src/test/java/com/nedap/archie/json/RMJacksonTest.java @@ -2,11 +2,11 @@ import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; -import com.nedap.archie.rm.composition.Composition; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDuration; -import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; +import org.openehr.rm.composition.Composition; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.datavalues.quantity.datetime.DvDuration; +import com.nedap.archie.openehr.serialisation.json.OpenEhrRmJacksonUtil; import org.junit.Test; import org.threeten.extra.PeriodDuration; diff --git a/tools/src/test/java/com/nedap/archie/json/flat/ArchetypeParsePostProcessorTest.java b/tools/src/test/java/com/nedap/archie/json/flat/ArchetypeParsePostProcessorTest.java index 5692be9bb..9eeb2c8ad 100644 --- a/tools/src/test/java/com/nedap/archie/json/flat/ArchetypeParsePostProcessorTest.java +++ b/tools/src/test/java/com/nedap/archie/json/flat/ArchetypeParsePostProcessorTest.java @@ -3,7 +3,7 @@ import com.nedap.archie.aom.*; import com.nedap.archie.aom.utils.ArchetypeParsePostProcesser; import com.nedap.archie.json.ArchieJacksonConfiguration; -import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; +import com.nedap.archie.openehr.serialisation.json.OpenEhrRmJacksonUtil; import org.junit.Test; import java.io.InputStream; diff --git a/tools/src/test/java/com/nedap/archie/json/flat/FlatJsonGeneratorTest.java b/tools/src/test/java/com/nedap/archie/json/flat/FlatJsonGeneratorTest.java index c8a88f3a6..b3d8562a2 100644 --- a/tools/src/test/java/com/nedap/archie/json/flat/FlatJsonGeneratorTest.java +++ b/tools/src/test/java/com/nedap/archie/json/flat/FlatJsonGeneratorTest.java @@ -10,17 +10,17 @@ import com.nedap.archie.flattener.Flattener; import com.nedap.archie.flattener.FlattenerConfiguration; import com.nedap.archie.flattener.SimpleArchetypeRepository; -import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; -import com.nedap.archie.rm.composition.Observation; -import com.nedap.archie.rm.datastructures.Cluster; -import com.nedap.archie.rm.datastructures.Element; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.datavalues.quantity.DvCount; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.openehr.serialisation.json.OpenEhrRmJacksonUtil; +import org.openehr.rm.composition.Observation; +import org.openehr.rm.datastructures.Cluster; +import org.openehr.rm.datastructures.Element; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.datavalues.quantity.DvCount; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.MetaModels; import org.junit.After; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.io.IOException; import java.io.InputStream; @@ -168,7 +168,7 @@ public void dontSerializeNames() throws Exception { config.setFilterNames(true); config.setFilterTypes(false); //config.getIgnoredAttributes().add(new AttributeReference("LOCATABLE", "name")); - Map stringObjectMap = new FlatJsonExampleInstanceGenerator().generateExample(bloodPressureOpt, BuiltinReferenceModels.getMetaModels(), "en", config); + Map stringObjectMap = new FlatJsonExampleInstanceGenerator().generateExample(bloodPressureOpt, AllMetaModelsInitialiser.getMetaModels(), "en", config); System.out.println(OpenEhrRmJacksonUtil.getObjectMapper().writeValueAsString(stringObjectMap)); @@ -197,7 +197,7 @@ public void dontSerializeTypes() throws Exception { config.setFilterNames(true); config.setFilterTypes(true); //config.getIgnoredAttributes().add(new AttributeReference("LOCATABLE", "name")); - MetaModels metaModels = BuiltinReferenceModels.getMetaModels(); + MetaModels metaModels = AllMetaModelsInitialiser.getMetaModels(); metaModels.selectModel(bloodPressureOpt); ExampleJsonInstanceGenerator exampleJsonInstanceGenerator = new ExampleJsonInstanceGenerator(metaModels, "en"); @@ -246,7 +246,7 @@ public void restoresThreadLocalDescriptiongAndMeaningLanguage() throws Exceptio OperationalTemplate bloodPressureOpt = parseBloodPressure(); FlatJsonFormatConfiguration config = FlatJsonFormatConfiguration.nedapInternalFormat(); - MetaModels metaModels = BuiltinReferenceModels.getMetaModels(); + MetaModels metaModels = AllMetaModelsInitialiser.getMetaModels(); metaModels.selectModel(bloodPressureOpt); ExampleJsonInstanceGenerator exampleJsonInstanceGenerator = new ExampleJsonInstanceGenerator(metaModels, "en"); @@ -274,7 +274,7 @@ public void filterTypesWithAlternatives() throws Exception { config.setFilterNames(true); config.setFilterTypes(true); //config.getIgnoredAttributes().add(new AttributeReference("LOCATABLE", "name")); - Map stringObjectMap = new FlatJsonExampleInstanceGenerator().generateExample(bloodPressureOpt, BuiltinReferenceModels.getMetaModels(), "en", config); + Map stringObjectMap = new FlatJsonExampleInstanceGenerator().generateExample(bloodPressureOpt, AllMetaModelsInitialiser.getMetaModels(), "en", config); System.out.println(OpenEhrRmJacksonUtil.getObjectMapper().writeValueAsString(stringObjectMap)); @@ -290,22 +290,22 @@ public void filterTypesWithAlternatives() throws Exception { private OperationalTemplate parseBloodPressure() throws IOException, ADLParseException { try (InputStream stream = getClass().getResourceAsStream(BLOOD_PRESSURE_PATH)) { - Archetype bloodPressure = new ADLParser(BuiltinReferenceModels.getMetaModels()).parse(stream); - Flattener flattener = new Flattener(new SimpleArchetypeRepository(), BuiltinReferenceModels.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); + Archetype bloodPressure = new ADLParser(AllMetaModelsInitialiser.getMetaModels()).parse(stream); + Flattener flattener = new Flattener(new SimpleArchetypeRepository(), AllMetaModelsInitialiser.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); return (OperationalTemplate) flattener.flatten(bloodPressure); } } private OperationalTemplate parseTypeAlternatives() throws IOException, ADLParseException { try (InputStream stream = getClass().getResourceAsStream("openEHR-EHR-CLUSTER.element_with_two_dv_types.v1.0.0.adls")) { - Archetype typeAlternatives = new ADLParser(BuiltinReferenceModels.getMetaModels()).parse(stream); - Flattener flattener = new Flattener(new SimpleArchetypeRepository(), BuiltinReferenceModels.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); + Archetype typeAlternatives = new ADLParser(AllMetaModelsInitialiser.getMetaModels()).parse(stream); + Flattener flattener = new Flattener(new SimpleArchetypeRepository(), AllMetaModelsInitialiser.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); return (OperationalTemplate) flattener.flatten(typeAlternatives); } } private Map createExampleInstance(OperationalTemplate bloodPressureOpt, FlatJsonFormatConfiguration config) throws IOException, DuplicateKeyException { - return new FlatJsonExampleInstanceGenerator().generateExample(bloodPressureOpt, BuiltinReferenceModels.getMetaModels(), "en", config); + return new FlatJsonExampleInstanceGenerator().generateExample(bloodPressureOpt, AllMetaModelsInitialiser.getMetaModels(), "en", config); } } diff --git a/tools/src/test/java/com/nedap/archie/kryo/URISerializerTest.java b/tools/src/test/java/com/nedap/archie/kryo/URISerializerTest.java index a2154cd1e..4e04e147e 100644 --- a/tools/src/test/java/com/nedap/archie/kryo/URISerializerTest.java +++ b/tools/src/test/java/com/nedap/archie/kryo/URISerializerTest.java @@ -1,7 +1,7 @@ package com.nedap.archie.kryo; -import com.nedap.archie.rm.datavalues.DvURI; -import com.nedap.archie.rm.datavalues.encapsulated.DvMultimedia; +import org.openehr.rm.datavalues.DvURI; +import org.openehr.rm.datavalues.encapsulated.DvMultimedia; import org.junit.Test; import static org.junit.Assert.assertEquals; diff --git a/tools/src/test/java/com/nedap/archie/query/RMObjectAttributesTest.java b/tools/src/test/java/com/nedap/archie/query/RMObjectAttributesTest.java index ff4e45dbe..f20cbdb39 100644 --- a/tools/src/test/java/com/nedap/archie/query/RMObjectAttributesTest.java +++ b/tools/src/test/java/com/nedap/archie/query/RMObjectAttributesTest.java @@ -4,15 +4,15 @@ import com.nedap.archie.adlparser.ADLParser; import com.nedap.archie.adlparser.modelconstraints.RMConstraintImposer; import com.nedap.archie.aom.Archetype; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.composition.Composition; -import com.nedap.archie.rm.composition.EventContext; -import com.nedap.archie.rm.datastructures.Cluster; -import com.nedap.archie.rm.datastructures.Element; -import com.nedap.archie.rm.datastructures.Item; -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.datavalues.DataValue; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.composition.Composition; +import org.openehr.rm.composition.EventContext; +import org.openehr.rm.datastructures.Cluster; +import org.openehr.rm.datastructures.Element; +import org.openehr.rm.datastructures.Item; +import org.openehr.rm.datastructures.ItemStructure; +import org.openehr.rm.datavalues.DataValue; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ModelInfoLookup; import com.nedap.archie.testutil.TestUtil; import org.junit.Before; diff --git a/tools/src/test/java/com/nedap/archie/query/RMQueryContextTest.java b/tools/src/test/java/com/nedap/archie/query/RMQueryContextTest.java index 147c3b162..0a5202843 100644 --- a/tools/src/test/java/com/nedap/archie/query/RMQueryContextTest.java +++ b/tools/src/test/java/com/nedap/archie/query/RMQueryContextTest.java @@ -5,15 +5,15 @@ import com.nedap.archie.adlparser.ADLParser; import com.nedap.archie.adlparser.modelconstraints.RMConstraintImposer; import com.nedap.archie.aom.Archetype; -import com.nedap.archie.rm.archetyped.Locatable; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.composition.Composition; -import com.nedap.archie.rm.datastructures.ItemTree; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import org.openehr.rm.archetyped.Locatable; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.composition.Composition; +import org.openehr.rm.datastructures.ItemTree; +import org.openehr.rm.datavalues.DvText; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ModelInfoLookup; import com.nedap.archie.testutil.TestUtil; -import com.nedap.archie.serialisation.xml.OpenEhrRmJAXBUtil; +import com.nedap.archie.openehr.serialisation.xml.OpenEhrRmJAXBUtil; import org.junit.Before; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rm/LocatableTest.java b/tools/src/test/java/com/nedap/archie/rm/LocatableTest.java index 161b82653..1ee47122c 100644 --- a/tools/src/test/java/com/nedap/archie/rm/LocatableTest.java +++ b/tools/src/test/java/com/nedap/archie/rm/LocatableTest.java @@ -1,14 +1,14 @@ package com.nedap.archie.rm; import com.google.common.collect.Lists; -import com.nedap.archie.rm.composition.Composition; -import com.nedap.archie.rm.composition.Observation; -import com.nedap.archie.rm.datastructures.Element; -import com.nedap.archie.rm.datastructures.History; -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.datastructures.ItemTree; -import com.nedap.archie.rm.datastructures.PointEvent; -import com.nedap.archie.rm.datavalues.DvText; +import org.openehr.rm.composition.Composition; +import org.openehr.rm.composition.Observation; +import org.openehr.rm.datastructures.Element; +import org.openehr.rm.datastructures.History; +import org.openehr.rm.datastructures.ItemStructure; +import org.openehr.rm.datastructures.ItemTree; +import org.openehr.rm.datastructures.PointEvent; +import org.openehr.rm.datavalues.DvText; import org.junit.Test; import static org.junit.Assert.assertEquals; diff --git a/tools/src/test/java/com/nedap/archie/rminfo/openEhrRMInfoLookupTest.java b/tools/src/test/java/com/nedap/archie/rminfo/openEhrRMInfoLookupTest.java index 0050eb9d3..128e2d27b 100644 --- a/tools/src/test/java/com/nedap/archie/rminfo/openEhrRMInfoLookupTest.java +++ b/tools/src/test/java/com/nedap/archie/rminfo/openEhrRMInfoLookupTest.java @@ -1,21 +1,22 @@ package com.nedap.archie.rminfo; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.composition.Composition; -import com.nedap.archie.rm.composition.Observation; -import com.nedap.archie.rm.datastructures.Cluster; -import com.nedap.archie.rm.datastructures.Event; -import com.nedap.archie.rm.datastructures.History; -import com.nedap.archie.rm.datastructures.Item; -import com.nedap.archie.rm.datavalues.DvEHRURI; -import com.nedap.archie.rm.datavalues.DvIdentifier; -import com.nedap.archie.rm.datavalues.DvURI; -import com.nedap.archie.rm.datavalues.encapsulated.DvParsable; -import com.nedap.archie.rm.datavalues.quantity.DvQuantity; -import com.nedap.archie.rm.support.identification.ArchetypeID; -import com.nedap.archie.rm.support.identification.UID; -import com.nedap.archie.rm.support.identification.UIDBasedId; -import com.nedap.archie.rm.support.identification.UUID; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; +import org.openehr.rm.archetyped.FeederAudit; +import org.openehr.rm.composition.Composition; +import org.openehr.rm.composition.Observation; +import org.openehr.rm.datastructures.Cluster; +import org.openehr.rm.datastructures.Event; +import org.openehr.rm.datastructures.History; +import org.openehr.rm.datastructures.Item; +import org.openehr.rm.datavalues.DvEHRURI; +import org.openehr.rm.datavalues.DvIdentifier; +import org.openehr.rm.datavalues.DvURI; +import org.openehr.rm.datavalues.encapsulated.DvParsable; +import org.openehr.rm.datavalues.quantity.DvQuantity; +import org.openehr.rm.support.identification.ArchetypeID; +import org.openehr.rm.support.identification.UID; +import org.openehr.rm.support.identification.UIDBasedId; +import org.openehr.rm.support.identification.UUID; import org.junit.Test; import java.lang.reflect.Field; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/RmObjectValidatorTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/RmObjectValidatorTest.java index ff0c37481..4bbdf60a2 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/RmObjectValidatorTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/RmObjectValidatorTest.java @@ -8,17 +8,17 @@ import com.nedap.archie.flattener.Flattener; import com.nedap.archie.flattener.FlattenerConfiguration; import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; -import com.nedap.archie.rm.datastructures.Cluster; -import com.nedap.archie.rm.datastructures.Element; -import com.nedap.archie.rm.datastructures.Item; -import com.nedap.archie.rm.datastructures.ItemTree; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.datavalues.quantity.DvProportion; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import org.openehr.rm.datastructures.Cluster; +import org.openehr.rm.datastructures.Element; +import org.openehr.rm.datastructures.Item; +import org.openehr.rm.datastructures.ItemTree; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.datavalues.quantity.DvProportion; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.testutil.TestUtil; import org.junit.Before; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.io.IOException; import java.util.EnumSet; @@ -84,7 +84,7 @@ public void cardinalityMismatchValidation() throws Exception { } private OperationalTemplate createOpt(Archetype archetype) { - return (OperationalTemplate) new Flattener(emptyRepo, BuiltinReferenceModels.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()).flatten(archetype); + return (OperationalTemplate) new Flattener(emptyRepo, AllMetaModelsInitialiser.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()).flatten(archetype); } @Test diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/ValidateArchetypedTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/ValidateArchetypedTest.java index 4b0ce65a2..e981b3cbf 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/ValidateArchetypedTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/ValidateArchetypedTest.java @@ -6,19 +6,19 @@ import com.nedap.archie.flattener.Flattener; import com.nedap.archie.flattener.FlattenerConfiguration; import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.FeederAudit; -import com.nedap.archie.rm.archetyped.FeederAuditDetails; -import com.nedap.archie.rm.datastructures.Element; -import com.nedap.archie.rm.datastructures.Item; -import com.nedap.archie.rm.datastructures.ItemTree; -import com.nedap.archie.rm.datavalues.quantity.DvProportion; -import com.nedap.archie.rm.support.identification.ArchetypeID; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.FeederAudit; +import org.openehr.rm.archetyped.FeederAuditDetails; +import org.openehr.rm.datastructures.Element; +import org.openehr.rm.datastructures.Item; +import org.openehr.rm.datastructures.ItemTree; +import org.openehr.rm.datavalues.quantity.DvProportion; +import org.openehr.rm.support.identification.ArchetypeID; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.testutil.TestUtil; import org.junit.Before; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.io.IOException; import java.util.List; @@ -87,7 +87,7 @@ public void testArchetypedOtherDetails() { } private OperationalTemplate createOpt(Archetype archetype) { - return (OperationalTemplate) new Flattener(repo, BuiltinReferenceModels.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()).flatten(archetype); + return (OperationalTemplate) new Flattener(repo, AllMetaModelsInitialiser.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()).flatten(archetype); } private Archetype parse(String filename) throws IOException, ADLParseException { diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/EventContextInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/EventContextInvariantTest.java index aee5eaf23..1ec7d9b3a 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/EventContextInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/EventContextInvariantTest.java @@ -1,10 +1,8 @@ package com.nedap.archie.rmobjectvalidator.invariants; -import com.nedap.archie.rm.composition.EventContext; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import org.openehr.rm.composition.EventContext; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; import org.junit.Test; import java.time.LocalDateTime; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/FeederAuditDetailsInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/FeederAuditDetailsInvariantTest.java index 10b2f18ae..bec002170 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/FeederAuditDetailsInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/FeederAuditDetailsInvariantTest.java @@ -1,8 +1,6 @@ package com.nedap.archie.rmobjectvalidator.invariants; -import com.nedap.archie.rm.archetyped.FeederAuditDetails; -import com.nedap.archie.rminfo.Invariant; -import com.nedap.archie.rmutil.InvariantUtil; +import org.openehr.rm.archetyped.FeederAuditDetails; import org.junit.Test; public class FeederAuditDetailsInvariantTest { diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/FolderInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/FolderInvariantTest.java index d4bf9e3ca..fc61a865a 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/FolderInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/FolderInvariantTest.java @@ -1,7 +1,7 @@ package com.nedap.archie.rmobjectvalidator.invariants; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.directory.Folder; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.directory.Folder; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/InvariantTestUtil.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/InvariantTestUtil.java index da0541204..7fee6166a 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/InvariantTestUtil.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/InvariantTestUtil.java @@ -1,16 +1,16 @@ package com.nedap.archie.rmobjectvalidator.invariants; import com.nedap.archie.flattener.OperationalTemplateProvider; -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.archetyped.Locatable; -import com.nedap.archie.rm.composition.Entry; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.generic.PartySelf; -import com.nedap.archie.rm.support.identification.ArchetypeID; -import com.nedap.archie.rm.support.identification.LocatableRef; -import com.nedap.archie.rm.support.identification.ObjectVersionId; -import com.nedap.archie.rm.support.identification.TerminologyId; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.archetyped.Locatable; +import org.openehr.rm.composition.Entry; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.generic.PartySelf; +import org.openehr.rm.support.identification.ArchetypeID; +import org.openehr.rm.support.identification.LocatableRef; +import org.openehr.rm.support.identification.ObjectVersionId; +import org.openehr.rm.support.identification.TerminologyId; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rmobjectvalidator.RMObjectValidationMessage; import com.nedap.archie.rmobjectvalidator.RMObjectValidator; import com.nedap.archie.testutil.DummyOperationalTemplateProvider; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ParticipationInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ParticipationInvariantTest.java index 297bc0007..0208397f1 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ParticipationInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ParticipationInvariantTest.java @@ -1,9 +1,9 @@ package com.nedap.archie.rmobjectvalidator.invariants; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.generic.Participation; -import com.nedap.archie.rm.generic.PartySelf; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.generic.Participation; +import org.openehr.rm.generic.PartySelf; import org.junit.Test; public class ParticipationInvariantTest { diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/PartyRelatedInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/PartyRelatedInvariantTest.java index 1a5438f2b..cf712c04a 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/PartyRelatedInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/PartyRelatedInvariantTest.java @@ -1,8 +1,7 @@ package com.nedap.archie.rmobjectvalidator.invariants; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.generic.PartyRelated; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.generic.PartyRelated; import org.junit.Test; public class PartyRelatedInvariantTest { diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/TermMappingInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/TermMappingInvariantTest.java index b7c0adc39..5fa346cd6 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/TermMappingInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/TermMappingInvariantTest.java @@ -1,8 +1,8 @@ package com.nedap.archie.rmobjectvalidator.invariants; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.TermMapping; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.TermMapping; import org.junit.Test; public class TermMappingInvariantTest { diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/PartyRefInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/PartyRefInvariantTest.java index 05a5a4e2c..b4fab4068 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/PartyRefInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/PartyRefInvariantTest.java @@ -1,13 +1,10 @@ package com.nedap.archie.rmobjectvalidator.invariants.base; -import com.nedap.archie.rm.support.identification.HierObjectId; -import com.nedap.archie.rm.support.identification.PartyRef; -import com.nedap.archie.rm.support.identification.UIDBasedId; +import org.openehr.rm.support.identification.HierObjectId; +import org.openehr.rm.support.identification.PartyRef; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; -import java.util.UUID; - public class PartyRefInvariantTest { @Test diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/UIDInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/UIDInvariantTest.java index a70f545ef..21e5fcc66 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/UIDInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/UIDInvariantTest.java @@ -1,6 +1,6 @@ package com.nedap.archie.rmobjectvalidator.invariants.base; -import com.nedap.archie.rm.support.identification.UUID; +import org.openehr.rm.support.identification.UUID; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/VersionTreeIdInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/VersionTreeIdInvariantTest.java index 3eb48a973..5bdc50f0f 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/VersionTreeIdInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/VersionTreeIdInvariantTest.java @@ -1,6 +1,6 @@ package com.nedap.archie.rmobjectvalidator.invariants.base; -import com.nedap.archie.rm.support.identification.VersionTreeId; +import org.openehr.rm.support.identification.VersionTreeId; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/changecontrol/AuditDetailsInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/changecontrol/AuditDetailsInvariantTest.java index 6f68e26f8..888f0ce96 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/changecontrol/AuditDetailsInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/changecontrol/AuditDetailsInvariantTest.java @@ -1,10 +1,10 @@ package com.nedap.archie.rmobjectvalidator.invariants.changecontrol; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.generic.AuditDetails; -import com.nedap.archie.rm.generic.PartySelf; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.generic.AuditDetails; +import org.openehr.rm.generic.PartySelf; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/changecontrol/OriginalVersionInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/changecontrol/OriginalVersionInvariantTest.java index f2ef290bc..a04f751bf 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/changecontrol/OriginalVersionInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/changecontrol/OriginalVersionInvariantTest.java @@ -1,11 +1,11 @@ package com.nedap.archie.rmobjectvalidator.invariants.changecontrol; -import com.nedap.archie.rm.changecontrol.OriginalVersion; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.generic.AuditDetails; -import com.nedap.archie.rm.generic.PartySelf; -import com.nedap.archie.rm.support.identification.ObjectVersionId; +import org.openehr.rm.changecontrol.OriginalVersion; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.generic.AuditDetails; +import org.openehr.rm.generic.PartySelf; +import org.openehr.rm.support.identification.ObjectVersionId; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datastructures/ElementInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datastructures/ElementInvariantTest.java index f4e29869e..e524c8f08 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datastructures/ElementInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datastructures/ElementInvariantTest.java @@ -1,8 +1,8 @@ package com.nedap.archie.rmobjectvalidator.invariants.datastructures; -import com.nedap.archie.rm.datastructures.Element; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.DvText; +import org.openehr.rm.datastructures.Element; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.DvText; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datastructures/ItemTableInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datastructures/ItemTableInvariantTest.java index f3f9b6e5a..6dd343236 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datastructures/ItemTableInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datastructures/ItemTableInvariantTest.java @@ -1,10 +1,10 @@ package com.nedap.archie.rmobjectvalidator.invariants.datastructures; import com.google.common.collect.Lists; -import com.nedap.archie.rm.datastructures.Cluster; -import com.nedap.archie.rm.datastructures.Element; -import com.nedap.archie.rm.datastructures.ItemTable; -import com.nedap.archie.rm.datavalues.DvText; +import org.openehr.rm.datastructures.Cluster; +import org.openehr.rm.datastructures.Element; +import org.openehr.rm.datastructures.ItemTable; +import org.openehr.rm.datavalues.DvText; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/CodePhraseInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/CodePhraseInvariantTest.java index b44875506..2d46de220 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/CodePhraseInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/CodePhraseInvariantTest.java @@ -1,7 +1,7 @@ package com.nedap.archie.rmobjectvalidator.invariants.datavalues; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.support.identification.TerminologyId; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.support.identification.TerminologyId; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvDurationInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvDurationInvariantTest.java index 10fe4bfed..c934c4151 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvDurationInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvDurationInvariantTest.java @@ -1,9 +1,9 @@ package com.nedap.archie.rmobjectvalidator.invariants.datavalues; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.quantity.DvInterval; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDuration; -import com.nedap.archie.rm.support.identification.TerminologyId; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.quantity.DvInterval; +import org.openehr.rm.datavalues.quantity.datetime.DvDuration; +import org.openehr.rm.support.identification.TerminologyId; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvEhrUriInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvEhrUriInvariantTest.java index 50bbc3e33..357bc4df4 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvEhrUriInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvEhrUriInvariantTest.java @@ -1,7 +1,7 @@ package com.nedap.archie.rmobjectvalidator.invariants.datavalues; -import com.nedap.archie.rm.datavalues.DvEHRURI; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import org.openehr.rm.datavalues.DvEHRURI; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rmobjectvalidator.RMObjectValidationMessage; import com.nedap.archie.rmobjectvalidator.RMObjectValidator; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvIdentifierInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvIdentifierInvariantTest.java index 355942954..a08cb93b0 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvIdentifierInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvIdentifierInvariantTest.java @@ -1,6 +1,6 @@ package com.nedap.archie.rmobjectvalidator.invariants.datavalues; -import com.nedap.archie.rm.datavalues.DvIdentifier; +import org.openehr.rm.datavalues.DvIdentifier; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvIntervalInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvIntervalInvariantTest.java index 20c357052..d1c441cf6 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvIntervalInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvIntervalInvariantTest.java @@ -1,7 +1,7 @@ package com.nedap.archie.rmobjectvalidator.invariants.datavalues; -import com.nedap.archie.rm.datavalues.quantity.DvCount; -import com.nedap.archie.rm.datavalues.quantity.DvInterval; +import org.openehr.rm.datavalues.quantity.DvCount; +import org.openehr.rm.datavalues.quantity.DvInterval; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvMultimediaInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvMultimediaInvariantTest.java index 8c3d66634..dcdef4f3f 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvMultimediaInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvMultimediaInvariantTest.java @@ -1,8 +1,8 @@ package com.nedap.archie.rmobjectvalidator.invariants.datavalues; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.encapsulated.DvMultimedia; -import com.nedap.archie.rm.support.identification.TerminologyId; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.encapsulated.DvMultimedia; +import org.openehr.rm.support.identification.TerminologyId; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvParsableInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvParsableInvariantTest.java index bd0290c81..a32f045a4 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvParsableInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvParsableInvariantTest.java @@ -1,9 +1,9 @@ package com.nedap.archie.rmobjectvalidator.invariants.datavalues; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.encapsulated.DvParsable; -import com.nedap.archie.rm.support.identification.TerminologyId; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.encapsulated.DvParsable; +import org.openehr.rm.support.identification.TerminologyId; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rmobjectvalidator.RMObjectValidationMessage; import com.nedap.archie.rmobjectvalidator.RMObjectValidator; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvPeriodicTimeSpecificationInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvPeriodicTimeSpecificationInvariantTest.java index 483052435..b7d6a10df 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvPeriodicTimeSpecificationInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvPeriodicTimeSpecificationInvariantTest.java @@ -1,7 +1,7 @@ package com.nedap.archie.rmobjectvalidator.invariants.datavalues; -import com.nedap.archie.rm.datavalues.encapsulated.DvParsable; -import com.nedap.archie.rm.datavalues.timespecification.DvPeriodicTimeSpecification; +import org.openehr.rm.datavalues.encapsulated.DvParsable; +import org.openehr.rm.datavalues.timespecification.DvPeriodicTimeSpecification; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvProportionInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvProportionInvariantTest.java index 22c534757..a71fac854 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvProportionInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvProportionInvariantTest.java @@ -1,7 +1,7 @@ package com.nedap.archie.rmobjectvalidator.invariants.datavalues; -import com.nedap.archie.rm.datavalues.quantity.DvProportion; -import com.nedap.archie.rm.datavalues.quantity.ProportionKind; +import org.openehr.rm.datavalues.quantity.DvProportion; +import org.openehr.rm.datavalues.quantity.ProportionKind; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvQuantityInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvQuantityInvariantTest.java index 19f5fb1c0..21618b774 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvQuantityInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvQuantityInvariantTest.java @@ -1,10 +1,10 @@ package com.nedap.archie.rmobjectvalidator.invariants.datavalues; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.datavalues.quantity.DvInterval; -import com.nedap.archie.rm.datavalues.quantity.DvQuantity; -import com.nedap.archie.rm.datavalues.quantity.ReferenceRange; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.datavalues.quantity.DvInterval; +import org.openehr.rm.datavalues.quantity.DvQuantity; +import org.openehr.rm.datavalues.quantity.ReferenceRange; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvTextInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvTextInvariantTest.java index 6d544554e..3e74f125d 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvTextInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvTextInvariantTest.java @@ -1,8 +1,8 @@ package com.nedap.archie.rmobjectvalidator.invariants.datavalues; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.support.identification.TerminologyId; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.support.identification.TerminologyId; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvUriInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvUriInvariantTest.java index a2d148c85..5243226af 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvUriInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvUriInvariantTest.java @@ -1,6 +1,6 @@ package com.nedap.archie.rmobjectvalidator.invariants.datavalues; -import com.nedap.archie.rm.datavalues.DvURI; +import org.openehr.rm.datavalues.DvURI; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/ActionInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/ActionInvariantTest.java index 5c73dff68..1bed5e93e 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/ActionInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/ActionInvariantTest.java @@ -1,25 +1,17 @@ package com.nedap.archie.rmobjectvalidator.invariants.ehr; -import com.nedap.archie.rm.archetyped.Link; -import com.nedap.archie.rm.composition.Action; -import com.nedap.archie.rm.composition.InstructionDetails; -import com.nedap.archie.rm.composition.IsmTransition; -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.datastructures.ItemTree; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.generic.Participation; -import com.nedap.archie.rm.generic.PartyProxy; -import com.nedap.archie.rm.support.identification.HierObjectId; -import com.nedap.archie.rm.support.identification.LocatableRef; +import org.openehr.rm.composition.Action; +import org.openehr.rm.composition.InstructionDetails; +import org.openehr.rm.composition.IsmTransition; +import org.openehr.rm.datastructures.ItemTree; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.support.identification.HierObjectId; +import org.openehr.rm.support.identification.LocatableRef; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; -import javax.annotation.Nullable; import java.time.LocalDateTime; -import java.util.UUID; public class ActionInvariantTest { diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/CompositionInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/CompositionInvariantTest.java index af404ed5a..1c1e8788d 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/CompositionInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/CompositionInvariantTest.java @@ -1,13 +1,13 @@ package com.nedap.archie.rmobjectvalidator.invariants.ehr; -import com.nedap.archie.rm.composition.Composition; -import com.nedap.archie.rm.composition.Observation; -import com.nedap.archie.rm.datastructures.History; -import com.nedap.archie.rm.datastructures.ItemTree; -import com.nedap.archie.rm.datastructures.PointEvent; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.generic.PartySelf; +import org.openehr.rm.composition.Composition; +import org.openehr.rm.composition.Observation; +import org.openehr.rm.datastructures.History; +import org.openehr.rm.datastructures.ItemTree; +import org.openehr.rm.datastructures.PointEvent; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.generic.PartySelf; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/EhrInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/EhrInvariantTest.java index 8c635db85..37d46f7a7 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/EhrInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/EhrInvariantTest.java @@ -1,9 +1,9 @@ package com.nedap.archie.rmobjectvalidator.invariants.ehr; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.ehr.Ehr; -import com.nedap.archie.rm.support.identification.HierObjectId; -import com.nedap.archie.rm.support.identification.ObjectRef; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.ehr.Ehr; +import org.openehr.rm.support.identification.HierObjectId; +import org.openehr.rm.support.identification.ObjectRef; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/InstructionInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/InstructionInvariantTest.java index b7fcb9b04..ba6622eb6 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/InstructionInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/InstructionInvariantTest.java @@ -1,7 +1,7 @@ package com.nedap.archie.rmobjectvalidator.invariants.ehr; -import com.nedap.archie.rm.composition.Instruction; -import com.nedap.archie.rm.datavalues.DvText; +import org.openehr.rm.composition.Instruction; +import org.openehr.rm.datavalues.DvText; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/IsmTransitionInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/IsmTransitionInvariantTest.java index e56a33f7b..9805c29d3 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/IsmTransitionInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/IsmTransitionInvariantTest.java @@ -1,7 +1,7 @@ package com.nedap.archie.rmobjectvalidator.invariants.ehr; -import com.nedap.archie.rm.composition.IsmTransition; -import com.nedap.archie.rm.datavalues.DvCodedText; +import org.openehr.rm.composition.IsmTransition; +import org.openehr.rm.datavalues.DvCodedText; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/ObservationInvariantTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/ObservationInvariantTest.java index 4638d1df7..d7559bec6 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/ObservationInvariantTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/ObservationInvariantTest.java @@ -1,11 +1,11 @@ package com.nedap.archie.rmobjectvalidator.invariants.ehr; -import com.nedap.archie.rm.composition.Observation; -import com.nedap.archie.rm.datastructures.History; -import com.nedap.archie.rm.datastructures.ItemStructure; -import com.nedap.archie.rm.datastructures.ItemTree; -import com.nedap.archie.rm.datastructures.PointEvent; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.composition.Observation; +import org.openehr.rm.datastructures.History; +import org.openehr.rm.datastructures.ItemStructure; +import org.openehr.rm.datastructures.ItemTree; +import org.openehr.rm.datastructures.PointEvent; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; import com.nedap.archie.rmobjectvalidator.invariants.InvariantTestUtil; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/ArchetypeSlotValidationTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/ArchetypeSlotValidationTest.java index 8d08a04f7..997ffc010 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/ArchetypeSlotValidationTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/ArchetypeSlotValidationTest.java @@ -7,21 +7,21 @@ import com.nedap.archie.flattener.Flattener; import com.nedap.archie.flattener.FlattenerConfiguration; import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; -import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; -import com.nedap.archie.rm.archetyped.Archetyped; -import com.nedap.archie.rm.composition.Observation; -import com.nedap.archie.rm.composition.Section; -import com.nedap.archie.rm.datastructures.Element; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.support.identification.ArchetypeID; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.openehr.serialisation.json.OpenEhrRmJacksonUtil; +import org.openehr.rm.archetyped.Archetyped; +import org.openehr.rm.composition.Observation; +import org.openehr.rm.composition.Section; +import org.openehr.rm.datastructures.Element; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.support.identification.ArchetypeID; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rmobjectvalidator.RMObjectValidationMessage; import com.nedap.archie.rmobjectvalidator.RMObjectValidationMessageType; import com.nedap.archie.rmobjectvalidator.RMObjectValidator; import com.nedap.archie.testutil.TestUtil; import org.junit.Before; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.io.IOException; import java.util.List; @@ -61,14 +61,14 @@ public void setup() throws IOException, ADLParseException { repository.setOperationalTemplate(includedOpt); repository.setOperationalTemplate(parentOfIncludedOpt); - generator = new ExampleJsonInstanceGenerator(BuiltinReferenceModels.getMetaModels(), "en"); + generator = new ExampleJsonInstanceGenerator(AllMetaModelsInitialiser.getMetaModels(), "en"); Map generated = generator.generate(parentOpt); example = OpenEhrRmJacksonUtil.getObjectMapper().readValue(OpenEhrRmJacksonUtil.getObjectMapper().writeValueAsString(generated), Section.class); rmObjectValidator = new RMObjectValidator(OpenEhrRmInfoLookup.getInstance(), repository); } private Flattener createFlattener() { - return new Flattener(repository, BuiltinReferenceModels.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); + return new Flattener(repository, AllMetaModelsInitialiser.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); } @Test diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMPrimitiveObjectValidationTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMPrimitiveObjectValidationTest.java index 76471b719..f04552ad2 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMPrimitiveObjectValidationTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMPrimitiveObjectValidationTest.java @@ -4,7 +4,7 @@ import com.nedap.archie.aom.primitives.CInteger; import com.nedap.archie.base.Interval; import com.nedap.archie.query.RMObjectWithPath; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ModelInfoLookup; import com.nedap.archie.rmobjectvalidator.RMObjectValidationMessage; import org.junit.BeforeClass; diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMTupleValidationTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMTupleValidationTest.java index 42463713f..aea11e2da 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMTupleValidationTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMTupleValidationTest.java @@ -5,8 +5,8 @@ import com.nedap.archie.aom.primitives.CString; import com.nedap.archie.base.Interval; import com.nedap.archie.query.RMObjectWithPath; -import com.nedap.archie.rm.datavalues.quantity.DvQuantity; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import org.openehr.rm.datavalues.quantity.DvQuantity; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rmobjectvalidator.RMObjectValidationMessage; import org.junit.BeforeClass; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rmutil/PathableUtilTest.java b/tools/src/test/java/com/nedap/archie/rmutil/PathableUtilTest.java index 8a86dfbc7..4d4e8ce04 100644 --- a/tools/src/test/java/com/nedap/archie/rmutil/PathableUtilTest.java +++ b/tools/src/test/java/com/nedap/archie/rmutil/PathableUtilTest.java @@ -4,17 +4,18 @@ import com.nedap.archie.adlparser.ADLParser; import com.nedap.archie.adlparser.modelconstraints.RMConstraintImposer; import com.nedap.archie.aom.Archetype; +import com.nedap.archie.openehr.rmutil.PathableUtil; import com.nedap.archie.query.RMObjectWithPath; import com.nedap.archie.query.RMPathQuery; import com.nedap.archie.query.RMQueryContext; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.composition.Composition; -import com.nedap.archie.rm.datastructures.Cluster; -import com.nedap.archie.rm.datastructures.ItemTree; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.composition.Composition; +import org.openehr.rm.datastructures.Cluster; +import org.openehr.rm.datastructures.ItemTree; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ModelInfoLookup; import com.nedap.archie.testutil.TestUtil; -import com.nedap.archie.serialisation.xml.OpenEhrRmJAXBUtil; +import com.nedap.archie.openehr.serialisation.xml.OpenEhrRmJAXBUtil; import org.junit.Before; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/rules/evaluation/BinaryOperatorTest.java b/tools/src/test/java/com/nedap/archie/rules/evaluation/BinaryOperatorTest.java index 4a1585ee2..f2d063a72 100644 --- a/tools/src/test/java/com/nedap/archie/rules/evaluation/BinaryOperatorTest.java +++ b/tools/src/test/java/com/nedap/archie/rules/evaluation/BinaryOperatorTest.java @@ -1,6 +1,6 @@ package com.nedap.archie.rules.evaluation; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rules.BinaryOperator; import com.nedap.archie.rules.Constant; import com.nedap.archie.rules.ExpressionType; diff --git a/tools/src/test/java/com/nedap/archie/rules/evaluation/FixableAssertionsCheckerTest.java b/tools/src/test/java/com/nedap/archie/rules/evaluation/FixableAssertionsCheckerTest.java index 3d3b1f622..ec96f627e 100644 --- a/tools/src/test/java/com/nedap/archie/rules/evaluation/FixableAssertionsCheckerTest.java +++ b/tools/src/test/java/com/nedap/archie/rules/evaluation/FixableAssertionsCheckerTest.java @@ -4,18 +4,18 @@ import com.nedap.archie.adlparser.ADLParser; import com.nedap.archie.aom.Archetype; import com.nedap.archie.creation.RMObjectCreator; -import com.nedap.archie.rm.archetyped.Locatable; -import com.nedap.archie.rm.datastructures.Cluster; -import com.nedap.archie.rm.datastructures.Element; -import com.nedap.archie.rm.datastructures.ItemTree; -import com.nedap.archie.rm.datavalues.DvBoolean; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import org.openehr.rm.archetyped.Locatable; +import org.openehr.rm.datastructures.Cluster; +import org.openehr.rm.datastructures.Element; +import org.openehr.rm.datastructures.ItemTree; +import org.openehr.rm.datavalues.DvBoolean; +import org.openehr.rm.datavalues.DvText; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.testutil.TestUtil; import org.junit.After; import org.junit.Before; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.util.ArrayList; @@ -37,7 +37,7 @@ public class FixableAssertionsCheckerTest { public void setup() { testUtil = new TestUtil(); rmObjectCreator = new RMObjectCreator(OpenEhrRmInfoLookup.getInstance()); - parser = new ADLParser(BuiltinReferenceModels.getMetaModels()); + parser = new ADLParser(AllMetaModelsInitialiser.getMetaModels()); ArchieLanguageConfiguration.setThreadLocalLogicalPathLanguage("en"); ArchieLanguageConfiguration.setThreadLocalDescriptiongAndMeaningLanguage("en"); } diff --git a/tools/src/test/java/com/nedap/archie/rules/evaluation/FunctionsTest.java b/tools/src/test/java/com/nedap/archie/rules/evaluation/FunctionsTest.java index fced73438..56d710b8a 100644 --- a/tools/src/test/java/com/nedap/archie/rules/evaluation/FunctionsTest.java +++ b/tools/src/test/java/com/nedap/archie/rules/evaluation/FunctionsTest.java @@ -3,13 +3,13 @@ import com.nedap.archie.adlparser.ADLParser; import com.nedap.archie.adlparser.modelconstraints.RMConstraintImposer; import com.nedap.archie.aom.Archetype; -import com.nedap.archie.rm.archetyped.Locatable; -import com.nedap.archie.rm.composition.Observation; -import com.nedap.archie.rm.datastructures.Element; -import com.nedap.archie.rm.datastructures.Item; -import com.nedap.archie.rm.datastructures.ItemTree; -import com.nedap.archie.rm.datavalues.quantity.DvQuantity; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import org.openehr.rm.archetyped.Locatable; +import org.openehr.rm.composition.Observation; +import org.openehr.rm.datastructures.Element; +import org.openehr.rm.datastructures.Item; +import org.openehr.rm.datastructures.ItemTree; +import org.openehr.rm.datavalues.quantity.DvQuantity; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rules.PrimitiveType; import com.nedap.archie.testutil.TestUtil; diff --git a/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationJaxbTest.java b/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationJaxbTest.java index e4dcb4ca6..7ff1b9650 100644 --- a/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationJaxbTest.java +++ b/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationJaxbTest.java @@ -1,9 +1,9 @@ package com.nedap.archie.rules.evaluation; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datavalues.quantity.DvQuantity; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; -import com.nedap.archie.serialisation.xml.OpenEhrRmJAXBUtil; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datavalues.quantity.DvQuantity; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.openehr.serialisation.xml.OpenEhrRmJAXBUtil; import org.junit.Test; import java.util.List; diff --git a/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationPathQueryTest.java b/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationPathQueryTest.java index d58686510..126f31464 100644 --- a/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationPathQueryTest.java +++ b/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationPathQueryTest.java @@ -1,10 +1,10 @@ package com.nedap.archie.rules.evaluation; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.datastructures.Cluster; -import com.nedap.archie.rm.datastructures.Element; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDate; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.datastructures.Cluster; +import org.openehr.rm.datastructures.Element; +import org.openehr.rm.datavalues.quantity.datetime.DvDate; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; import org.junit.Test; import java.time.LocalDate; diff --git a/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationTest.java b/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationTest.java index 17f398870..87627b3b5 100644 --- a/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationTest.java +++ b/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationTest.java @@ -8,16 +8,16 @@ import com.nedap.archie.flattener.Flattener; import com.nedap.archie.flattener.FlattenerConfiguration; import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; -import com.nedap.archie.serialisation.json.OpenEhrRmJacksonUtil; -import com.nedap.archie.rm.archetyped.Pathable; -import com.nedap.archie.rm.composition.Observation; -import com.nedap.archie.rm.datastructures.Cluster; -import com.nedap.archie.rm.datastructures.Element; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.quantity.DvQuantity; -import com.nedap.archie.rm.support.identification.TerminologyId; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.openehr.serialisation.json.OpenEhrRmJacksonUtil; +import org.openehr.rm.archetyped.Pathable; +import org.openehr.rm.composition.Observation; +import org.openehr.rm.datastructures.Cluster; +import org.openehr.rm.datastructures.Element; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.quantity.DvQuantity; +import org.openehr.rm.support.identification.TerminologyId; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rules.BinaryOperator; import com.nedap.archie.rules.ExpressionVariable; import com.nedap.archie.rules.RuleStatement; @@ -25,7 +25,7 @@ import com.nedap.archie.testutil.TestUtil; import org.junit.Before; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.io.IOException; import java.util.Iterator; @@ -48,7 +48,7 @@ public abstract class ParsedRulesEvaluationTest { @Before public void setup() { testUtil = new TestUtil(); - parser = new ADLParser(BuiltinReferenceModels.getMetaModels()); + parser = new ADLParser(AllMetaModelsInitialiser.getMetaModels()); } public Archetype getArchetype() { @@ -722,9 +722,9 @@ public void flattenedRules() throws IOException, ADLParseException { InMemoryFullArchetypeRepository repository = new InMemoryFullArchetypeRepository(); repository.addArchetype(parent); repository.addArchetype(valueSet); - Flattener flattener = new Flattener(repository, BuiltinReferenceModels.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); + Flattener flattener = new Flattener(repository, AllMetaModelsInitialiser.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); OperationalTemplate opt = (OperationalTemplate) flattener.flatten(parent); - ExampleJsonInstanceGenerator generator = new ExampleJsonInstanceGenerator(BuiltinReferenceModels.getMetaModels(), "en"); + ExampleJsonInstanceGenerator generator = new ExampleJsonInstanceGenerator(AllMetaModelsInitialiser.getMetaModels(), "en"); Map exampleInstance = generator.generate(opt); Cluster cluster = OpenEhrRmJacksonUtil.getObjectMapper().readValue(OpenEhrRmJacksonUtil.getObjectMapper().writeValueAsString(exampleInstance), Cluster.class); //correct case first diff --git a/tools/src/test/java/com/nedap/archie/serializer/adl/ADLArchetypeSerializerParserRoundtripTest.java b/tools/src/test/java/com/nedap/archie/serializer/adl/ADLArchetypeSerializerParserRoundtripTest.java index c8d25d693..64d17eeb6 100644 --- a/tools/src/test/java/com/nedap/archie/serializer/adl/ADLArchetypeSerializerParserRoundtripTest.java +++ b/tools/src/test/java/com/nedap/archie/serializer/adl/ADLArchetypeSerializerParserRoundtripTest.java @@ -12,7 +12,7 @@ import com.nedap.archie.testutil.TestUtil; import org.junit.Assert; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -140,7 +140,7 @@ public void operationalTemplate() throws Exception { repository.addArchetype(height); repository.addArchetype(heightTemplate); - Flattener flattener = new Flattener(repository, BuiltinReferenceModels.getMetaModels()).createOperationalTemplate(true); + Flattener flattener = new Flattener(repository, AllMetaModelsInitialiser.getMetaModels()).createOperationalTemplate(true); Archetype operationalTemplate = flattener.flatten(bloodPressureComposition); Archetype parsed = roundtrip(operationalTemplate); TestUtil.assertCObjectEquals(operationalTemplate.getDefinition(), parsed.getDefinition()); diff --git a/tools/src/test/java/com/nedap/archie/serializer/adl/ADLArchetypeSerializerTest.java b/tools/src/test/java/com/nedap/archie/serializer/adl/ADLArchetypeSerializerTest.java index b6ade9750..a18d36ab6 100644 --- a/tools/src/test/java/com/nedap/archie/serializer/adl/ADLArchetypeSerializerTest.java +++ b/tools/src/test/java/com/nedap/archie/serializer/adl/ADLArchetypeSerializerTest.java @@ -6,7 +6,7 @@ import com.nedap.archie.aom.rmoverlay.VisibilityType; import com.nedap.archie.testutil.TestUtil; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.io.IOException; @@ -119,7 +119,7 @@ public void rmOverlay() throws Exception { " >\n" + " >")); - Archetype parsed = new ADLParser(BuiltinReferenceModels.getMetaModels()).parse(serialized); + Archetype parsed = new ADLParser(AllMetaModelsInitialiser.getMetaModels()).parse(serialized); assertEquals(VisibilityType.HIDE, parsed.getRmOverlay().getRmVisibility().get("/subject").getVisibility()); assertEquals("at12", parsed.getRmOverlay().getRmVisibility().get("/subject").getAlias().getCodeString()); } diff --git a/tools/src/test/java/com/nedap/archie/serializer/adl/DefaultValueSerializerTest.java b/tools/src/test/java/com/nedap/archie/serializer/adl/DefaultValueSerializerTest.java index c9c8ef44b..1c711a435 100644 --- a/tools/src/test/java/com/nedap/archie/serializer/adl/DefaultValueSerializerTest.java +++ b/tools/src/test/java/com/nedap/archie/serializer/adl/DefaultValueSerializerTest.java @@ -4,15 +4,15 @@ import com.nedap.archie.adlparser.ADLParser; import com.nedap.archie.aom.Archetype; import com.nedap.archie.aom.CComplexObject; -import com.nedap.archie.serialisation.json.OpenEhrRmObjectMapperProvider; -import com.nedap.archie.rm.datastructures.Cluster; -import com.nedap.archie.rm.datastructures.Element; -import com.nedap.archie.rm.datatypes.CodePhrase; -import com.nedap.archie.rm.datavalues.DvCodedText; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.support.identification.TerminologyId; +import com.nedap.archie.openehr.serialisation.json.OpenEhrRmObjectMapperProvider; +import org.openehr.rm.datastructures.Cluster; +import org.openehr.rm.datastructures.Element; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DvCodedText; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.support.identification.TerminologyId; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import java.io.InputStream; @@ -24,7 +24,7 @@ public class DefaultValueSerializerTest { @Test public void serializeDvTextOdin() throws Exception { - ADLParser adlParser = new ADLParser(BuiltinReferenceModels.getMetaModels()); + ADLParser adlParser = new ADLParser(AllMetaModelsInitialiser.getMetaModels()); try(InputStream stream = getClass().getResourceAsStream("openEHR-EHR-CLUSTER.simple.v1.adls")) { Archetype archetype = adlParser.parse(stream); CComplexObject cComplexObject = archetype.itemAtPath("/items[id2]/value[id21]"); @@ -48,7 +48,7 @@ public void serializeDvTextOdin() throws Exception { @Test public void serializeDvTextJson() throws Exception { - ADLParser adlParser = new ADLParser(BuiltinReferenceModels.getMetaModels()); + ADLParser adlParser = new ADLParser(AllMetaModelsInitialiser.getMetaModels()); try(InputStream stream = getClass().getResourceAsStream("openEHR-EHR-CLUSTER.simple.v1.adls")) { Archetype archetype = adlParser.parse(stream); CComplexObject cComplexObject = archetype.itemAtPath("/items[id2]/value[id21]"); @@ -74,7 +74,7 @@ public void serializeDvTextJson() throws Exception { @Test public void serializeDvCodedTextJson() throws Exception { - ADLParser adlParser = new ADLParser(BuiltinReferenceModels.getMetaModels()); + ADLParser adlParser = new ADLParser(AllMetaModelsInitialiser.getMetaModels()); try(InputStream stream = getClass().getResourceAsStream("openEHR-EHR-CLUSTER.simple.v1.adls")) { Archetype archetype = adlParser.parse(stream); CComplexObject cComplexObject = archetype.itemAtPath("/items[id2]/value[id21]"); @@ -101,7 +101,7 @@ public void serializeDvCodedTextJson() throws Exception { @Test public void serializeDvCodedTextOdin() throws Exception { - ADLParser adlParser = new ADLParser(BuiltinReferenceModels.getMetaModels()); + ADLParser adlParser = new ADLParser(AllMetaModelsInitialiser.getMetaModels()); try(InputStream stream = getClass().getResourceAsStream("openEHR-EHR-CLUSTER.simple.v1.adls")) { Archetype archetype = adlParser.parse(stream); CComplexObject cComplexObject = archetype.itemAtPath("/items[id2]/value[id21]"); @@ -128,7 +128,7 @@ public void serializeDvCodedTextOdin() throws Exception { @Test public void serializeClusterJson() throws Exception { - ADLParser adlParser = new ADLParser(BuiltinReferenceModels.getMetaModels()); + ADLParser adlParser = new ADLParser(AllMetaModelsInitialiser.getMetaModels()); try(InputStream stream = getClass().getResourceAsStream("openEHR-EHR-CLUSTER.simple.v1.adls")) { Archetype archetype = adlParser.parse(stream); CComplexObject cComplexObject = archetype.getDefinition(); @@ -157,7 +157,7 @@ public void serializeClusterJson() throws Exception { @Test public void serializeClusterOdin() throws Exception { - ADLParser adlParser = new ADLParser(BuiltinReferenceModels.getMetaModels()); + ADLParser adlParser = new ADLParser(AllMetaModelsInitialiser.getMetaModels()); try(InputStream stream = getClass().getResourceAsStream("openEHR-EHR-CLUSTER.simple.v1.adls")) { Archetype archetype = adlParser.parse(stream); CComplexObject cComplexObject = archetype.getDefinition(); diff --git a/tools/src/test/java/com/nedap/archie/testutil/TestUtil.java b/tools/src/test/java/com/nedap/archie/testutil/TestUtil.java index 524d37003..3b1a44ceb 100644 --- a/tools/src/test/java/com/nedap/archie/testutil/TestUtil.java +++ b/tools/src/test/java/com/nedap/archie/testutil/TestUtil.java @@ -13,7 +13,7 @@ import com.nedap.archie.flattener.FullArchetypeRepository; import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; import com.nedap.archie.base.RMObject; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import org.reflections.Reflections; import org.reflections.scanners.Scanners; import org.slf4j.Logger; diff --git a/tools/src/test/java/com/nedap/archie/xml/JAXBAOMRoundTripTest.java b/tools/src/test/java/com/nedap/archie/xml/JAXBAOMRoundTripTest.java index 71dcb9d29..2f59677ce 100644 --- a/tools/src/test/java/com/nedap/archie/xml/JAXBAOMRoundTripTest.java +++ b/tools/src/test/java/com/nedap/archie/xml/JAXBAOMRoundTripTest.java @@ -5,11 +5,11 @@ import com.nedap.archie.flattener.Flattener; import com.nedap.archie.flattener.FlattenerTest; import com.nedap.archie.flattener.SimpleArchetypeRepository; -import com.nedap.archie.serialisation.xml.OpenEhrRmJAXBUtil; +import com.nedap.archie.openehr.serialisation.xml.OpenEhrRmJAXBUtil; import com.nedap.archie.testutil.TestUtil; import org.junit.Before; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import javax.xml.bind.JAXBException; import javax.xml.bind.Marshaller; @@ -94,7 +94,7 @@ public void operationalTemplate() throws Exception { repository.addArchetype(height); repository.addArchetype(heightTemplate); - Flattener flattener = new Flattener(repository, BuiltinReferenceModels.getAvailableModelInfoLookups()).createOperationalTemplate(true); + Flattener flattener = new Flattener(repository, AllMetaModelsInitialiser.getNativeRms()).createOperationalTemplate(true); Archetype operationalTemplate = flattener.flatten(bloodPressureComposition); operationalTemplate.getOtherMetaData().put("test", "something"); String xml = marshal(operationalTemplate); diff --git a/tools/src/test/java/com/nedap/archie/xml/JAXBAOMTest.java b/tools/src/test/java/com/nedap/archie/xml/JAXBAOMTest.java index 55d5be926..4186e9582 100644 --- a/tools/src/test/java/com/nedap/archie/xml/JAXBAOMTest.java +++ b/tools/src/test/java/com/nedap/archie/xml/JAXBAOMTest.java @@ -19,7 +19,7 @@ import com.nedap.archie.base.Interval; import com.nedap.archie.base.terminology.TerminologyCode; import com.nedap.archie.datetime.DateTimeParsers; -import com.nedap.archie.serialisation.xml.OpenEhrRmJAXBUtil; +import com.nedap.archie.openehr.serialisation.xml.OpenEhrRmJAXBUtil; import com.nedap.archie.testutil.TestUtil; import org.junit.Before; import org.junit.Test; diff --git a/tools/src/test/java/com/nedap/archie/xml/JAXBRMRoundTripTest.java b/tools/src/test/java/com/nedap/archie/xml/JAXBRMRoundTripTest.java index 298f287fc..1d6a42d0f 100644 --- a/tools/src/test/java/com/nedap/archie/xml/JAXBRMRoundTripTest.java +++ b/tools/src/test/java/com/nedap/archie/xml/JAXBRMRoundTripTest.java @@ -3,18 +3,18 @@ import com.nedap.archie.adlparser.ADLParser; import com.nedap.archie.aom.Archetype; import com.nedap.archie.query.RMQueryContext; -import com.nedap.archie.rm.datastructures.Cluster; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.datavalues.quantity.DvQuantity; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDate; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvTime; -import com.nedap.archie.rminfo.OpenEhrRmInfoLookup; -import com.nedap.archie.serialisation.xml.OpenEhrRmJAXBUtil; +import org.openehr.rm.datastructures.Cluster; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.datavalues.quantity.DvQuantity; +import org.openehr.rm.datavalues.quantity.datetime.DvDate; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.datavalues.quantity.datetime.DvTime; +import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.openehr.serialisation.xml.OpenEhrRmJAXBUtil; import com.nedap.archie.testutil.TestUtil; import org.junit.Before; import org.junit.Test; -import org.openehr.referencemodels.BuiltinReferenceModels; +import org.openehr.referencemodels.AllMetaModelsInitialiser; import javax.xml.bind.Marshaller; import java.io.StringReader; @@ -41,7 +41,7 @@ public class JAXBRMRoundTripTest { @Before public void setup() { testUtil = new TestUtil(); - parser = new ADLParser(BuiltinReferenceModels.getMetaModels()); + parser = new ADLParser(AllMetaModelsInitialiser.getMetaModels()); } @Test diff --git a/tools/src/test/java/com/nedap/archie/xml/JAXBRMTest.java b/tools/src/test/java/com/nedap/archie/xml/JAXBRMTest.java index fd79e3f68..a6db9621f 100644 --- a/tools/src/test/java/com/nedap/archie/xml/JAXBRMTest.java +++ b/tools/src/test/java/com/nedap/archie/xml/JAXBRMTest.java @@ -1,10 +1,10 @@ package com.nedap.archie.xml; -import com.nedap.archie.rm.datastructures.Element; -import com.nedap.archie.rm.datavalues.DvText; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDateTime; -import com.nedap.archie.rm.datavalues.quantity.datetime.DvDuration; -import com.nedap.archie.serialisation.xml.OpenEhrRmJAXBUtil; +import org.openehr.rm.datastructures.Element; +import org.openehr.rm.datavalues.DvText; +import org.openehr.rm.datavalues.quantity.datetime.DvDateTime; +import org.openehr.rm.datavalues.quantity.datetime.DvDuration; +import com.nedap.archie.openehr.serialisation.xml.OpenEhrRmJAXBUtil; import org.junit.Test; import org.threeten.extra.PeriodDuration; diff --git a/tools/src/test/resources/S2/json/flat/s2-EHR-Action.medication.v1.2.2.json b/tools/src/test/resources/S2/json/flat/s2-EHR-Action.medication.v1.2.2.json deleted file mode 100644 index 460f02f96..000000000 --- a/tools/src/test/resources/S2/json/flat/s2-EHR-Action.medication.v1.2.2.json +++ /dev/null @@ -1,2253 +0,0 @@ -{ - "_type": "AUTHORED_ARCHETYPE", - "uid": "0033ab5c-cde0-4402-8b64-d30c188adf79", - "original_language": { - "_type": "TERMINOLOGY_CODE", - "terminology_id": "ISO_639-1", - "code_string": "en" - }, - "description": { - "_type": "RESOURCE_DESCRIPTION", - "lifecycle_state": "unmanaged", - "original_author": { - "name": "Graphite Health", - "organisation": "Graphite Health ", - "email": "models@s2.org", - "date": "$today (date is disabled during testing)" - }, - "original_namespace": "org.openehr", - "custodian_namespace": "io.graphitehealth", - "custodian_organisation": "Graphite Health ", - "copyright": "Copyright (c) 2023 Graphite Health", - "licence": "Creative Commons CC-BY 4.0 unported ", - "ip_acknowledgements": { - "original_author": "Ian McNicoll, freshEHR Clinical Informatics UK, , 2017-05-29", - "loinc": "This content from LOINC® is copyright © 1995 Regenstrief Institute, Inc. and the LOINC Committee, and available at no cost under the license at ", - "snomedct": "Content from SNOMED CT® is copyright © 2007 IHTSDO ", - "openehr": "Converted from openEHR archetype openEHR-EHR-ACTION.medication.v1.2.2" - }, - "conversion_details": { - "source_model": "openEHR archetype openEHR-EHR-ACTION.medication.v1.2.2 from ", - "tool": "graphite_openehr_to_s2_adl", - "date": "$nowIso8601 (Iso8601 date and time is disabled during testing)" - }, - "details": { - "en": { - "_type": "RESOURCE_DESCRIPTION_ITEM", - "language": { - "_type": "TERMINOLOGY_CODE", - "terminology_id": "ISO_639-1", - "code_string": "en" - }, - "purpose": "For recording details about any activity related to the planning, scheduling, prescription management, dispensing, administration, cessation and other use of a medication, vaccine, nutritional product or other therapeutic item.", - "use": "Use to record information about the activities required to support all aspects of medication management, including the planning, scheduling, suspension, cancellation and completion of medication orders, as well as the actual administration of medication items. This is done by the recording of data against specific activities, as defined by the 'Pathway' careflow steps in this archetype.\n \n This archetype is intended to be used for any type of medication and related order, whether prescribed by a health professional or available for purchase 'over the counter'. The scope of this medication archetype also includes orders for vaccinations, parenteral fluids or other therapeutic goods, such as bandages, nutritional products or other items that are applied or administered to have a therapeutic effect and which have a common pattern for data recording. Within the context of a Medication or Vaccination List, this archetype will be used to record only what medication or vaccination has been prescribed or administered.\n \n Additional structured and detailed information about the activity can be captured using purpose-specific archetypes inserted into the 'Preparations details', 'Amount', 'Structured body site', 'Administration device' or 'Additional details' SLOTs, where required.\n \n Timings related to medication management can be managed in one of two ways:\n - Using the reference model - the time for performance of any pathway step will use the ACTION time attribute for each step.\n - Archetyped data Nodes - the 'Original scheduled date/time' data Node is intended to record the time when the medication item was intended to be administered. Note: the corresponding ACTION time attribute for the Scheduled pathway step will record the time that the clinical activity was scheduled into a system, not the intended date/time on which the activity is intended to be carried out.\n \n In practice, some medications (for example, during resuscitation in the emergency department) will be administered on the basis of a protocol or verbal order and not be ordered in advance. The details about the medication will be added against the pathway step 'Dose administered'. For an ongoing course of medication, data about the medication item will be recorded against the 'Dose administered' step at each administration, leaving the instruction in the active state. When the last occurrence is recorded the ‘Medication course completed' step is recorded showing that this order is now in the completed state.\n \n In other situations, such as secondary care, there may be a formal order for a medication item using a corresponding INSTRUCTION.medication_order archetype. This ACTION archetype can then be used to record the workflow of when and how the order has been carried out.\n \n Recording information using this ACTION archetype indicates that some sort of activity has actually occurred; this will most commonly be the administration of the medication item itself, but may be a delayed supply attempt or another activity such as suspending the medication item in preparation for a procedure. If there is a formal order for the medication item, the state of this order is represented by the Pathway step against which the data is recorded. For example, using this archetype the progressing state of a Paracetamol order may be recorded through separate entries in the EHR progress notes at each 'Pathway' step. When documenting the reason for why an activity was performed or a pathway step was chosen, for example why a dose was omitted or the medication was ceased, the Node \\\"Reason\\\" may be used. \n \n When this ACTION archetype is used with the corresponding INSTRUCTION.medication_order archetype, information which hasn't changed from the order to the management activity aren't generally repeated in the action. It's considered good practice, though not mandatory, to record the medication item in the ACTION.\n \n The pathway steps make a distinction between those which relate directly to fulfillment of the order, such as authorisation, preparation and dose administration, and those which relate to handling of the prescription such as issue, re-authorisation, dispensing. In some jurisdictions these are regarded as a single pathway, in others it may be helpful to handle order fulfillment and prescription in separate templates.\n \n The names of most of the pathway steps in this archetype start with either \\\"Medication\\\" or \\\"Prescription\\\" to make it easier to differentiate between the pathway steps that are associated with prescription handling and those that are associated with handling the medication order itself.\n \n In some jurisdictions, a prescription can be re-authorised for the purpose of continuing an ongoing medication order, while in others an entirely new prescription must be issued in these circumstances. In the latter, the pathway step 'Prescription re-authorised' is not applicable.", - "keywords": ["medication", "prescribe", "dispense", "administration", "cessation", "therapeutic good", "supply", "medicine", "drug", "preparation", "medicinal", "prescription", "vaccine", "vaccination", "dosage", "form", "route", "follow-up"], - "misuse": "Not to be used for recording a medication order or instruction. Use the INSTRUCTION.medication_order archetype for this purpose.\n \n Not to be used to record the administration or dispensing of blood products, which involves a fundamentally different clinical process and is likely to require different supporting information. Use a different appropriate ACTION archetype for this purpose.\n \n Not to be used for recording details about therapeutic adherence, secondary effects or toxicity. Use other archetypes for these purposes.\n \n Not to be used for medication reconcilliation. Use other appropriate archetypes for this purpose.\n \n Not to be used for a formal review of an entire medication list, for example by a pharmacist. Use other appropriate archetypes for this purpose." - } - }, - "other_contributors": ["Morten Aas, Oslo Universitetssykehus, Norway", "Ole Andreas Bjordal, Webmed, Norway", "Erling Are Hole, Helse Bergen, Norway", "Vebjørn Arntzen, Oslo University Hospital, Norway (openEHR Editor)", "Silje Ljosland Bakke, Helse Vest IKT AS, Norway (openEHR Editor)", "SB Bhattacharyya, Bhattacharyyas Clinical Records Research & Informatics LLP, India", "Dionizio Brentano, UFRGS - Universidade Federal do Rio Grande do Sul, Brazil", "Laila Bruun, Oslo universitetssykehus HF, Norway", "Ady Angelica Castro Acosta, CIBERES-Hospital 12 de Octubre, Spain", "Ruth Caudwell, retired, United Kingdom", "Bjørn Christensen, Helse Bergen HF, Norway", "Stephen Chu, NEHTA, Australia (Editor)", "Lisbeth Dahlhaug, Helse Midt - Norge IT, Norway", "Inderjit Daphu, Helse Bergen, Norway", "Samo Drnovšek, Marand, Slovenia (Editor)", "Robert Eager, Healthways, Australia", "Tone Engen, Norway", "Peter Fedorcsak, Oslo universitetssykehus, Norway", "Samuel Frade, Marand, Portugal", "Hildegard Franke, freshEHR Clinical Informatics Ltd., United Kingdom", "Jacquie Garton-Smith, Royal Perth Hospital and DoHWA, Australia", "Mikkel Gaup Grønmo, FSE, Helse Nord, Norway", "Heather Grain, Llewelyn Grain Informatics, Australia", "Sam Heard, Ocean Health Systems, Australia", "Geir Hoff, Sykehuset Telemark HF, Norway", "Annette Hole Sjøborg, DIPS ASA, Norway", "Hilde Hollås, DIPS AS, Norway", "Roar Holm, Helse Vest IKT A/S, Norway", "Alfred Honore, Haukeland, Norway", "Evelyn Hovenga, EJSH Consulting, Australia", "Lars Ivar Mehlum, Helse Bergen HF, Norway", "Tom Jarl Jakobsen, Helse Bergen, Norway", "Gunnar Jårvik, Nasjonal IKT HF, Norway", "Hilde Karen Ofte, Nordlandssykehuset HF, Norway", "Nils Kolstrup, Skansen Legekontor og Nasjonalt Senter for samhandling og telemedisin, Norway", "Harmony Kosola, Alberta Health Services, Canada", "Anne Kristin Strand, Sykehuspartner HF, Norway", "Robert L'egan, NEHTA, Australia", "Heather Leslie, Atomica Informatics, Australia (openEHR Editor)", "Marit Ludvigsen, St Olavs Hospital, Norway", "Colin Macfarlane, Elsevier, United Kingdom", "Siv Marie Lien, DIPS ASA, Norway", "James McClay, University of Nebraska Medical Center, United States", "Hildegard McNicoll, freshEHR Clinical Informatics Ltd., United Kingdom", "Ian McNicoll, freshEHR Clinical Informatics, United Kingdom (openEHR Editor)", "Jude Michel, Queensland Health, Australia", "Chris Mitchell, RACGP, Australia", "Lars Morgan Karlsen, DIPS ASA, Norway", "Andrej Orel, Marand d.o.o., Slovenia", "Doug Pankoski, Alberta Health Services, Canada", "Vladimir Pizzo, Clínica Parente Pizzo, Finland", "Jodie Pycroft, Adelaide Northern Division of General Practice Ltd, Australia", "Jussara Rotzsch, Hospital Alemão Oswaldo Cruz, Brazil", "Danielle Santos Alves, ARS Semantica, Brazil", "Anoop Shah, University College London, United Kingdom", "Line Silsand, Universitetssykehuset i Nord-Norge, Norway", "Sam Stokes, Citizen Scientist, United States", "Iztok Stotl, UKCLJ, Slovenia", "Norwegian Review Summary, Norwegian Public Hospitals, Norway", "Nyree Taylor, Ocean Health Systems, Australia", "Tesfay Teame, Folkehelseinstituttet, Norway", "Rowan Thomas, St. Vincent's Hospital Melbourne, Australia", "Anders Thurin, VGR, Sweden", "Gordon Tomes, Australian Institute of Health and Welfare, Australia", "Stian Torleif Varpe, Helse Bergen, Norway", "Richard Townley-O'Neill, NEHTA, Australia (Editor)", "Karl Trygve Kalleberg, Oslo Universitetssykehus, Norway", "Gro-Hilde Ulriksen, Norwegian center for ehealthresearch, Norway", "John Tore Valand, Helse Vest IKT, Norway (openEHR Editor)", "Ines Vaz, UFN, Portugal", "Kylie Young, The Royal Australian College of General Practitioners, Australia", "Iztok Štotl, UKCLJ, Slovenia"] - }, - "artefact_type": "archetype", - "archetype_id": { - "_type": "ARCHETYPE_HRID", - "physical_id": "s2-EHR-Action.medication.v1.2.2", - "rm_publisher": "s2", - "rm_package": "EHR", - "rm_class": "Action", - "concept_id": "medication", - "release_version": "1.2.2", - "version_status": "", - "build_count": "0" - }, - "definition": { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Action", - "node_id": "id1", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "state_transition", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id110", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["planned"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id159", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at110" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id146", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["planned", "active"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id161", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at146" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id14", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["postponed"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id163", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at14" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id13", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["cancelled"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id165", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at13" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id151", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["cancelled"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id167", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at151" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id17", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["scheduled"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id169", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at17" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id154", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["scheduled"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id171", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at154" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id3", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["active"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id173", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at3" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id4", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["active"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id175", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at4" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id107", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["active"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id177", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at107" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id11", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["active"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id179", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at11" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id149", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["active"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id181", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at149" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id5", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["active"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id183", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at5" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id42", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["active"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id185", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at42" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id6", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["active"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id187", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at6" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id7", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["active"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id189", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at7" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id19", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["active"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id191", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at19" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id45", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["active"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id193", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at45" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id9", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["suspended"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id195", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at9" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id10", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["suspended"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id197", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at10" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id12", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["suspended"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id199", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at12" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id16", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["aborted"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id201", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at16" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id40", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["aborted"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id203", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at40" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id152", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["aborted"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id205", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at152" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id8", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["completed"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id207", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at8" - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "State_transition", - "node_id": "id153", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "current_state", - "children": [ - { - "_type": "C_STRING", - "rm_type_name": "Order_execution_state", - "node_id": "id9999", - "constraint": ["completed"], - "is_enumerated_type_constraint": true - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "careflow_step", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id209", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "at153" - } - ] - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "description", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Node", - "node_id": "id21", - "occurrences": { - "lower": 0, - "upper": 1 - }, - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "value", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Text", - "node_id": "id210" - } - ] - } - ] - }, - { - "_type": "ARCHETYPE_SLOT", - "rm_type_name": "Node", - "node_id": "id105", - "occurrences": { - "lower": 0, - "upper": 1 - }, - "includes": [ - { - "_type": "ASSERTION", - "type": "Boolean", - "expression": { - "_type": "EXPR_BINARY_OPERATOR", - "type": "Boolean", - "operator": { - "_type": "OPERATOR_KIND", - "value": 2007 - }, - "left_operand": { - "_type": "EXPR_ARCHETYPE_REF", - "type": "String", - "path": "archetype_id/value" - }, - "right_operand": { - "_type": "EXPR_ARCHETYPE_ID_CONSTRAINT", - "type": "C_STRING", - "item": { - "_type": "C_STRING", - "rm_type_name": "STRING", - "constraint": ["/s2-EHR-Node\\.medication(-[a-zA-Z0-9_]+)*\\.v1|s2-EHR-Node\\.medication(-[a-zA-Z0-9_]+)*\\.v2/"] - } - } - } - } - ] - }, - { - "_type": "ARCHETYPE_SLOT", - "rm_type_name": "Node", - "node_id": "id132", - "occurrences": { - "lower": 0, - "upper": 1 - }, - "includes": [ - { - "_type": "ASSERTION", - "type": "Boolean", - "expression": { - "_type": "EXPR_BINARY_OPERATOR", - "type": "Boolean", - "operator": { - "_type": "OPERATOR_KIND", - "value": 2007 - }, - "left_operand": { - "_type": "EXPR_ARCHETYPE_REF", - "type": "String", - "path": "archetype_id/value" - }, - "right_operand": { - "_type": "EXPR_ARCHETYPE_ID_CONSTRAINT", - "type": "C_STRING", - "item": { - "_type": "C_STRING", - "rm_type_name": "STRING", - "constraint": ["/s2-EHR-Node\\.medication_supply_amount(-[a-zA-Z0-9_]+)*\\.v0|s2-EHR-Node\\.medication_supply_amount(-[a-zA-Z0-9_]+)*\\.v1|s2-EHR-Node\\.dosage(-[a-zA-Z0-9_]+)*\\.v1|s2-EHR-Node\\.dosage(-[a-zA-Z0-9_]+)*\\.v2/"] - } - } - } - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Node", - "node_id": "id157", - "occurrences": { - "lower": 0, - "upper": 1 - }, - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "value", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Text", - "node_id": "id211" - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Node", - "node_id": "id133", - "occurrences": { - "lower": 0, - "upper": 1 - }, - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "value", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Coded_text", - "node_id": "id212", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "term", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Terminology_term", - "node_id": "id226", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "concept", - "children": [ - { - "_type": "C_TERMINOLOGY_CODE", - "rm_type_name": "Terminology_code", - "node_id": "id9999", - "constraint": "ac2" - } - ] - } - ] - } - ] - } - ] - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Node", - "node_id": "id134", - "occurrences": { - "lower": 0, - "upper": 1 - }, - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "value", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Text", - "node_id": "id213" - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Node", - "node_id": "id44", - "occurrences": { - "lower": 0, - "upper": 1 - }, - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "value", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Date_time_value", - "node_id": "id214" - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Node", - "node_id": "id155", - "occurrences": { - "lower": 0, - "upper": 1 - }, - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "value", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Date_time_value", - "node_id": "id215" - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Node", - "node_id": "id156", - "occurrences": { - "lower": 0, - "upper": 1 - }, - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "value", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Text", - "node_id": "id216" - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Node", - "node_id": "id22", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "value", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Text", - "node_id": "id217" - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Node", - "node_id": "id141", - "occurrences": { - "lower": 0, - "upper": 1 - }, - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "items", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Node", - "node_id": "id148", - "occurrences": { - "lower": 0, - "upper": 1 - }, - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "value", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Text", - "node_id": "id218" - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Node", - "node_id": "id142", - "occurrences": { - "lower": 0, - "upper": 1 - }, - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "value", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Text", - "node_id": "id219" - } - ] - } - ] - }, - { - "_type": "ARCHETYPE_SLOT", - "rm_type_name": "Node", - "node_id": "id143", - "occurrences": { - "lower": 0, - "upper": 1 - }, - "includes": [ - { - "_type": "ASSERTION", - "type": "Boolean", - "expression": { - "_type": "EXPR_BINARY_OPERATOR", - "type": "Boolean", - "operator": { - "_type": "OPERATOR_KIND", - "value": 2007 - }, - "left_operand": { - "_type": "EXPR_ARCHETYPE_REF", - "type": "String", - "path": "archetype_id/value" - }, - "right_operand": { - "_type": "EXPR_ARCHETYPE_ID_CONSTRAINT", - "type": "C_STRING", - "item": { - "_type": "C_STRING", - "rm_type_name": "STRING", - "constraint": ["/s2-EHR-Node\\.anatomical_location(-[a-zA-Z0-9_]+)*\\.v1|s2-EHR-Node\\.anatomical_location_circle(-[a-zA-Z0-9_]+)*\\.v1|s2-EHR-Node\\.anatomical_location_relative(-[a-zA-Z0-9_]+)*\\.v2/"] - } - } - } - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Node", - "node_id": "id144", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "value", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Text", - "node_id": "id220" - } - ] - } - ] - }, - { - "_type": "C_ARCHETYPE_ROOT", - "rm_type_name": "Node", - "node_id": "id145", - "archetype_ref": "s2-EHR-Node.device.v1" - } - ], - "is_multiple": true - } - ] - }, - { - "_type": "ARCHETYPE_SLOT", - "rm_type_name": "Node", - "node_id": "id54", - "includes": [ - { - "_type": "ASSERTION", - "type": "Boolean", - "expression": { - "_type": "EXPR_BINARY_OPERATOR", - "type": "Boolean", - "operator": { - "_type": "OPERATOR_KIND", - "value": 2007 - }, - "left_operand": { - "_type": "EXPR_ARCHETYPE_REF", - "type": "String", - "path": "archetype_id/value" - }, - "right_operand": { - "_type": "EXPR_ARCHETYPE_ID_CONSTRAINT", - "type": "C_STRING", - "item": { - "_type": "C_STRING", - "rm_type_name": "STRING", - "constraint": ["/s2-EHR-Node\\.medication_authorisation(-[a-zA-Z0-9_]+)*\\.v0|s2-EHR-Node\\.medication_authorisation(-[a-zA-Z0-9_]+)*\\.v1/"] - } - } - } - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Node", - "node_id": "id34", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "value", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Text", - "node_id": "id221" - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Node", - "node_id": "id150", - "occurrences": { - "lower": 0, - "upper": 1 - }, - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "value", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Boolean_value", - "node_id": "id222" - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Node", - "node_id": "id26", - "occurrences": { - "lower": 0, - "upper": 1 - }, - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "value", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Count", - "node_id": "id223" - } - ] - } - ] - }, - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Node", - "node_id": "id25", - "occurrences": { - "lower": 0, - "upper": 1 - }, - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "value", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Text", - "node_id": "id224" - } - ] - } - ] - } - ], - "is_multiple": true - }, - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "qualifiers", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Node", - "node_id": "id104", - "attributes": [ - { - "_type": "C_ATTRIBUTE", - "rm_attribute_name": "value", - "children": [ - { - "_type": "C_COMPLEX_OBJECT", - "rm_type_name": "Rwe_id_ref", - "node_id": "id225" - } - ] - } - ] - }, - { - "_type": "ARCHETYPE_SLOT", - "rm_type_name": "Node", - "node_id": "id86", - "includes": [ - { - "_type": "ASSERTION", - "type": "Boolean", - "expression": { - "_type": "EXPR_BINARY_OPERATOR", - "type": "Boolean", - "operator": { - "_type": "OPERATOR_KIND", - "value": 2007 - }, - "left_operand": { - "_type": "EXPR_ARCHETYPE_REF", - "type": "String", - "path": "archetype_id/value" - }, - "right_operand": { - "_type": "EXPR_ARCHETYPE_ID_CONSTRAINT", - "type": "C_STRING", - "item": { - "_type": "C_STRING", - "rm_type_name": "STRING", - "constraint": ["/.*/"] - } - } - } - } - ] - } - ], - "cardinality": { - "_type": "CARDINALITY", - "interval": { - "lower": 1, - "upper_unbounded": true - } - }, - "is_multiple": true - } - ] - }, - "terminology": { - "_type": "ARCHETYPE_TERMINOLOGY", - "original_language": "[ISO_639-1::en]", - "term_definitions": { - "en": { - "ac2": { - "_type": "ARCHETYPE_TERM", - "text": "Substitution (synthesised)", - "description": "Subsitution action taken by the person administering or dispensing the drug. (synthesised)" - }, - "at10": { - "_type": "ARCHETYPE_TERM", - "text": "Administrations suspended", - "description": "The administration of the medication has been suspended until further notice. No further doses should be given until the restart date or conditions have been met. When setting the date/conditions for restart after suspending, a step from ‘Administrations suspended’ and back to 'Medication start date/condition set' should be performed." - }, - "at107": { - "_type": "ARCHETYPE_TERM", - "text": "Prescription re-authorised", - "description": "The original medication order has been re-authorised to allow repeat prescription or dispensing. In some jurisdictions an entirely new order must be issued in these circumstances." - }, - "at11": { - "_type": "ARCHETYPE_TERM", - "text": "Prescription re-issued", - "description": "A prescription has been re-issued for an existing medication order." - }, - "at110": { - "_type": "ARCHETYPE_TERM", - "text": "Medication recommended", - "description": "The medication has been recommended but no steps have been taken to initiate prescribing." - }, - "at12": { - "_type": "ARCHETYPE_TERM", - "text": "Prescription re-authorisation pending", - "description": "Issue of the prescription is awaiting re-authorisation by a clinician." - }, - "at13": { - "_type": "ARCHETYPE_TERM", - "text": "Medication course cancelled", - "description": "The planned course of medication has been cancelled prior to any administration." - }, - "at138": { - "_type": "ARCHETYPE_TERM", - "text": "Substitution performed", - "description": "A medication was substituted which is bioequivalent to that ordered." - }, - "at139": { - "_type": "ARCHETYPE_TERM", - "text": "Substitution not performed", - "description": "Although allowed by the medication order a bioequvalent medication was not substituted." - }, - "at14": { - "_type": "ARCHETYPE_TERM", - "text": "Medication course postponed", - "description": "The scheduled medication course has been postponed prior to any administration." - }, - "at146": { - "_type": "ARCHETYPE_TERM", - "text": "Prescription awaiting authorisation", - "description": "Draft prescription has been prepared and is awaiting confirmation from an authorised clinician. May be used where reauthorisations are performed as a batch. This careflow_step may have a status of 'planned' or 'active', reflecting the need to to handle new orders as well as re-authorised orders." - }, - "at149": { - "_type": "ARCHETYPE_TERM", - "text": "Medication prepared", - "description": "The medication has been physically prepared. For example: preparation of an intravenous mixture." - }, - "at151": { - "_type": "ARCHETYPE_TERM", - "text": "Prescription cancelled", - "description": "The prescription was cancelled prior to being issued." - }, - "at152": { - "_type": "ARCHETYPE_TERM", - "text": "Prescription invalid or expired", - "description": "Prescription has been invalidated or has expired without being fulfilled." - }, - "at153": { - "_type": "ARCHETYPE_TERM", - "text": "Prescription fulfilled", - "description": "The prescription has been fulfilled successfully." - }, - "at154": { - "_type": "ARCHETYPE_TERM", - "text": "Medication authorised", - "description": "The medication has been formally authorised for use." - }, - "at16": { - "_type": "ARCHETYPE_TERM", - "text": "Medication course stopped", - "description": "Administration of the medication has been ceased during the period of the intended course." - }, - "at163": { - "_type": "ARCHETYPE_TERM", - "text": "(added by post-parse processor)", - "description": "(added by post-parse processor)" - }, - "at164": { - "_type": "ARCHETYPE_TERM", - "text": "(added by post-parse processor)", - "description": "(added by post-parse processor)" - }, - "at17": { - "_type": "ARCHETYPE_TERM", - "text": "Medication start date/condition set", - "description": "The time to start the medication, or other starting condition, has been set." - }, - "at19": { - "_type": "ARCHETYPE_TERM", - "text": "Dose administration omitted", - "description": "An administration of the medication has been withheld and not given. There is no expectation that it will be given later, though the next dose (if any) should be administered according to the original order." - }, - "at3": { - "_type": "ARCHETYPE_TERM", - "text": "Prescription issued", - "description": "A prescription has been issued for the medication." - }, - "at4": { - "_type": "ARCHETYPE_TERM", - "text": "Prescription dispensed", - "description": "The ordered medication has been dispensed, for example from a pharmacy to the patient." - }, - "at40": { - "_type": "ARCHETYPE_TERM", - "text": "Major change to order", - "description": "A major change to the order was required, resulting in this order being stopped and a replacement order being started." - }, - "at42": { - "_type": "ARCHETYPE_TERM", - "text": "Minor change to order", - "description": "The medication order has been changed in a manner which does not require a new instruction/order to be issued, according to local clinical rules." - }, - "at45": { - "_type": "ARCHETYPE_TERM", - "text": "Dose administration deferred", - "description": "An administration of a dose of the medication has been delayed but is expected to be given as soon as possible." - }, - "at5": { - "_type": "ARCHETYPE_TERM", - "text": "Medication course commenced", - "description": "The medication has been taken by, or administered to, the patient for the first time. Although in some settings this significant date may be computable as the first of several administrations, in other settings, such as primary care, specific administration dates are not readily available." - }, - "at6": { - "_type": "ARCHETYPE_TERM", - "text": "Medication reassessed", - "description": "The individual medication has been reassessed, for example whether the medication should still be taken. This is not intended to capture review of the medication list." - }, - "at7": { - "_type": "ARCHETYPE_TERM", - "text": "Dose administered", - "description": "A single administration of the medication has taken place." - }, - "at8": { - "_type": "ARCHETYPE_TERM", - "text": "Medication course completed", - "description": "The medication course has been completed as planned." - }, - "at9": { - "_type": "ARCHETYPE_TERM", - "text": "Prescription supply delayed", - "description": "The prescription has not been dispensed due to a technical or pharamaceutical supply issue." - }, - "id1": { - "_type": "ARCHETYPE_TERM", - "text": "Medication management", - "description": "Any activity related to the planning, scheduling, prescription management, dispensing, administration, cessation and other use of a medication, vaccine, nutritional product or other therapeutic item." - }, - "id10": { - "_type": "ARCHETYPE_TERM", - "text": "Administrations suspended", - "description": "The administration of the medication has been suspended until further notice. No further doses should be given until the restart date or conditions have been met. When setting the date/conditions for restart after suspending, a step from ‘Administrations suspended’ and back to 'Medication start date/condition set' should be performed." - }, - "id104": { - "_type": "ARCHETYPE_TERM", - "text": "Order ID", - "description": "Unique identifier for the medication order." - }, - "id105": { - "_type": "ARCHETYPE_TERM", - "text": "Medication details", - "description": "Structured details about the medication including strength, form and constituent substances." - }, - "id107": { - "_type": "ARCHETYPE_TERM", - "text": "Prescription re-authorised", - "description": "The original medication order has been re-authorised to allow repeat prescription or dispensing. In some jurisdictions an entirely new order must be issued in these circumstances." - }, - "id11": { - "_type": "ARCHETYPE_TERM", - "text": "Prescription re-issued", - "description": "A prescription has been re-issued for an existing medication order." - }, - "id110": { - "_type": "ARCHETYPE_TERM", - "text": "Medication recommended", - "description": "The medication has been recommended but no steps have been taken to initiate prescribing." - }, - "id12": { - "_type": "ARCHETYPE_TERM", - "text": "Prescription re-authorisation pending", - "description": "Issue of the prescription is awaiting re-authorisation by a clinician." - }, - "id13": { - "_type": "ARCHETYPE_TERM", - "text": "Medication course cancelled", - "description": "The planned course of medication has been cancelled prior to any administration." - }, - "id132": { - "_type": "ARCHETYPE_TERM", - "text": "Amount", - "description": "Specific details about the amount of the medication item." - }, - "id133": { - "_type": "ARCHETYPE_TERM", - "text": "Substitution", - "description": "Subsitution action taken by the person administering or dispensing the drug." - }, - "id134": { - "_type": "ARCHETYPE_TERM", - "text": "Substitution reason", - "description": "The reason or justification for the substitution action taken." - }, - "id14": { - "_type": "ARCHETYPE_TERM", - "text": "Medication course postponed", - "description": "The scheduled medication course has been postponed prior to any administration." - }, - "id141": { - "_type": "ARCHETYPE_TERM", - "text": "Administration details", - "description": "Details of body site and administration of the medication." - }, - "id142": { - "_type": "ARCHETYPE_TERM", - "text": "Body site", - "description": "Structured description of the site of administration of the ordered item." - }, - "id143": { - "_type": "ARCHETYPE_TERM", - "text": "Structured body site", - "description": "Structured description of the site of administration of the medication, vaccine or therapeutic good." - }, - "id144": { - "_type": "ARCHETYPE_TERM", - "text": "Administration method", - "description": "The technique or device by which the ordered item was, or is to be, administered." - }, - "id145": { - "_type": "ARCHETYPE_TERM", - "text": "Administration device", - "description": "Details of the medical device used to assist administration of the medication." - }, - "id146": { - "_type": "ARCHETYPE_TERM", - "text": "Prescription awaiting authorisation", - "description": "Draft prescription has been prepared and is awaiting confirmation from an authorised clinician. May be used where reauthorisations are performed as a batch. This careflow_step may have a status of 'planned' or 'active', reflecting the need to to handle new orders as well as re-authorised orders." - }, - "id148": { - "_type": "ARCHETYPE_TERM", - "text": "Route", - "description": "The route by which the ordered item was, or is to be, administered into the subject's body." - }, - "id149": { - "_type": "ARCHETYPE_TERM", - "text": "Medication prepared", - "description": "The medication has been physically prepared. For example: preparation of an intravenous mixture." - }, - "id150": { - "_type": "ARCHETYPE_TERM", - "text": "Double-checked?", - "description": "The pathway step has been checked by a separate individual." - }, - "id151": { - "_type": "ARCHETYPE_TERM", - "text": "Prescription cancelled", - "description": "The prescription was cancelled prior to being issued." - }, - "id152": { - "_type": "ARCHETYPE_TERM", - "text": "Prescription invalid or expired", - "description": "Prescription has been invalidated or has expired without being fulfilled." - }, - "id153": { - "_type": "ARCHETYPE_TERM", - "text": "Prescription fulfilled", - "description": "The prescription has been fulfilled successfully." - }, - "id154": { - "_type": "ARCHETYPE_TERM", - "text": "Medication authorised", - "description": "The medication has been formally authorised for use." - }, - "id155": { - "_type": "ARCHETYPE_TERM", - "text": "Restart date/time", - "description": "The date/time on which the medication course is set to restart, as per the \\\"Administrations suspended\\\" pathway step." - }, - "id156": { - "_type": "ARCHETYPE_TERM", - "text": "Restart criterion", - "description": "The criterion which triggers the medication course to restart, as per the \\\"Administrations suspended\\\" pathway step." - }, - "id157": { - "_type": "ARCHETYPE_TERM", - "text": "Clinical indication", - "description": "The clinical reason for the medication activity." - }, - "id16": { - "_type": "ARCHETYPE_TERM", - "text": "Medication course stopped", - "description": "Administration of the medication has been ceased during the period of the intended course." - }, - "id17": { - "_type": "ARCHETYPE_TERM", - "text": "Medication start date/condition set", - "description": "The time to start the medication, or other starting condition, has been set." - }, - "id19": { - "_type": "ARCHETYPE_TERM", - "text": "Dose administration omitted", - "description": "An administration of the medication has been withheld and not given. There is no expectation that it will be given later, though the next dose (if any) should be administered according to the original order." - }, - "id21": { - "_type": "ARCHETYPE_TERM", - "text": "Medication item", - "description": "Name of the medication, vaccine or other therapeutic/prescribable item which was the focus of the activity." - }, - "id22": { - "_type": "ARCHETYPE_TERM", - "text": "Reason", - "description": "Reason that the pathway step for the identified medication was carried out." - }, - "id25": { - "_type": "ARCHETYPE_TERM", - "text": "Comment", - "description": "Additional narrative about the activity or pathway step not captured in other fields, including details of any variance between the intended action and the action actually performed." - }, - "id26": { - "_type": "ARCHETYPE_TERM", - "text": "Sequence number", - "description": "The sequence number specific to the pathway step being recorded." - }, - "id3": { - "_type": "ARCHETYPE_TERM", - "text": "Prescription issued", - "description": "A prescription has been issued for the medication." - }, - "id34": { - "_type": "ARCHETYPE_TERM", - "text": "Patient guidance", - "description": "Any guidance, instructions or advice given to the subject of care or personal carer at the time of the pathway step." - }, - "id4": { - "_type": "ARCHETYPE_TERM", - "text": "Prescription dispensed", - "description": "The ordered medication has been dispensed, for example from a pharmacy to the patient." - }, - "id40": { - "_type": "ARCHETYPE_TERM", - "text": "Major change to order", - "description": "A major change to the order was required, resulting in this order being stopped and a replacement order being started." - }, - "id42": { - "_type": "ARCHETYPE_TERM", - "text": "Minor change to order", - "description": "The medication order has been changed in a manner which does not require a new instruction/order to be issued, according to local clinical rules." - }, - "id44": { - "_type": "ARCHETYPE_TERM", - "text": "Original scheduled date/time", - "description": "The datetime at which the medication action was scheduled to occur." - }, - "id45": { - "_type": "ARCHETYPE_TERM", - "text": "Dose administration deferred", - "description": "An administration of a dose of the medication has been delayed but is expected to be given as soon as possible." - }, - "id5": { - "_type": "ARCHETYPE_TERM", - "text": "Medication course commenced", - "description": "The medication has been taken by, or administered to, the patient for the first time. Although in some settings this significant date may be computable as the first of several administrations, in other settings, such as primary care, specific administration dates are not readily available." - }, - "id54": { - "_type": "ARCHETYPE_TERM", - "text": "Additional details", - "description": "Further structured details of the action, possibly specific to a pathway step." - }, - "id6": { - "_type": "ARCHETYPE_TERM", - "text": "Medication reassessed", - "description": "The individual medication has been reassessed, for example whether the medication should still be taken. This is not intended to capture review of the medication list." - }, - "id7": { - "_type": "ARCHETYPE_TERM", - "text": "Dose administered", - "description": "A single administration of the medication has taken place." - }, - "id8": { - "_type": "ARCHETYPE_TERM", - "text": "Medication course completed", - "description": "The medication course has been completed as planned." - }, - "id86": { - "_type": "ARCHETYPE_TERM", - "text": "Extension", - "description": "Additional information required to capture local content or to align with other reference models/formalisms." - }, - "id9": { - "_type": "ARCHETYPE_TERM", - "text": "Prescription supply delayed", - "description": "The prescription has not been dispensed due to a technical or pharamaceutical supply issue." - } - } - }, - "value_sets": { - "ac2": { - "_type": "VALUE_SET", - "id": "ac2", - "members": ["at138", "at139"] - } - } - }, - "adl_version": "2.0.6", - "rm_release": "0.6.5", - "is_generated": true -} \ No newline at end of file From af0187669facbd13a7fe8008364187e9609f4630 Mon Sep 17 00:00:00 2001 From: wolandscat Date: Mon, 22 Apr 2024 15:13:48 -0600 Subject: [PATCH 06/19] Reinstate accidentally deleted S2 test file. --- .../flat/s2-EHR-Action.medication.v1.2.2.json | 2253 +++++++++++++++++ 1 file changed, 2253 insertions(+) create mode 100755 tools/src/test/resources/S2/json/flat/s2-EHR-Action.medication.v1.2.2.json diff --git a/tools/src/test/resources/S2/json/flat/s2-EHR-Action.medication.v1.2.2.json b/tools/src/test/resources/S2/json/flat/s2-EHR-Action.medication.v1.2.2.json new file mode 100755 index 000000000..460f02f96 --- /dev/null +++ b/tools/src/test/resources/S2/json/flat/s2-EHR-Action.medication.v1.2.2.json @@ -0,0 +1,2253 @@ +{ + "_type": "AUTHORED_ARCHETYPE", + "uid": "0033ab5c-cde0-4402-8b64-d30c188adf79", + "original_language": { + "_type": "TERMINOLOGY_CODE", + "terminology_id": "ISO_639-1", + "code_string": "en" + }, + "description": { + "_type": "RESOURCE_DESCRIPTION", + "lifecycle_state": "unmanaged", + "original_author": { + "name": "Graphite Health", + "organisation": "Graphite Health ", + "email": "models@s2.org", + "date": "$today (date is disabled during testing)" + }, + "original_namespace": "org.openehr", + "custodian_namespace": "io.graphitehealth", + "custodian_organisation": "Graphite Health ", + "copyright": "Copyright (c) 2023 Graphite Health", + "licence": "Creative Commons CC-BY 4.0 unported ", + "ip_acknowledgements": { + "original_author": "Ian McNicoll, freshEHR Clinical Informatics UK, , 2017-05-29", + "loinc": "This content from LOINC® is copyright © 1995 Regenstrief Institute, Inc. and the LOINC Committee, and available at no cost under the license at ", + "snomedct": "Content from SNOMED CT® is copyright © 2007 IHTSDO ", + "openehr": "Converted from openEHR archetype openEHR-EHR-ACTION.medication.v1.2.2" + }, + "conversion_details": { + "source_model": "openEHR archetype openEHR-EHR-ACTION.medication.v1.2.2 from ", + "tool": "graphite_openehr_to_s2_adl", + "date": "$nowIso8601 (Iso8601 date and time is disabled during testing)" + }, + "details": { + "en": { + "_type": "RESOURCE_DESCRIPTION_ITEM", + "language": { + "_type": "TERMINOLOGY_CODE", + "terminology_id": "ISO_639-1", + "code_string": "en" + }, + "purpose": "For recording details about any activity related to the planning, scheduling, prescription management, dispensing, administration, cessation and other use of a medication, vaccine, nutritional product or other therapeutic item.", + "use": "Use to record information about the activities required to support all aspects of medication management, including the planning, scheduling, suspension, cancellation and completion of medication orders, as well as the actual administration of medication items. This is done by the recording of data against specific activities, as defined by the 'Pathway' careflow steps in this archetype.\n \n This archetype is intended to be used for any type of medication and related order, whether prescribed by a health professional or available for purchase 'over the counter'. The scope of this medication archetype also includes orders for vaccinations, parenteral fluids or other therapeutic goods, such as bandages, nutritional products or other items that are applied or administered to have a therapeutic effect and which have a common pattern for data recording. Within the context of a Medication or Vaccination List, this archetype will be used to record only what medication or vaccination has been prescribed or administered.\n \n Additional structured and detailed information about the activity can be captured using purpose-specific archetypes inserted into the 'Preparations details', 'Amount', 'Structured body site', 'Administration device' or 'Additional details' SLOTs, where required.\n \n Timings related to medication management can be managed in one of two ways:\n - Using the reference model - the time for performance of any pathway step will use the ACTION time attribute for each step.\n - Archetyped data Nodes - the 'Original scheduled date/time' data Node is intended to record the time when the medication item was intended to be administered. Note: the corresponding ACTION time attribute for the Scheduled pathway step will record the time that the clinical activity was scheduled into a system, not the intended date/time on which the activity is intended to be carried out.\n \n In practice, some medications (for example, during resuscitation in the emergency department) will be administered on the basis of a protocol or verbal order and not be ordered in advance. The details about the medication will be added against the pathway step 'Dose administered'. For an ongoing course of medication, data about the medication item will be recorded against the 'Dose administered' step at each administration, leaving the instruction in the active state. When the last occurrence is recorded the ‘Medication course completed' step is recorded showing that this order is now in the completed state.\n \n In other situations, such as secondary care, there may be a formal order for a medication item using a corresponding INSTRUCTION.medication_order archetype. This ACTION archetype can then be used to record the workflow of when and how the order has been carried out.\n \n Recording information using this ACTION archetype indicates that some sort of activity has actually occurred; this will most commonly be the administration of the medication item itself, but may be a delayed supply attempt or another activity such as suspending the medication item in preparation for a procedure. If there is a formal order for the medication item, the state of this order is represented by the Pathway step against which the data is recorded. For example, using this archetype the progressing state of a Paracetamol order may be recorded through separate entries in the EHR progress notes at each 'Pathway' step. When documenting the reason for why an activity was performed or a pathway step was chosen, for example why a dose was omitted or the medication was ceased, the Node \\\"Reason\\\" may be used. \n \n When this ACTION archetype is used with the corresponding INSTRUCTION.medication_order archetype, information which hasn't changed from the order to the management activity aren't generally repeated in the action. It's considered good practice, though not mandatory, to record the medication item in the ACTION.\n \n The pathway steps make a distinction between those which relate directly to fulfillment of the order, such as authorisation, preparation and dose administration, and those which relate to handling of the prescription such as issue, re-authorisation, dispensing. In some jurisdictions these are regarded as a single pathway, in others it may be helpful to handle order fulfillment and prescription in separate templates.\n \n The names of most of the pathway steps in this archetype start with either \\\"Medication\\\" or \\\"Prescription\\\" to make it easier to differentiate between the pathway steps that are associated with prescription handling and those that are associated with handling the medication order itself.\n \n In some jurisdictions, a prescription can be re-authorised for the purpose of continuing an ongoing medication order, while in others an entirely new prescription must be issued in these circumstances. In the latter, the pathway step 'Prescription re-authorised' is not applicable.", + "keywords": ["medication", "prescribe", "dispense", "administration", "cessation", "therapeutic good", "supply", "medicine", "drug", "preparation", "medicinal", "prescription", "vaccine", "vaccination", "dosage", "form", "route", "follow-up"], + "misuse": "Not to be used for recording a medication order or instruction. Use the INSTRUCTION.medication_order archetype for this purpose.\n \n Not to be used to record the administration or dispensing of blood products, which involves a fundamentally different clinical process and is likely to require different supporting information. Use a different appropriate ACTION archetype for this purpose.\n \n Not to be used for recording details about therapeutic adherence, secondary effects or toxicity. Use other archetypes for these purposes.\n \n Not to be used for medication reconcilliation. Use other appropriate archetypes for this purpose.\n \n Not to be used for a formal review of an entire medication list, for example by a pharmacist. Use other appropriate archetypes for this purpose." + } + }, + "other_contributors": ["Morten Aas, Oslo Universitetssykehus, Norway", "Ole Andreas Bjordal, Webmed, Norway", "Erling Are Hole, Helse Bergen, Norway", "Vebjørn Arntzen, Oslo University Hospital, Norway (openEHR Editor)", "Silje Ljosland Bakke, Helse Vest IKT AS, Norway (openEHR Editor)", "SB Bhattacharyya, Bhattacharyyas Clinical Records Research & Informatics LLP, India", "Dionizio Brentano, UFRGS - Universidade Federal do Rio Grande do Sul, Brazil", "Laila Bruun, Oslo universitetssykehus HF, Norway", "Ady Angelica Castro Acosta, CIBERES-Hospital 12 de Octubre, Spain", "Ruth Caudwell, retired, United Kingdom", "Bjørn Christensen, Helse Bergen HF, Norway", "Stephen Chu, NEHTA, Australia (Editor)", "Lisbeth Dahlhaug, Helse Midt - Norge IT, Norway", "Inderjit Daphu, Helse Bergen, Norway", "Samo Drnovšek, Marand, Slovenia (Editor)", "Robert Eager, Healthways, Australia", "Tone Engen, Norway", "Peter Fedorcsak, Oslo universitetssykehus, Norway", "Samuel Frade, Marand, Portugal", "Hildegard Franke, freshEHR Clinical Informatics Ltd., United Kingdom", "Jacquie Garton-Smith, Royal Perth Hospital and DoHWA, Australia", "Mikkel Gaup Grønmo, FSE, Helse Nord, Norway", "Heather Grain, Llewelyn Grain Informatics, Australia", "Sam Heard, Ocean Health Systems, Australia", "Geir Hoff, Sykehuset Telemark HF, Norway", "Annette Hole Sjøborg, DIPS ASA, Norway", "Hilde Hollås, DIPS AS, Norway", "Roar Holm, Helse Vest IKT A/S, Norway", "Alfred Honore, Haukeland, Norway", "Evelyn Hovenga, EJSH Consulting, Australia", "Lars Ivar Mehlum, Helse Bergen HF, Norway", "Tom Jarl Jakobsen, Helse Bergen, Norway", "Gunnar Jårvik, Nasjonal IKT HF, Norway", "Hilde Karen Ofte, Nordlandssykehuset HF, Norway", "Nils Kolstrup, Skansen Legekontor og Nasjonalt Senter for samhandling og telemedisin, Norway", "Harmony Kosola, Alberta Health Services, Canada", "Anne Kristin Strand, Sykehuspartner HF, Norway", "Robert L'egan, NEHTA, Australia", "Heather Leslie, Atomica Informatics, Australia (openEHR Editor)", "Marit Ludvigsen, St Olavs Hospital, Norway", "Colin Macfarlane, Elsevier, United Kingdom", "Siv Marie Lien, DIPS ASA, Norway", "James McClay, University of Nebraska Medical Center, United States", "Hildegard McNicoll, freshEHR Clinical Informatics Ltd., United Kingdom", "Ian McNicoll, freshEHR Clinical Informatics, United Kingdom (openEHR Editor)", "Jude Michel, Queensland Health, Australia", "Chris Mitchell, RACGP, Australia", "Lars Morgan Karlsen, DIPS ASA, Norway", "Andrej Orel, Marand d.o.o., Slovenia", "Doug Pankoski, Alberta Health Services, Canada", "Vladimir Pizzo, Clínica Parente Pizzo, Finland", "Jodie Pycroft, Adelaide Northern Division of General Practice Ltd, Australia", "Jussara Rotzsch, Hospital Alemão Oswaldo Cruz, Brazil", "Danielle Santos Alves, ARS Semantica, Brazil", "Anoop Shah, University College London, United Kingdom", "Line Silsand, Universitetssykehuset i Nord-Norge, Norway", "Sam Stokes, Citizen Scientist, United States", "Iztok Stotl, UKCLJ, Slovenia", "Norwegian Review Summary, Norwegian Public Hospitals, Norway", "Nyree Taylor, Ocean Health Systems, Australia", "Tesfay Teame, Folkehelseinstituttet, Norway", "Rowan Thomas, St. Vincent's Hospital Melbourne, Australia", "Anders Thurin, VGR, Sweden", "Gordon Tomes, Australian Institute of Health and Welfare, Australia", "Stian Torleif Varpe, Helse Bergen, Norway", "Richard Townley-O'Neill, NEHTA, Australia (Editor)", "Karl Trygve Kalleberg, Oslo Universitetssykehus, Norway", "Gro-Hilde Ulriksen, Norwegian center for ehealthresearch, Norway", "John Tore Valand, Helse Vest IKT, Norway (openEHR Editor)", "Ines Vaz, UFN, Portugal", "Kylie Young, The Royal Australian College of General Practitioners, Australia", "Iztok Štotl, UKCLJ, Slovenia"] + }, + "artefact_type": "archetype", + "archetype_id": { + "_type": "ARCHETYPE_HRID", + "physical_id": "s2-EHR-Action.medication.v1.2.2", + "rm_publisher": "s2", + "rm_package": "EHR", + "rm_class": "Action", + "concept_id": "medication", + "release_version": "1.2.2", + "version_status": "", + "build_count": "0" + }, + "definition": { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Action", + "node_id": "id1", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "state_transition", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id110", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["planned"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id159", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at110" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id146", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["planned", "active"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id161", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at146" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id14", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["postponed"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id163", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at14" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id13", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["cancelled"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id165", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at13" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id151", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["cancelled"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id167", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at151" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id17", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["scheduled"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id169", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at17" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id154", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["scheduled"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id171", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at154" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id3", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["active"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id173", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at3" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id4", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["active"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id175", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at4" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id107", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["active"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id177", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at107" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id11", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["active"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id179", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at11" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id149", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["active"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id181", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at149" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id5", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["active"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id183", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at5" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id42", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["active"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id185", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at42" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id6", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["active"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id187", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at6" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id7", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["active"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id189", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at7" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id19", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["active"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id191", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at19" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id45", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["active"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id193", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at45" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id9", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["suspended"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id195", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at9" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id10", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["suspended"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id197", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at10" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id12", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["suspended"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id199", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at12" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id16", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["aborted"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id201", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at16" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id40", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["aborted"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id203", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at40" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id152", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["aborted"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id205", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at152" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id8", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["completed"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id207", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at8" + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "State_transition", + "node_id": "id153", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "current_state", + "children": [ + { + "_type": "C_STRING", + "rm_type_name": "Order_execution_state", + "node_id": "id9999", + "constraint": ["completed"], + "is_enumerated_type_constraint": true + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "careflow_step", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id209", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "at153" + } + ] + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "description", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Node", + "node_id": "id21", + "occurrences": { + "lower": 0, + "upper": 1 + }, + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "value", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Text", + "node_id": "id210" + } + ] + } + ] + }, + { + "_type": "ARCHETYPE_SLOT", + "rm_type_name": "Node", + "node_id": "id105", + "occurrences": { + "lower": 0, + "upper": 1 + }, + "includes": [ + { + "_type": "ASSERTION", + "type": "Boolean", + "expression": { + "_type": "EXPR_BINARY_OPERATOR", + "type": "Boolean", + "operator": { + "_type": "OPERATOR_KIND", + "value": 2007 + }, + "left_operand": { + "_type": "EXPR_ARCHETYPE_REF", + "type": "String", + "path": "archetype_id/value" + }, + "right_operand": { + "_type": "EXPR_ARCHETYPE_ID_CONSTRAINT", + "type": "C_STRING", + "item": { + "_type": "C_STRING", + "rm_type_name": "STRING", + "constraint": ["/s2-EHR-Node\\.medication(-[a-zA-Z0-9_]+)*\\.v1|s2-EHR-Node\\.medication(-[a-zA-Z0-9_]+)*\\.v2/"] + } + } + } + } + ] + }, + { + "_type": "ARCHETYPE_SLOT", + "rm_type_name": "Node", + "node_id": "id132", + "occurrences": { + "lower": 0, + "upper": 1 + }, + "includes": [ + { + "_type": "ASSERTION", + "type": "Boolean", + "expression": { + "_type": "EXPR_BINARY_OPERATOR", + "type": "Boolean", + "operator": { + "_type": "OPERATOR_KIND", + "value": 2007 + }, + "left_operand": { + "_type": "EXPR_ARCHETYPE_REF", + "type": "String", + "path": "archetype_id/value" + }, + "right_operand": { + "_type": "EXPR_ARCHETYPE_ID_CONSTRAINT", + "type": "C_STRING", + "item": { + "_type": "C_STRING", + "rm_type_name": "STRING", + "constraint": ["/s2-EHR-Node\\.medication_supply_amount(-[a-zA-Z0-9_]+)*\\.v0|s2-EHR-Node\\.medication_supply_amount(-[a-zA-Z0-9_]+)*\\.v1|s2-EHR-Node\\.dosage(-[a-zA-Z0-9_]+)*\\.v1|s2-EHR-Node\\.dosage(-[a-zA-Z0-9_]+)*\\.v2/"] + } + } + } + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Node", + "node_id": "id157", + "occurrences": { + "lower": 0, + "upper": 1 + }, + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "value", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Text", + "node_id": "id211" + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Node", + "node_id": "id133", + "occurrences": { + "lower": 0, + "upper": 1 + }, + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "value", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Coded_text", + "node_id": "id212", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "term", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Terminology_term", + "node_id": "id226", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "concept", + "children": [ + { + "_type": "C_TERMINOLOGY_CODE", + "rm_type_name": "Terminology_code", + "node_id": "id9999", + "constraint": "ac2" + } + ] + } + ] + } + ] + } + ] + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Node", + "node_id": "id134", + "occurrences": { + "lower": 0, + "upper": 1 + }, + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "value", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Text", + "node_id": "id213" + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Node", + "node_id": "id44", + "occurrences": { + "lower": 0, + "upper": 1 + }, + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "value", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Date_time_value", + "node_id": "id214" + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Node", + "node_id": "id155", + "occurrences": { + "lower": 0, + "upper": 1 + }, + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "value", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Date_time_value", + "node_id": "id215" + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Node", + "node_id": "id156", + "occurrences": { + "lower": 0, + "upper": 1 + }, + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "value", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Text", + "node_id": "id216" + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Node", + "node_id": "id22", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "value", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Text", + "node_id": "id217" + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Node", + "node_id": "id141", + "occurrences": { + "lower": 0, + "upper": 1 + }, + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "items", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Node", + "node_id": "id148", + "occurrences": { + "lower": 0, + "upper": 1 + }, + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "value", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Text", + "node_id": "id218" + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Node", + "node_id": "id142", + "occurrences": { + "lower": 0, + "upper": 1 + }, + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "value", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Text", + "node_id": "id219" + } + ] + } + ] + }, + { + "_type": "ARCHETYPE_SLOT", + "rm_type_name": "Node", + "node_id": "id143", + "occurrences": { + "lower": 0, + "upper": 1 + }, + "includes": [ + { + "_type": "ASSERTION", + "type": "Boolean", + "expression": { + "_type": "EXPR_BINARY_OPERATOR", + "type": "Boolean", + "operator": { + "_type": "OPERATOR_KIND", + "value": 2007 + }, + "left_operand": { + "_type": "EXPR_ARCHETYPE_REF", + "type": "String", + "path": "archetype_id/value" + }, + "right_operand": { + "_type": "EXPR_ARCHETYPE_ID_CONSTRAINT", + "type": "C_STRING", + "item": { + "_type": "C_STRING", + "rm_type_name": "STRING", + "constraint": ["/s2-EHR-Node\\.anatomical_location(-[a-zA-Z0-9_]+)*\\.v1|s2-EHR-Node\\.anatomical_location_circle(-[a-zA-Z0-9_]+)*\\.v1|s2-EHR-Node\\.anatomical_location_relative(-[a-zA-Z0-9_]+)*\\.v2/"] + } + } + } + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Node", + "node_id": "id144", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "value", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Text", + "node_id": "id220" + } + ] + } + ] + }, + { + "_type": "C_ARCHETYPE_ROOT", + "rm_type_name": "Node", + "node_id": "id145", + "archetype_ref": "s2-EHR-Node.device.v1" + } + ], + "is_multiple": true + } + ] + }, + { + "_type": "ARCHETYPE_SLOT", + "rm_type_name": "Node", + "node_id": "id54", + "includes": [ + { + "_type": "ASSERTION", + "type": "Boolean", + "expression": { + "_type": "EXPR_BINARY_OPERATOR", + "type": "Boolean", + "operator": { + "_type": "OPERATOR_KIND", + "value": 2007 + }, + "left_operand": { + "_type": "EXPR_ARCHETYPE_REF", + "type": "String", + "path": "archetype_id/value" + }, + "right_operand": { + "_type": "EXPR_ARCHETYPE_ID_CONSTRAINT", + "type": "C_STRING", + "item": { + "_type": "C_STRING", + "rm_type_name": "STRING", + "constraint": ["/s2-EHR-Node\\.medication_authorisation(-[a-zA-Z0-9_]+)*\\.v0|s2-EHR-Node\\.medication_authorisation(-[a-zA-Z0-9_]+)*\\.v1/"] + } + } + } + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Node", + "node_id": "id34", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "value", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Text", + "node_id": "id221" + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Node", + "node_id": "id150", + "occurrences": { + "lower": 0, + "upper": 1 + }, + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "value", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Boolean_value", + "node_id": "id222" + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Node", + "node_id": "id26", + "occurrences": { + "lower": 0, + "upper": 1 + }, + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "value", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Count", + "node_id": "id223" + } + ] + } + ] + }, + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Node", + "node_id": "id25", + "occurrences": { + "lower": 0, + "upper": 1 + }, + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "value", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Text", + "node_id": "id224" + } + ] + } + ] + } + ], + "is_multiple": true + }, + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "qualifiers", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Node", + "node_id": "id104", + "attributes": [ + { + "_type": "C_ATTRIBUTE", + "rm_attribute_name": "value", + "children": [ + { + "_type": "C_COMPLEX_OBJECT", + "rm_type_name": "Rwe_id_ref", + "node_id": "id225" + } + ] + } + ] + }, + { + "_type": "ARCHETYPE_SLOT", + "rm_type_name": "Node", + "node_id": "id86", + "includes": [ + { + "_type": "ASSERTION", + "type": "Boolean", + "expression": { + "_type": "EXPR_BINARY_OPERATOR", + "type": "Boolean", + "operator": { + "_type": "OPERATOR_KIND", + "value": 2007 + }, + "left_operand": { + "_type": "EXPR_ARCHETYPE_REF", + "type": "String", + "path": "archetype_id/value" + }, + "right_operand": { + "_type": "EXPR_ARCHETYPE_ID_CONSTRAINT", + "type": "C_STRING", + "item": { + "_type": "C_STRING", + "rm_type_name": "STRING", + "constraint": ["/.*/"] + } + } + } + } + ] + } + ], + "cardinality": { + "_type": "CARDINALITY", + "interval": { + "lower": 1, + "upper_unbounded": true + } + }, + "is_multiple": true + } + ] + }, + "terminology": { + "_type": "ARCHETYPE_TERMINOLOGY", + "original_language": "[ISO_639-1::en]", + "term_definitions": { + "en": { + "ac2": { + "_type": "ARCHETYPE_TERM", + "text": "Substitution (synthesised)", + "description": "Subsitution action taken by the person administering or dispensing the drug. (synthesised)" + }, + "at10": { + "_type": "ARCHETYPE_TERM", + "text": "Administrations suspended", + "description": "The administration of the medication has been suspended until further notice. No further doses should be given until the restart date or conditions have been met. When setting the date/conditions for restart after suspending, a step from ‘Administrations suspended’ and back to 'Medication start date/condition set' should be performed." + }, + "at107": { + "_type": "ARCHETYPE_TERM", + "text": "Prescription re-authorised", + "description": "The original medication order has been re-authorised to allow repeat prescription or dispensing. In some jurisdictions an entirely new order must be issued in these circumstances." + }, + "at11": { + "_type": "ARCHETYPE_TERM", + "text": "Prescription re-issued", + "description": "A prescription has been re-issued for an existing medication order." + }, + "at110": { + "_type": "ARCHETYPE_TERM", + "text": "Medication recommended", + "description": "The medication has been recommended but no steps have been taken to initiate prescribing." + }, + "at12": { + "_type": "ARCHETYPE_TERM", + "text": "Prescription re-authorisation pending", + "description": "Issue of the prescription is awaiting re-authorisation by a clinician." + }, + "at13": { + "_type": "ARCHETYPE_TERM", + "text": "Medication course cancelled", + "description": "The planned course of medication has been cancelled prior to any administration." + }, + "at138": { + "_type": "ARCHETYPE_TERM", + "text": "Substitution performed", + "description": "A medication was substituted which is bioequivalent to that ordered." + }, + "at139": { + "_type": "ARCHETYPE_TERM", + "text": "Substitution not performed", + "description": "Although allowed by the medication order a bioequvalent medication was not substituted." + }, + "at14": { + "_type": "ARCHETYPE_TERM", + "text": "Medication course postponed", + "description": "The scheduled medication course has been postponed prior to any administration." + }, + "at146": { + "_type": "ARCHETYPE_TERM", + "text": "Prescription awaiting authorisation", + "description": "Draft prescription has been prepared and is awaiting confirmation from an authorised clinician. May be used where reauthorisations are performed as a batch. This careflow_step may have a status of 'planned' or 'active', reflecting the need to to handle new orders as well as re-authorised orders." + }, + "at149": { + "_type": "ARCHETYPE_TERM", + "text": "Medication prepared", + "description": "The medication has been physically prepared. For example: preparation of an intravenous mixture." + }, + "at151": { + "_type": "ARCHETYPE_TERM", + "text": "Prescription cancelled", + "description": "The prescription was cancelled prior to being issued." + }, + "at152": { + "_type": "ARCHETYPE_TERM", + "text": "Prescription invalid or expired", + "description": "Prescription has been invalidated or has expired without being fulfilled." + }, + "at153": { + "_type": "ARCHETYPE_TERM", + "text": "Prescription fulfilled", + "description": "The prescription has been fulfilled successfully." + }, + "at154": { + "_type": "ARCHETYPE_TERM", + "text": "Medication authorised", + "description": "The medication has been formally authorised for use." + }, + "at16": { + "_type": "ARCHETYPE_TERM", + "text": "Medication course stopped", + "description": "Administration of the medication has been ceased during the period of the intended course." + }, + "at163": { + "_type": "ARCHETYPE_TERM", + "text": "(added by post-parse processor)", + "description": "(added by post-parse processor)" + }, + "at164": { + "_type": "ARCHETYPE_TERM", + "text": "(added by post-parse processor)", + "description": "(added by post-parse processor)" + }, + "at17": { + "_type": "ARCHETYPE_TERM", + "text": "Medication start date/condition set", + "description": "The time to start the medication, or other starting condition, has been set." + }, + "at19": { + "_type": "ARCHETYPE_TERM", + "text": "Dose administration omitted", + "description": "An administration of the medication has been withheld and not given. There is no expectation that it will be given later, though the next dose (if any) should be administered according to the original order." + }, + "at3": { + "_type": "ARCHETYPE_TERM", + "text": "Prescription issued", + "description": "A prescription has been issued for the medication." + }, + "at4": { + "_type": "ARCHETYPE_TERM", + "text": "Prescription dispensed", + "description": "The ordered medication has been dispensed, for example from a pharmacy to the patient." + }, + "at40": { + "_type": "ARCHETYPE_TERM", + "text": "Major change to order", + "description": "A major change to the order was required, resulting in this order being stopped and a replacement order being started." + }, + "at42": { + "_type": "ARCHETYPE_TERM", + "text": "Minor change to order", + "description": "The medication order has been changed in a manner which does not require a new instruction/order to be issued, according to local clinical rules." + }, + "at45": { + "_type": "ARCHETYPE_TERM", + "text": "Dose administration deferred", + "description": "An administration of a dose of the medication has been delayed but is expected to be given as soon as possible." + }, + "at5": { + "_type": "ARCHETYPE_TERM", + "text": "Medication course commenced", + "description": "The medication has been taken by, or administered to, the patient for the first time. Although in some settings this significant date may be computable as the first of several administrations, in other settings, such as primary care, specific administration dates are not readily available." + }, + "at6": { + "_type": "ARCHETYPE_TERM", + "text": "Medication reassessed", + "description": "The individual medication has been reassessed, for example whether the medication should still be taken. This is not intended to capture review of the medication list." + }, + "at7": { + "_type": "ARCHETYPE_TERM", + "text": "Dose administered", + "description": "A single administration of the medication has taken place." + }, + "at8": { + "_type": "ARCHETYPE_TERM", + "text": "Medication course completed", + "description": "The medication course has been completed as planned." + }, + "at9": { + "_type": "ARCHETYPE_TERM", + "text": "Prescription supply delayed", + "description": "The prescription has not been dispensed due to a technical or pharamaceutical supply issue." + }, + "id1": { + "_type": "ARCHETYPE_TERM", + "text": "Medication management", + "description": "Any activity related to the planning, scheduling, prescription management, dispensing, administration, cessation and other use of a medication, vaccine, nutritional product or other therapeutic item." + }, + "id10": { + "_type": "ARCHETYPE_TERM", + "text": "Administrations suspended", + "description": "The administration of the medication has been suspended until further notice. No further doses should be given until the restart date or conditions have been met. When setting the date/conditions for restart after suspending, a step from ‘Administrations suspended’ and back to 'Medication start date/condition set' should be performed." + }, + "id104": { + "_type": "ARCHETYPE_TERM", + "text": "Order ID", + "description": "Unique identifier for the medication order." + }, + "id105": { + "_type": "ARCHETYPE_TERM", + "text": "Medication details", + "description": "Structured details about the medication including strength, form and constituent substances." + }, + "id107": { + "_type": "ARCHETYPE_TERM", + "text": "Prescription re-authorised", + "description": "The original medication order has been re-authorised to allow repeat prescription or dispensing. In some jurisdictions an entirely new order must be issued in these circumstances." + }, + "id11": { + "_type": "ARCHETYPE_TERM", + "text": "Prescription re-issued", + "description": "A prescription has been re-issued for an existing medication order." + }, + "id110": { + "_type": "ARCHETYPE_TERM", + "text": "Medication recommended", + "description": "The medication has been recommended but no steps have been taken to initiate prescribing." + }, + "id12": { + "_type": "ARCHETYPE_TERM", + "text": "Prescription re-authorisation pending", + "description": "Issue of the prescription is awaiting re-authorisation by a clinician." + }, + "id13": { + "_type": "ARCHETYPE_TERM", + "text": "Medication course cancelled", + "description": "The planned course of medication has been cancelled prior to any administration." + }, + "id132": { + "_type": "ARCHETYPE_TERM", + "text": "Amount", + "description": "Specific details about the amount of the medication item." + }, + "id133": { + "_type": "ARCHETYPE_TERM", + "text": "Substitution", + "description": "Subsitution action taken by the person administering or dispensing the drug." + }, + "id134": { + "_type": "ARCHETYPE_TERM", + "text": "Substitution reason", + "description": "The reason or justification for the substitution action taken." + }, + "id14": { + "_type": "ARCHETYPE_TERM", + "text": "Medication course postponed", + "description": "The scheduled medication course has been postponed prior to any administration." + }, + "id141": { + "_type": "ARCHETYPE_TERM", + "text": "Administration details", + "description": "Details of body site and administration of the medication." + }, + "id142": { + "_type": "ARCHETYPE_TERM", + "text": "Body site", + "description": "Structured description of the site of administration of the ordered item." + }, + "id143": { + "_type": "ARCHETYPE_TERM", + "text": "Structured body site", + "description": "Structured description of the site of administration of the medication, vaccine or therapeutic good." + }, + "id144": { + "_type": "ARCHETYPE_TERM", + "text": "Administration method", + "description": "The technique or device by which the ordered item was, or is to be, administered." + }, + "id145": { + "_type": "ARCHETYPE_TERM", + "text": "Administration device", + "description": "Details of the medical device used to assist administration of the medication." + }, + "id146": { + "_type": "ARCHETYPE_TERM", + "text": "Prescription awaiting authorisation", + "description": "Draft prescription has been prepared and is awaiting confirmation from an authorised clinician. May be used where reauthorisations are performed as a batch. This careflow_step may have a status of 'planned' or 'active', reflecting the need to to handle new orders as well as re-authorised orders." + }, + "id148": { + "_type": "ARCHETYPE_TERM", + "text": "Route", + "description": "The route by which the ordered item was, or is to be, administered into the subject's body." + }, + "id149": { + "_type": "ARCHETYPE_TERM", + "text": "Medication prepared", + "description": "The medication has been physically prepared. For example: preparation of an intravenous mixture." + }, + "id150": { + "_type": "ARCHETYPE_TERM", + "text": "Double-checked?", + "description": "The pathway step has been checked by a separate individual." + }, + "id151": { + "_type": "ARCHETYPE_TERM", + "text": "Prescription cancelled", + "description": "The prescription was cancelled prior to being issued." + }, + "id152": { + "_type": "ARCHETYPE_TERM", + "text": "Prescription invalid or expired", + "description": "Prescription has been invalidated or has expired without being fulfilled." + }, + "id153": { + "_type": "ARCHETYPE_TERM", + "text": "Prescription fulfilled", + "description": "The prescription has been fulfilled successfully." + }, + "id154": { + "_type": "ARCHETYPE_TERM", + "text": "Medication authorised", + "description": "The medication has been formally authorised for use." + }, + "id155": { + "_type": "ARCHETYPE_TERM", + "text": "Restart date/time", + "description": "The date/time on which the medication course is set to restart, as per the \\\"Administrations suspended\\\" pathway step." + }, + "id156": { + "_type": "ARCHETYPE_TERM", + "text": "Restart criterion", + "description": "The criterion which triggers the medication course to restart, as per the \\\"Administrations suspended\\\" pathway step." + }, + "id157": { + "_type": "ARCHETYPE_TERM", + "text": "Clinical indication", + "description": "The clinical reason for the medication activity." + }, + "id16": { + "_type": "ARCHETYPE_TERM", + "text": "Medication course stopped", + "description": "Administration of the medication has been ceased during the period of the intended course." + }, + "id17": { + "_type": "ARCHETYPE_TERM", + "text": "Medication start date/condition set", + "description": "The time to start the medication, or other starting condition, has been set." + }, + "id19": { + "_type": "ARCHETYPE_TERM", + "text": "Dose administration omitted", + "description": "An administration of the medication has been withheld and not given. There is no expectation that it will be given later, though the next dose (if any) should be administered according to the original order." + }, + "id21": { + "_type": "ARCHETYPE_TERM", + "text": "Medication item", + "description": "Name of the medication, vaccine or other therapeutic/prescribable item which was the focus of the activity." + }, + "id22": { + "_type": "ARCHETYPE_TERM", + "text": "Reason", + "description": "Reason that the pathway step for the identified medication was carried out." + }, + "id25": { + "_type": "ARCHETYPE_TERM", + "text": "Comment", + "description": "Additional narrative about the activity or pathway step not captured in other fields, including details of any variance between the intended action and the action actually performed." + }, + "id26": { + "_type": "ARCHETYPE_TERM", + "text": "Sequence number", + "description": "The sequence number specific to the pathway step being recorded." + }, + "id3": { + "_type": "ARCHETYPE_TERM", + "text": "Prescription issued", + "description": "A prescription has been issued for the medication." + }, + "id34": { + "_type": "ARCHETYPE_TERM", + "text": "Patient guidance", + "description": "Any guidance, instructions or advice given to the subject of care or personal carer at the time of the pathway step." + }, + "id4": { + "_type": "ARCHETYPE_TERM", + "text": "Prescription dispensed", + "description": "The ordered medication has been dispensed, for example from a pharmacy to the patient." + }, + "id40": { + "_type": "ARCHETYPE_TERM", + "text": "Major change to order", + "description": "A major change to the order was required, resulting in this order being stopped and a replacement order being started." + }, + "id42": { + "_type": "ARCHETYPE_TERM", + "text": "Minor change to order", + "description": "The medication order has been changed in a manner which does not require a new instruction/order to be issued, according to local clinical rules." + }, + "id44": { + "_type": "ARCHETYPE_TERM", + "text": "Original scheduled date/time", + "description": "The datetime at which the medication action was scheduled to occur." + }, + "id45": { + "_type": "ARCHETYPE_TERM", + "text": "Dose administration deferred", + "description": "An administration of a dose of the medication has been delayed but is expected to be given as soon as possible." + }, + "id5": { + "_type": "ARCHETYPE_TERM", + "text": "Medication course commenced", + "description": "The medication has been taken by, or administered to, the patient for the first time. Although in some settings this significant date may be computable as the first of several administrations, in other settings, such as primary care, specific administration dates are not readily available." + }, + "id54": { + "_type": "ARCHETYPE_TERM", + "text": "Additional details", + "description": "Further structured details of the action, possibly specific to a pathway step." + }, + "id6": { + "_type": "ARCHETYPE_TERM", + "text": "Medication reassessed", + "description": "The individual medication has been reassessed, for example whether the medication should still be taken. This is not intended to capture review of the medication list." + }, + "id7": { + "_type": "ARCHETYPE_TERM", + "text": "Dose administered", + "description": "A single administration of the medication has taken place." + }, + "id8": { + "_type": "ARCHETYPE_TERM", + "text": "Medication course completed", + "description": "The medication course has been completed as planned." + }, + "id86": { + "_type": "ARCHETYPE_TERM", + "text": "Extension", + "description": "Additional information required to capture local content or to align with other reference models/formalisms." + }, + "id9": { + "_type": "ARCHETYPE_TERM", + "text": "Prescription supply delayed", + "description": "The prescription has not been dispensed due to a technical or pharamaceutical supply issue." + } + } + }, + "value_sets": { + "ac2": { + "_type": "VALUE_SET", + "id": "ac2", + "members": ["at138", "at139"] + } + } + }, + "adl_version": "2.0.6", + "rm_release": "0.6.5", + "is_generated": true +} \ No newline at end of file From 038d746d12c56a47771d3f159d0d0e6c7d849545 Mon Sep 17 00:00:00 2001 From: wolandscat Date: Wed, 24 Apr 2024 17:12:42 -0600 Subject: [PATCH 07/19] Make MetaModels available to lower levels of ADLParser Use MetaModels during parsing of CPrimitiveObjects to get access to the correct ModelNamingStrategy. Currently conditional since ADLParser can be created with no MetaModels as well. In PrimitivesConstraintParser, if the ModelNamingStrategy object can be found, write in the correct RmTypeNames into CPrimitiveObjects (CTerminologyCode and so on). Rename ArchieModelNamingStrategy to OpenEhrModelNamingStrategy. --- .../treewalkers/CComplexObjectParser.java | 6 +- .../PrimitivesConstraintParser.java | 78 ++++++++++++------- .../adlparser/treewalkers/RulesParser.java | 8 +- .../java/com/nedap/archie/aom/CObject.java | 2 +- .../nedap/archie/aom/CPrimitiveObject.java | 24 ++++-- .../archie/rminfo/ArchieAOMInfoLookup.java | 4 +- ...y.java => OpenEhrModelNamingStrategy.java} | 26 +++++-- .../openehr/rminfo/OpenEhrRmInfoLookup.java | 4 +- .../rminfo/OpenEhrRmInfoLookupTest.java | 2 +- .../rminfo/OpenEhrTestRmInfoLookup.java | 4 +- .../archie/adlparser/CStringParserTest.java | 3 - .../archie/rminfo/ModelNamingStrategy.java | 10 ++- 12 files changed, 114 insertions(+), 57 deletions(-) rename aom/src/main/java/com/nedap/archie/rminfo/{ArchieModelNamingStrategy.java => OpenEhrModelNamingStrategy.java} (88%) diff --git a/aom/src/main/java/com/nedap/archie/adlparser/treewalkers/CComplexObjectParser.java b/aom/src/main/java/com/nedap/archie/adlparser/treewalkers/CComplexObjectParser.java index 9ec623ac1..bbe02f019 100644 --- a/aom/src/main/java/com/nedap/archie/adlparser/treewalkers/CComplexObjectParser.java +++ b/aom/src/main/java/com/nedap/archie/adlparser/treewalkers/CComplexObjectParser.java @@ -29,7 +29,7 @@ public class CComplexObjectParser extends BaseTreeWalker { public CComplexObjectParser(ANTLRParserErrors errors, MetaModels metaModels) { super(errors); - primitivesConstraintParser = new PrimitivesConstraintParser(errors); + primitivesConstraintParser = new PrimitivesConstraintParser(errors, metaModels); this.metaModels = metaModels; } @@ -37,7 +37,7 @@ public RulesSection parseRules(RulesSectionContext context) { RulesSection result = new RulesSection(); result.setContent(context.getText()); - RulesParser rulesParser = new RulesParser(getErrors()); + RulesParser rulesParser = new RulesParser(getErrors(), metaModels); for(AssertionContext assertion:context.assertion_list().assertion()) { result.addRule(rulesParser.parse(assertion)); } @@ -315,7 +315,7 @@ private ArchetypeSlot parseArchetypeSlot(Archetype_slotContext slotContext) { if (slotContext.c_occurrences() != null) { slot.setOccurrences(parseMultiplicityInterval(slotContext.c_occurrences())); } - RulesParser assertionParser = new RulesParser(getErrors()); + RulesParser assertionParser = new RulesParser(getErrors(), metaModels); if (slotContext.c_excludes() != null) { for (AssertionContext assertionContext : slotContext.c_excludes().assertion()) { slot.getExcludes().add((Assertion) assertionParser.parse(assertionContext)); diff --git a/aom/src/main/java/com/nedap/archie/adlparser/treewalkers/PrimitivesConstraintParser.java b/aom/src/main/java/com/nedap/archie/adlparser/treewalkers/PrimitivesConstraintParser.java index 911a0caa6..cfe244426 100644 --- a/aom/src/main/java/com/nedap/archie/adlparser/treewalkers/PrimitivesConstraintParser.java +++ b/aom/src/main/java/com/nedap/archie/adlparser/treewalkers/PrimitivesConstraintParser.java @@ -19,6 +19,8 @@ import com.nedap.archie.aom.primitives.CTime; import com.nedap.archie.aom.primitives.ConstraintStatus; import com.nedap.archie.base.terminology.TerminologyCode; +import com.nedap.archie.rminfo.MetaModel; +import com.nedap.archie.rminfo.MetaModels; import com.nedap.archie.serializer.odin.OdinValueParser; import org.antlr.v4.runtime.CharStreams; import org.antlr.v4.runtime.CommonTokenStream; @@ -41,11 +43,13 @@ public class PrimitivesConstraintParser extends BaseTreeWalker { private final NumberConstraintParser numberConstraintParser; private final TemporalConstraintParser temporalConstraintParser; + private MetaModels metaModels; - public PrimitivesConstraintParser(ANTLRParserErrors errors) { + public PrimitivesConstraintParser(ANTLRParserErrors errors, MetaModels metaModels) { super(errors); numberConstraintParser = new NumberConstraintParser(errors); temporalConstraintParser = new TemporalConstraintParser(errors); + this.metaModels = metaModels; } public CPrimitiveObject parsePrimitiveObject(AdlParser.C_primitive_objectContext objectContext) { @@ -58,39 +62,47 @@ public PrimitivesConstraintParser(ANTLRParserErrors errors) { | c_string | c_terminology_code | c_boolean*/ - if(objectContext.c_integer() != null) { - return numberConstraintParser.parseCInteger(objectContext.c_integer()); + CPrimitiveObject result = null; + if (objectContext.c_integer() != null) { + result = numberConstraintParser.parseCInteger(objectContext.c_integer()); } else if (objectContext.c_real() != null) { - return numberConstraintParser.parseCReal(objectContext.c_real()); + result = numberConstraintParser.parseCReal(objectContext.c_real()); } else if (objectContext.c_date() != null) { - return parseCDate(objectContext.c_date()); + result = parseCDate(objectContext.c_date()); } else if (objectContext.c_time() != null) { - return parseCTime(objectContext.c_time()); + result = parseCTime(objectContext.c_time()); } else if (objectContext.c_date_time() != null) { - return parseCDateTime(objectContext.c_date_time()); + result = parseCDateTime(objectContext.c_date_time()); } else if (objectContext.c_duration() != null) { - return parseCDuration(objectContext.c_duration()); + result = parseCDuration(objectContext.c_duration()); } else if (objectContext.c_string() != null) { - return parseCString(objectContext.c_string()); + result = parseCString(objectContext.c_string()); } else if (objectContext.c_terminology_code() != null) { - return parseCTerminologyCode(objectContext.c_terminology_code()); + result = parseCTerminologyCode(objectContext.c_terminology_code()); } else if (objectContext.c_boolean() != null) { - return parseCBoolean(objectContext.c_boolean()); + result = parseCBoolean(objectContext.c_boolean()); } - return null; + + if (result != null) { + // set the RmTypeName in the object + setCPrimitiveTypeRmTypeName(result); + } + + return result; } public CBoolean parseCBoolean(AdlParser.C_booleanContext booleanContext) { CBoolean result = new CBoolean(); - if(booleanContext.assumed_boolean_value() != null) { + + if (booleanContext.assumed_boolean_value() != null) { result.setAssumedValue(parseBoolean(booleanContext.assumed_boolean_value().boolean_value())); } Boolean_list_valueContext booleanListValue = booleanContext.boolean_list_value(); - if(booleanListValue != null) { + if (booleanListValue != null) { parseBooleanValues(result, booleanListValue.boolean_value()); } Boolean_valueContext booleanValueContext = booleanContext.boolean_value(); - if(booleanValueContext != null) { + if (booleanValueContext != null) { result.addConstraint(parseBoolean(booleanValueContext)); } return result; @@ -101,16 +113,17 @@ private boolean parseBoolean(Boolean_valueContext context) { } private void parseBooleanValues(CBoolean result, List booleanValues) { - for(Boolean_valueContext booleanValue:booleanValues) { + for (Boolean_valueContext booleanValue : booleanValues) { result.addConstraint(parseBoolean(booleanValue)); } } public CTerminologyCode parseCTerminologyCode(AdlParser.C_terminology_codeContext terminologyCodeContext) { CTerminologyCode result = new CTerminologyCode(); + boolean containsAssumedValue = !terminologyCodeContext.getTokens(AdlLexer.SYM_SEMICOLON).isEmpty(); - if(containsAssumedValue) { + if (containsAssumedValue) { String terminologyId = terminologyCodeContext.AC_CODE().getText(); TerminologyCode assumedValue = new TerminologyCode(); assumedValue.setTerminologyId(terminologyId); @@ -119,14 +132,14 @@ public CTerminologyCode parseCTerminologyCode(AdlParser.C_terminology_codeContex result.setAssumedValue(assumedValue); result.addConstraint(assumedValue.getTerminologyIdString()); } else { - if(terminologyCodeContext.AC_CODE() != null) { + if (terminologyCodeContext.AC_CODE() != null) { result.addConstraint(terminologyCodeContext.AC_CODE().getText()); } else { result.addConstraint(terminologyCodeContext.AT_CODE().getText()); } } - if(terminologyCodeContext.identifier() != null) { + if (terminologyCodeContext.identifier() != null) { String constraintStatusText = terminologyCodeContext.identifier().getText(); switch (constraintStatusText.toLowerCase()) { case "required": @@ -148,7 +161,7 @@ public CTerminologyCode parseCTerminologyCode(AdlParser.C_terminology_codeContex terminologyCodeContext.getStart().getCharPositionInLine(), constraintStatusText.length(), constraintStatusText - ); + ); } } @@ -158,19 +171,19 @@ public CTerminologyCode parseCTerminologyCode(AdlParser.C_terminology_codeContex public CString parseCString(AdlParser.C_stringContext stringContext) { CString result = new CString(); - if(stringContext.assumed_string_value() != null) { + if (stringContext.assumed_string_value() != null) { result.setAssumedValue(OdinValueParser.parseOdinStringValue(stringContext.assumed_string_value().string_value())); } String_valueContext stringValueContext = stringContext.string_value(); String_list_valueContext stringListValueContext = stringContext.string_list_value(); - if(stringListValueContext != null) { - for(String_valueContext string:stringListValueContext.string_value()) { + if (stringListValueContext != null) { + for (String_valueContext string : stringListValueContext.string_value()) { result.addConstraint(OdinValueParser.parseOdinStringValue(string)); } } - if(stringValueContext != null) { + if (stringValueContext != null) { result.addConstraint(OdinValueParser.parseOdinStringValue(stringValueContext)); } @@ -181,7 +194,7 @@ public CDuration parseCDuration(AdlParser.C_durationContext context) { return temporalConstraintParser.parseCDuration(context); } - public CDateTime parseCDateTime(AdlParser.C_date_timeContext context) { + public CDateTime parseCDateTime(AdlParser.C_date_timeContext context) { return temporalConstraintParser.parseCDateTime(context); } @@ -199,10 +212,21 @@ public CDate parseCDate(AdlParser.C_dateContext context) { ContainedRegexParser.RegexContext regex = parser.regex(); CString result = new CString(); result.addConstraint(regex.REGEX().getText()); - if(regex.STRING() != null) { + if (regex.STRING() != null) { String assumedValue = regex.STRING().getText(); - result.setAssumedValue(assumedValue.substring(1, assumedValue.length()-1)); + result.setAssumedValue(assumedValue.substring(1, assumedValue.length() - 1)); } return result; } + + // set the RmTypeName in the object, if the ModelNamingStrategy has been supplied within the MetaModel, + // if indeed that has been supplied to the AOMParser + private void setCPrimitiveTypeRmTypeName(CPrimitiveObject cPrimObj) { + if(metaModels !=null) { + MetaModel metaModel = metaModels.getSelectedModel(); + if (metaModel != null) { + cPrimObj.setRmTypeName(metaModel.getSelectedModel().getNamingStrategy().getTypeNameForCPrimitiveType(CTerminologyCode.class)); + } + } + } } diff --git a/aom/src/main/java/com/nedap/archie/adlparser/treewalkers/RulesParser.java b/aom/src/main/java/com/nedap/archie/adlparser/treewalkers/RulesParser.java index 6090bd382..cbbb7eead 100644 --- a/aom/src/main/java/com/nedap/archie/adlparser/treewalkers/RulesParser.java +++ b/aom/src/main/java/com/nedap/archie/adlparser/treewalkers/RulesParser.java @@ -3,6 +3,7 @@ import com.nedap.archie.adlparser.antlr.AdlParser.*; import com.nedap.archie.antlr.errors.ANTLRParserErrors; import com.nedap.archie.aom.CPrimitiveObject; +import com.nedap.archie.rminfo.MetaModels; import com.nedap.archie.rules.*; import com.nedap.archie.serializer.odin.OdinValueParser; @@ -20,9 +21,12 @@ public class RulesParser extends BaseTreeWalker { private PrimitivesConstraintParser primitivesConstraintParser; public static final Pattern VARIABLE_ASSIGNMENT_PATTERN = Pattern.compile("\\$(?.*)\\:(?.*)"); - public RulesParser(ANTLRParserErrors errors) { + private final MetaModels metaModels; + + public RulesParser(ANTLRParserErrors errors, MetaModels metaModels) { super(errors); - primitivesConstraintParser = new PrimitivesConstraintParser(errors); + primitivesConstraintParser = new PrimitivesConstraintParser(errors, metaModels); + this.metaModels = metaModels; } public RuleStatement parse(AssertionContext assertionContext) { diff --git a/aom/src/main/java/com/nedap/archie/aom/CObject.java b/aom/src/main/java/com/nedap/archie/aom/CObject.java index cf6015e17..a1a7309ee 100644 --- a/aom/src/main/java/com/nedap/archie/aom/CObject.java +++ b/aom/src/main/java/com/nedap/archie/aom/CObject.java @@ -36,7 +36,7 @@ public abstract class CObject extends ArchetypeConstraint { @XmlAttribute(name="rm_type_name") - private String rmTypeName; + protected String rmTypeName; @XmlElement(name="occurrences") @Nullable private MultiplicityInterval occurrences; diff --git a/aom/src/main/java/com/nedap/archie/aom/CPrimitiveObject.java b/aom/src/main/java/com/nedap/archie/aom/CPrimitiveObject.java index 3d67b6be6..244a98dc9 100644 --- a/aom/src/main/java/com/nedap/archie/aom/CPrimitiveObject.java +++ b/aom/src/main/java/com/nedap/archie/aom/CPrimitiveObject.java @@ -1,10 +1,9 @@ package com.nedap.archie.aom; import com.fasterxml.jackson.annotation.JsonAlias; -import com.fasterxml.jackson.annotation.JsonProperty; import com.nedap.archie.aom.utils.ConformanceCheckResult; import com.nedap.archie.archetypevalidator.ErrorType; -import com.nedap.archie.rminfo.ArchieModelNamingStrategy; +import com.nedap.archie.rminfo.OpenEhrModelNamingStrategy; import com.nedap.archie.rminfo.ModelInfoLookup; import com.nedap.archie.rminfo.RMProperty; import org.openehr.utils.message.I18n; @@ -138,18 +137,27 @@ public ConformanceCheckResult cConformsTo(CObject other, BiFunction clazz) { - // For some RM objects the name is an exception on the snakecase -> uppercase strategy + String name = clazz.getSimpleName(); + + // For some RM objects the name is an exception on the snakecase -> uppercase strategy switch(name) { case "DvEHRURI": return "DV_EHR_URI"; @@ -73,7 +77,6 @@ private String convertToUpperSnakeCase(Class clazz) { return result; } - @Override public List getAlternativeTypeNames(Class clazz) { @@ -123,4 +126,17 @@ public String getAttributeName(Field field, Method method) { } return method.getName(); } + + @Override + public String getTypeNameForCPrimitiveType(Class clazz) { + + // If it is a CPrimitiveObject, get rid of the leading 'C' + String result = clazz.getSimpleName(); + if (CPrimitiveObject.class.isAssignableFrom(clazz)) { + result = result.substring(1); + } + + return result; + } + } diff --git a/openehr-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrRmInfoLookup.java b/openehr-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrRmInfoLookup.java index 209b524f8..5164dc190 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrRmInfoLookup.java +++ b/openehr-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrRmInfoLookup.java @@ -5,7 +5,7 @@ import com.nedap.archie.base.Interval; import com.nedap.archie.base.terminology.TerminologyCode; import com.nedap.archie.base.RMObject; -import com.nedap.archie.rminfo.ArchieModelNamingStrategy; +import com.nedap.archie.rminfo.OpenEhrModelNamingStrategy; import com.nedap.archie.rminfo.RMAttributeInfo; import com.nedap.archie.rminfo.RMPackageId; import com.nedap.archie.rminfo.ReflectionModelInfoLookup; @@ -46,7 +46,7 @@ public class OpenEhrRmInfoLookup extends ReflectionModelInfoLookup { private static OpenEhrRmInfoLookup instance; private OpenEhrRmInfoLookup() { - super(new ArchieModelNamingStrategy(), RMObject.class); + super(new OpenEhrModelNamingStrategy(), RMObject.class); } /** diff --git a/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookupTest.java b/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookupTest.java index 38adf1981..02e50fd04 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookupTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookupTest.java @@ -30,12 +30,12 @@ public void testFindAllClassesInRm() throws IOException { } Collections.sort(classNames); + // generate source code StringBuilder sb = new StringBuilder(); sb.append ("// \n"); sb.append ("// include the following in OpenEhrRmInfoLookup.addTypes()\n"); sb.append ("// \n"); - // generate source code for (String cName: classNames) { sb.append("addClass(" + cName + ".class);\n"); } diff --git a/test-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrTestRmInfoLookup.java b/test-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrTestRmInfoLookup.java index c69ae7497..2dfd616da 100644 --- a/test-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrTestRmInfoLookup.java +++ b/test-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrTestRmInfoLookup.java @@ -7,7 +7,7 @@ import org.openehr.rm.datatypes.CodePhrase; import org.openehr.rm.datavalues.DataValue; import org.openehr.rm.datavalues.DvCodedText; -import com.nedap.archie.rminfo.ArchieModelNamingStrategy; +import com.nedap.archie.rminfo.OpenEhrModelNamingStrategy; import com.nedap.archie.rminfo.RMAttributeInfo; import com.nedap.archie.rminfo.RMPackageId; import com.nedap.archie.rminfo.ReflectionModelInfoLookup; @@ -25,7 +25,7 @@ public class OpenEhrTestRmInfoLookup extends ReflectionModelInfoLookup { private static OpenEhrTestRmInfoLookup instance; private OpenEhrTestRmInfoLookup() { - super(new ArchieModelNamingStrategy(), TestRMBase.class); + super(new OpenEhrModelNamingStrategy(), TestRMBase.class); addSubtypesOf(DataValue.class); //extra class from the base package. No RMObject because it is also used in the AOM addSubtypesOf(CodePhrase.class); } diff --git a/tools/src/test/java/com/nedap/archie/adlparser/CStringParserTest.java b/tools/src/test/java/com/nedap/archie/adlparser/CStringParserTest.java index f06931cb9..69da4463b 100644 --- a/tools/src/test/java/com/nedap/archie/adlparser/CStringParserTest.java +++ b/tools/src/test/java/com/nedap/archie/adlparser/CStringParserTest.java @@ -33,7 +33,4 @@ public void testStringWithQuotes() throws Exception { assertEquals(Lists.newArrayList("something with a \\-mark"), cStringWithBlackslash.getConstraint()); } - - - } diff --git a/utils/src/main/java/com/nedap/archie/rminfo/ModelNamingStrategy.java b/utils/src/main/java/com/nedap/archie/rminfo/ModelNamingStrategy.java index fb60e1aff..375ecf7f0 100644 --- a/utils/src/main/java/com/nedap/archie/rminfo/ModelNamingStrategy.java +++ b/utils/src/main/java/com/nedap/archie/rminfo/ModelNamingStrategy.java @@ -25,11 +25,12 @@ public interface ModelNamingStrategy { String getAttributeName(Field field, Method method); /** - * Returns the OpenEHR standards compliant name of the given class. + * Returns the Model-standard compliant name of the given class. * @param clazz the class to name * @return the name */ String getTypeName(Class clazz); + /** * Return any alternative names for a given class, used for backwards compatibility with renamed classes * @param clazz the class to name @@ -37,4 +38,11 @@ public interface ModelNamingStrategy { */ List getAlternativeTypeNames(Class clazz); + /** + * Returns the Model-standard compliant name of an AOM CPrimitiveType class. + * @param clazz the class to name + * @return the name + */ + String getTypeNameForCPrimitiveType(Class clazz); + } From 8524f1242d29efc05807c650f3f858ef9fd344de Mon Sep 17 00:00:00 2001 From: wolandscat Date: Sat, 11 May 2024 21:36:00 -0600 Subject: [PATCH 08/19] Refactor TestUtils so it may be used with any Reference Model. --- .../nedap/archie/adlparser/RMPathQueryTest.java | 2 +- .../nedap/archie/json/JacksonRMRoundTripTest.java | 2 +- .../nedap/archie/query/RMObjectAttributesTest.java | 2 +- .../com/nedap/archie/query/RMQueryContextTest.java | 2 +- .../rmobjectvalidator/RmObjectValidatorTest.java | 2 +- .../rmobjectvalidator/ValidateArchetypedTest.java | 2 +- .../com/nedap/archie/rmutil/PathableUtilTest.java | 2 +- .../evaluation/FixableAssertionsCheckerTest.java | 2 +- .../archie/rules/evaluation/FunctionsTest.java | 14 +++++++------- .../evaluation/ParsedRulesEvaluationTest.java | 2 +- .../java/com/nedap/archie/testutil/TestUtil.java | 6 +++++- .../com/nedap/archie/xml/JAXBRMRoundTripTest.java | 2 +- 12 files changed, 22 insertions(+), 18 deletions(-) diff --git a/tools/src/test/java/com/nedap/archie/adlparser/RMPathQueryTest.java b/tools/src/test/java/com/nedap/archie/adlparser/RMPathQueryTest.java index 5a539d28c..e5e12ceb2 100644 --- a/tools/src/test/java/com/nedap/archie/adlparser/RMPathQueryTest.java +++ b/tools/src/test/java/com/nedap/archie/adlparser/RMPathQueryTest.java @@ -38,7 +38,7 @@ public class RMPathQueryTest { @Before public void setup() throws Exception { - testUtil = new TestUtil(); + testUtil = new TestUtil(OpenEhrRmInfoLookup.getInstance()); archetype = TestUtil.parseFailOnErrors("/basic.adl"); new RMConstraintImposer().imposeConstraints(archetype.getDefinition()); diff --git a/tools/src/test/java/com/nedap/archie/json/JacksonRMRoundTripTest.java b/tools/src/test/java/com/nedap/archie/json/JacksonRMRoundTripTest.java index 3f7346d61..005bc7836 100644 --- a/tools/src/test/java/com/nedap/archie/json/JacksonRMRoundTripTest.java +++ b/tools/src/test/java/com/nedap/archie/json/JacksonRMRoundTripTest.java @@ -49,7 +49,7 @@ public class JacksonRMRoundTripTest { @Before public void setup() { - testUtil = new TestUtil(); + testUtil = new TestUtil(OpenEhrRmInfoLookup.getInstance()); parser = new ADLParser(new RMConstraintImposer()); } diff --git a/tools/src/test/java/com/nedap/archie/query/RMObjectAttributesTest.java b/tools/src/test/java/com/nedap/archie/query/RMObjectAttributesTest.java index f20cbdb39..72292fca2 100644 --- a/tools/src/test/java/com/nedap/archie/query/RMObjectAttributesTest.java +++ b/tools/src/test/java/com/nedap/archie/query/RMObjectAttributesTest.java @@ -33,7 +33,7 @@ public class RMObjectAttributesTest { public void setup() throws Exception { ArchieLanguageConfiguration.setThreadLocalDescriptiongAndMeaningLanguage("en"); archetype = new ADLParser(new RMConstraintImposer()).parse(getClass().getResourceAsStream("/basic.adl")); - testUtil = new TestUtil(); + testUtil = new TestUtil(OpenEhrRmInfoLookup.getInstance()); } @Test diff --git a/tools/src/test/java/com/nedap/archie/query/RMQueryContextTest.java b/tools/src/test/java/com/nedap/archie/query/RMQueryContextTest.java index 0a5202843..2f8dc603a 100644 --- a/tools/src/test/java/com/nedap/archie/query/RMQueryContextTest.java +++ b/tools/src/test/java/com/nedap/archie/query/RMQueryContextTest.java @@ -35,7 +35,7 @@ public class RMQueryContextTest { public void setup() throws Exception { ArchieLanguageConfiguration.setThreadLocalDescriptiongAndMeaningLanguage("en"); archetype = new ADLParser(new RMConstraintImposer()).parse(getClass().getResourceAsStream("/basic.adl")); - testUtil = new TestUtil(); + testUtil = new TestUtil(OpenEhrRmInfoLookup.getInstance()); } @Test diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/RmObjectValidatorTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/RmObjectValidatorTest.java index 4bbdf60a2..1877f5c74 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/RmObjectValidatorTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/RmObjectValidatorTest.java @@ -36,7 +36,7 @@ public class RmObjectValidatorTest { @Before public void setup() { - testUtil = new TestUtil(); + testUtil = new TestUtil(OpenEhrRmInfoLookup.getInstance()); emptyRepo = new InMemoryFullArchetypeRepository(); validator = new RMObjectValidator(OpenEhrRmInfoLookup.getInstance(), emptyRepo); diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/ValidateArchetypedTest.java b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/ValidateArchetypedTest.java index e981b3cbf..1b5dee64a 100644 --- a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/ValidateArchetypedTest.java +++ b/tools/src/test/java/com/nedap/archie/rmobjectvalidator/ValidateArchetypedTest.java @@ -37,7 +37,7 @@ public class ValidateArchetypedTest { @Before public void setup() throws Exception { - testUtil = new TestUtil(); + testUtil = new TestUtil(OpenEhrRmInfoLookup.getInstance()); repo = new InMemoryFullArchetypeRepository(); validator = new RMObjectValidator(OpenEhrRmInfoLookup.getInstance(), repo); diff --git a/tools/src/test/java/com/nedap/archie/rmutil/PathableUtilTest.java b/tools/src/test/java/com/nedap/archie/rmutil/PathableUtilTest.java index 4d4e8ce04..bd89df861 100644 --- a/tools/src/test/java/com/nedap/archie/rmutil/PathableUtilTest.java +++ b/tools/src/test/java/com/nedap/archie/rmutil/PathableUtilTest.java @@ -33,7 +33,7 @@ public class PathableUtilTest { public void setup() throws Exception { ArchieLanguageConfiguration.setThreadLocalDescriptiongAndMeaningLanguage("en"); archetype = new ADLParser(new RMConstraintImposer()).parse(getClass().getResourceAsStream("/basic.adl")); - testUtil = new TestUtil(); + testUtil = new TestUtil(OpenEhrRmInfoLookup.getInstance()); } private RMQueryContext getQueryContext() { diff --git a/tools/src/test/java/com/nedap/archie/rules/evaluation/FixableAssertionsCheckerTest.java b/tools/src/test/java/com/nedap/archie/rules/evaluation/FixableAssertionsCheckerTest.java index ec96f627e..091bbcdb6 100644 --- a/tools/src/test/java/com/nedap/archie/rules/evaluation/FixableAssertionsCheckerTest.java +++ b/tools/src/test/java/com/nedap/archie/rules/evaluation/FixableAssertionsCheckerTest.java @@ -35,7 +35,7 @@ public class FixableAssertionsCheckerTest { @Before public void setup() { - testUtil = new TestUtil(); + testUtil = new TestUtil(OpenEhrRmInfoLookup.getInstance()); rmObjectCreator = new RMObjectCreator(OpenEhrRmInfoLookup.getInstance()); parser = new ADLParser(AllMetaModelsInitialiser.getMetaModels()); ArchieLanguageConfiguration.setThreadLocalLogicalPathLanguage("en"); diff --git a/tools/src/test/java/com/nedap/archie/rules/evaluation/FunctionsTest.java b/tools/src/test/java/com/nedap/archie/rules/evaluation/FunctionsTest.java index 56d710b8a..f8b0e8ea9 100644 --- a/tools/src/test/java/com/nedap/archie/rules/evaluation/FunctionsTest.java +++ b/tools/src/test/java/com/nedap/archie/rules/evaluation/FunctionsTest.java @@ -68,7 +68,7 @@ public void flatSum() throws Exception { System.out.println(archetype); RuleEvaluation ruleEvaluation = getRuleEvaluation(); - Locatable rmObject = (Locatable) new TestUtil().constructEmptyRMObject(archetype.getDefinition()); + Locatable rmObject = (Locatable) new TestUtil(OpenEhrRmInfoLookup.getInstance()).constructEmptyRMObject(archetype.getDefinition()); DvQuantity quantity = (DvQuantity) rmObject.itemAtPath("/data[id2]/events[id3]/data[id4]/items[id5]/value"); quantity.setMagnitude(65d); @@ -99,7 +99,7 @@ public void sum() throws Exception { System.out.println(archetype); RuleEvaluation ruleEvaluation = getRuleEvaluation(); - Locatable rmObject = (Locatable) new TestUtil().constructEmptyRMObject(archetype.getDefinition()); + Locatable rmObject = (Locatable) new TestUtil(OpenEhrRmInfoLookup.getInstance()).constructEmptyRMObject(archetype.getDefinition()); DvQuantity quantity = (DvQuantity) rmObject.itemAtPath("/data[id2]/events[id3]/data[id4]/items[id5]/value"); quantity.setMagnitude(65d); @@ -119,7 +119,7 @@ public void mean() throws Exception { System.out.println(archetype); RuleEvaluation ruleEvaluation = getRuleEvaluation(); - Locatable rmObject = (Locatable) new TestUtil().constructEmptyRMObject(archetype.getDefinition()); + Locatable rmObject = (Locatable) new TestUtil(OpenEhrRmInfoLookup.getInstance()).constructEmptyRMObject(archetype.getDefinition()); DvQuantity quantity = (DvQuantity) rmObject.itemAtPath("/data[id2]/events[id3]/data[id4]/items[id5]/value"); quantity.setMagnitude(65d); @@ -150,7 +150,7 @@ public void valueWhenUndefinedWithValue() throws Exception { assertTrue(parser.getErrors().hasNoErrors()); RuleEvaluation ruleEvaluation = getRuleEvaluation(); - Locatable rmObject = (Locatable) new TestUtil().constructEmptyRMObject(archetype.getDefinition()); + Locatable rmObject = (Locatable) new TestUtil(OpenEhrRmInfoLookup.getInstance()).constructEmptyRMObject(archetype.getDefinition()); DvQuantity quantity = (DvQuantity) rmObject.itemAtPath("/data[id2]/events[id3]/data[id4]/items[id5]/value"); quantity.setMagnitude(65d); @@ -184,7 +184,7 @@ public void roundMultiple() throws Exception { archetype = parser.parse(ParsedRulesEvaluationTest.class.getResourceAsStream("functions.adls")); assertTrue(parser.getErrors().hasNoErrors()); - Locatable rmObject = (Locatable) new TestUtil().constructEmptyRMObject(archetype.getDefinition()); + Locatable rmObject = (Locatable) new TestUtil(OpenEhrRmInfoLookup.getInstance()).constructEmptyRMObject(archetype.getDefinition()); ItemTree itemTree = (ItemTree) rmObject.itemAtPath("/data[id2]/events[id3]/data[id4]"); Item item = (Item) itemTree.itemAtPath("/items[id5]"); itemTree.addItem( (Item) item.clone() ); @@ -209,7 +209,7 @@ public void ceil() throws Exception { assertTrue(parser.getErrors().hasNoErrors()); RuleEvaluation ruleEvaluation = getRuleEvaluation(); - Locatable rmObject = (Locatable) new TestUtil().constructEmptyRMObject(archetype.getDefinition()); + Locatable rmObject = (Locatable) new TestUtil(OpenEhrRmInfoLookup.getInstance()).constructEmptyRMObject(archetype.getDefinition()); DvQuantity quantity = (DvQuantity) rmObject.itemAtPath("/data[id2]/events[id3]/data[id4]/items[id5]/value"); quantity.setMagnitude(26.1); @@ -225,7 +225,7 @@ public void floor() throws Exception { assertTrue(parser.getErrors().hasNoErrors()); RuleEvaluation ruleEvaluation = getRuleEvaluation(); - Locatable rmObject = (Locatable) new TestUtil().constructEmptyRMObject(archetype.getDefinition()); + Locatable rmObject = (Locatable) new TestUtil(OpenEhrRmInfoLookup.getInstance()).constructEmptyRMObject(archetype.getDefinition()); DvQuantity quantity = (DvQuantity) rmObject.itemAtPath("/data[id2]/events[id3]/data[id4]/items[id5]/value"); quantity.setMagnitude(27.9); diff --git a/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationTest.java b/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationTest.java index 87627b3b5..b91120c81 100644 --- a/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationTest.java +++ b/tools/src/test/java/com/nedap/archie/rules/evaluation/ParsedRulesEvaluationTest.java @@ -47,7 +47,7 @@ public abstract class ParsedRulesEvaluationTest { @Before public void setup() { - testUtil = new TestUtil(); + testUtil = new TestUtil(OpenEhrRmInfoLookup.getInstance()); parser = new ADLParser(AllMetaModelsInitialiser.getMetaModels()); } diff --git a/tools/src/test/java/com/nedap/archie/testutil/TestUtil.java b/tools/src/test/java/com/nedap/archie/testutil/TestUtil.java index 3b1a44ceb..c382213f1 100644 --- a/tools/src/test/java/com/nedap/archie/testutil/TestUtil.java +++ b/tools/src/test/java/com/nedap/archie/testutil/TestUtil.java @@ -14,6 +14,7 @@ import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; import com.nedap.archie.base.RMObject; import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; +import com.nedap.archie.rminfo.ReflectionModelInfoLookup; import org.reflections.Reflections; import org.reflections.scanners.Scanners; import org.slf4j.Logger; @@ -35,9 +36,12 @@ */ public class TestUtil { + public TestUtil (ReflectionModelInfoLookup metaModel) { + creator = new RMObjectCreator(metaModel); + } private static final Logger logger = LoggerFactory.getLogger(TestUtil.class); - private RMObjectCreator creator = new RMObjectCreator(OpenEhrRmInfoLookup.getInstance()); + private RMObjectCreator creator; /** * Creates an empty RM Object, fully nested, one object per CObject found. diff --git a/tools/src/test/java/com/nedap/archie/xml/JAXBRMRoundTripTest.java b/tools/src/test/java/com/nedap/archie/xml/JAXBRMRoundTripTest.java index 1d6a42d0f..91ca18666 100644 --- a/tools/src/test/java/com/nedap/archie/xml/JAXBRMRoundTripTest.java +++ b/tools/src/test/java/com/nedap/archie/xml/JAXBRMRoundTripTest.java @@ -40,7 +40,7 @@ public class JAXBRMRoundTripTest { @Before public void setup() { - testUtil = new TestUtil(); + testUtil = new TestUtil(OpenEhrRmInfoLookup.getInstance()); parser = new ADLParser(AllMetaModelsInitialiser.getMetaModels()); } From 7a16606d97a799191c5fa082a2ac216a17968d97 Mon Sep 17 00:00:00 2001 From: wolandscat Date: Sat, 11 May 2024 22:09:21 -0600 Subject: [PATCH 09/19] Missed import removal from TestUtil. --- tools/src/test/java/com/nedap/archie/testutil/TestUtil.java | 1 - 1 file changed, 1 deletion(-) diff --git a/tools/src/test/java/com/nedap/archie/testutil/TestUtil.java b/tools/src/test/java/com/nedap/archie/testutil/TestUtil.java index c382213f1..960725a2d 100644 --- a/tools/src/test/java/com/nedap/archie/testutil/TestUtil.java +++ b/tools/src/test/java/com/nedap/archie/testutil/TestUtil.java @@ -13,7 +13,6 @@ import com.nedap.archie.flattener.FullArchetypeRepository; import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; import com.nedap.archie.base.RMObject; -import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ReflectionModelInfoLookup; import org.reflections.Reflections; import org.reflections.scanners.Scanners; From f7fae391d7a78f8607992268187e085f637271a2 Mon Sep 17 00:00:00 2001 From: wolandscat Date: Sat, 18 May 2024 12:10:10 -0600 Subject: [PATCH 10/19] Move ckm-mirror to the openehr-rm project. Move tests with static dependencies on openEHR RM classes from tools to openehr-rm. Move or copy other test resources to openehr-rm as needed. Create tools/src/testFixtures area for test helper classes shared across projects. --- .../archie/adlparser/RMPathQueryTest.java | 0 .../aom/AttributeTupleConstraintsTest.java | 0 .../aom/TerminologyCodeConstraintsTest.java | 0 .../CKMArchetypeValidatorTest.java | 0 .../ExampleJsonInstanceGeneratorTest.java | 0 .../archie/creation/RMObjectCreatorTest.java | 0 .../com/nedap/archie/json/AOMJacksonTest.java | 0 .../archie/json/JSONSchemaCreatorTest.java | 0 .../archie/json/JacksonRMRoundTripTest.java | 0 .../com/nedap/archie/json/RMJacksonTest.java | 0 .../flat/ArchetypeParsePostProcessorTest.java | 0 .../json/flat/FlatJsonGeneratorTest.java | 0 .../nedap/archie/kryo/URISerializerTest.java | 0 .../archie/query/RMObjectAttributesTest.java | 0 .../archie/query/RMQueryContextTest.java | 0 .../com/nedap/archie/rm/LocatableTest.java | 0 ...a => OpenEhrRmInfoLookupPopulateTest.java} | 6 +- .../rminfo/openEhrRMInfoLookupTest.java | 0 .../ConstraintToStringUtilTest.java | 0 .../RmObjectValidatorTest.java | 0 .../ValidateArchetypedTest.java | 0 .../invariants/AttestationInvariantTest.java | 0 .../invariants/EventContextInvariantTest.java | 0 .../FeederAuditDetailsInvariantTest.java | 0 .../invariants/FolderInvariantTest.java | 0 .../invariants/IntervalInvariantTest.java | 0 .../invariants/InvariantTestUtil.java | 0 .../ParticipationInvariantTest.java | 0 .../PartyIdentifiedInvariantTest.java | 0 .../invariants/PartyRelatedInvariantTest.java | 0 .../invariants/TermMappingInvariantTest.java | 0 .../base/PartyRefInvariantTest.java | 0 .../invariants/base/UIDInvariantTest.java | 0 .../base/VersionTreeIdInvariantTest.java | 0 .../AuditDetailsInvariantTest.java | 0 .../OriginalVersionInvariantTest.java | 0 .../datastructures/ElementInvariantTest.java | 0 .../ItemTableInvariantTest.java | 0 .../datavalues/CodePhraseInvariantTest.java | 0 .../datavalues/DvDurationInvariantTest.java | 0 .../datavalues/DvEhrUriInvariantTest.java | 0 .../datavalues/DvIdentifierInvariantTest.java | 0 .../datavalues/DvIntervalInvariantTest.java | 0 .../datavalues/DvMultimediaInvariantTest.java | 0 .../datavalues/DvParsableInvariantTest.java | 0 ...eriodicTimeSpecificationInvariantTest.java | 0 .../datavalues/DvProportionInvariantTest.java | 0 .../datavalues/DvQuantityInvariantTest.java | 0 .../datavalues/DvTextInvariantTest.java | 0 .../datavalues/DvUriInvariantTest.java | 0 .../invariants/ehr/ActionInvariantTest.java | 0 .../ehr/CompositionInvariantTest.java | 0 .../invariants/ehr/EhrInvariantTest.java | 0 .../ehr/InstructionInvariantTest.java | 0 .../ehr/IntervalEventInvariantTest.java | 0 .../ehr/IsmTransitionInvariantTest.java | 0 .../ehr/ObservationInvariantTest.java | 0 .../ArchetypeSlotValidationTest.java | 0 .../RMPrimitiveObjectValidationTest.java | 0 .../validations/RMTupleValidationTest.java | 0 .../nedap/archie/rmutil/PathableUtilTest.java | 0 ...-EHR-OBSERVATION.ordinal_tuple.v1.0.0.adls | 99 +++++ ...ement_with_required_attributes.v1.0.0.adls | 39 ++ ...-ITEM_TREE.cardinality_testing.v1.0.0.adls | 52 +++ ...penEHR-EHR-SECTION.slot_parent.v1.0.0.adls | 49 +++ openehr-rm/src/test/resources/basic.adl | 191 +++++++++ .../src/test/resources/basic_specialised.adls | 59 +++ .../test/resources/basic_specialised2.adls | 63 +++ .../src/test/resources/ckm-mirror/LICENSE | 0 .../src/test/resources/ckm-mirror/README.md | 0 .../src/test/resources/ckm-mirror/_repo.idx | 0 .../test/resources/ckm-mirror/_repo_lib.idx | 0 .../openEHR-EHR-CLUSTER.address.v1.0.0.adls | 0 ...HR-CLUSTER.anatomical_location.v1.1.0.adls | 0 ...natomical_location_clock.v0.0.1-alpha.adls | 0 ...R.anatomical_location_relative.v1.0.1.adls | 0 ...R-EHR-CLUSTER.asa_status.v0.0.1-alpha.adls | 0 ...LUSTER.auscultation_lung.v0.0.1-alpha.adls | 0 ...HR-CLUSTER.case_identification.v1.0.0.adls | 0 ...EHR-CLUSTER.cessation_attempts.v1.0.0.adls | 0 .../openEHR-EHR-CLUSTER.change.v1.0.0.adls | 0 .../openEHR-EHR-CLUSTER.citation.v1.0.0.adls | 0 ...-EHR-CLUSTER.clinical_evidence.v1.0.0.adls | 0 ...HR-EHR-CLUSTER.consent_details.v1.0.0.adls | 0 ...EHR-EHR-CLUSTER.cormack_lehane.v1.0.0.adls | 0 .../openEHR-EHR-CLUSTER.device.v1.0.1.adls | 0 ...LUSTER.dietary_nutrients.v0.0.1-alpha.adls | 0 ...R.dietary_phytochemicals.v0.0.1-alpha.adls | 0 ...enEHR-EHR-CLUSTER.distribution.v1.0.0.adls | 0 ...USTER.environmental_conditions.v1.0.0.adls | 0 ...openEHR-EHR-CLUSTER.exam.v0.0.1-alpha.adls | 0 ...EHR-CLUSTER.exam_abdomen.v0.0.1-alpha.adls | 0 ...HR-EHR-CLUSTER.exam_anus.v0.0.1-alpha.adls | 0 ...-EHR-CLUSTER.exam_breast.v0.0.1-alpha.adls | 0 ...EHR-CLUSTER.exam_breasts.v0.0.1-alpha.adls | 0 ...HR-EHR-CLUSTER.exam_burn.v0.0.1-alpha.adls | 0 ...R-EHR-CLUSTER.exam_chest.v0.0.1-alpha.adls | 0 ...STER.exam_cranial_nerves.v0.0.1-alpha.adls | 0 ...HR-EHR-CLUSTER.exam_ears.v0.0.1-alpha.adls | 0 ...EHR-EHR-CLUSTER.exam_eye.v0.0.1-alpha.adls | 0 ...LUSTER.exam_eye_anterior.v0.0.1-alpha.adls | 0 ...CLUSTER.exam_eye_aqueous.v0.0.1-alpha.adls | 0 ...HR-CLUSTER.exam_eye_lens.v0.0.1-alpha.adls | 0 ...USTER.exam_eye_posterior.v0.0.1-alpha.adls | 0 ...R-CLUSTER.exam_eye_pupil.v0.0.1-alpha.adls | 0 ...-CLUSTER.exam_eye_retina.v0.0.1-alpha.adls | 0 ...LUSTER.exam_eye_vitreous.v0.0.1-alpha.adls | 0 ...HR-EHR-CLUSTER.exam_eyes.v0.0.1-alpha.adls | 0 ...HR-EHR-CLUSTER.exam_gait.v0.0.1-alpha.adls | 0 ...R-EHR-CLUSTER.exam_heart.v0.0.1-alpha.adls | 0 ...-EHR-CLUSTER.exam_lesion.v0.0.1-alpha.adls | 0 ...EHR-EHR-CLUSTER.exam_lip.v0.0.1-alpha.adls | 0 ...HR-EHR-CLUSTER.exam_lips.v0.0.1-alpha.adls | 0 ...HR-EHR-CLUSTER.exam_lung.v0.0.1-alpha.adls | 0 ...R-EHR-CLUSTER.exam_lungs.v0.0.1-alpha.adls | 0 ...R-EHR-CLUSTER.exam_mouth.v0.0.1-alpha.adls | 0 ...STER.exam_nervous_system.v0.0.1-alpha.adls | 0 ...EHR-CLUSTER.exam_pattern.v0.0.2-alpha.adls | 0 ...R-EHR-CLUSTER.exam_penis.v0.0.1-alpha.adls | 0 ...EHR-CLUSTER.exam_scrotum.v0.0.1-alpha.adls | 0 ...HR-EHR-CLUSTER.exam_skin.v0.0.1-alpha.adls | 0 ...-EHR-CLUSTER.exam_sputum.v0.0.1-alpha.adls | 0 ...-EHR-CLUSTER.exam_tongue.v0.0.1-alpha.adls | 0 ...EHR-CLUSTER.exam_urethra.v0.0.1-alpha.adls | 0 ...R-EHR-CLUSTER.exam_vulva.v0.0.1-alpha.adls | 0 ...R-EHR-CLUSTER.exam_wound.v0.0.1-alpha.adls | 0 ...EHR-EHR-CLUSTER.exclusion_exam.v1.0.0.adls | 0 ...R.exclusion_symptom_sign.v0.0.1-alpha.adls | 0 ...-EHR-CLUSTER.family_prevalence.v1.0.0.adls | 0 ...HR-EHR-CLUSTER.free_text.v0.0.1-alpha.adls | 0 ...EHR-CLUSTER.health_event.v0.0.1-alpha.adls | 0 ...TER.hip_arthroplasty_component.v1.0.0.adls | 0 ....histopathology_findings.v0.0.1-alpha.adls | 0 ...HR-EHR-CLUSTER.household.v0.0.1-alpha.adls | 0 ...nEHR-EHR-CLUSTER.housing.v0.0.1-alpha.adls | 0 .../openEHR-EHR-CLUSTER.hydration.v1.0.0.adls | 0 .../openEHR-EHR-CLUSTER.imaging.v1.0.0.adls | 0 ...R-CLUSTER.imaging_result.v0.0.1-alpha.adls | 0 ...HR-CLUSTER.individual_personal.v1.0.0.adls | 0 ...LUSTER.individual_professional.v1.0.0.adls | 0 ...ER.inspection_body_fluid.v0.0.1-alpha.adls | 0 ...LUSTER.inspection_cervix.v0.0.1-alpha.adls | 0 ...LUSTER.inspection_rectum.v0.0.1-alpha.adls | 0 ...LUSTER.inspection_vagina.v0.0.1-alpha.adls | 0 ...-CLUSTER.inspired_oxygen.v0.0.1-alpha.adls | 0 ...STER.interpreter_details.v0.0.1-alpha.adls | 0 .../openEHR-EHR-CLUSTER.issue.v1.0.0.adls | 0 ....laboratory_test_analyte.v0.0.1-alpha.adls | 0 ...ER.laboratory_test_panel.v0.0.1-alpha.adls | 0 ...EHR-EHR-CLUSTER.language.v0.0.1-alpha.adls | 0 ...-EHR-CLUSTER.level_of_exertion.v1.0.0.adls | 0 ...-CLUSTER.lymph_node_metastases.v1.0.0.adls | 0 ...acroscopy_colorectal_carcinoma.v1.0.0.adls | 0 ...STER.macroscopy_lung_carcinoma.v1.0.0.adls | 0 ...medication_authorisation.v0.0.1-alpha.adls | 0 ...medication_order_summary.v0.0.1-alpha.adls | 0 ...TER.medication_substance.v0.0.1-alpha.adls | 0 ...medication_supply_amount.v0.0.1-alpha.adls | 0 ...R-CLUSTER.micronutrients.v0.0.1-alpha.adls | 0 ...ER.microscopy_breast_carcinoma.v1.0.0.adls | 0 ...icroscopy_colorectal_carcinoma.v1.0.0.adls | 0 ...STER.microscopy_lung_carcinoma.v1.0.0.adls | 0 ...HR-CLUSTER.microscopy_lymphoma.v1.0.0.adls | 0 ...HR-CLUSTER.microscopy_melanoma.v1.0.0.adls | 0 ....microscopy_prostate_carcinoma.v1.0.0.adls | 0 ...openEHR-EHR-CLUSTER.move-joint.v1.0.0.adls | 0 ...openEHR-EHR-CLUSTER.move-spine.v1.0.0.adls | 0 .../openEHR-EHR-CLUSTER.move.v1.0.0.adls | 0 ...openEHR-EHR-CLUSTER.multimedia.v1.0.0.adls | 0 ...R-CLUSTER.notifiable_condition.v1.0.0.adls | 0 ...USTER.nyha_heart_failure.v1.0.0-alpha.adls | 0 ...R-EHR-CLUSTER.occupation.v0.0.1-alpha.adls | 0 ...enEHR-EHR-CLUSTER.oedema.v0.0.1-alpha.adls | 0 ...STER.operative_procedure.v0.0.1-alpha.adls | 0 ...enEHR-EHR-CLUSTER.organisation.v1.0.0.adls | 0 ...LUSTER.outbreak_identification.v1.0.0.adls | 0 ...USTER.palpation_prostate.v0.0.1-alpha.adls | 0 ...CLUSTER.palpation_rectum.v0.0.1-alpha.adls | 0 ...USTER.palpation_testicle.v0.0.1-alpha.adls | 0 ...CLUSTER.palpation_vagina.v0.0.1-alpha.adls | 0 ...openEHR-EHR-CLUSTER.percussion.v1.0.0.adls | 0 ...penEHR-EHR-CLUSTER.person_name.v1.0.0.adls | 0 ...STER.physical_properties.v0.0.1-alpha.adls | 0 ...physiological_monitoring.v0.0.1-alpha.adls | 0 ...R-EHR-CLUSTER.precise_location.v1.0.0.adls | 0 ...R-CLUSTER.problem_status.v0.0.1-alpha.adls | 0 ...ER.procedure_preparation.v0.0.1-alpha.adls | 0 ...-EHR-CLUSTER.professional_role.v1.0.0.adls | 0 ...EHR-CLUSTER.refraction_details.v1.0.0.adls | 0 .../openEHR-EHR-CLUSTER.religion.v1.0.0.adls | 0 ...EHR-EHR-CLUSTER.sense_of_smell.v1.0.0.adls | 0 ...EHR-EHR-CLUSTER.specimen.v0.0.1-alpha.adls | 0 ...USTER.specimen_container.v0.0.1-alpha.adls | 0 ...TER.specimen_preparation.v0.0.1-alpha.adls | 0 ...enEHR-EHR-CLUSTER.symptom_sign.v1.0.0.adls | 0 ...-CLUSTER.symptom_sign_severity.v1.0.0.adls | 0 ...EHR-CLUSTER.synthesis_lymphoma.v1.0.0.adls | 0 ...-CLUSTER.telecom_details.v0.0.1-alpha.adls | 0 ...-CLUSTER.therapeutic_direction.v1.0.2.adls | 0 ...EHR-CLUSTER.timing_daily.v0.0.1-alpha.adls | 0 ...LUSTER.timing_repetition.v0.0.1-alpha.adls | 0 ...USTER.tnm_stage_clinical.v0.0.1-alpha.adls | 0 ...R.tnm_stage_pathological.v0.0.1-alpha.adls | 0 ...EHR-CLUSTER.tnm_staging-breast.v1.0.0.adls | 0 ...CLUSTER.tnm_staging-colorectal.v1.0.0.adls | 0 ...LUSTER.tnm_staging-lung_cancer.v1.0.0.adls | 0 ...R-CLUSTER.tnm_staging-melanoma.v1.0.0.adls | 0 ...R-CLUSTER.tnm_staging-prostate.v1.0.0.adls | 0 ...penEHR-EHR-CLUSTER.tnm_staging.v1.0.0.adls | 0 ...CLUSTER.tnm_staging_7th-breast.v1.0.0.adls | 0 ...TER.tnm_staging_7th-colorectal.v1.0.0.adls | 0 ...R-CLUSTER.tnm_staging_7th-lung.v1.0.0.adls | 0 ...USTER.tnm_staging_7th-lymphoma.v1.0.0.adls | 0 ...USTER.tnm_staging_7th-melanoma.v1.0.0.adls | 0 ...USTER.tnm_staging_7th-prostate.v1.0.0.adls | 0 ...HR-EHR-CLUSTER.tnm_staging_7th.v1.0.0.adls | 0 ...our_colorectal_staging_non_tnm.v1.0.0.adls | 0 ...HR-EHR-CLUSTER.tumour_invasion.v1.0.0.adls | 0 ...USTER.tumour_resection_margins.v1.0.0.adls | 0 .../openEHR-EHR-CLUSTER.waveform.v1.0.0.adls | 0 ...POSITION.adverse_reaction_list.v1.1.1.adls | 0 ...nEHR-EHR-COMPOSITION.encounter.v1.0.0.adls | 0 ...-EHR-COMPOSITION.event_summary.v1.0.0.adls | 0 ...EHR-COMPOSITION.health_summary.v1.0.0.adls | 0 ...POSITION.medication_list.v0.0.1-alpha.adls | 0 ...COMPOSITION.notification.v0.0.1-alpha.adls | 0 ...COMPOSITION.prescription.v0.0.1-alpha.adls | 0 ...R-EHR-COMPOSITION.problem_list.v1.0.1.adls | 0 ...R-COMPOSITION.report-procedure.v1.0.0.adls | 0 ...-EHR-COMPOSITION.report-result.v1.0.0.adls | 0 ...openEHR-EHR-COMPOSITION.report.v1.0.0.adls | 0 ...penEHR-EHR-COMPOSITION.request.v1.1.0.adls | 0 ...openEHR-EHR-COMPOSITION.review.v1.0.0.adls | 0 ...POSITION.self_monitoring.v0.0.1-alpha.adls | 0 ...R-COMPOSITION.transfer_summary.v1.0.0.adls | 0 ...R-COMPOSITION.vaccination_list.v1.0.0.adls | 0 ...APHIC-ADDRESS.address-provider.v1.0.0.adls | 0 ...HR-DEMOGRAPHIC-ADDRESS.address.v1.0.0.adls | 0 ...ctronic_communication-provider.v1.0.0.adls | 0 ...DRESS.electronic_communication.v1.0.0.adls | 0 ...ABILITY.individual_credentials.v1.0.0.adls | 0 ...USTER.biometric_identifier_iso.v1.0.0.adls | 0 ...irth_data_additional_detail_br.v1.0.0.adls | 0 ...gh_level_address_other_data_br.v1.0.0.adls | 0 ...USTER.identifier_other_details.v1.0.0.adls | 0 ...TER.individual_credentials_iso.v1.0.0.adls | 0 ...idual_provider_credentials_iso.v1.0.0.adls | 0 ...STER.person_additional_data_br.v1.0.0.adls | 0 ...TER.person_additional_data_iso.v1.0.0.adls | 0 ...-CLUSTER.person_birth_data_iso.v1.0.0.adls | 0 ...-CLUSTER.person_death_data_iso.v1.0.0.adls | 0 ...TER.person_identifier-provider.v1.0.0.adls | 0 ...PHIC-CLUSTER.person_identifier.v1.0.0.adls | 0 ...TER.person_other_birth_data_br.v1.0.0.adls | 0 ...LUSTER.person_other_death_data.v1.0.0.adls | 0 ...IC-CLUSTER.provider_identifier.v1.0.0.adls | 0 ...LUSTER.registration_other_data.v1.0.0.adls | 0 ...APHIC-ITEM_TREE.person_details.v1.0.0.adls | 0 ...PHIC-ORGANISATION.organisation.v1.0.0.adls | 0 ...RTY_IDENTITY.organisation_name.v1.0.0.adls | 0 ...erson_name-individual_provider.v1.0.0.adls | 0 ...HIC-PARTY_IDENTITY.person_name.v1.0.0.adls | 0 ...OGRAPHIC-PERSON.person-patient.v1.0.0.adls | 0 ...nEHR-DEMOGRAPHIC-PERSON.person.v1.0.0.adls | 0 ...APHIC-ROLE.healthcare_consumer.v1.0.0.adls | 0 ...althcare_provider_organisation.v1.0.0.adls | 0 ...APHIC-ROLE.individual_provider.v1.0.0.adls | 0 ...GRAPHIC-ROLE.third_party_payer.v1.0.0.adls | 0 ...EHR-EHR-ACTION.care_plan.v0.0.1-alpha.adls | 0 ...HR-EHR-ACTION.health_education.v1.0.0.adls | 0 ...-EHR-ACTION.imaging_exam.v0.0.1-alpha.adls | 0 ...HR-EHR-ACTION.informed_consent.v1.0.0.adls | 0 ...HR-EHR-ACTION.medication.v0.0.1-alpha.adls | 0 .../openEHR-EHR-ACTION.procedure.v1.2.0.adls | 0 .../openEHR-EHR-ACTION.review.v1.0.0.adls | 0 ...openEHR-EHR-ACTION.transfusion.v1.0.0.adls | 0 ...nEHR-EHR-ADMIN_ENTRY.admission.v1.0.0.adls | 0 ...openEHR-EHR-EVALUATION.absence.v1.0.0.adls | 0 ...e_decision_refuse_treatment_uk.v1.0.0.adls | 0 ...ALUATION.adverse_reaction_risk.v1.1.2.adls | 0 ...TION.alcohol_use_summary.v0.0.1-alpha.adls | 0 ...-EHR-EVALUATION.citation.v0.0.1-alpha.adls | 0 ...R-EVALUATION.clinical_synopsis.v1.0.0.adls | 0 ...EVALUATION.consumer_note.v0.0.1-alpha.adls | 0 ...EHR-EVALUATION.container.v0.0.1-alpha.adls | 0 ...LUATION.contraindication.v0.0.1-alpha.adls | 0 ...VALUATION.device_summary.v0.0.1-alpha.adls | 0 ...HR-EVALUATION.exclusion_global.v1.0.0.adls | 0 ...-EVALUATION.exclusion_specific.v1.0.0.adls | 0 ...-EHR-EVALUATION.family_history.v2.0.0.adls | 0 ...EHR-EHR-EVALUATION.health_risk.v1.1.0.adls | 0 ...VALUATION.infant_feeding.v0.0.1-alpha.adls | 0 ...ION.infectious_disease_summary.v1.0.0.adls | 0 ....menstrual_cycle_summary.v0.0.1-alpha.adls | 0 ...UATION.obstetric_summary.v0.0.1-alpha.adls | 0 ...hysical_activity_summary.v0.0.1-alpha.adls | 0 ...nEHR-EHR-EVALUATION.precaution.v1.0.0.adls | 0 ...EVALUATION.pregnancy_bf_status.v1.0.0.adls | 0 ...UATION.pregnancy_summary.v0.0.1-alpha.adls | 0 ...R-EVALUATION.problem_diagnosis.v1.0.5.adls | 0 ...VALUATION.reason_for_encounter.v1.0.0.adls | 0 ...-EHR-EVALUATION.recommendation.v1.1.0.adls | 0 ...mokeless_tobacco_summary.v0.0.1-alpha.adls | 0 ...-EHR-EVALUATION.social_summary.v1.1.0.adls | 0 .../openEHR-EHR-EVALUATION.source.v1.0.0.adls | 0 ...nEHR-EHR-EVALUATION.test.v0.0.1-alpha.adls | 0 ...UATION.tobacco_smoking_summary.v1.0.1.adls | 0 .../openEHR-EHR-EVALUATION.triage.v1.0.0.adls | 0 ...EVALUATION.vaccination_summary.v1.0.0.adls | 0 ...HR-INSTRUCTION.care_plan.v0.0.1-alpha.adls | 0 ...RUCTION.health_education.v0.0.1-alpha.adls | 0 ...R-INSTRUCTION.informed_consent.v1.0.0.adls | 0 ...R-INSTRUCTION.medication_order.v1.0.1.adls | 0 ...INSTRUCTION.notification.v0.0.1-alpha.adls | 0 ...UCTION.request-procedure.v0.0.1-alpha.adls | 0 ...-EHR-INSTRUCTION.request.v0.0.1-alpha.adls | 0 ...-INSTRUCTION.transfusion.v0.0.1-alpha.adls | 0 ...HR-EHR-OBSERVATION.apgar.v1.0.1-alpha.adls | 0 ...nEHR-EHR-OBSERVATION.audiogram.v1.0.0.adls | 0 ...penEHR-EHR-OBSERVATION.autopsy.v1.0.0.adls | 0 ...EHR-EHR-OBSERVATION.avpu.v0.0.1-alpha.adls | 0 ...-EHR-OBSERVATION.barthel.v0.0.1-alpha.adls | 0 ...HR-EHR-OBSERVATION.blood_match.v1.0.0.adls | 0 ...EHR-OBSERVATION.blood_pressure.v1.1.0.adls | 0 ...HR-OBSERVATION.body_mass_index.v2.0.0.adls | 0 ...OBSERVATION.body_segment.v0.0.1-alpha.adls | 0 ...VATION.body_surface_area.v0.0.1-alpha.adls | 0 ...R-OBSERVATION.body_temperature.v2.0.0.adls | 0 ...SERVATION.body_weight-adjusted.v1.0.0.adls | 0 ...HR-EHR-OBSERVATION.body_weight.v1.0.0.adls | 0 ...OBSERVATION.braden_scale-child.v1.0.0.adls | 0 ...R-EHR-OBSERVATION.braden_scale.v1.0.1.adls | 0 ...SERVATION.braden_scale_neonate.v1.0.0.adls | 0 ...BSERVATION.bristol_stool_scale.v1.0.0.adls | 0 ...-OBSERVATION.ccs_angina_status.v1.0.0.adls | 0 .../openEHR-EHR-OBSERVATION.cgas.v1.0.0.adls | 0 ...OBSERVATION.child_growth.v0.0.1-alpha.adls | 0 ....comfort_behaviour_scale.v0.0.1-alpha.adls | 0 ...EHR-EHR-OBSERVATION.conference.v1.0.0.adls | 0 ...HR-OBSERVATION.container.v0.0.1-alpha.adls | 0 ...al_pain_observation_tool.v0.0.1-alpha.adls | 0 .../openEHR-EHR-OBSERVATION.demo.v1.0.0.adls | 0 ...ERVATION.diabetic_wound_wagner.v1.0.0.adls | 0 ...EHR-EHR-OBSERVATION.easi_score.v1.0.0.adls | 0 ...nEHR-EHR-OBSERVATION.ecg.v0.0.1-alpha.adls | 0 ...EHR-EHR-OBSERVATION.ecog.v0.0.1-alpha.adls | 0 ...BSERVATION.edinburgh_pnd_scale.v1.0.0.adls | 0 .../openEHR-EHR-OBSERVATION.exam.v1.1.0.adls | 0 ...openEHR-EHR-OBSERVATION.faeces.v1.0.0.adls | 0 ...R-OBSERVATION.fagerstrom.v0.0.1-alpha.adls | 0 ...HR-EHR-OBSERVATION.fetal_heart.v1.0.0.adls | 0 ...EHR-OBSERVATION.fetal_movement.v1.0.0.adls | 0 ...ERVATION.fitzpatrick_skin_type.v1.0.0.adls | 0 ...-EHR-OBSERVATION.fluid_balance.v1.0.0.adls | 0 ...HR-EHR-OBSERVATION.fluid_input.v1.0.0.adls | 0 ...R-EHR-OBSERVATION.fluid_output.v1.0.0.adls | 0 ...HR-OBSERVATION.food_item.v0.0.1-alpha.adls | 0 ...VATION.fundoscopic_examination.v1.0.0.adls | 0 ...OBSERVATION.glasgow_coma_scale.v1.0.2.adls | 0 ...ION.hannallah_pain_scale.v0.0.1-alpha.adls | 0 ...R-OBSERVATION.harris_hip_score.v1.0.0.adls | 0 ...OBSERVATION.head_circumference.v1.0.1.adls | 0 ...ERVATION.height-adjusted.v0.0.1-alpha.adls | 0 ...openEHR-EHR-OBSERVATION.height.v1.0.0.adls | 0 ...VATION.hip_circumference.v0.0.1-alpha.adls | 0 ...HR-EHR-OBSERVATION.honos.v0.0.1-alpha.adls | 0 ...lls_risk_assessment_tool.v0.0.1-alpha.adls | 0 ...R-OBSERVATION.iga_eczema_treat.v1.0.0.adls | 0 ...OBSERVATION.imaging_exam.v0.0.1-alpha.adls | 0 ...VATION.indirect_oximetry.v0.0.1-alpha.adls | 0 ...SERVATION.infant_feeding.v0.0.1-alpha.adls | 0 ...ION.intraocular_pressure.v0.0.1-alpha.adls | 0 ...N.intravascular_pressure.v0.0.1-alpha.adls | 0 ...N.laboratory_test_result.v0.0.1-alpha.adls | 0 ...BSERVATION.malinas_score.v0.0.1-alpha.adls | 0 ...penEHR-EHR-OBSERVATION.mantoux.v1.0.0.adls | 0 ...ERVATION.menstrual_cycle.v0.0.1-alpha.adls | 0 ...EHR-EHR-OBSERVATION.msfc_score.v1.0.0.adls | 0 ...EHR-EHR-OBSERVATION.must.v0.0.1-alpha.adls | 0 ...HR-EHR-OBSERVATION.news_uk_rcp.v1.0.2.adls | 0 ...OBSERVATION.nine_hole_peg_test.v1.0.0.adls | 0 ...VATION.oucher_pain_scale.v0.0.1-alpha.adls | 0 ..._auditory_serial_addition_test.v1.0.0.adls | 0 ...N.pathology_test-blood_glucose.v1.0.0.adls | 0 ...EHR-OBSERVATION.pathology_test.v1.0.0.adls | 0 ...global_assessment_eczema_treat.v1.0.0.adls | 0 ...N.penetration_aspiration_scale.v1.0.0.adls | 0 ...VATION.physical_activity.v0.0.1-alpha.adls | 0 ...R-OBSERVATION.poem_score.v0.0.1-alpha.adls | 0 ...EHR-OBSERVATION.pregnancy_test.v1.0.0.adls | 0 ...ATION.pulmonary_function.v0.0.1-alpha.adls | 0 .../openEHR-EHR-OBSERVATION.pulse.v1.0.0.adls | 0 ...BSERVATION.pulse_deficit.v0.0.1-alpha.adls | 0 ...R-OBSERVATION.refraction.v0.0.1-alpha.adls | 0 ...HR-EHR-OBSERVATION.respiration.v1.0.0.adls | 0 ...agitation_sedation_scale.v0.0.1-alpha.adls | 0 ...R-OBSERVATION.sara_scale.v0.0.1-alpha.adls | 0 ...R-EHR-OBSERVATION.scorad_score.v1.0.0.adls | 0 ...OBSERVATION.skeletal_age.v0.0.1-alpha.adls | 0 ...openEHR-EHR-OBSERVATION.speech.v1.0.0.adls | 0 .../openEHR-EHR-OBSERVATION.story.v1.1.0.adls | 0 ..._neurological_assessment.v0.0.1-alpha.adls | 0 ...ERVATION.substance_use-alcohol.v1.0.0.adls | 0 ...RVATION.substance_use-caffeine.v1.0.0.adls | 0 ...ERVATION.substance_use-tobacco.v1.0.0.adls | 0 ...-EHR-OBSERVATION.substance_use.v1.0.0.adls | 0 ...R-EHR-OBSERVATION.tanner.v0.0.1-alpha.adls | 0 ...HR-EHR-OBSERVATION.temperature.v1.0.0.adls | 0 ...VATION.testicular_volume.v0.0.1-alpha.adls | 0 ...VATION.third_party_observation.v1.0.0.adls | 0 ...OBSERVATION.timed_25_foot_walk.v1.0.0.adls | 0 ...EHR-EHR-OBSERVATION.urinalysis.v1.0.1.adls | 0 ...SERVATION.uterine_contractions.v1.0.0.adls | 0 ...BSERVATION.visual_acuity.v0.0.1-alpha.adls | 0 ...ATION.visual_field_measurement.v1.0.0.adls | 0 ...TION.waist_circumference.v0.0.1-alpha.adls | 0 ...ATION.waist_height_ratio.v0.0.1-alpha.adls | 0 ...ERVATION.waist_hip_ratio.v0.0.1-alpha.adls | 0 ...EHR-OBSERVATION.waterlow_score.v1.0.0.adls | 0 .../openEHR-EHR-SECTION.adhoc.v1.0.0.adls | 0 ...enEHR-EHR-SECTION.adverse_list.v1.0.0.adls | 0 ...openEHR-EHR-SECTION.conclusion.v1.0.0.adls | 0 ...EHR-SECTION.diagnostic_reports.v1.0.0.adls | 0 ...-SECTION.medication_order_list.v1.0.0.adls | 0 ...enEHR-EHR-SECTION.problem_list.v1.0.0.adls | 0 ...R-EHR-SECTION.referral_details.v1.0.0.adls | 0 .../openEHR-EHR-SECTION.soap.v1.0.0.adls | 0 ...-EHR-SECTION.vital_signs.v0.0.1-alpha.adls | 0 .../termsets/Route of Administration.xml | 0 ...-CLUSTER.adhoc_cluster_heading.v1.0.0.adls | 0 ...LUSTER.document_entry_metadata.v1.0.0.adls | 0 ...enEHR-EHR-CLUSTER.ear_cleaning.v1.0.0.adls | 0 .../openEHR-EHR-CLUSTER.education.v1.0.0.adls | 0 ...STER.exam_auditory_canal.v0.0.1-alpha.adls | 0 ...-CLUSTER.exam_middle_ear.v0.0.1-alpha.adls | 0 ...openEHR-EHR-CLUSTER.exam_pinna.v1.0.0.adls | 0 ...R.exam_tympanic_membrane.v0.0.1-alpha.adls | 0 ...R-EHR-CLUSTER.home_environment.v1.0.0.adls | 0 ...nEHR-EHR-CLUSTER.myringoplasty.v1.0.0.adls | 0 ...penEHR-EHR-CLUSTER.myringotomy.v1.0.0.adls | 0 ...HR-CLUSTER.palpation_of_cervix.v1.0.0.adls | 0 ...EHR-CLUSTER.palpation_of_fetus.v1.0.0.adls | 0 ...HR-CLUSTER.palpation_of_uterus.v1.0.0.adls | 0 .../openEHR-EHR-CLUSTER.sade.v1.0.0.adls | 0 .../openEHR-EHR-CLUSTER.strategy.v1.0.0.adls | 0 .../openEHR-EHR-CLUSTER.tos.v1.0.0.adls | 0 ...HR-EHR-CLUSTER.triage_priority.v1.0.0.adls | 0 ...nEHR-EHR-COMPOSITION.care_plan.v1.0.0.adls | 0 ...EHR-COMPOSITION.family_history.v1.0.0.adls | 0 ...-COMPOSITION.lifestyle_factors.v1.0.0.adls | 0 ...-COMPOSITION.obstetric_history.v1.0.0.adls | 0 ...-COMPOSITION.pregnancy_summary.v1.0.0.adls | 0 ...-EHR-COMPOSITION.progress_note.v1.0.0.adls | 0 ...EHR-COMPOSITION.social_summary.v1.0.0.adls | 0 ...SITION.therapeutic_precautions.v1.0.0.adls | 0 ...nEHR-EHR-ACTION.pathology_test.v1.0.0.adls | 0 ...enEHR-EHR-ACTION.service.v0.0.1-alpha.adls | 0 ...R-ADMIN_ENTRY.legal_constraint.v1.0.0.adls | 0 ...LUATION.differential_diagnosis.v1.0.0.adls | 0 ...penEHR-EHR-EVALUATION.exposure.v1.0.0.adls | 0 ...R-EVALUATION.nutrition_summary.v1.0.0.adls | 0 ...-EHR-OBSERVATION.alcohol_audit.v1.0.0.adls | 0 ...HR-EHR-OBSERVATION.alcohol_use.v1.0.0.adls | 0 ...RVATION.audiogram_result.v0.0.1-alpha.adls | 0 ...N.audiology_speech_test_result.v1.0.0.adls | 0 ...vation_audiometry_result.v0.0.1-alpha.adls | 0 ...hearing_screening_result.v0.0.1-alpha.adls | 0 ...-OBSERVATION.mews_nt_rmp.v0.0.1-alpha.adls | 0 .../openEHR-EHR-OBSERVATION.phq.v1.0.0.adls | 0 ...-EHR-OBSERVATION.progress_note.v1.0.0.adls | 0 ...VATION.psychiatric_risk_nt_rmp.v1.0.0.adls | 0 ...OBSERVATION.rinne_weber_result.v1.0.0.adls | 0 ...-OBSERVATION.telecommunication.v1.0.0.adls | 0 ...HR-EHR-OBSERVATION.tobacco_use.v1.0.0.adls | 0 ...-OBSERVATION.tympanogram_226hz.v1.0.0.adls | 0 ...EHR-OBSERVATION.tympanogram_hf.v1.0.0.adls | 0 ...enEHR-EHR-CLUSTER.gender.v0.0.1-alpha.adls | 0 ...STER.mallampati_classification.v1.0.1.adls | 0 ...SERVATION.chadsvas_score.v0.0.1-alpha.adls | 0 ...tritional_risk_screening.v1.0.1-alpha.adls | 0 ...HR-EHR-OBSERVATION.stratify_no.v1.0.0.adls | 0 ...ION.i_pss_prostate_score.v0.0.1-alpha.adls | 0 ...SECTION.problems_and_diagnoses.v1.0.0.adls | 0 ...openEHR-EHR-COMPOSITION.parent.v1.0.0.adls | 55 +++ ...EHR-EHR-GENERIC_ENTRY.included.v1.0.0.adls | 72 ++++ ...to_flatten_parent_with_overlay.v1.0.0.adls | 111 +++++ .../json/delirium_observation_screening.json | 0 .../com/nedap/archie/json/dv_duration.json | 0 ...STER.element_with_two_dv_types.v1.0.0.adls | 0 ..._legacy_format_rules_section_as_array.json | 0 .../openEHR-EHR-CLUSTER.datavalues.v1.adls | 118 ++++++ .../com/nedap/archie/json/pablos_example.json | 0 .../com/nedap/archie/json/rm_object.json | 0 .../com/nedap/archie/json/snaq_rc_opt.js | 0 ...EHR-OBSERVATION.redefine_child.v1.0.0.adls | 0 ...OBSERVATION.spec_test_parent_2.v1.0.0.adls | 0 ...HR-OBSERVATION.motricity_index.v1.0.0.adls | 400 ++++++++++++++++++ .../nedap/archie/testutil}/DiffTestUtil.java | 0 .../DummyOperationalTemplateProvider.java | 0 .../ParseValidArchetypeTestUtil.java} | 3 +- .../com/nedap/archie/testutil/TestUtil.java | 0 501 files changed, 1310 insertions(+), 7 deletions(-) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/adlparser/RMPathQueryTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/aom/AttributeTupleConstraintsTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/aom/TerminologyCodeConstraintsTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/archetypevalidator/CKMArchetypeValidatorTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/creation/ExampleJsonInstanceGeneratorTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/creation/RMObjectCreatorTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/json/AOMJacksonTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/json/JSONSchemaCreatorTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/json/JacksonRMRoundTripTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/json/RMJacksonTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/json/flat/ArchetypeParsePostProcessorTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/json/flat/FlatJsonGeneratorTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/kryo/URISerializerTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/query/RMObjectAttributesTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/query/RMQueryContextTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rm/LocatableTest.java (100%) rename openehr-rm/src/test/java/com/nedap/archie/rminfo/{OpenEhrRmInfoLookupTest.java => OpenEhrRmInfoLookupPopulateTest.java} (88%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rminfo/openEhrRMInfoLookupTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/ConstraintToStringUtilTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/RmObjectValidatorTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/ValidateArchetypedTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/AttestationInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/EventContextInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/FeederAuditDetailsInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/FolderInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/IntervalInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/InvariantTestUtil.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ParticipationInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/PartyIdentifiedInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/PartyRelatedInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/TermMappingInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/PartyRefInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/UIDInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/VersionTreeIdInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/changecontrol/AuditDetailsInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/changecontrol/OriginalVersionInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datastructures/ElementInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datastructures/ItemTableInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/CodePhraseInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvDurationInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvEhrUriInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvIdentifierInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvIntervalInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvMultimediaInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvParsableInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvPeriodicTimeSpecificationInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvProportionInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvQuantityInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvTextInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvUriInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/ActionInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/CompositionInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/EhrInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/InstructionInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/IntervalEventInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/IsmTransitionInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/ObservationInvariantTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/validations/ArchetypeSlotValidationTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMPrimitiveObjectValidationTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMTupleValidationTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/rmutil/PathableUtilTest.java (100%) create mode 100755 openehr-rm/src/test/resources/adl2-tests/features/aom_structures/tuples/openEHR-EHR-OBSERVATION.ordinal_tuple.v1.0.0.adls create mode 100644 openehr-rm/src/test/resources/adl2-tests/rmobjectvalidity/openEHR-EHR-ELEMENT.element_with_required_attributes.v1.0.0.adls create mode 100644 openehr-rm/src/test/resources/adl2-tests/rmobjectvalidity/openEHR-EHR-ITEM_TREE.cardinality_testing.v1.0.0.adls create mode 100755 openehr-rm/src/test/resources/adl2-tests/validity/slots/openEHR-EHR-SECTION.slot_parent.v1.0.0.adls create mode 100644 openehr-rm/src/test/resources/basic.adl create mode 100644 openehr-rm/src/test/resources/basic_specialised.adls create mode 100644 openehr-rm/src/test/resources/basic_specialised2.adls rename {tools => openehr-rm}/src/test/resources/ckm-mirror/LICENSE (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/README.md (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/_repo.idx (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/_repo_lib.idx (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.address.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.anatomical_location.v1.1.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.anatomical_location_clock.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.anatomical_location_relative.v1.0.1.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.asa_status.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.auscultation_lung.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.case_identification.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.cessation_attempts.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.change.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.citation.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.clinical_evidence.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.consent_details.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.cormack_lehane.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.device.v1.0.1.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.dietary_nutrients.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.dietary_phytochemicals.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.distribution.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.environmental_conditions.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_abdomen.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_anus.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_breast.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_breasts.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_burn.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_chest.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_cranial_nerves.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_ears.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_anterior.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_aqueous.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_lens.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_posterior.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_pupil.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_retina.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_vitreous.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eyes.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_gait.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_heart.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lesion.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lip.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lips.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lung.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lungs.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_mouth.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_nervous_system.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_pattern.v0.0.2-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_penis.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_scrotum.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_skin.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_sputum.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_tongue.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_urethra.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_vulva.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_wound.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exclusion_exam.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exclusion_symptom_sign.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.family_prevalence.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.free_text.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.health_event.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.hip_arthroplasty_component.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.histopathology_findings.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.household.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.housing.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.hydration.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.imaging.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.imaging_result.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.individual_personal.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.individual_professional.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspection_body_fluid.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspection_cervix.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspection_rectum.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspection_vagina.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspired_oxygen.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.interpreter_details.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.issue.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.laboratory_test_analyte.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.laboratory_test_panel.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.language.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.level_of_exertion.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.lymph_node_metastases.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.macroscopy_colorectal_carcinoma.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.macroscopy_lung_carcinoma.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.medication_authorisation.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.medication_order_summary.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.medication_substance.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.medication_supply_amount.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.micronutrients.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_breast_carcinoma.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_colorectal_carcinoma.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_lung_carcinoma.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_lymphoma.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_melanoma.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_prostate_carcinoma.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.move-joint.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.move-spine.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.move.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.multimedia.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.notifiable_condition.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.nyha_heart_failure.v1.0.0-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.occupation.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.oedema.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.operative_procedure.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.organisation.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.outbreak_identification.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_prostate.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_rectum.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_testicle.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_vagina.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.percussion.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.person_name.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.physical_properties.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.physiological_monitoring.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.precise_location.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.problem_status.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.procedure_preparation.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.professional_role.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.refraction_details.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.religion.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.sense_of_smell.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.specimen.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.specimen_container.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.specimen_preparation.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.symptom_sign.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.symptom_sign_severity.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.synthesis_lymphoma.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.telecom_details.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.therapeutic_direction.v1.0.2.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.timing_daily.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.timing_repetition.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_stage_clinical.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_stage_pathological.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-breast.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-colorectal.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-lung_cancer.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-melanoma.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-prostate.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-breast.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-colorectal.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-lung.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-lymphoma.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-melanoma.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-prostate.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tumour_colorectal_staging_non_tnm.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tumour_invasion.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tumour_resection_margins.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.waveform.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.adverse_reaction_list.v1.1.1.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.encounter.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.event_summary.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.health_summary.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.medication_list.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.notification.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.prescription.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.problem_list.v1.0.1.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.report-procedure.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.report-result.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.report.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.request.v1.1.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.review.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.self_monitoring.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.transfer_summary.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.vaccination_list.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ADDRESS.address-provider.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ADDRESS.address.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ADDRESS.electronic_communication-provider.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ADDRESS.electronic_communication.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CAPABILITY.individual_credentials.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.biometric_identifier_iso.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.birth_data_additional_detail_br.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.high_level_address_other_data_br.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.identifier_other_details.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.individual_credentials_iso.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.individual_provider_credentials_iso.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_additional_data_br.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_additional_data_iso.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_birth_data_iso.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_death_data_iso.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_identifier-provider.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_identifier.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_other_birth_data_br.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_other_death_data.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.provider_identifier.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.registration_other_data.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ITEM_TREE.person_details.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ORGANISATION.organisation.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PARTY_IDENTITY.organisation_name.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PARTY_IDENTITY.person_name-individual_provider.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PARTY_IDENTITY.person_name.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PERSON.person-patient.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PERSON.person.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ROLE.healthcare_consumer.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ROLE.healthcare_provider_organisation.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ROLE.individual_provider.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ROLE.third_party_payer.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.care_plan.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.health_education.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.imaging_exam.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.informed_consent.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.medication.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.procedure.v1.2.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.review.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.transfusion.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/admin_entry/openEHR-EHR-ADMIN_ENTRY.admission.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.absence.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.advance_decision_refuse_treatment_uk.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.adverse_reaction_risk.v1.1.2.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.alcohol_use_summary.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.citation.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.clinical_synopsis.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.consumer_note.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.container.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.contraindication.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.device_summary.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.exclusion_global.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.exclusion_specific.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.family_history.v2.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.health_risk.v1.1.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.infant_feeding.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.infectious_disease_summary.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.menstrual_cycle_summary.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.obstetric_summary.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.physical_activity_summary.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.precaution.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.pregnancy_bf_status.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.pregnancy_summary.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.problem_diagnosis.v1.0.5.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.reason_for_encounter.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.recommendation.v1.1.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.smokeless_tobacco_summary.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.social_summary.v1.1.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.source.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.test.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.tobacco_smoking_summary.v1.0.1.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.triage.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.vaccination_summary.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.care_plan.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.health_education.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.informed_consent.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.medication_order.v1.0.1.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.notification.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.request-procedure.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.request.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.transfusion.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.apgar.v1.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.audiogram.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.autopsy.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.avpu.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.barthel.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.blood_match.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.blood_pressure.v1.1.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_mass_index.v2.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_segment.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_surface_area.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_temperature.v2.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_weight-adjusted.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_weight.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.braden_scale-child.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.braden_scale.v1.0.1.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.braden_scale_neonate.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.bristol_stool_scale.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.ccs_angina_status.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.cgas.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.child_growth.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.comfort_behaviour_scale.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.conference.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.container.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.critical_pain_observation_tool.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.demo.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.diabetic_wound_wagner.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.easi_score.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.ecg.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.ecog.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.edinburgh_pnd_scale.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.exam.v1.1.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.faeces.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fagerstrom.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fetal_heart.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fetal_movement.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fitzpatrick_skin_type.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fluid_balance.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fluid_input.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fluid_output.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.food_item.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fundoscopic_examination.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.glasgow_coma_scale.v1.0.2.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.hannallah_pain_scale.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.harris_hip_score.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.head_circumference.v1.0.1.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.height-adjusted.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.height.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.hip_circumference.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.honos.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.humpty_dumpty_falls_risk_assessment_tool.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.iga_eczema_treat.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.imaging_exam.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.indirect_oximetry.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.infant_feeding.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.intraocular_pressure.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.intravascular_pressure.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.laboratory_test_result.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.malinas_score.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.mantoux.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.menstrual_cycle.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.msfc_score.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.must.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.news_uk_rcp.v1.0.2.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.nine_hole_peg_test.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.oucher_pain_scale.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.paced_auditory_serial_addition_test.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pathology_test-blood_glucose.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pathology_test.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.patients_global_assessment_eczema_treat.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.penetration_aspiration_scale.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.physical_activity.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.poem_score.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pregnancy_test.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pulmonary_function.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pulse.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pulse_deficit.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.refraction.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.respiration.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.richmond_agitation_sedation_scale.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.sara_scale.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.scorad_score.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.skeletal_age.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.speech.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.story.v1.1.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.stroke_scale_neurological_assessment.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.substance_use-alcohol.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.substance_use-caffeine.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.substance_use-tobacco.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.substance_use.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.tanner.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.temperature.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.testicular_volume.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.third_party_observation.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.timed_25_foot_walk.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.urinalysis.v1.0.1.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.uterine_contractions.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.visual_acuity.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.visual_field_measurement.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.waist_circumference.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.waist_height_ratio.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.waist_hip_ratio.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.waterlow_score.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.adhoc.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.adverse_list.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.conclusion.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.diagnostic_reports.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.medication_order_list.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.problem_list.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.referral_details.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.soap.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.vital_signs.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/local/termsets/Route of Administration.xml (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.adhoc_cluster_heading.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.document_entry_metadata.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.ear_cleaning.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.education.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.exam_auditory_canal.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.exam_middle_ear.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.exam_pinna.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.exam_tympanic_membrane.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.home_environment.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.myringoplasty.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.myringotomy.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_of_cervix.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_of_fetus.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_of_uterus.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.sade.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.strategy.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.tos.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.triage_priority.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.care_plan.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.family_history.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.lifestyle_factors.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.obstetric_history.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.pregnancy_summary.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.progress_note.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.social_summary.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.therapeutic_precautions.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/action/openEHR-EHR-ACTION.pathology_test.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/action/openEHR-EHR-ACTION.service.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/admin_entry/openEHR-EHR-ADMIN_ENTRY.legal_constraint.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.differential_diagnosis.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.exposure.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.nutrition_summary.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.alcohol_audit.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.alcohol_use.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.audiogram_result.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.audiology_speech_test_result.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.behavioural_observation_audiometry_result.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.hearing_screening_result.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.mews_nt_rmp.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.phq.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.progress_note.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.psychiatric_risk_nt_rmp.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.rinne_weber_result.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.telecommunication.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.tobacco_use.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.tympanogram_226hz.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.tympanogram_hf.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/cluster/openEHR-EHR-CLUSTER.gender.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/cluster/openEHR-EHR-CLUSTER.mallampati_classification.v1.0.1.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/entry/observation/openEHR-EHR-OBSERVATION.chadsvas_score.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/entry/observation/openEHR-EHR-OBSERVATION.nutritional_risk_screening.v1.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/entry/observation/openEHR-EHR-OBSERVATION.stratify_no.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/uk.org.clinicalmodels/archetypes/entry/observation/openEHR-EHR-OBSERVATION.i_pss_prostate_score.v0.0.1-alpha.adls (100%) rename {tools => openehr-rm}/src/test/resources/ckm-mirror/remote/uk.org.clinicalmodels/archetypes/section/openEHR-EHR-SECTION.problems_and_diagnoses.v1.0.0.adls (100%) create mode 100644 openehr-rm/src/test/resources/com/nedap/archie/aom/openEHR-EHR-COMPOSITION.parent.v1.0.0.adls create mode 100644 openehr-rm/src/test/resources/com/nedap/archie/aom/openEHR-EHR-GENERIC_ENTRY.included.v1.0.0.adls create mode 100644 openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.to_flatten_parent_with_overlay.v1.0.0.adls rename {tools => openehr-rm}/src/test/resources/com/nedap/archie/json/delirium_observation_screening.json (100%) rename {tools => openehr-rm}/src/test/resources/com/nedap/archie/json/dv_duration.json (100%) rename {tools => openehr-rm}/src/test/resources/com/nedap/archie/json/flat/openEHR-EHR-CLUSTER.element_with_two_dv_types.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/com/nedap/archie/json/motricity_index_legacy_format_rules_section_as_array.json (100%) create mode 100644 openehr-rm/src/test/resources/com/nedap/archie/json/openEHR-EHR-CLUSTER.datavalues.v1.adls rename {tools => openehr-rm}/src/test/resources/com/nedap/archie/json/pablos_example.json (100%) rename {tools => openehr-rm}/src/test/resources/com/nedap/archie/json/rm_object.json (100%) rename {tools => openehr-rm}/src/test/resources/com/nedap/archie/json/snaq_rc_opt.js (100%) rename {tools => openehr-rm}/src/test/resources/com/nedap/archie/rmobjectvalidation/openEHR-EHR-OBSERVATION.redefine_child.v1.0.0.adls (100%) rename {tools => openehr-rm}/src/test/resources/com/nedap/archie/rmobjectvalidation/openEHR-EHR-OBSERVATION.spec_test_parent_2.v1.0.0.adls (100%) create mode 100644 openehr-rm/src/test/resources/com/nedap/archie/rules/evaluation/openEHR-EHR-OBSERVATION.motricity_index.v1.0.0.adls rename tools/src/{test/java/com/nedap/archie/diff => testFixtures/java/com/nedap/archie/testutil}/DiffTestUtil.java (100%) rename tools/src/{test => testFixtures}/java/com/nedap/archie/testutil/DummyOperationalTemplateProvider.java (100%) rename tools/src/{test/java/com/nedap/archie/flattener/specexamples/FlattenerTestUtil.java => testFixtures/java/com/nedap/archie/testutil/ParseValidArchetypeTestUtil.java} (87%) rename tools/src/{test => testFixtures}/java/com/nedap/archie/testutil/TestUtil.java (100%) diff --git a/tools/src/test/java/com/nedap/archie/adlparser/RMPathQueryTest.java b/openehr-rm/src/test/java/com/nedap/archie/adlparser/RMPathQueryTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/adlparser/RMPathQueryTest.java rename to openehr-rm/src/test/java/com/nedap/archie/adlparser/RMPathQueryTest.java diff --git a/tools/src/test/java/com/nedap/archie/aom/AttributeTupleConstraintsTest.java b/openehr-rm/src/test/java/com/nedap/archie/aom/AttributeTupleConstraintsTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/aom/AttributeTupleConstraintsTest.java rename to openehr-rm/src/test/java/com/nedap/archie/aom/AttributeTupleConstraintsTest.java diff --git a/tools/src/test/java/com/nedap/archie/aom/TerminologyCodeConstraintsTest.java b/openehr-rm/src/test/java/com/nedap/archie/aom/TerminologyCodeConstraintsTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/aom/TerminologyCodeConstraintsTest.java rename to openehr-rm/src/test/java/com/nedap/archie/aom/TerminologyCodeConstraintsTest.java diff --git a/tools/src/test/java/com/nedap/archie/archetypevalidator/CKMArchetypeValidatorTest.java b/openehr-rm/src/test/java/com/nedap/archie/archetypevalidator/CKMArchetypeValidatorTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/archetypevalidator/CKMArchetypeValidatorTest.java rename to openehr-rm/src/test/java/com/nedap/archie/archetypevalidator/CKMArchetypeValidatorTest.java diff --git a/tools/src/test/java/com/nedap/archie/creation/ExampleJsonInstanceGeneratorTest.java b/openehr-rm/src/test/java/com/nedap/archie/creation/ExampleJsonInstanceGeneratorTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/creation/ExampleJsonInstanceGeneratorTest.java rename to openehr-rm/src/test/java/com/nedap/archie/creation/ExampleJsonInstanceGeneratorTest.java diff --git a/tools/src/test/java/com/nedap/archie/creation/RMObjectCreatorTest.java b/openehr-rm/src/test/java/com/nedap/archie/creation/RMObjectCreatorTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/creation/RMObjectCreatorTest.java rename to openehr-rm/src/test/java/com/nedap/archie/creation/RMObjectCreatorTest.java diff --git a/tools/src/test/java/com/nedap/archie/json/AOMJacksonTest.java b/openehr-rm/src/test/java/com/nedap/archie/json/AOMJacksonTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/json/AOMJacksonTest.java rename to openehr-rm/src/test/java/com/nedap/archie/json/AOMJacksonTest.java diff --git a/tools/src/test/java/com/nedap/archie/json/JSONSchemaCreatorTest.java b/openehr-rm/src/test/java/com/nedap/archie/json/JSONSchemaCreatorTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/json/JSONSchemaCreatorTest.java rename to openehr-rm/src/test/java/com/nedap/archie/json/JSONSchemaCreatorTest.java diff --git a/tools/src/test/java/com/nedap/archie/json/JacksonRMRoundTripTest.java b/openehr-rm/src/test/java/com/nedap/archie/json/JacksonRMRoundTripTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/json/JacksonRMRoundTripTest.java rename to openehr-rm/src/test/java/com/nedap/archie/json/JacksonRMRoundTripTest.java diff --git a/tools/src/test/java/com/nedap/archie/json/RMJacksonTest.java b/openehr-rm/src/test/java/com/nedap/archie/json/RMJacksonTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/json/RMJacksonTest.java rename to openehr-rm/src/test/java/com/nedap/archie/json/RMJacksonTest.java diff --git a/tools/src/test/java/com/nedap/archie/json/flat/ArchetypeParsePostProcessorTest.java b/openehr-rm/src/test/java/com/nedap/archie/json/flat/ArchetypeParsePostProcessorTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/json/flat/ArchetypeParsePostProcessorTest.java rename to openehr-rm/src/test/java/com/nedap/archie/json/flat/ArchetypeParsePostProcessorTest.java diff --git a/tools/src/test/java/com/nedap/archie/json/flat/FlatJsonGeneratorTest.java b/openehr-rm/src/test/java/com/nedap/archie/json/flat/FlatJsonGeneratorTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/json/flat/FlatJsonGeneratorTest.java rename to openehr-rm/src/test/java/com/nedap/archie/json/flat/FlatJsonGeneratorTest.java diff --git a/tools/src/test/java/com/nedap/archie/kryo/URISerializerTest.java b/openehr-rm/src/test/java/com/nedap/archie/kryo/URISerializerTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/kryo/URISerializerTest.java rename to openehr-rm/src/test/java/com/nedap/archie/kryo/URISerializerTest.java diff --git a/tools/src/test/java/com/nedap/archie/query/RMObjectAttributesTest.java b/openehr-rm/src/test/java/com/nedap/archie/query/RMObjectAttributesTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/query/RMObjectAttributesTest.java rename to openehr-rm/src/test/java/com/nedap/archie/query/RMObjectAttributesTest.java diff --git a/tools/src/test/java/com/nedap/archie/query/RMQueryContextTest.java b/openehr-rm/src/test/java/com/nedap/archie/query/RMQueryContextTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/query/RMQueryContextTest.java rename to openehr-rm/src/test/java/com/nedap/archie/query/RMQueryContextTest.java diff --git a/tools/src/test/java/com/nedap/archie/rm/LocatableTest.java b/openehr-rm/src/test/java/com/nedap/archie/rm/LocatableTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rm/LocatableTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rm/LocatableTest.java diff --git a/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookupTest.java b/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookupPopulateTest.java similarity index 88% rename from openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookupTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookupPopulateTest.java index 02e50fd04..d12019b41 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookupTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookupPopulateTest.java @@ -3,9 +3,6 @@ import com.nedap.archie.base.RMObject; import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import org.junit.Test; -import org.reflections.Reflections; -import org.reflections.scanners.Scanners; -import org.reflections.util.ConfigurationBuilder; import java.io.FileWriter; import java.io.IOException; @@ -14,9 +11,8 @@ import java.util.ArrayList; import java.util.Collections; import java.util.Set; -import java.util.stream.Collectors; -public class OpenEhrRmInfoLookupTest { +public class OpenEhrRmInfoLookupPopulate { @Test public void testFindAllClassesInRm() throws IOException { OpenEhrRmInfoLookup infoLookup = OpenEhrRmInfoLookup.getInstance(); diff --git a/tools/src/test/java/com/nedap/archie/rminfo/openEhrRMInfoLookupTest.java b/openehr-rm/src/test/java/com/nedap/archie/rminfo/openEhrRMInfoLookupTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rminfo/openEhrRMInfoLookupTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rminfo/openEhrRMInfoLookupTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/ConstraintToStringUtilTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/ConstraintToStringUtilTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/ConstraintToStringUtilTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/ConstraintToStringUtilTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/RmObjectValidatorTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/RmObjectValidatorTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/RmObjectValidatorTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/RmObjectValidatorTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/ValidateArchetypedTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/ValidateArchetypedTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/ValidateArchetypedTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/ValidateArchetypedTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/AttestationInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/AttestationInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/AttestationInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/AttestationInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/EventContextInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/EventContextInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/EventContextInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/EventContextInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/FeederAuditDetailsInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/FeederAuditDetailsInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/FeederAuditDetailsInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/FeederAuditDetailsInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/FolderInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/FolderInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/FolderInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/FolderInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/IntervalInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/IntervalInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/IntervalInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/IntervalInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/InvariantTestUtil.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/InvariantTestUtil.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/InvariantTestUtil.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/InvariantTestUtil.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ParticipationInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ParticipationInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ParticipationInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ParticipationInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/PartyIdentifiedInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/PartyIdentifiedInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/PartyIdentifiedInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/PartyIdentifiedInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/PartyRelatedInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/PartyRelatedInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/PartyRelatedInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/PartyRelatedInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/TermMappingInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/TermMappingInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/TermMappingInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/TermMappingInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/PartyRefInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/PartyRefInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/PartyRefInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/PartyRefInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/UIDInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/UIDInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/UIDInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/UIDInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/VersionTreeIdInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/VersionTreeIdInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/VersionTreeIdInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/base/VersionTreeIdInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/changecontrol/AuditDetailsInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/changecontrol/AuditDetailsInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/changecontrol/AuditDetailsInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/changecontrol/AuditDetailsInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/changecontrol/OriginalVersionInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/changecontrol/OriginalVersionInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/changecontrol/OriginalVersionInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/changecontrol/OriginalVersionInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datastructures/ElementInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datastructures/ElementInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datastructures/ElementInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datastructures/ElementInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datastructures/ItemTableInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datastructures/ItemTableInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datastructures/ItemTableInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datastructures/ItemTableInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/CodePhraseInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/CodePhraseInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/CodePhraseInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/CodePhraseInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvDurationInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvDurationInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvDurationInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvDurationInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvEhrUriInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvEhrUriInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvEhrUriInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvEhrUriInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvIdentifierInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvIdentifierInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvIdentifierInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvIdentifierInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvIntervalInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvIntervalInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvIntervalInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvIntervalInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvMultimediaInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvMultimediaInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvMultimediaInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvMultimediaInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvParsableInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvParsableInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvParsableInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvParsableInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvPeriodicTimeSpecificationInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvPeriodicTimeSpecificationInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvPeriodicTimeSpecificationInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvPeriodicTimeSpecificationInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvProportionInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvProportionInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvProportionInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvProportionInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvQuantityInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvQuantityInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvQuantityInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvQuantityInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvTextInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvTextInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvTextInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvTextInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvUriInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvUriInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvUriInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/datavalues/DvUriInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/ActionInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/ActionInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/ActionInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/ActionInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/CompositionInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/CompositionInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/CompositionInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/CompositionInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/EhrInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/EhrInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/EhrInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/EhrInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/InstructionInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/InstructionInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/InstructionInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/InstructionInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/IntervalEventInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/IntervalEventInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/IntervalEventInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/IntervalEventInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/IsmTransitionInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/IsmTransitionInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/IsmTransitionInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/IsmTransitionInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/ObservationInvariantTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/ObservationInvariantTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/ObservationInvariantTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/invariants/ehr/ObservationInvariantTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/ArchetypeSlotValidationTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/validations/ArchetypeSlotValidationTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/ArchetypeSlotValidationTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/validations/ArchetypeSlotValidationTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMPrimitiveObjectValidationTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMPrimitiveObjectValidationTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMPrimitiveObjectValidationTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMPrimitiveObjectValidationTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMTupleValidationTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMTupleValidationTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMTupleValidationTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/validations/RMTupleValidationTest.java diff --git a/tools/src/test/java/com/nedap/archie/rmutil/PathableUtilTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmutil/PathableUtilTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/rmutil/PathableUtilTest.java rename to openehr-rm/src/test/java/com/nedap/archie/rmutil/PathableUtilTest.java diff --git a/openehr-rm/src/test/resources/adl2-tests/features/aom_structures/tuples/openEHR-EHR-OBSERVATION.ordinal_tuple.v1.0.0.adls b/openehr-rm/src/test/resources/adl2-tests/features/aom_structures/tuples/openEHR-EHR-OBSERVATION.ordinal_tuple.v1.0.0.adls new file mode 100755 index 000000000..c669addc5 --- /dev/null +++ b/openehr-rm/src/test/resources/adl2-tests/features/aom_structures/tuples/openEHR-EHR-OBSERVATION.ordinal_tuple.v1.0.0.adls @@ -0,0 +1,99 @@ +archetype (adl_version=2.0.5; rm_release=1.0.2) + openEHR-EHR-OBSERVATION.ordinal_tuple.v1.0.0 + +language + original_language = <[ISO_639-1::en]> + +description + custodian_namespace = <"org.openehr"> + custodian_organisation = <"openEHR Foundation "> + + original_author = < + ["name"] = <"Thomas Beale"> + ["email"] = <"thomas.beale@openEHR.org"> + ["organisation"] = <"openEHR Foundation "> + ["date"] = <"2013-08-14"> + > + details = < + ["en"] = < + language = <[ISO_639-1::en]> + purpose = <"Example of a tuple used to model an 'ordinal' reference model concept. The latter is one in which there is logically a 2-column list of {value, symbol} pairs (the value is typically an Integer). The tuple constraint provides a nice way to model this, by limiting the possible pairs (mostly meaningless) to just those that make sense in the domain."> + keywords = <"ADL", "test", "tuples", "ordinals"> + > + > + + lifecycle_state = <"published"> + other_details = < + ["regression"] = <"PASS"> + > + copyright = <"Copyright © 2013 openEHR Foundation "> + licence = <"Creative Commons CC-BY-SA "> + +definition + OBSERVATION[id1] matches { -- Apgar score + data matches { + HISTORY[id3] matches { + events cardinality matches {1..*; unordered} matches { + POINT_EVENT[id4] occurrences matches {0..1} matches { -- 1 minute + data matches { + ITEM_LIST[id2] matches { + items cardinality matches {1..6; ordered} matches { + ELEMENT[id10] occurrences matches {0..1} matches { -- Respiratory effort + value matches { + DV_ORDINAL[id11] matches { + [value, symbol] matches { + [{0}, {[at11]}], + [{1}, {[at12]}], + [{2}, {[at13]}] + } + } + } + } + } + } + } + } + } + } + } + } + +terminology + term_definitions = < + ["en"] = < + ["id1"] = < + text = <"Apgar score"> + description = <"Clinical score derived from assessment of respiratory effort, heart rate, reflex irritability, muscle tone and skin colour."> + > + ["id4"] = < + text = <"1 minute"> + description = <"Apgar score 1 minute after birth."> + > + ["id10"] = < + text = <"Respiratory effort"> + description = <"Observation of the infant's respiratory effort."> + > + ["at11"] = < + text = <"Absent"> + description = <"No effort to breath."> + > + ["at12"] = < + text = <"Weak or irregular"> + description = <"Some effort to breath, moving chest."> + > + ["at13"] = < + text = <"Normal"> + description = <"Breathing normally or crying."> + > + ["ac1"] = < + text = <"Respiratory effort"> + description = <"Observation of the infant's respiratory effort."> + > + > + > + value_sets = < + ["ac1"] = < + id = <"ac1"> + members = <"at11", "at12", "at13"> + > + > diff --git a/openehr-rm/src/test/resources/adl2-tests/rmobjectvalidity/openEHR-EHR-ELEMENT.element_with_required_attributes.v1.0.0.adls b/openehr-rm/src/test/resources/adl2-tests/rmobjectvalidity/openEHR-EHR-ELEMENT.element_with_required_attributes.v1.0.0.adls new file mode 100644 index 000000000..5138f32a1 --- /dev/null +++ b/openehr-rm/src/test/resources/adl2-tests/rmobjectvalidity/openEHR-EHR-ELEMENT.element_with_required_attributes.v1.0.0.adls @@ -0,0 +1,39 @@ +archetype (adl_version=2.0.7; rm_release=1.0.2) + openEHR-EHR-ELEMENT.element_with_required_attributes.v1.0.0 + +language + original_language = <[ISO_639-1::en]> + +description + original_author = < + ["name"] = <"Stefan Teijgeler"> + > + details = < + ["en"] = < + language = <[ISO_639-1::en]> + purpose = <"Test that a required attribute is present"> + copyright = <"copyright (c) 2008 The openEHR Foundation"> + > + > + lifecycle_state = <"unstable"> + +definition + ELEMENT[id1] matches { + value matches { + DV_PROPORTION[id2] occurrences matches {1} + } + } + +terminology + term_definitions = < + ["en"] = < + ["id1"] = < + text = <" "> + description = <" "> + > + ["id2"] = < + text = <" "> + description = <" "> + > + > + > diff --git a/openehr-rm/src/test/resources/adl2-tests/rmobjectvalidity/openEHR-EHR-ITEM_TREE.cardinality_testing.v1.0.0.adls b/openehr-rm/src/test/resources/adl2-tests/rmobjectvalidity/openEHR-EHR-ITEM_TREE.cardinality_testing.v1.0.0.adls new file mode 100644 index 000000000..913fd7d45 --- /dev/null +++ b/openehr-rm/src/test/resources/adl2-tests/rmobjectvalidity/openEHR-EHR-ITEM_TREE.cardinality_testing.v1.0.0.adls @@ -0,0 +1,52 @@ +archetype (adl_version=2.0.5; rm_release=1.0.4) + openEHR-EHR-ITEM_TREE.cardinality_testing.v1.0.0 + +language + original_language = <[ISO_639-1::en]> + +description + original_author = < + ["name"] = <"MK"> + > + lifecycle_state = <"DRAFT"> + details = < + ["en"] = < + language = <[ISO-639_1::en]> + purpose = <"Testing"> + > + > + +definition + ITEM_TREE[id1] matches { -- Cardinality Testing + items cardinality matches {1..2; unique} matches { + ELEMENT[id7] occurrences matches {0..1} matches { -- Text 1 + value matches { + DV_TEXT[id8] + } + } + ELEMENT[id13] occurrences matches {0..1} matches { -- Text 2 + value matches { + DV_TEXT[id14] + } + } + } + } + +terminology + term_definitions = < + ["en"] = < + ["id1"] = < + text = <"Cardinality Testing"> + description = <"Cardinality testing"> + code = <"id1"> + > + ["id7"] = < + text = <"Text 1"> + description = <""> + > + ["id13"] = < + text = <"Text 2"> + description = <""> + > + > + > diff --git a/openehr-rm/src/test/resources/adl2-tests/validity/slots/openEHR-EHR-SECTION.slot_parent.v1.0.0.adls b/openehr-rm/src/test/resources/adl2-tests/validity/slots/openEHR-EHR-SECTION.slot_parent.v1.0.0.adls new file mode 100755 index 000000000..c198d8963 --- /dev/null +++ b/openehr-rm/src/test/resources/adl2-tests/validity/slots/openEHR-EHR-SECTION.slot_parent.v1.0.0.adls @@ -0,0 +1,49 @@ +archetype (adl_version=2.0.7; rm_release=1.0.2) + openEHR-EHR-SECTION.slot_parent.v1.0.0 + +language + original_language = <[ISO_639-1::en]> + +description + original_author = < + ["name"] = <"Thomas Beale"> + ["organisation"] = <"Ocean Informatics"> + ["email"] = <"thomas.beale@oceaninformatics.com"> + ["date"] = <"14/03/2010"> + > + details = < + ["en"] = < + language = <[ISO_639-1::en]> + purpose = <"Test slot archetype for testing redefnitions and filling"> + > + > + lifecycle_state = <"unmanaged"> + other_details = < + ["regression"] = <"PASS"> + > + +definition + SECTION[id1] matches { -- Slot section + items cardinality matches {1..*; unordered} matches { + allow_archetype OBSERVATION[id2] occurrences matches {0..1} matches { -- Vital signs + include + archetype_id/value matches {/openEHR-EHR-OBSERVATION\.redefine([a-zA-Z0-9_]+)*\.v1.*/} + exclude + archetype_id/value matches {/.*/} + } + } + } + +terminology + term_definitions = < + ["en"] = < + ["id1"] = < + text = <"Slot section"> + description = <"Slot section"> + > + ["id2"] = < + text = <"Vital signs"> + description = <"Vital signs observations."> + > + > + > diff --git a/openehr-rm/src/test/resources/basic.adl b/openehr-rm/src/test/resources/basic.adl new file mode 100644 index 000000000..a30f480c2 --- /dev/null +++ b/openehr-rm/src/test/resources/basic.adl @@ -0,0 +1,191 @@ +archetype (adl_version=2.0.5; rm_release=1.0.2; generated; controlled; build_uid=B430138C-1DD2-42EF-B54C-633909437054) + openEHR-EHR-COMPOSITION.annotations_rm_path.v1.0.0 + +language + original_language = <[ISO_639-1::en]> + +description + original_author = < + ["name"] = <"Thomas Beale"> + ["organisation"] = <"openEHR Foundation "> + ["email"] = <"thomas.beale@openEHR.org"> + ["date"] = <"2010-11-09"> + > + details = < + ["en"] = < + language = <[ISO_639-1::en]> + purpose = <"Demonstrate annotations on pure Reference Model paths, i.e. paths that must be valid, but have not been archetyped. They are thus still valid for annotations."> + use = <"The typical use is to add design notes about RM data items that are not archetyped (i.e. don't specifically need to be constrained) but whose meaning is specific to the archetype."> + keywords = <"ADL", "test"> + > + > + lifecycle_state = <"published"> + other_details = < + ["regression"] = <"PASS"> + > + copyright = <"Copyright © 2010 openEHR Foundation "> + +definition + COMPOSITION[id1] matches { -- Prescription + category matches { + DV_CODED_TEXT[id10] matches { + defining_code matches {[at17]} + } + } + context matches { + EVENT_CONTEXT[id11] matches { + other_context matches { + ITEM_TREE[id2] matches { + items matches { + CLUSTER[id3] occurrences matches {0..*} matches { -- Qualification + items matches { + ELEMENT[id4] occurrences matches {0..1} matches { -- OrderID + value matches { + DV_EHR_URI[id12] + DV_IDENTIFIER[id13] + } + } + ELEMENT[id5] occurrences matches {0..*} matches { -- Endorsement + value matches { + DV_TEXT[id14] matches { + value matches {"Robert", "Rick", "Clara"} + } + } + } + ELEMENT[id6] occurrences matches {0..*} matches { -- AuthorisationID + value matches { + DV_IDENTIFIER[id15] + } + } + ELEMENT[id7] occurrences matches {0..*} matches { -- Comment + value matches { + DV_QUANTITY[id16] matches { + [units, magnitude] matches { + [{"kg"}, {|5.0..300.0|}], + [{"lb"}, {|10.0..600.0|}] + } + precision + } + } + } + } + } + } + } + } + } + } + content cardinality matches {1..*; unordered} matches { + allow_archetype INSTRUCTION[id8] occurrences matches {1..*} matches { -- Medication instruction + include + archetype_id/value matches {/openEHR-EHR-INSTRUCTION\.medication\.v1/} + } + allow_archetype ENTRY[id9] occurrences matches {0..*} matches { -- Other data + include + archetype_id/value matches {/.*/} + } + } + } + +terminology + term_definitions = < + ["en"] = < + ["id1"] = < + text = <"Prescription"> + description = <"A document authorising supply and administration of one or more medicines, vaccines or other therapeutic goods (as a collection of medication instrations) to be communicated to a dispensing or administration provider."> + > + ["id3"] = < + text = <"Qualification"> + description = <"Qualifications on any medication order included in the prescription."> + > + ["id4"] = < + text = <"OrderID"> + description = <"The path or ID of the order referenced. If there is no OrderID then the endorsement relates to the entire prescription."> + > + ["id5"] = < + text = <"Endorsement"> + description = <"Asserting that a special condition applies such as approval for enhanced subsidy or concurrent supply. Australian examples include Regulation 24 (PBS), Hardship Conditions (RPBS) or CTG for 'close the gap'."> + > + ["id6"] = < + text = <"AuthorisationID"> + description = <"An identifier authorising prescription, dispensing or reimbursement for this medication order."> + > + ["id7"] = < + text = <"Comment"> + description = <"Comment on any qualification."> + extra = <"Extra value"> + > + ["id8"] = < + text = <"Medication instruction"> + description = <"Contains one or more medication instructions to be supplied."> + > + ["id9"] = < + text = <"Other data"> + description = <"Other observational or relevant data."> + > + ["at17"] = < + text = <"event"> + description = <"event"> + > + > + ["nl"] = < + ["id1"] = < + text = <"Recept"> + description = <"Een document waarmee uitgifte van een of meerdere medicijnen of hulpmiddel wordt geautoriseerd."> + > + ["id3"] = < + text = <"Kwalificatie"> + description = <"Qualifications on any medication order included in the prescription."> + > + ["id4"] = < + text = <"OrderID"> + description = <"The path or ID of the order referenced. If there is no OrderID then the endorsement relates to the entire prescription."> + > + ["id5"] = < + text = <"Endorsement"> + description = <"Asserting that a special condition applies such as approval for enhanced subsidy or concurrent supply. Australian examples include Regulation 24 (PBS), Hardship Conditions (RPBS) or CTG for 'close the gap'."> + > + ["id6"] = < + text = <"AuthorisationID"> + description = <"An identifier authorising prescription, dispensing or reimbursement for this medication order."> + > + ["id7"] = < + text = <"Comment"> + description = <"Comment on any qualification."> + extra = <"Extra value"> + > + ["id8"] = < + text = <"Medication instruction"> + description = <"Contains one or more medication instructions to be supplied."> + > + ["id9"] = < + text = <"Other data"> + description = <"Other observational or relevant data."> + > + ["at17"] = < + text = <"event"> + description = <"event"> + > + > + > + term_bindings = < + ["openehr"] = < + ["at17"] = + > + > + +annotations + documentation = < + ["en"] = < + ["/context/start_time"] = < + ["test"] = <"XXXX"> + ["local_name"] = <"consultation start time"> + > + ["/context/location"] = < + ["design note"] = <"Note on use of the non-archteyped context/location RM element in this data"> + > + ["/context/health_care_facility/name"] = < + ["design note"] = <"Note on use of non-archteyped context/health_care_facility/name RM element in this data"> + > + > + > \ No newline at end of file diff --git a/openehr-rm/src/test/resources/basic_specialised.adls b/openehr-rm/src/test/resources/basic_specialised.adls new file mode 100644 index 000000000..70746c99a --- /dev/null +++ b/openehr-rm/src/test/resources/basic_specialised.adls @@ -0,0 +1,59 @@ +archetype (adl_version=2.0.5; rm_release=1.0.4; generated) + openEHR-EHR-COMPOSITION.prescription_specialised.v0.0.1 + +specialize + openEHR-EHR-COMPOSITION.annotations_rm_path.v1.0.0 + +language + original_language = <[ISO_639-1::en]> + +description + original_author = < + ["name"] = <"MK & VP"> + > + lifecycle_state = <"unmanaged"> + details = < + ["en"] = < + language = <[ISO-639_1::en]> + purpose = <"testing"> + > + > + +definition + COMPOSITION[id1.1] matches { -- Prescription specialised + /context[id11]/other_context[id2]/items[id3]/items matches { + ELEMENT[id5.1] -- Endorsement specialized + ELEMENT[id5] occurrences matches {0} -- Endorsement + } + } + +terminology + term_definitions = < + ["en"] = < + ["id1.1"] = < + text = <"Prescription specialised"> + description = <"testing"> + code = <"id1"> + > + ["id5.1"] = < + text = <"Endorsement specialized"> + description = <"Asserting that a special condition applies such as approval for enhanced subsidy or concurrent supply. Australian examples include Regulation 24 (PBS), Hardship Conditions (RPBS) or CTG for 'close the gap'."> + > + > + > + +annotations + documentation = < + ["en"] = < + ["/context/start_time"] = < + ["test"] = <"XXXX"> + ["local_name"] = <"consultation start time"> + > + ["/context/location"] = < + ["design note"] = <"Note on use of the non-archteyped context/location RM element in this data"> + > + ["/context/health_care_facility/name"] = < + ["design note"] = <"Note on use of non-archteyped context/health_care_facility/name RM element in this data"> + > + > + > diff --git a/openehr-rm/src/test/resources/basic_specialised2.adls b/openehr-rm/src/test/resources/basic_specialised2.adls new file mode 100644 index 000000000..2d879db53 --- /dev/null +++ b/openehr-rm/src/test/resources/basic_specialised2.adls @@ -0,0 +1,63 @@ +archetype (adl_version=2.0.5; rm_release=1.0.4; generated) + openEHR-EHR-COMPOSITION.basic_specialised2.v0.0.1 + +specialize + openEHR-EHR-COMPOSITION.prescription_specialised.v0.0.1 + +language + original_language = <[ISO_639-1::en]> + +description + original_author = < + ["name"] = <"MK"> + > + lifecycle_state = <"unmanaged"> + details = < + ["en"] = < + language = <[ISO-639_1::en]> + purpose = <"Testing"> + > + > + +definition + COMPOSITION[id1.1.1] matches { -- prescription specialised twice + /context[id11]/other_context[id2]/items[id3]/items matches { + ELEMENT[id5.1.1] -- Endorsement specialized twice + ELEMENT[id6.0.1] -- AuthorisationID + } + } + +terminology + term_definitions = < + ["en"] = < + ["id1.1.1"] = < + text = <"prescription specialised twice"> + description = <"Testing of twice specialised elements"> + code = <"id1"> + > + ["id5.1.1"] = < + text = <"Endorsement specialized twice"> + description = <"Asserting that a special condition applies such as approval for enhanced subsidy or concurrent supply. Australian examples include Regulation 24 (PBS), Hardship Conditions (RPBS) or CTG for 'close the gap'."> + > + ["id6.0.1"] = < + text = <"AuthorisationID"> + description = <"An identifier authorising prescription, dispensing or reimbursement for this medication order."> + > + > + > + +annotations + documentation = < + ["en"] = < + ["/context/start_time"] = < + ["test"] = <"XXXX"> + ["local_name"] = <"consultation start time"> + > + ["/context/location"] = < + ["design note"] = <"Note on use of the non-archteyped context/location RM element in this data"> + > + ["/context/health_care_facility/name"] = < + ["design note"] = <"Note on use of non-archteyped context/health_care_facility/name RM element in this data"> + > + > + > diff --git a/tools/src/test/resources/ckm-mirror/LICENSE b/openehr-rm/src/test/resources/ckm-mirror/LICENSE similarity index 100% rename from tools/src/test/resources/ckm-mirror/LICENSE rename to openehr-rm/src/test/resources/ckm-mirror/LICENSE diff --git a/tools/src/test/resources/ckm-mirror/README.md b/openehr-rm/src/test/resources/ckm-mirror/README.md similarity index 100% rename from tools/src/test/resources/ckm-mirror/README.md rename to openehr-rm/src/test/resources/ckm-mirror/README.md diff --git a/tools/src/test/resources/ckm-mirror/_repo.idx b/openehr-rm/src/test/resources/ckm-mirror/_repo.idx similarity index 100% rename from tools/src/test/resources/ckm-mirror/_repo.idx rename to openehr-rm/src/test/resources/ckm-mirror/_repo.idx diff --git a/tools/src/test/resources/ckm-mirror/_repo_lib.idx b/openehr-rm/src/test/resources/ckm-mirror/_repo_lib.idx similarity index 100% rename from tools/src/test/resources/ckm-mirror/_repo_lib.idx rename to openehr-rm/src/test/resources/ckm-mirror/_repo_lib.idx diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.address.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.address.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.address.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.address.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.anatomical_location.v1.1.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.anatomical_location.v1.1.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.anatomical_location.v1.1.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.anatomical_location.v1.1.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.anatomical_location_clock.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.anatomical_location_clock.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.anatomical_location_clock.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.anatomical_location_clock.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.anatomical_location_relative.v1.0.1.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.anatomical_location_relative.v1.0.1.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.anatomical_location_relative.v1.0.1.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.anatomical_location_relative.v1.0.1.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.asa_status.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.asa_status.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.asa_status.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.asa_status.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.auscultation_lung.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.auscultation_lung.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.auscultation_lung.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.auscultation_lung.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.case_identification.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.case_identification.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.case_identification.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.case_identification.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.cessation_attempts.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.cessation_attempts.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.cessation_attempts.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.cessation_attempts.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.change.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.change.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.change.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.change.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.citation.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.citation.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.citation.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.citation.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.clinical_evidence.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.clinical_evidence.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.clinical_evidence.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.clinical_evidence.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.consent_details.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.consent_details.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.consent_details.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.consent_details.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.cormack_lehane.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.cormack_lehane.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.cormack_lehane.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.cormack_lehane.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.device.v1.0.1.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.device.v1.0.1.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.device.v1.0.1.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.device.v1.0.1.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.dietary_nutrients.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.dietary_nutrients.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.dietary_nutrients.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.dietary_nutrients.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.dietary_phytochemicals.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.dietary_phytochemicals.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.dietary_phytochemicals.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.dietary_phytochemicals.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.distribution.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.distribution.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.distribution.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.distribution.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.environmental_conditions.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.environmental_conditions.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.environmental_conditions.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.environmental_conditions.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_abdomen.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_abdomen.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_abdomen.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_abdomen.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_anus.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_anus.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_anus.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_anus.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_breast.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_breast.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_breast.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_breast.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_breasts.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_breasts.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_breasts.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_breasts.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_burn.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_burn.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_burn.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_burn.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_chest.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_chest.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_chest.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_chest.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_cranial_nerves.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_cranial_nerves.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_cranial_nerves.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_cranial_nerves.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_ears.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_ears.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_ears.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_ears.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_anterior.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_anterior.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_anterior.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_anterior.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_aqueous.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_aqueous.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_aqueous.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_aqueous.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_lens.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_lens.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_lens.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_lens.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_posterior.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_posterior.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_posterior.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_posterior.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_pupil.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_pupil.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_pupil.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_pupil.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_retina.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_retina.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_retina.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_retina.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_vitreous.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_vitreous.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_vitreous.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eye_vitreous.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eyes.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eyes.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eyes.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_eyes.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_gait.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_gait.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_gait.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_gait.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_heart.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_heart.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_heart.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_heart.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lesion.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lesion.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lesion.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lesion.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lip.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lip.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lip.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lip.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lips.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lips.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lips.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lips.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lung.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lung.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lung.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lung.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lungs.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lungs.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lungs.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_lungs.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_mouth.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_mouth.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_mouth.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_mouth.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_nervous_system.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_nervous_system.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_nervous_system.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_nervous_system.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_pattern.v0.0.2-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_pattern.v0.0.2-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_pattern.v0.0.2-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_pattern.v0.0.2-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_penis.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_penis.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_penis.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_penis.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_scrotum.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_scrotum.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_scrotum.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_scrotum.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_skin.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_skin.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_skin.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_skin.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_sputum.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_sputum.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_sputum.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_sputum.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_tongue.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_tongue.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_tongue.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_tongue.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_urethra.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_urethra.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_urethra.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_urethra.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_vulva.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_vulva.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_vulva.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_vulva.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_wound.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_wound.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_wound.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exam_wound.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exclusion_exam.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exclusion_exam.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exclusion_exam.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exclusion_exam.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exclusion_symptom_sign.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exclusion_symptom_sign.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exclusion_symptom_sign.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.exclusion_symptom_sign.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.family_prevalence.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.family_prevalence.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.family_prevalence.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.family_prevalence.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.free_text.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.free_text.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.free_text.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.free_text.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.health_event.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.health_event.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.health_event.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.health_event.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.hip_arthroplasty_component.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.hip_arthroplasty_component.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.hip_arthroplasty_component.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.hip_arthroplasty_component.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.histopathology_findings.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.histopathology_findings.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.histopathology_findings.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.histopathology_findings.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.household.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.household.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.household.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.household.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.housing.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.housing.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.housing.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.housing.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.hydration.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.hydration.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.hydration.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.hydration.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.imaging.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.imaging.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.imaging.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.imaging.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.imaging_result.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.imaging_result.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.imaging_result.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.imaging_result.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.individual_personal.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.individual_personal.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.individual_personal.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.individual_personal.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.individual_professional.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.individual_professional.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.individual_professional.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.individual_professional.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspection_body_fluid.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspection_body_fluid.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspection_body_fluid.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspection_body_fluid.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspection_cervix.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspection_cervix.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspection_cervix.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspection_cervix.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspection_rectum.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspection_rectum.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspection_rectum.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspection_rectum.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspection_vagina.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspection_vagina.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspection_vagina.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspection_vagina.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspired_oxygen.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspired_oxygen.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspired_oxygen.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.inspired_oxygen.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.interpreter_details.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.interpreter_details.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.interpreter_details.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.interpreter_details.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.issue.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.issue.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.issue.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.issue.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.laboratory_test_analyte.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.laboratory_test_analyte.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.laboratory_test_analyte.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.laboratory_test_analyte.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.laboratory_test_panel.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.laboratory_test_panel.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.laboratory_test_panel.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.laboratory_test_panel.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.language.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.language.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.language.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.language.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.level_of_exertion.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.level_of_exertion.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.level_of_exertion.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.level_of_exertion.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.lymph_node_metastases.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.lymph_node_metastases.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.lymph_node_metastases.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.lymph_node_metastases.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.macroscopy_colorectal_carcinoma.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.macroscopy_colorectal_carcinoma.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.macroscopy_colorectal_carcinoma.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.macroscopy_colorectal_carcinoma.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.macroscopy_lung_carcinoma.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.macroscopy_lung_carcinoma.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.macroscopy_lung_carcinoma.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.macroscopy_lung_carcinoma.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.medication_authorisation.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.medication_authorisation.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.medication_authorisation.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.medication_authorisation.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.medication_order_summary.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.medication_order_summary.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.medication_order_summary.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.medication_order_summary.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.medication_substance.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.medication_substance.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.medication_substance.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.medication_substance.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.medication_supply_amount.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.medication_supply_amount.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.medication_supply_amount.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.medication_supply_amount.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.micronutrients.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.micronutrients.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.micronutrients.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.micronutrients.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_breast_carcinoma.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_breast_carcinoma.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_breast_carcinoma.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_breast_carcinoma.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_colorectal_carcinoma.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_colorectal_carcinoma.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_colorectal_carcinoma.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_colorectal_carcinoma.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_lung_carcinoma.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_lung_carcinoma.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_lung_carcinoma.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_lung_carcinoma.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_lymphoma.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_lymphoma.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_lymphoma.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_lymphoma.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_melanoma.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_melanoma.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_melanoma.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_melanoma.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_prostate_carcinoma.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_prostate_carcinoma.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_prostate_carcinoma.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.microscopy_prostate_carcinoma.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.move-joint.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.move-joint.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.move-joint.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.move-joint.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.move-spine.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.move-spine.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.move-spine.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.move-spine.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.move.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.move.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.move.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.move.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.multimedia.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.multimedia.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.multimedia.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.multimedia.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.notifiable_condition.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.notifiable_condition.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.notifiable_condition.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.notifiable_condition.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.nyha_heart_failure.v1.0.0-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.nyha_heart_failure.v1.0.0-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.nyha_heart_failure.v1.0.0-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.nyha_heart_failure.v1.0.0-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.occupation.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.occupation.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.occupation.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.occupation.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.oedema.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.oedema.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.oedema.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.oedema.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.operative_procedure.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.operative_procedure.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.operative_procedure.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.operative_procedure.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.organisation.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.organisation.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.organisation.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.organisation.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.outbreak_identification.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.outbreak_identification.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.outbreak_identification.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.outbreak_identification.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_prostate.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_prostate.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_prostate.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_prostate.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_rectum.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_rectum.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_rectum.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_rectum.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_testicle.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_testicle.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_testicle.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_testicle.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_vagina.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_vagina.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_vagina.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_vagina.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.percussion.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.percussion.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.percussion.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.percussion.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.person_name.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.person_name.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.person_name.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.person_name.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.physical_properties.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.physical_properties.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.physical_properties.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.physical_properties.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.physiological_monitoring.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.physiological_monitoring.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.physiological_monitoring.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.physiological_monitoring.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.precise_location.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.precise_location.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.precise_location.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.precise_location.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.problem_status.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.problem_status.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.problem_status.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.problem_status.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.procedure_preparation.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.procedure_preparation.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.procedure_preparation.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.procedure_preparation.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.professional_role.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.professional_role.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.professional_role.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.professional_role.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.refraction_details.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.refraction_details.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.refraction_details.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.refraction_details.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.religion.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.religion.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.religion.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.religion.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.sense_of_smell.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.sense_of_smell.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.sense_of_smell.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.sense_of_smell.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.specimen.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.specimen.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.specimen.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.specimen.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.specimen_container.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.specimen_container.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.specimen_container.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.specimen_container.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.specimen_preparation.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.specimen_preparation.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.specimen_preparation.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.specimen_preparation.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.symptom_sign.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.symptom_sign.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.symptom_sign.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.symptom_sign.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.symptom_sign_severity.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.symptom_sign_severity.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.symptom_sign_severity.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.symptom_sign_severity.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.synthesis_lymphoma.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.synthesis_lymphoma.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.synthesis_lymphoma.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.synthesis_lymphoma.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.telecom_details.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.telecom_details.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.telecom_details.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.telecom_details.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.therapeutic_direction.v1.0.2.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.therapeutic_direction.v1.0.2.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.therapeutic_direction.v1.0.2.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.therapeutic_direction.v1.0.2.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.timing_daily.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.timing_daily.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.timing_daily.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.timing_daily.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.timing_repetition.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.timing_repetition.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.timing_repetition.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.timing_repetition.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_stage_clinical.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_stage_clinical.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_stage_clinical.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_stage_clinical.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_stage_pathological.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_stage_pathological.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_stage_pathological.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_stage_pathological.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-breast.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-breast.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-breast.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-breast.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-colorectal.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-colorectal.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-colorectal.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-colorectal.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-lung_cancer.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-lung_cancer.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-lung_cancer.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-lung_cancer.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-melanoma.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-melanoma.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-melanoma.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-melanoma.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-prostate.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-prostate.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-prostate.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging-prostate.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-breast.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-breast.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-breast.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-breast.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-colorectal.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-colorectal.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-colorectal.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-colorectal.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-lung.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-lung.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-lung.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-lung.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-lymphoma.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-lymphoma.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-lymphoma.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-lymphoma.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-melanoma.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-melanoma.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-melanoma.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-melanoma.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-prostate.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-prostate.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-prostate.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th-prostate.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tnm_staging_7th.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tumour_colorectal_staging_non_tnm.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tumour_colorectal_staging_non_tnm.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tumour_colorectal_staging_non_tnm.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tumour_colorectal_staging_non_tnm.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tumour_invasion.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tumour_invasion.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tumour_invasion.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tumour_invasion.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tumour_resection_margins.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tumour_resection_margins.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tumour_resection_margins.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.tumour_resection_margins.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.waveform.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.waveform.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.waveform.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/cluster/openEHR-EHR-CLUSTER.waveform.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.adverse_reaction_list.v1.1.1.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.adverse_reaction_list.v1.1.1.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.adverse_reaction_list.v1.1.1.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.adverse_reaction_list.v1.1.1.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.encounter.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.encounter.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.encounter.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.encounter.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.event_summary.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.event_summary.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.event_summary.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.event_summary.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.health_summary.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.health_summary.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.health_summary.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.health_summary.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.medication_list.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.medication_list.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.medication_list.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.medication_list.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.notification.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.notification.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.notification.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.notification.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.prescription.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.prescription.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.prescription.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.prescription.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.problem_list.v1.0.1.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.problem_list.v1.0.1.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.problem_list.v1.0.1.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.problem_list.v1.0.1.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.report-procedure.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.report-procedure.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.report-procedure.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.report-procedure.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.report-result.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.report-result.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.report-result.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.report-result.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.report.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.report.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.report.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.report.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.request.v1.1.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.request.v1.1.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.request.v1.1.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.request.v1.1.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.review.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.review.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.review.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.review.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.self_monitoring.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.self_monitoring.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.self_monitoring.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.self_monitoring.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.transfer_summary.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.transfer_summary.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.transfer_summary.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.transfer_summary.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.vaccination_list.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.vaccination_list.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.vaccination_list.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/composition/openEHR-EHR-COMPOSITION.vaccination_list.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ADDRESS.address-provider.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ADDRESS.address-provider.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ADDRESS.address-provider.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ADDRESS.address-provider.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ADDRESS.address.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ADDRESS.address.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ADDRESS.address.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ADDRESS.address.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ADDRESS.electronic_communication-provider.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ADDRESS.electronic_communication-provider.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ADDRESS.electronic_communication-provider.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ADDRESS.electronic_communication-provider.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ADDRESS.electronic_communication.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ADDRESS.electronic_communication.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ADDRESS.electronic_communication.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ADDRESS.electronic_communication.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CAPABILITY.individual_credentials.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CAPABILITY.individual_credentials.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CAPABILITY.individual_credentials.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CAPABILITY.individual_credentials.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.biometric_identifier_iso.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.biometric_identifier_iso.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.biometric_identifier_iso.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.biometric_identifier_iso.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.birth_data_additional_detail_br.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.birth_data_additional_detail_br.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.birth_data_additional_detail_br.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.birth_data_additional_detail_br.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.high_level_address_other_data_br.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.high_level_address_other_data_br.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.high_level_address_other_data_br.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.high_level_address_other_data_br.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.identifier_other_details.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.identifier_other_details.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.identifier_other_details.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.identifier_other_details.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.individual_credentials_iso.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.individual_credentials_iso.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.individual_credentials_iso.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.individual_credentials_iso.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.individual_provider_credentials_iso.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.individual_provider_credentials_iso.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.individual_provider_credentials_iso.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.individual_provider_credentials_iso.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_additional_data_br.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_additional_data_br.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_additional_data_br.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_additional_data_br.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_additional_data_iso.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_additional_data_iso.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_additional_data_iso.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_additional_data_iso.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_birth_data_iso.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_birth_data_iso.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_birth_data_iso.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_birth_data_iso.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_death_data_iso.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_death_data_iso.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_death_data_iso.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_death_data_iso.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_identifier-provider.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_identifier-provider.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_identifier-provider.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_identifier-provider.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_identifier.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_identifier.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_identifier.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_identifier.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_other_birth_data_br.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_other_birth_data_br.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_other_birth_data_br.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_other_birth_data_br.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_other_death_data.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_other_death_data.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_other_death_data.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.person_other_death_data.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.provider_identifier.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.provider_identifier.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.provider_identifier.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.provider_identifier.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.registration_other_data.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.registration_other_data.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.registration_other_data.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-CLUSTER.registration_other_data.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ITEM_TREE.person_details.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ITEM_TREE.person_details.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ITEM_TREE.person_details.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ITEM_TREE.person_details.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ORGANISATION.organisation.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ORGANISATION.organisation.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ORGANISATION.organisation.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ORGANISATION.organisation.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PARTY_IDENTITY.organisation_name.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PARTY_IDENTITY.organisation_name.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PARTY_IDENTITY.organisation_name.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PARTY_IDENTITY.organisation_name.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PARTY_IDENTITY.person_name-individual_provider.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PARTY_IDENTITY.person_name-individual_provider.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PARTY_IDENTITY.person_name-individual_provider.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PARTY_IDENTITY.person_name-individual_provider.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PARTY_IDENTITY.person_name.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PARTY_IDENTITY.person_name.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PARTY_IDENTITY.person_name.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PARTY_IDENTITY.person_name.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PERSON.person-patient.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PERSON.person-patient.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PERSON.person-patient.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PERSON.person-patient.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PERSON.person.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PERSON.person.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PERSON.person.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-PERSON.person.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ROLE.healthcare_consumer.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ROLE.healthcare_consumer.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ROLE.healthcare_consumer.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ROLE.healthcare_consumer.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ROLE.healthcare_provider_organisation.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ROLE.healthcare_provider_organisation.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ROLE.healthcare_provider_organisation.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ROLE.healthcare_provider_organisation.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ROLE.individual_provider.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ROLE.individual_provider.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ROLE.individual_provider.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ROLE.individual_provider.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ROLE.third_party_payer.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ROLE.third_party_payer.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ROLE.third_party_payer.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/demographic/openEHR-DEMOGRAPHIC-ROLE.third_party_payer.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.care_plan.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.care_plan.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.care_plan.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.care_plan.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.health_education.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.health_education.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.health_education.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.health_education.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.imaging_exam.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.imaging_exam.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.imaging_exam.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.imaging_exam.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.informed_consent.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.informed_consent.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.informed_consent.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.informed_consent.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.medication.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.medication.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.medication.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.medication.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.procedure.v1.2.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.procedure.v1.2.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.procedure.v1.2.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.procedure.v1.2.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.review.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.review.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.review.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.review.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.transfusion.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.transfusion.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.transfusion.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/action/openEHR-EHR-ACTION.transfusion.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/admin_entry/openEHR-EHR-ADMIN_ENTRY.admission.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/admin_entry/openEHR-EHR-ADMIN_ENTRY.admission.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/admin_entry/openEHR-EHR-ADMIN_ENTRY.admission.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/admin_entry/openEHR-EHR-ADMIN_ENTRY.admission.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.absence.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.absence.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.absence.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.absence.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.advance_decision_refuse_treatment_uk.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.advance_decision_refuse_treatment_uk.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.advance_decision_refuse_treatment_uk.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.advance_decision_refuse_treatment_uk.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.adverse_reaction_risk.v1.1.2.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.adverse_reaction_risk.v1.1.2.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.adverse_reaction_risk.v1.1.2.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.adverse_reaction_risk.v1.1.2.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.alcohol_use_summary.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.alcohol_use_summary.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.alcohol_use_summary.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.alcohol_use_summary.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.citation.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.citation.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.citation.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.citation.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.clinical_synopsis.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.clinical_synopsis.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.clinical_synopsis.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.clinical_synopsis.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.consumer_note.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.consumer_note.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.consumer_note.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.consumer_note.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.container.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.container.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.container.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.container.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.contraindication.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.contraindication.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.contraindication.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.contraindication.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.device_summary.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.device_summary.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.device_summary.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.device_summary.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.exclusion_global.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.exclusion_global.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.exclusion_global.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.exclusion_global.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.exclusion_specific.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.exclusion_specific.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.exclusion_specific.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.exclusion_specific.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.family_history.v2.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.family_history.v2.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.family_history.v2.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.family_history.v2.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.health_risk.v1.1.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.health_risk.v1.1.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.health_risk.v1.1.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.health_risk.v1.1.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.infant_feeding.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.infant_feeding.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.infant_feeding.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.infant_feeding.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.infectious_disease_summary.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.infectious_disease_summary.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.infectious_disease_summary.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.infectious_disease_summary.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.menstrual_cycle_summary.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.menstrual_cycle_summary.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.menstrual_cycle_summary.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.menstrual_cycle_summary.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.obstetric_summary.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.obstetric_summary.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.obstetric_summary.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.obstetric_summary.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.physical_activity_summary.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.physical_activity_summary.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.physical_activity_summary.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.physical_activity_summary.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.precaution.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.precaution.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.precaution.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.precaution.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.pregnancy_bf_status.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.pregnancy_bf_status.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.pregnancy_bf_status.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.pregnancy_bf_status.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.pregnancy_summary.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.pregnancy_summary.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.pregnancy_summary.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.pregnancy_summary.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.problem_diagnosis.v1.0.5.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.problem_diagnosis.v1.0.5.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.problem_diagnosis.v1.0.5.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.problem_diagnosis.v1.0.5.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.reason_for_encounter.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.reason_for_encounter.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.reason_for_encounter.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.reason_for_encounter.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.recommendation.v1.1.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.recommendation.v1.1.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.recommendation.v1.1.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.recommendation.v1.1.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.smokeless_tobacco_summary.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.smokeless_tobacco_summary.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.smokeless_tobacco_summary.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.smokeless_tobacco_summary.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.social_summary.v1.1.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.social_summary.v1.1.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.social_summary.v1.1.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.social_summary.v1.1.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.source.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.source.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.source.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.source.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.test.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.test.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.test.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.test.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.tobacco_smoking_summary.v1.0.1.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.tobacco_smoking_summary.v1.0.1.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.tobacco_smoking_summary.v1.0.1.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.tobacco_smoking_summary.v1.0.1.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.triage.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.triage.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.triage.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.triage.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.vaccination_summary.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.vaccination_summary.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.vaccination_summary.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.vaccination_summary.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.care_plan.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.care_plan.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.care_plan.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.care_plan.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.health_education.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.health_education.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.health_education.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.health_education.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.informed_consent.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.informed_consent.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.informed_consent.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.informed_consent.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.medication_order.v1.0.1.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.medication_order.v1.0.1.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.medication_order.v1.0.1.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.medication_order.v1.0.1.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.notification.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.notification.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.notification.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.notification.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.request-procedure.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.request-procedure.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.request-procedure.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.request-procedure.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.request.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.request.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.request.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.request.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.transfusion.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.transfusion.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.transfusion.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/instruction/openEHR-EHR-INSTRUCTION.transfusion.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.apgar.v1.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.apgar.v1.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.apgar.v1.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.apgar.v1.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.audiogram.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.audiogram.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.audiogram.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.audiogram.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.autopsy.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.autopsy.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.autopsy.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.autopsy.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.avpu.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.avpu.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.avpu.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.avpu.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.barthel.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.barthel.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.barthel.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.barthel.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.blood_match.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.blood_match.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.blood_match.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.blood_match.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.blood_pressure.v1.1.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.blood_pressure.v1.1.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.blood_pressure.v1.1.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.blood_pressure.v1.1.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_mass_index.v2.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_mass_index.v2.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_mass_index.v2.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_mass_index.v2.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_segment.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_segment.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_segment.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_segment.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_surface_area.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_surface_area.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_surface_area.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_surface_area.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_temperature.v2.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_temperature.v2.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_temperature.v2.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_temperature.v2.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_weight-adjusted.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_weight-adjusted.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_weight-adjusted.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_weight-adjusted.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_weight.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_weight.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_weight.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.body_weight.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.braden_scale-child.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.braden_scale-child.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.braden_scale-child.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.braden_scale-child.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.braden_scale.v1.0.1.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.braden_scale.v1.0.1.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.braden_scale.v1.0.1.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.braden_scale.v1.0.1.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.braden_scale_neonate.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.braden_scale_neonate.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.braden_scale_neonate.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.braden_scale_neonate.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.bristol_stool_scale.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.bristol_stool_scale.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.bristol_stool_scale.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.bristol_stool_scale.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.ccs_angina_status.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.ccs_angina_status.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.ccs_angina_status.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.ccs_angina_status.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.cgas.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.cgas.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.cgas.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.cgas.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.child_growth.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.child_growth.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.child_growth.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.child_growth.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.comfort_behaviour_scale.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.comfort_behaviour_scale.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.comfort_behaviour_scale.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.comfort_behaviour_scale.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.conference.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.conference.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.conference.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.conference.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.container.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.container.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.container.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.container.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.critical_pain_observation_tool.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.critical_pain_observation_tool.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.critical_pain_observation_tool.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.critical_pain_observation_tool.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.demo.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.demo.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.demo.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.demo.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.diabetic_wound_wagner.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.diabetic_wound_wagner.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.diabetic_wound_wagner.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.diabetic_wound_wagner.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.easi_score.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.easi_score.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.easi_score.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.easi_score.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.ecg.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.ecg.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.ecg.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.ecg.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.ecog.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.ecog.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.ecog.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.ecog.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.edinburgh_pnd_scale.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.edinburgh_pnd_scale.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.edinburgh_pnd_scale.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.edinburgh_pnd_scale.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.exam.v1.1.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.exam.v1.1.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.exam.v1.1.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.exam.v1.1.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.faeces.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.faeces.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.faeces.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.faeces.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fagerstrom.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fagerstrom.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fagerstrom.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fagerstrom.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fetal_heart.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fetal_heart.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fetal_heart.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fetal_heart.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fetal_movement.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fetal_movement.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fetal_movement.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fetal_movement.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fitzpatrick_skin_type.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fitzpatrick_skin_type.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fitzpatrick_skin_type.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fitzpatrick_skin_type.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fluid_balance.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fluid_balance.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fluid_balance.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fluid_balance.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fluid_input.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fluid_input.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fluid_input.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fluid_input.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fluid_output.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fluid_output.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fluid_output.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fluid_output.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.food_item.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.food_item.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.food_item.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.food_item.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fundoscopic_examination.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fundoscopic_examination.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fundoscopic_examination.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.fundoscopic_examination.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.glasgow_coma_scale.v1.0.2.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.glasgow_coma_scale.v1.0.2.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.glasgow_coma_scale.v1.0.2.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.glasgow_coma_scale.v1.0.2.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.hannallah_pain_scale.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.hannallah_pain_scale.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.hannallah_pain_scale.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.hannallah_pain_scale.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.harris_hip_score.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.harris_hip_score.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.harris_hip_score.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.harris_hip_score.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.head_circumference.v1.0.1.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.head_circumference.v1.0.1.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.head_circumference.v1.0.1.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.head_circumference.v1.0.1.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.height-adjusted.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.height-adjusted.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.height-adjusted.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.height-adjusted.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.height.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.height.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.height.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.height.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.hip_circumference.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.hip_circumference.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.hip_circumference.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.hip_circumference.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.honos.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.honos.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.honos.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.honos.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.humpty_dumpty_falls_risk_assessment_tool.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.humpty_dumpty_falls_risk_assessment_tool.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.humpty_dumpty_falls_risk_assessment_tool.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.humpty_dumpty_falls_risk_assessment_tool.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.iga_eczema_treat.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.iga_eczema_treat.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.iga_eczema_treat.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.iga_eczema_treat.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.imaging_exam.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.imaging_exam.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.imaging_exam.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.imaging_exam.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.indirect_oximetry.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.indirect_oximetry.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.indirect_oximetry.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.indirect_oximetry.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.infant_feeding.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.infant_feeding.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.infant_feeding.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.infant_feeding.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.intraocular_pressure.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.intraocular_pressure.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.intraocular_pressure.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.intraocular_pressure.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.intravascular_pressure.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.intravascular_pressure.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.intravascular_pressure.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.intravascular_pressure.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.laboratory_test_result.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.laboratory_test_result.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.laboratory_test_result.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.laboratory_test_result.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.malinas_score.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.malinas_score.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.malinas_score.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.malinas_score.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.mantoux.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.mantoux.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.mantoux.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.mantoux.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.menstrual_cycle.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.menstrual_cycle.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.menstrual_cycle.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.menstrual_cycle.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.msfc_score.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.msfc_score.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.msfc_score.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.msfc_score.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.must.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.must.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.must.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.must.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.news_uk_rcp.v1.0.2.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.news_uk_rcp.v1.0.2.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.news_uk_rcp.v1.0.2.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.news_uk_rcp.v1.0.2.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.nine_hole_peg_test.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.nine_hole_peg_test.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.nine_hole_peg_test.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.nine_hole_peg_test.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.oucher_pain_scale.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.oucher_pain_scale.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.oucher_pain_scale.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.oucher_pain_scale.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.paced_auditory_serial_addition_test.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.paced_auditory_serial_addition_test.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.paced_auditory_serial_addition_test.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.paced_auditory_serial_addition_test.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pathology_test-blood_glucose.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pathology_test-blood_glucose.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pathology_test-blood_glucose.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pathology_test-blood_glucose.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pathology_test.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pathology_test.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pathology_test.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pathology_test.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.patients_global_assessment_eczema_treat.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.patients_global_assessment_eczema_treat.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.patients_global_assessment_eczema_treat.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.patients_global_assessment_eczema_treat.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.penetration_aspiration_scale.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.penetration_aspiration_scale.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.penetration_aspiration_scale.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.penetration_aspiration_scale.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.physical_activity.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.physical_activity.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.physical_activity.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.physical_activity.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.poem_score.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.poem_score.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.poem_score.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.poem_score.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pregnancy_test.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pregnancy_test.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pregnancy_test.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pregnancy_test.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pulmonary_function.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pulmonary_function.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pulmonary_function.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pulmonary_function.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pulse.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pulse.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pulse.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pulse.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pulse_deficit.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pulse_deficit.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pulse_deficit.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.pulse_deficit.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.refraction.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.refraction.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.refraction.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.refraction.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.respiration.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.respiration.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.respiration.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.respiration.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.richmond_agitation_sedation_scale.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.richmond_agitation_sedation_scale.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.richmond_agitation_sedation_scale.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.richmond_agitation_sedation_scale.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.sara_scale.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.sara_scale.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.sara_scale.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.sara_scale.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.scorad_score.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.scorad_score.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.scorad_score.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.scorad_score.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.skeletal_age.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.skeletal_age.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.skeletal_age.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.skeletal_age.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.speech.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.speech.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.speech.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.speech.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.story.v1.1.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.story.v1.1.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.story.v1.1.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.story.v1.1.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.stroke_scale_neurological_assessment.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.stroke_scale_neurological_assessment.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.stroke_scale_neurological_assessment.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.stroke_scale_neurological_assessment.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.substance_use-alcohol.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.substance_use-alcohol.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.substance_use-alcohol.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.substance_use-alcohol.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.substance_use-caffeine.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.substance_use-caffeine.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.substance_use-caffeine.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.substance_use-caffeine.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.substance_use-tobacco.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.substance_use-tobacco.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.substance_use-tobacco.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.substance_use-tobacco.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.substance_use.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.substance_use.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.substance_use.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.substance_use.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.tanner.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.tanner.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.tanner.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.tanner.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.temperature.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.temperature.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.temperature.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.temperature.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.testicular_volume.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.testicular_volume.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.testicular_volume.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.testicular_volume.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.third_party_observation.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.third_party_observation.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.third_party_observation.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.third_party_observation.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.timed_25_foot_walk.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.timed_25_foot_walk.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.timed_25_foot_walk.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.timed_25_foot_walk.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.urinalysis.v1.0.1.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.urinalysis.v1.0.1.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.urinalysis.v1.0.1.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.urinalysis.v1.0.1.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.uterine_contractions.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.uterine_contractions.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.uterine_contractions.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.uterine_contractions.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.visual_acuity.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.visual_acuity.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.visual_acuity.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.visual_acuity.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.visual_field_measurement.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.visual_field_measurement.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.visual_field_measurement.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.visual_field_measurement.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.waist_circumference.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.waist_circumference.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.waist_circumference.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.waist_circumference.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.waist_height_ratio.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.waist_height_ratio.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.waist_height_ratio.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.waist_height_ratio.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.waist_hip_ratio.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.waist_hip_ratio.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.waist_hip_ratio.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.waist_hip_ratio.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.waterlow_score.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.waterlow_score.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.waterlow_score.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/entry/observation/openEHR-EHR-OBSERVATION.waterlow_score.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.adhoc.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.adhoc.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.adhoc.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.adhoc.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.adverse_list.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.adverse_list.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.adverse_list.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.adverse_list.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.conclusion.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.conclusion.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.conclusion.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.conclusion.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.diagnostic_reports.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.diagnostic_reports.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.diagnostic_reports.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.diagnostic_reports.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.medication_order_list.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.medication_order_list.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.medication_order_list.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.medication_order_list.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.problem_list.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.problem_list.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.problem_list.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.problem_list.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.referral_details.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.referral_details.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.referral_details.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.referral_details.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.soap.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.soap.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.soap.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.soap.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.vital_signs.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.vital_signs.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.vital_signs.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/local/archetypes/section/openEHR-EHR-SECTION.vital_signs.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/local/termsets/Route of Administration.xml b/openehr-rm/src/test/resources/ckm-mirror/local/termsets/Route of Administration.xml similarity index 100% rename from tools/src/test/resources/ckm-mirror/local/termsets/Route of Administration.xml rename to openehr-rm/src/test/resources/ckm-mirror/local/termsets/Route of Administration.xml diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.adhoc_cluster_heading.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.adhoc_cluster_heading.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.adhoc_cluster_heading.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.adhoc_cluster_heading.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.document_entry_metadata.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.document_entry_metadata.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.document_entry_metadata.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.document_entry_metadata.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.ear_cleaning.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.ear_cleaning.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.ear_cleaning.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.ear_cleaning.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.education.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.education.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.education.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.education.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.exam_auditory_canal.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.exam_auditory_canal.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.exam_auditory_canal.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.exam_auditory_canal.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.exam_middle_ear.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.exam_middle_ear.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.exam_middle_ear.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.exam_middle_ear.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.exam_pinna.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.exam_pinna.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.exam_pinna.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.exam_pinna.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.exam_tympanic_membrane.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.exam_tympanic_membrane.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.exam_tympanic_membrane.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.exam_tympanic_membrane.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.home_environment.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.home_environment.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.home_environment.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.home_environment.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.myringoplasty.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.myringoplasty.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.myringoplasty.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.myringoplasty.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.myringotomy.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.myringotomy.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.myringotomy.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.myringotomy.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_of_cervix.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_of_cervix.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_of_cervix.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_of_cervix.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_of_fetus.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_of_fetus.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_of_fetus.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_of_fetus.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_of_uterus.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_of_uterus.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_of_uterus.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.palpation_of_uterus.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.sade.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.sade.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.sade.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.sade.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.strategy.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.strategy.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.strategy.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.strategy.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.tos.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.tos.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.tos.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.tos.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.triage_priority.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.triage_priority.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.triage_priority.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/cluster/openEHR-EHR-CLUSTER.triage_priority.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.care_plan.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.care_plan.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.care_plan.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.care_plan.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.family_history.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.family_history.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.family_history.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.family_history.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.lifestyle_factors.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.lifestyle_factors.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.lifestyle_factors.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.lifestyle_factors.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.obstetric_history.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.obstetric_history.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.obstetric_history.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.obstetric_history.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.pregnancy_summary.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.pregnancy_summary.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.pregnancy_summary.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.pregnancy_summary.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.progress_note.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.progress_note.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.progress_note.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.progress_note.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.social_summary.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.social_summary.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.social_summary.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.social_summary.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.therapeutic_precautions.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.therapeutic_precautions.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.therapeutic_precautions.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/composition/openEHR-EHR-COMPOSITION.therapeutic_precautions.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/action/openEHR-EHR-ACTION.pathology_test.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/action/openEHR-EHR-ACTION.pathology_test.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/action/openEHR-EHR-ACTION.pathology_test.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/action/openEHR-EHR-ACTION.pathology_test.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/action/openEHR-EHR-ACTION.service.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/action/openEHR-EHR-ACTION.service.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/action/openEHR-EHR-ACTION.service.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/action/openEHR-EHR-ACTION.service.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/admin_entry/openEHR-EHR-ADMIN_ENTRY.legal_constraint.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/admin_entry/openEHR-EHR-ADMIN_ENTRY.legal_constraint.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/admin_entry/openEHR-EHR-ADMIN_ENTRY.legal_constraint.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/admin_entry/openEHR-EHR-ADMIN_ENTRY.legal_constraint.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.differential_diagnosis.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.differential_diagnosis.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.differential_diagnosis.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.differential_diagnosis.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.exposure.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.exposure.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.exposure.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.exposure.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.nutrition_summary.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.nutrition_summary.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.nutrition_summary.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/evaluation/openEHR-EHR-EVALUATION.nutrition_summary.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.alcohol_audit.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.alcohol_audit.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.alcohol_audit.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.alcohol_audit.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.alcohol_use.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.alcohol_use.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.alcohol_use.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.alcohol_use.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.audiogram_result.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.audiogram_result.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.audiogram_result.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.audiogram_result.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.audiology_speech_test_result.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.audiology_speech_test_result.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.audiology_speech_test_result.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.audiology_speech_test_result.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.behavioural_observation_audiometry_result.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.behavioural_observation_audiometry_result.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.behavioural_observation_audiometry_result.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.behavioural_observation_audiometry_result.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.hearing_screening_result.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.hearing_screening_result.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.hearing_screening_result.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.hearing_screening_result.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.mews_nt_rmp.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.mews_nt_rmp.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.mews_nt_rmp.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.mews_nt_rmp.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.phq.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.phq.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.phq.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.phq.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.progress_note.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.progress_note.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.progress_note.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.progress_note.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.psychiatric_risk_nt_rmp.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.psychiatric_risk_nt_rmp.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.psychiatric_risk_nt_rmp.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.psychiatric_risk_nt_rmp.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.rinne_weber_result.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.rinne_weber_result.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.rinne_weber_result.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.rinne_weber_result.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.telecommunication.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.telecommunication.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.telecommunication.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.telecommunication.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.tobacco_use.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.tobacco_use.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.tobacco_use.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.tobacco_use.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.tympanogram_226hz.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.tympanogram_226hz.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.tympanogram_226hz.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.tympanogram_226hz.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.tympanogram_hf.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.tympanogram_hf.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.tympanogram_hf.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/au.org.nehta/archetypes/entry/observation/openEHR-EHR-OBSERVATION.tympanogram_hf.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/cluster/openEHR-EHR-CLUSTER.gender.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/cluster/openEHR-EHR-CLUSTER.gender.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/cluster/openEHR-EHR-CLUSTER.gender.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/cluster/openEHR-EHR-CLUSTER.gender.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/cluster/openEHR-EHR-CLUSTER.mallampati_classification.v1.0.1.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/cluster/openEHR-EHR-CLUSTER.mallampati_classification.v1.0.1.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/cluster/openEHR-EHR-CLUSTER.mallampati_classification.v1.0.1.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/cluster/openEHR-EHR-CLUSTER.mallampati_classification.v1.0.1.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/entry/observation/openEHR-EHR-OBSERVATION.chadsvas_score.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/entry/observation/openEHR-EHR-OBSERVATION.chadsvas_score.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/entry/observation/openEHR-EHR-OBSERVATION.chadsvas_score.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/entry/observation/openEHR-EHR-OBSERVATION.chadsvas_score.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/entry/observation/openEHR-EHR-OBSERVATION.nutritional_risk_screening.v1.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/entry/observation/openEHR-EHR-OBSERVATION.nutritional_risk_screening.v1.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/entry/observation/openEHR-EHR-OBSERVATION.nutritional_risk_screening.v1.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/entry/observation/openEHR-EHR-OBSERVATION.nutritional_risk_screening.v1.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/entry/observation/openEHR-EHR-OBSERVATION.stratify_no.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/entry/observation/openEHR-EHR-OBSERVATION.stratify_no.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/entry/observation/openEHR-EHR-OBSERVATION.stratify_no.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/no.nasjonalikt/archetypes/entry/observation/openEHR-EHR-OBSERVATION.stratify_no.v1.0.0.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/uk.org.clinicalmodels/archetypes/entry/observation/openEHR-EHR-OBSERVATION.i_pss_prostate_score.v0.0.1-alpha.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/uk.org.clinicalmodels/archetypes/entry/observation/openEHR-EHR-OBSERVATION.i_pss_prostate_score.v0.0.1-alpha.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/uk.org.clinicalmodels/archetypes/entry/observation/openEHR-EHR-OBSERVATION.i_pss_prostate_score.v0.0.1-alpha.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/uk.org.clinicalmodels/archetypes/entry/observation/openEHR-EHR-OBSERVATION.i_pss_prostate_score.v0.0.1-alpha.adls diff --git a/tools/src/test/resources/ckm-mirror/remote/uk.org.clinicalmodels/archetypes/section/openEHR-EHR-SECTION.problems_and_diagnoses.v1.0.0.adls b/openehr-rm/src/test/resources/ckm-mirror/remote/uk.org.clinicalmodels/archetypes/section/openEHR-EHR-SECTION.problems_and_diagnoses.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/ckm-mirror/remote/uk.org.clinicalmodels/archetypes/section/openEHR-EHR-SECTION.problems_and_diagnoses.v1.0.0.adls rename to openehr-rm/src/test/resources/ckm-mirror/remote/uk.org.clinicalmodels/archetypes/section/openEHR-EHR-SECTION.problems_and_diagnoses.v1.0.0.adls diff --git a/openehr-rm/src/test/resources/com/nedap/archie/aom/openEHR-EHR-COMPOSITION.parent.v1.0.0.adls b/openehr-rm/src/test/resources/com/nedap/archie/aom/openEHR-EHR-COMPOSITION.parent.v1.0.0.adls new file mode 100644 index 000000000..e418d12e5 --- /dev/null +++ b/openehr-rm/src/test/resources/com/nedap/archie/aom/openEHR-EHR-COMPOSITION.parent.v1.0.0.adls @@ -0,0 +1,55 @@ +archetype (adl_version=2.0.6; rm_release=1.0.4) + openEHR-EHR-COMPOSITION.parent.v1.0.0 + +language + original_language = <[ISO_639-1::en]> + translations = < + ["nl"] = < + language = <[ISO_639-1::nl]> + > + > + +description + original_author = < + ["name"] = <"Pieter Bos"> + > + details = < + ["en"] = < + language = <[ISO_639-1::en]> + purpose = <"parent composition archetype for test"> + keywords = <"ADL", "test"> + > + > + lifecycle_state = <"draft"> + + +definition + COMPOSITION[id1] matches { + content matches { + use_archetype GENERIC_ENTRY[id2, openEHR-EHR-GENERIC_ENTRY.included.v1] + } + } + +terminology + term_definitions = < + ["en"] = < + ["id1"] = < + text = <"root node en"> + description = <"root node en"> + > + ["id2"] = < + text = <"included archetype en"> + description = <"included archetype en"> + > + > + ["nl"] = < + ["id1"] = < + text = <"root node nl"> + description = <"root node nl"> + > + ["id2"] = < + text = <"included archetype nl"> + description = <"rincluded archetype nl"> + > + > + > diff --git a/openehr-rm/src/test/resources/com/nedap/archie/aom/openEHR-EHR-GENERIC_ENTRY.included.v1.0.0.adls b/openehr-rm/src/test/resources/com/nedap/archie/aom/openEHR-EHR-GENERIC_ENTRY.included.v1.0.0.adls new file mode 100644 index 000000000..8270e56e7 --- /dev/null +++ b/openehr-rm/src/test/resources/com/nedap/archie/aom/openEHR-EHR-GENERIC_ENTRY.included.v1.0.0.adls @@ -0,0 +1,72 @@ +archetype (adl_version=2.0.6; rm_release=1.0.4) + openEHR-EHR-GENERIC_ENTRY.included.v1.0.0 + +language + original_language = <[ISO_639-1::en]> + +description + original_author = < + ["name"] = <"Pieter Bos"> + > + details = < + ["en"] = < + language = <[ISO_639-1::en]> + purpose = <"pto be included generic entry archetype for test"> + keywords = <"ADL", "test"> + > + > + lifecycle_state = <"draft"> + + +definition + GENERIC_ENTRY[id1] matches { + data matches { + ITEM_TREE[id3] matches { + items matches { + ELEMENT[id2] matches { + value matches { + DV_CODED_TEXT[id26] matches { + defining_code matches {[ac27]} + } + } + } + } + } + } + } + +terminology + term_definitions = < + ["en"] = < + ["id1"] = < + text = <"root node generic entry en"> + description = <"root node generic entry en"> + > + ["id2"] = < + text = <"an element"> + description = <"an element described"> + > + ["ac27"] = < + text = <"a value set"> + description = <"a value set"> + > + ["at4"] = < + text = <"Value 1"> + description = <"Value 1"> + > + ["at5"] = < + text = <"Value 2"> + description = <"Value 2"> + > + ["at6"] = < + text = <"Value 3"> + description = <"Value 3"> + > + > + > + value_sets = < + ["ac27"] = < + id = <"ac27"> + members=<"at4", "at5", "at6"> + > + > diff --git a/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.to_flatten_parent_with_overlay.v1.0.0.adls b/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.to_flatten_parent_with_overlay.v1.0.0.adls new file mode 100644 index 000000000..ac12aaef8 --- /dev/null +++ b/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.to_flatten_parent_with_overlay.v1.0.0.adls @@ -0,0 +1,111 @@ +archetype (adl_version=2.0.5; rm_release=1.0.2; generated) + openEHR-EHR-OBSERVATION.to_flatten_parent_with_overlay.v1.0.0 + +language + original_language = <[ISO_639-1::en]> + +description + original_author = < + ["name"] = <"Pieter Bos"> + > + details = < + ["en"] = < + language = <[ISO_639-1::en]> + purpose = <"Test for flattening"> + keywords = <"ADL", "test"> + > + > + lifecycle_state = <"published"> + other_details = < + ["regression"] = <"PASS"> + > + copyright = <"copyright © 2004 openEHR Foundation "> + +definition + OBSERVATION[id1] matches { -- Blood pressure + data matches { + HISTORY[id2] matches { + events cardinality matches {1..*; unordered} matches { + EVENT[id3] occurrences matches {1..*} matches { -- Any event + data matches { + ITEM_TREE[id4] matches { + items cardinality matches {3; unordered} matches { + ELEMENT[id5] matches { -- systolic pressure + value matches { + DV_QUANTITY[id13] matches { + [magnitude, units, precision] matches { + [{|0.0..<1000.0|}, {"mmHg"}, {1}] + } + } + } + } + ELEMENT[id6] matches { -- diastolic pressure + value matches { + DV_QUANTITY[id14] matches { + [magnitude, units, precision] matches { + [{|0.0..<1000.0|}, {"mmHg"}, {1}] + } + } + } + } + ELEMENT[id7] matches { -- difference between systolic and diastolic. For testing purposes :) + value matches { + DV_QUANTITY[id15] matches { + [magnitude, units, precision] matches { + [{|0.0..<1000.0|}, {"mmHg"}, {1}] + } + } + } + } + } + } + } + } + } + } + } + } + +rm_overlay + rm_visibility = < + ["/subject"] = < + visibility = <"hide"> + alias = <[local::at12]> + > + ["/data[id2]/events[id3]/data[id4]/items[id5]"] = < + visibility = <"show"> + > + ["/data[id2]/events[id3]/data[id4]/items[id6]"] = < + visibility = <"show"> + > + > + +terminology + term_definitions = < + ["en"] = < + ["id1"] = < + text = <"Blood Pressure"> + description = <"The local measurement of arterial blood pressure which is a surrogate for arterial. pressure in the systemic circulation. Most commonly, use of the term 'blood pressure' refers to measurement of brachial artery pressure in the upper arm."> + > + ["id3"] = < + text = <"any event"> + description = <"any event"> + > + ["id5"] = < + text = <"systolic"> + description = <"Systolic Pressure"> + > + ["id6"] = < + text = <"diastolic pressure"> + description = <"-- diastolic pressure"> + > + ["id7"] = < + text = <"pressure difference"> + description = <"testing 1 2 3 "> + > + ["at12"] = < + text = <"some subject"> + description = <"ingocnito mode activated"> + > + > + > diff --git a/tools/src/test/resources/com/nedap/archie/json/delirium_observation_screening.json b/openehr-rm/src/test/resources/com/nedap/archie/json/delirium_observation_screening.json similarity index 100% rename from tools/src/test/resources/com/nedap/archie/json/delirium_observation_screening.json rename to openehr-rm/src/test/resources/com/nedap/archie/json/delirium_observation_screening.json diff --git a/tools/src/test/resources/com/nedap/archie/json/dv_duration.json b/openehr-rm/src/test/resources/com/nedap/archie/json/dv_duration.json similarity index 100% rename from tools/src/test/resources/com/nedap/archie/json/dv_duration.json rename to openehr-rm/src/test/resources/com/nedap/archie/json/dv_duration.json diff --git a/tools/src/test/resources/com/nedap/archie/json/flat/openEHR-EHR-CLUSTER.element_with_two_dv_types.v1.0.0.adls b/openehr-rm/src/test/resources/com/nedap/archie/json/flat/openEHR-EHR-CLUSTER.element_with_two_dv_types.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/com/nedap/archie/json/flat/openEHR-EHR-CLUSTER.element_with_two_dv_types.v1.0.0.adls rename to openehr-rm/src/test/resources/com/nedap/archie/json/flat/openEHR-EHR-CLUSTER.element_with_two_dv_types.v1.0.0.adls diff --git a/tools/src/test/resources/com/nedap/archie/json/motricity_index_legacy_format_rules_section_as_array.json b/openehr-rm/src/test/resources/com/nedap/archie/json/motricity_index_legacy_format_rules_section_as_array.json similarity index 100% rename from tools/src/test/resources/com/nedap/archie/json/motricity_index_legacy_format_rules_section_as_array.json rename to openehr-rm/src/test/resources/com/nedap/archie/json/motricity_index_legacy_format_rules_section_as_array.json diff --git a/openehr-rm/src/test/resources/com/nedap/archie/json/openEHR-EHR-CLUSTER.datavalues.v1.adls b/openehr-rm/src/test/resources/com/nedap/archie/json/openEHR-EHR-CLUSTER.datavalues.v1.adls new file mode 100644 index 000000000..b236aab92 --- /dev/null +++ b/openehr-rm/src/test/resources/com/nedap/archie/json/openEHR-EHR-CLUSTER.datavalues.v1.adls @@ -0,0 +1,118 @@ +archetype (adl_version=2.0.5; rm_release=1.0.2; generated) + openEHR-EHR-CLUSTER.datavalues.v1.0.0 + +language + original_language = <[ISO_639-1::en]> + +description + original_author = < + ["name"] = <"Pieter Bos"> + > + details = < + ["en"] = < + language = <[ISO_639-1::en]> + purpose = <"Test for rules, simple constant arithmetics"> + keywords = <"ADL", "test"> + > + > + lifecycle_state = <"published"> + other_details = < + ["regression"] = <"PASS"> + > + copyright = <"copyright © 2016 Nedap "> + +definition + CLUSTER[id1] occurrences matches {1} matches { -- Qualification + items matches { + ELEMENT[id2] occurrences matches {1} matches { + value matches { + DV_TEXT[id21] + } + } + ELEMENT[id3] occurrences matches {1} matches { + value matches { + DV_COUNT[id31] + } + } + ELEMENT[id4] occurrences matches {1} matches { + value matches { + DV_QUANTITY[id41] + } + } + ELEMENT[id5] occurrences matches {1} matches { + value matches { + DV_PROPORTION[id51] + } + } + ELEMENT[id6] occurrences matches {1} matches { + value matches { + DV_DATE[id61] + } + } + ELEMENT[id7] occurrences matches {1} matches { + value matches { + DV_TIME[id71] + } + } + ELEMENT[id8] occurrences matches {1} matches { + value matches { + DV_DATE_TIME[id81] + } + } + ELEMENT[id9] occurrences matches {1} matches { + value matches { + DV_ORDINAL[id91] + } + } + ELEMENT[id10] occurrences matches {1} matches { + value matches { + DV_URI[id101] + } + } + } + } +terminology + term_definitions = < + ["en"] = < + ["id1"] = < + text = <"Datavalues Test"> + description = <"A test with different types of data values, to more easily construct RM Objects"> + > + ["id2"] = < + text = <"Text"> + description = <"Text"> + > + ["id3"] = < + text = <"Count"> + description = <"Count"> + > + ["id4"] = < + text = <"Quantity"> + description = <"Quantity"> + > + ["id5"] = < + text = <"Proportion"> + description = <"Proportion"> + > + ["id6"] = < + text = <"Date"> + description = <"Date"> + > + ["id7"] = < + text = <"Time"> + description = <"Time"> + > + ["id8"] = < + text = <"Datetime"> + description = <"Datetime"> + > + ["id9"] = < + text = <"Ordinal"> + description = <"Ordinal"> + > + ["id10"] = < + text = <"Uri"> + description = <"Uri"> + > + > + > \ No newline at end of file diff --git a/tools/src/test/resources/com/nedap/archie/json/pablos_example.json b/openehr-rm/src/test/resources/com/nedap/archie/json/pablos_example.json similarity index 100% rename from tools/src/test/resources/com/nedap/archie/json/pablos_example.json rename to openehr-rm/src/test/resources/com/nedap/archie/json/pablos_example.json diff --git a/tools/src/test/resources/com/nedap/archie/json/rm_object.json b/openehr-rm/src/test/resources/com/nedap/archie/json/rm_object.json similarity index 100% rename from tools/src/test/resources/com/nedap/archie/json/rm_object.json rename to openehr-rm/src/test/resources/com/nedap/archie/json/rm_object.json diff --git a/tools/src/test/resources/com/nedap/archie/json/snaq_rc_opt.js b/openehr-rm/src/test/resources/com/nedap/archie/json/snaq_rc_opt.js similarity index 100% rename from tools/src/test/resources/com/nedap/archie/json/snaq_rc_opt.js rename to openehr-rm/src/test/resources/com/nedap/archie/json/snaq_rc_opt.js diff --git a/tools/src/test/resources/com/nedap/archie/rmobjectvalidation/openEHR-EHR-OBSERVATION.redefine_child.v1.0.0.adls b/openehr-rm/src/test/resources/com/nedap/archie/rmobjectvalidation/openEHR-EHR-OBSERVATION.redefine_child.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/com/nedap/archie/rmobjectvalidation/openEHR-EHR-OBSERVATION.redefine_child.v1.0.0.adls rename to openehr-rm/src/test/resources/com/nedap/archie/rmobjectvalidation/openEHR-EHR-OBSERVATION.redefine_child.v1.0.0.adls diff --git a/tools/src/test/resources/com/nedap/archie/rmobjectvalidation/openEHR-EHR-OBSERVATION.spec_test_parent_2.v1.0.0.adls b/openehr-rm/src/test/resources/com/nedap/archie/rmobjectvalidation/openEHR-EHR-OBSERVATION.spec_test_parent_2.v1.0.0.adls similarity index 100% rename from tools/src/test/resources/com/nedap/archie/rmobjectvalidation/openEHR-EHR-OBSERVATION.spec_test_parent_2.v1.0.0.adls rename to openehr-rm/src/test/resources/com/nedap/archie/rmobjectvalidation/openEHR-EHR-OBSERVATION.spec_test_parent_2.v1.0.0.adls diff --git a/openehr-rm/src/test/resources/com/nedap/archie/rules/evaluation/openEHR-EHR-OBSERVATION.motricity_index.v1.0.0.adls b/openehr-rm/src/test/resources/com/nedap/archie/rules/evaluation/openEHR-EHR-OBSERVATION.motricity_index.v1.0.0.adls new file mode 100644 index 000000000..cca4161dc --- /dev/null +++ b/openehr-rm/src/test/resources/com/nedap/archie/rules/evaluation/openEHR-EHR-OBSERVATION.motricity_index.v1.0.0.adls @@ -0,0 +1,400 @@ +archetype (adl_version=2.0.5; rm_release=1.0.2) + openEHR-EHR-OBSERVATION.motricity_index.v1.0.0 + +language + original_language = <[ISO_639-1::nl]> + translations = < + ["en"] = < + language = <[ISO_639-1::en]> + author = < + ["name"] = <"Pieter Bos"> + ["organisation"] = <"Nedap"> + ["email"] = <"pieter.bos@nedap.com"> + > + accreditation = <"-"> + > + > + +description + lifecycle_state = <"unmanaged"> + copyright = <"Officiële versie: Demeurisse G, Demol O, Robaye E. Motor evaluation in vascular hemiplegia. European Neurology. 1980;19(6):382–9. Nederlandse Versie: van Peppen RPS, Kwakkel G, Harmeling-van der Wel BC. KNGF-richtlijn beroerte. Amersfoort: Koninklijk Nederlands Genootschap voor Fysiotherapie; 2006"> + references = < + ["foo"] = <"Bar"> + > + details = < + ["nl"] = < + language = <[ISO_639-1::nl]> + purpose = <""> + > + ["en"] = < + language = <[ISO_639-1::en]> + > + > + +definition + OBSERVATION[id1] matches { -- Motricity Index + data matches { + HISTORY[id2] matches { + events matches { + EVENT[id3] matches { -- Any event + data matches { + ITEM_TREE[id4] occurrences matches {1} matches { + items matches { + CLUSTER[id5] occurrences matches {1} matches { -- Arm + items matches { + ELEMENT[id7] occurrences matches {1} matches { -- Pincetgreep + value matches { + DV_ORDINAL[id8] matches { + [value, symbol] matches { + [{0}, {[at1]}], + [{11}, {[at2]}], + [{19}, {[at3]}], + [{22}, {[at4]}], + [{26}, {[at5]}], + [{33}, {[at6]}] + } + } + } + } + ELEMENT[id9] occurrences matches {1} matches { -- Elleboogflexie + value matches { + DV_ORDINAL[id10] matches { + [value, symbol] matches { + [{0}, {[at7]}], + [{9}, {[at8]}], + [{14}, {[at9]}], + [{19}, {[at10]}], + [{25}, {[at11]}], + [{33}, {[at12]}] + } + } + } + } + ELEMENT[id11] occurrences matches {1} matches { -- Schouderabductie + value matches { + DV_ORDINAL[id12] matches { + [value, symbol] matches { + [{0}, {[at7]}], + [{9}, {[at8]}], + [{14}, {[at9]}], + [{19}, {[at10]}], + [{25}, {[at11]}], + [{33}, {[at12]}] + } + } + } + } + ELEMENT[id13] occurrences matches {1} matches { -- Arm score + value matches { + DV_COUNT[id114] matches { + magnitude matches {|0..100|} + } + } + } + } + } + CLUSTER[id6] occurrences matches {1} matches { -- Been + items matches { + ELEMENT[id14] occurrences matches {1} matches { -- Dorsale flexie enkel + value matches { + DV_ORDINAL[id15] matches { + [value, symbol] matches { + [{0}, {[at7]}], + [{9}, {[at8]}], + [{14}, {[at9]}], + [{19}, {[at10]}], + [{25}, {[at11]}], + [{33}, {[at12]}] + } + } + } + } + ELEMENT[id16] occurrences matches {1} matches { -- Knie extensie + value matches { + DV_ORDINAL[id17] matches { + [value, symbol] matches { + [{0}, {[at7]}], + [{9}, {[at8]}], + [{14}, {[at9]}], + [{19}, {[at10]}], + [{25}, {[at11]}], + [{33}, {[at12]}] + } + } + } + } + ELEMENT[id18] occurrences matches {1} matches { -- Heup flexie + value matches { + DV_ORDINAL[id19] matches { + [value, symbol] matches { + [{0}, {[at7]}], + [{9}, {[at8]}], + [{14}, {[at9]}], + [{19}, {[at10]}], + [{25}, {[at11]}], + [{33}, {[at12]}] + } + } + } + } + ELEMENT[id20] occurrences matches {1} matches { -- Been score + value matches { + DV_COUNT[id21] matches { + magnitude matches {|0..100|} + } + } + } + } + } + ELEMENT[id24] occurrences matches {1} matches { -- Opgetelde score + value matches { + DV_COUNT[id25] matches { + magnitude matches {|0..200|} + } + } + } + ELEMENT[id22] occurrences matches {1} matches { -- Totaalscore + value matches { + DV_COUNT[id23] matches { + magnitude matches {|0..100|} + } + DV_COUNT[id115] matches { + magnitude matches {|10..20|} + } + } + } + } + } + } + } + } + } + } + } + +rules + $arm_score:Integer ::= /data[id2]/events[id3]/data[id4]/items[id5]/items[id7]/value/value + /data[id2]/events[id3]/data[id4]/items[id5]/items[id9]/value/value + /data[id2]/events[id3]/data[id4]/items[id5]/items[id11]/value/value + arm: $arm_score < 99 implies /data[id2]/events[id3]/data[id4]/items[id5]/items[id13]/value/magnitude = $arm_score + arm_round_up: $arm_score = 99 implies /data[id2]/events[id3]/data[id4]/items[id5]/items[id13]/value/magnitude = 100 + $leg_score:Integer ::= /data[id2]/events[id3]/data[id4]/items[id6]/items[id14]/value/value + /data[id2]/events[id3]/data[id4]/items[id6]/items[id16]/value/value + /data[id2]/events[id3]/data[id4]/items[id6]/items[id18]/value/value + leg: $leg_score < 99 implies /data[id2]/events[id3]/data[id4]/items[id6]/items[id20]/value/magnitude = $leg_score + leg_round_up: $leg_score = 99 implies /data[id2]/events[id3]/data[id4]/items[id6]/items[id20]/value/magnitude = 100 + sum_score: /data[id2]/events[id3]/data[id4]/items[id24]/value/magnitude = /data[id2]/events[id3]/data[id4]/items[id5]/items[id13]/value/magnitude + /data[id2]/events[id3]/data[id4]/items[id6]/items[id20]/value/magnitude + total_score: exists /data[id2]/events[id3]/data[id4]/items[id24]/value/magnitude implies (/data[id2]/events[id3]/data[id4]/items[id22]/value/magnitude = /data[id2]/events[id3]/data[id4]/items[id24]/value/magnitude / 2) + + +terminology + term_definitions = < + ["nl"] = < + ["id1"] = < + text = <"Motricity Index"> + description = <"De Motricity Index (MI) is gericht op het evalueren van de willekeurige bewegingsactiviteit, + dan wel het meten van de maximale isometrische spierkracht, aan de hand van een ordinale 6-puntschaal + (0, 11, 19, 22, 26, 33 punten). Betrouwbaarheid en validiteit bij patiënten met een CVA zijn aangetoond."> + > + ["id3"] = < + text = <"Any event"> + > + ["id5"] = < + text = <"Arm"> + > + ["id6"] = < + text = <"Been"> + description = <"Uitgangshouding patiënt: zit, knie 90° flexie, voeten plat op de grond (0° flexie)"> + > + ["id7"] = < + text = <"Pincetgreep"> + description = <"Vasthouden van een blokje van 2,5 x 2,5 cm tussen duim en wijsvinger"> + > + ["id9"] = < + text = <"Elleboogflexie"> + description = <"Willekeurige elleboogflexie tot volledige flexie (± 160°). De elleboog van de patiënt bij + het isometrisch testen van de weerstand (25 punten of meer) in 90° flexie houden"> + > + ["id11"] = < + text = <"Schouderabductie"> + description = <"Abductie van de schouder van 0° tot 90°. De schouder van de patiënt bij het isometrisch + testen van de weerstand (25 punten of meer) in 90° abductie houden"> + > + ["id13"] = < + text = <"Arm score"> + description = <"Bij een score van 99 punten mag 1 punt worden opgeteld"> + > + ["id14"] = < + text = <"Dorsale flexie enkel"> + description = <"Willekeurige dorsale flexie van de enkel vanuit 0° flexie. De enkel van de patiënt bij het + isometrisch testen van de weerstand (25 punten of meer) in ± 20° dorsale flexie houden"> + > + ["id16"] = < + text = <"Knie extensie"> + description = <"Willekeurige extensie van de knie vanuit 90°. De knie van de patiënt bij het + isometrisch testen van de weerstand (25 punten of meer) in 0° extensie houden"> + > + ["id18"] = < + text = <"Heup flexie"> + description = <"Willekeurige flexie van de heup vanuit 90° flexie. De heup van de patiënt bij het + isometrisch testen van de weerstand (25 punten of meer) in 90° flexie houden"> + > + ["id20"] = < + text = <"Been score"> + description = <"Bij een score van 99 punten mag 1 punt worden opgeteld"> + > + ["id22"] = < + text = <"Totaalscore"> + description = <"Gemiddelde van subtotaal arm en subtotaal been"> + > + ["id24"] = < + text = <"Opgetelde score"> + description = <"De som van subtotaal arm en subtotaal been"> + > + ["at1"] = < + text = <"Geen beweging"> + > + ["at2"] = < + text = <"Elke willekeurige beweging van vinger en/of duim"> + > + ["at3"] = < + text = <"Patiënt pakt het blokje, maar kan het niet optillen (tegen de zwaartekracht in)"> + > + ["at4"] = < + text = <"Patiënt pakt het blokje, maar kan het niet stevig vasthouden"> + > + ["at5"] = < + text = <"Patiënt pakt het blokje op, maar kan het minder stevig vasthouden dan aan de niet-paretische zijde"> + > + ["at6"] = < + text = <"Normale knijpkracht (in vergelijking tot de niet-paretische zijde)"> + > + ["at7"] = < + text = <"Geen willekeurige beweging"> + > + ["at8"] = < + text = <"Willekeurige activiteit is palpabel, maar geen beweging is zichtbaar"> + > + ["at9"] = < + text = <"Willekeurige beweging is zichtbaar, maar niet over de hele bewegingsrange"> + > + ["at10"] = < + text = <"Willekeurige beweging is over de hele range mogelijk, maar niet tegen een weerstand in"> + > + ["at11"] = < + text = <"Willekeurige beweging is tegen een weerstand in over de hele range mogelijk, maar is zwakker dan aan de niet-paretische zijde"> + > + ["at12"] = < + text = <"Normale kracht"> + > + > + ["en"] = < + ["id1"] = < + text = <"Motricity Index"> + description = <"* De Motricity Index (MI) is gericht op het evalueren van de willekeurige bewegingsactiviteit, + dan wel het meten van de maximale isometrische spierkracht, aan de hand van een ordinale 6-puntschaal + (0, 11, 19, 22, 26, 33 punten). Betrouwbaarheid en validiteit bij patiënten met een CVA zijn aangetoond.(nl)"> + > + ["id3"] = < + text = <"Any event"> + description = <"* null(nl)"> + > + ["id5"] = < + text = <"Arm"> + description = <"* null(nl)"> + > + ["id6"] = < + text = <"Leg"> + description = <"* Uitgangshouding patiënt: zit, knie 90° flexie, voeten plat op de grond (0° flexie)(nl)"> + > + ["id7"] = < + text = <"Pinch grip"> + description = <"* Vasthouden van een blokje van 2,5 x 2,5 cm tussen duim en wijsvinger(nl)"> + > + ["id9"] = < + text = <"Elbow flexion"> + description = <"* Willekeurige elleboogflexie tot volledige flexie (± 160°). De elleboog van de patiënt bij + het isometrisch testen van de weerstand (25 punten of meer) in 90° flexie houden(nl)"> + > + ["id11"] = < + text = <"Shoulder abduction"> + description = <"* Abductie van de schouder van 0° tot 90°. De schouder van de patiënt bij het isometrisch + testen van de weerstand (25 punten of meer) in 90° abductie houden(nl)"> + > + ["id13"] = < + text = <"Arm score"> + description = <"* Bij een score van 99 punten mag 1 punt worden opgeteld(nl)"> + > + ["id14"] = < + text = <"ankle dorsiflexion"> + description = <"* Willekeurige dorsale flexie van de enkel vanuit 0° flexie. De enkel van de patiënt bij het + isometrisch testen van de weerstand (25 punten of meer) in ± 20° dorsale flexie houden(nl)"> + > + ["id16"] = < + text = <"Knee extension"> + description = <"* Willekeurige extensie van de knie vanuit 90°. De knie van de patiënt bij het + isometrisch testen van de weerstand (25 punten of meer) in 0° extensie houden(nl)"> + > + ["id18"] = < + text = <"Hip flexion"> + description = <"* Willekeurige flexie van de heup vanuit 90° flexie. De heup van de patiënt bij het + isometrisch testen van de weerstand (25 punten of meer) in 90° flexie houden(nl)"> + > + ["id20"] = < + text = <"Leg score"> + description = <"* Bij een score van 99 punten mag 1 punt worden opgeteld(nl)"> + > + ["id22"] = < + text = <"Total score"> + description = <"* Gemiddelde van subtotaal arm en subtotaal been(nl)"> + > + ["id24"] = < + text = <"Summed score"> + description = <"* De som van subtotaal arm en subtotaal been(nl)"> + > + ["at1"] = < + text = <"* Geen beweging(nl)"> + description = <"* null(nl)"> + > + ["at2"] = < + text = <"* Elke willekeurige beweging van vinger en/of duim(nl)"> + description = <"* null(nl)"> + > + ["at3"] = < + text = <"* Patiënt pakt het blokje, maar kan het niet optillen (tegen de zwaartekracht in)(nl)"> + description = <"* null(nl)"> + > + ["at4"] = < + text = <"* Patiënt pakt het blokje, maar kan het niet stevig vasthouden(nl)"> + description = <"* null(nl)"> + > + ["at5"] = < + text = <"* Patiënt pakt het blokje op, maar kan het minder stevig vasthouden dan aan de niet-paretische zijde(nl)"> + description = <"* null(nl)"> + > + ["at6"] = < + text = <"* Normale knijpkracht (in vergelijking tot de niet-paretische zijde)(nl)"> + description = <"* null(nl)"> + > + ["at7"] = < + text = <"* Geen willekeurige beweging(nl)"> + description = <"* null(nl)"> + > + ["at8"] = < + text = <"* Willekeurige activiteit is palpabel, maar geen beweging is zichtbaar(nl)"> + description = <"* null(nl)"> + > + ["at9"] = < + text = <"* Willekeurige beweging is zichtbaar, maar niet over de hele bewegingsrange(nl)"> + description = <"* null(nl)"> + > + ["at10"] = < + text = <"* Willekeurige beweging is over de hele range mogelijk, maar niet tegen een weerstand in(nl)"> + description = <"* null(nl)"> + > + ["at11"] = < + text = <"* Willekeurige beweging is tegen een weerstand in over de hele range mogelijk, maar is zwakker dan aan de niet-paretische zijde(nl)"> + description = <"* null(nl)"> + > + ["at12"] = < + text = <"* Normale kracht(nl)"> + description = <"* null(nl)"> + > + > + > diff --git a/tools/src/test/java/com/nedap/archie/diff/DiffTestUtil.java b/tools/src/testFixtures/java/com/nedap/archie/testutil/DiffTestUtil.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/diff/DiffTestUtil.java rename to tools/src/testFixtures/java/com/nedap/archie/testutil/DiffTestUtil.java diff --git a/tools/src/test/java/com/nedap/archie/testutil/DummyOperationalTemplateProvider.java b/tools/src/testFixtures/java/com/nedap/archie/testutil/DummyOperationalTemplateProvider.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/testutil/DummyOperationalTemplateProvider.java rename to tools/src/testFixtures/java/com/nedap/archie/testutil/DummyOperationalTemplateProvider.java diff --git a/tools/src/test/java/com/nedap/archie/flattener/specexamples/FlattenerTestUtil.java b/tools/src/testFixtures/java/com/nedap/archie/testutil/ParseValidArchetypeTestUtil.java similarity index 87% rename from tools/src/test/java/com/nedap/archie/flattener/specexamples/FlattenerTestUtil.java rename to tools/src/testFixtures/java/com/nedap/archie/testutil/ParseValidArchetypeTestUtil.java index c5896b99b..4b6fd933d 100644 --- a/tools/src/test/java/com/nedap/archie/flattener/specexamples/FlattenerTestUtil.java +++ b/tools/src/testFixtures/java/com/nedap/archie/testutil/ParseValidArchetypeTestUtil.java @@ -1,8 +1,7 @@ -package com.nedap.archie.flattener.specexamples; +package com.nedap.archie.testutil; import com.nedap.archie.adlparser.ADLParseException; import com.nedap.archie.adlparser.ADLParser; -import com.nedap.archie.adlparser.modelconstraints.RMConstraintImposer; import com.nedap.archie.aom.Archetype; import java.io.IOException; diff --git a/tools/src/test/java/com/nedap/archie/testutil/TestUtil.java b/tools/src/testFixtures/java/com/nedap/archie/testutil/TestUtil.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/testutil/TestUtil.java rename to tools/src/testFixtures/java/com/nedap/archie/testutil/TestUtil.java From ca0bea86a96973bf9afc6ad55ad2ac536a171d22 Mon Sep 17 00:00:00 2001 From: wolandscat Date: Sat, 18 May 2024 12:15:29 -0600 Subject: [PATCH 11/19] Gradle mods to support testFixtures area under tools project. --- build.gradle | 2 +- openehr-rm/build.gradle | 2 ++ tools/build.gradle | 7 +++++++ 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 6d831a802..83cefb701 100644 --- a/build.gradle +++ b/build.gradle @@ -29,6 +29,7 @@ apply from: "${gradleScriptDir}/publish-maven.gradle" subprojects { apply plugin: 'java-library' + apply plugin: 'java-test-fixtures' // plugins { // id 'com.github.ben-manes.versions' version '0.13.0' @@ -86,7 +87,6 @@ subprojects { api 'com.github.zafarkhaja:java-semver:0.10.2' - } diff --git a/openehr-rm/build.gradle b/openehr-rm/build.gradle index 31d982bdc..12788b7cd 100644 --- a/openehr-rm/build.gradle +++ b/openehr-rm/build.gradle @@ -7,4 +7,6 @@ dependencies { api project(':utils') implementation project(path: ':archie-utils') testImplementation project(':archie-utils') + testImplementation (testFixtures(project(':tools'))) + testImplementation project(path: ':referencemodels') } \ No newline at end of file diff --git a/tools/build.gradle b/tools/build.gradle index 615f06c8a..bc852965a 100644 --- a/tools/build.gradle +++ b/tools/build.gradle @@ -8,12 +8,19 @@ dependencies { api project(':path-queries') api project(':utils') api project(':openehr-terminology') + implementation project(path: ':referencemodels') + testImplementation project(':openehr-rm') testImplementation project(':archie-utils') testImplementation project(':i18n') testImplementation project(':test-rm') testImplementation project(':referencemodels') + testFixturesImplementation 'com.google.guava:guava:33.0.0-jre' + testFixturesImplementation "org.reflections:reflections:${reflectionsVersion}" + testFixturesImplementation 'junit:junit:4.+' + testFixturesImplementation project(':referencemodels') + api 'org.leadpony.justify:justify:3.1.0' api 'org.glassfish:jakarta.json:2.0.1:module' } From 8b95bc3d985323497f8865487065795bb40a69a1 Mon Sep 17 00:00:00 2001 From: wolandscat Date: Sat, 18 May 2024 12:20:22 -0600 Subject: [PATCH 12/19] Rename to avoid clashing test case names. --- .../com/nedap/archie/openehr/rminfo/OpenEhrRmInfoLookup.java | 2 +- .../nedap/archie/rminfo/OpenEhrRmInfoLookupPopulateTest.java | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/openehr-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrRmInfoLookup.java b/openehr-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrRmInfoLookup.java index 5164dc190..bbd18f875 100644 --- a/openehr-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrRmInfoLookup.java +++ b/openehr-rm/src/main/java/com/nedap/archie/openehr/rminfo/OpenEhrRmInfoLookup.java @@ -73,7 +73,7 @@ protected void addTypes(Class baseClass) { addClass(TranslationDetails.class); /* - * The following list is generated by the test OpenEhrRmInfoLookupTest.testFindAllClassesInRm() + * The following list is generated by the test OpenEhrRmInfoLookupPopulateTest.testFindAllClassesInRm() */ addClass(AccessControlSettings.class); addClass(AccessGroupRef.class); diff --git a/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookupPopulateTest.java b/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookupPopulateTest.java index d12019b41..1a6ef8fff 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookupPopulateTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmInfoLookupPopulateTest.java @@ -12,9 +12,9 @@ import java.util.Collections; import java.util.Set; -public class OpenEhrRmInfoLookupPopulate { +public class OpenEhrRmInfoLookupPopulateTest { @Test - public void testFindAllClassesInRm() throws IOException { + public void findAllClassesInRm() throws IOException { OpenEhrRmInfoLookup infoLookup = OpenEhrRmInfoLookup.getInstance(); Set> classes = infoLookup.findAllClassesInPackage ("org.openehr.rm", RMObject.class); From 479505732074b0972063a092edbe1778992515d7 Mon Sep 17 00:00:00 2001 From: wolandscat Date: Sat, 18 May 2024 12:25:36 -0600 Subject: [PATCH 13/19] Move 'parseCKM()' helper function from TestUtil to its own helper class CkmRepositoryBuilder in openehr-rm. Use this for any access to the CKM-mirror copy. --- .../CKMArchetypeValidatorTest.java | 5 +- .../ExampleJsonInstanceGeneratorTest.java | 4 +- .../archie/test/CkmRepositoryBuilder.java | 56 +++++++++++++++++++ .../com/nedap/archie/testutil/TestUtil.java | 31 ---------- 4 files changed, 61 insertions(+), 35 deletions(-) create mode 100644 openehr-rm/src/test/java/com/nedap/archie/test/CkmRepositoryBuilder.java diff --git a/openehr-rm/src/test/java/com/nedap/archie/archetypevalidator/CKMArchetypeValidatorTest.java b/openehr-rm/src/test/java/com/nedap/archie/archetypevalidator/CKMArchetypeValidatorTest.java index f38bba9da..fd082c7b5 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/archetypevalidator/CKMArchetypeValidatorTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/archetypevalidator/CKMArchetypeValidatorTest.java @@ -4,6 +4,7 @@ import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.MetaModels; import com.nedap.archie.rminfo.ReferenceModels; +import com.nedap.archie.test.CkmRepositoryBuilder; import com.nedap.archie.testutil.TestUtil; import org.junit.Test; import org.openehr.referencemodels.AllMetaModelsInitialiser; @@ -46,7 +47,7 @@ public class CKMArchetypeValidatorTest { @Test public void fullCKMTest() { - FullArchetypeRepository repository = TestUtil.parseCKM(); + FullArchetypeRepository repository = CkmRepositoryBuilder.parseCKM(); ReferenceModels models = new ReferenceModels(); models.registerModel(OpenEhrRmInfoLookup.getInstance()); logger.info("archetypes parsed: " + repository.getAllArchetypes().size()); @@ -60,7 +61,7 @@ public void fullCKMTest() { public void fullCKMTestBmm() { MetaModels bmmReferenceModels = new MetaModels(null, AllMetaModelsInitialiser.getBmmRepository(), AllMetaModelsInitialiser.getAomProfiles()); - FullArchetypeRepository repository = TestUtil.parseCKM(); + FullArchetypeRepository repository = CkmRepositoryBuilder.parseCKM(); logger.info("archetypes parsed: " + repository.getAllArchetypes().size()); repository.compile(bmmReferenceModels); diff --git a/openehr-rm/src/test/java/com/nedap/archie/creation/ExampleJsonInstanceGeneratorTest.java b/openehr-rm/src/test/java/com/nedap/archie/creation/ExampleJsonInstanceGeneratorTest.java index 0ed856520..f14eb16dd 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/creation/ExampleJsonInstanceGeneratorTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/creation/ExampleJsonInstanceGeneratorTest.java @@ -17,13 +17,13 @@ import com.nedap.archie.openehr.serialisation.json.OpenEhrRmJacksonUtil; import com.nedap.archie.json.JsonSchemaValidator; import com.nedap.archie.base.RMObject; +import com.nedap.archie.test.CkmRepositoryBuilder; import org.openehr.rm.composition.Observation; import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rmobjectvalidator.RMObjectValidationMessage; import com.nedap.archie.rmobjectvalidator.RMObjectValidationMessageType; import com.nedap.archie.rmobjectvalidator.RMObjectValidator; import com.nedap.archie.testutil.DummyOperationalTemplateProvider; -import com.nedap.archie.testutil.TestUtil; import org.junit.Test; import org.leadpony.justify.api.Problem; import org.openehr.bmm.core.BmmModel; @@ -152,7 +152,7 @@ public void ordinal() throws Exception { @Test public void generateAllCKMExamples() throws Exception { ExampleJsonInstanceGenerator structureGenerator = createExampleJsonInstanceGenerator(); - FullArchetypeRepository repository = TestUtil.parseCKM();//add string regex filename fiter param here to filter files + FullArchetypeRepository repository = CkmRepositoryBuilder.parseCKM();//add string regex filename fiter param here to filter files ObjectMapper mapper = new ObjectMapper(); mapper.enable(SerializationFeature.INDENT_OUTPUT); int numberCreated = 0, validationFailed = 0, generatedException = 0, jsonSchemaValidationRan = 0, jsonSchemaValidationFailed = 0; diff --git a/openehr-rm/src/test/java/com/nedap/archie/test/CkmRepositoryBuilder.java b/openehr-rm/src/test/java/com/nedap/archie/test/CkmRepositoryBuilder.java new file mode 100644 index 000000000..d46c8b929 --- /dev/null +++ b/openehr-rm/src/test/java/com/nedap/archie/test/CkmRepositoryBuilder.java @@ -0,0 +1,56 @@ +package com.nedap.archie.test; + +import com.nedap.archie.adlparser.ADLParser; +import com.nedap.archie.antlr.errors.ANTLRParserErrors; +import com.nedap.archie.aom.*; +import com.nedap.archie.flattener.FullArchetypeRepository; +import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; +import org.reflections.Reflections; +import org.reflections.scanners.Scanners; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.InputStream; +import java.util.ArrayList; +import java.util.List; +import java.util.regex.Pattern; + +/** + * Created by pieter.bos on 06/04/16. + */ +public class CkmRepositoryBuilder { + + private static final Logger logger = LoggerFactory.getLogger(CkmRepositoryBuilder.class); + + public static FullArchetypeRepository parseCKM() { + return parseCKM(".*\\.adls"); + } + + public static FullArchetypeRepository parseCKM(String filter) { + InMemoryFullArchetypeRepository result = new InMemoryFullArchetypeRepository(); + Reflections reflections = new Reflections("ckm-mirror", Scanners.Resources); + + List adlFiles = new ArrayList<>(reflections.getResources(Pattern.compile(filter))); + + for(String file:adlFiles) { + Archetype archetype; + ANTLRParserErrors errors; + try (InputStream stream = CkmRepositoryBuilder.class.getResourceAsStream("/" + file)) { + ADLParser parser = new ADLParser(); + parser.setLogEnabled(false); + archetype = parser.parse(stream); + errors = parser.getErrors(); + if (errors.hasNoErrors()) { + result.addArchetype(archetype); + } else { + logger.warn("error parsing archetype: {}", errors); + } + } catch (Exception e) { + logger.warn("exception parsing archetype {}", file, e); + } + } + return result; + } + + +} diff --git a/tools/src/testFixtures/java/com/nedap/archie/testutil/TestUtil.java b/tools/src/testFixtures/java/com/nedap/archie/testutil/TestUtil.java index 960725a2d..4a16c854d 100644 --- a/tools/src/testFixtures/java/com/nedap/archie/testutil/TestUtil.java +++ b/tools/src/testFixtures/java/com/nedap/archie/testutil/TestUtil.java @@ -178,35 +178,4 @@ public static void parseExpectErrorCode(String resourceName, String errorCode) t } } - public static FullArchetypeRepository parseCKM() { - return parseCKM(".*\\.adls"); - } - - public static FullArchetypeRepository parseCKM(String filter) { - InMemoryFullArchetypeRepository result = new InMemoryFullArchetypeRepository(); - Reflections reflections = new Reflections("ckm-mirror", Scanners.Resources); - - List adlFiles = new ArrayList<>(reflections.getResources(Pattern.compile(filter))); - - for(String file:adlFiles) { - Archetype archetype; - ANTLRParserErrors errors; - try (InputStream stream = TestUtil.class.getResourceAsStream("/" + file)) { - ADLParser parser = new ADLParser(); - parser.setLogEnabled(false); - archetype = parser.parse(stream); - errors = parser.getErrors(); - if (errors.hasNoErrors()) { - result.addArchetype(archetype); - } else { - logger.warn("error parsing archetype: {}", errors); - } - } catch (Exception e) { - logger.warn("exception parsing archetype {}", file, e); - } - } - return result; - } - - } From bdfdd4f61ddc63ae31efb1cc4b1b67ce13a9573e Mon Sep 17 00:00:00 2001 From: wolandscat Date: Sat, 18 May 2024 12:32:02 -0600 Subject: [PATCH 14/19] Refactor Diff and flatten parse helper routines to take a 'class' argument so as to use the correct /resources area. TODO: there might be a better way to do this, but it seems the safest way to share /resources across projects given the Java model of class loading. --- .../aom/TerminologyCodeConstraintsTest.java | 10 ++-- .../archie/aom/ArchetypeTerminologyTest.java | 6 +- .../archie/diff/SiblingOrderDiffTest.java | 7 ++- .../DifferentiatorExamplesFromSpecTest.java | 28 +++++----- .../OperationalTemplateCreatorTest.java | 4 +- .../flattener/SiblingOrderFlattenerTest.java | 4 +- .../FlattenerExamplesFromSpecTest.java | 56 +++++++++---------- .../TerminologyFlattenerExamplesFromSpec.java | 6 +- .../nedap/archie/testutil/DiffTestUtil.java | 19 +++---- .../testutil/ParseValidArchetypeTestUtil.java | 6 +- 10 files changed, 73 insertions(+), 73 deletions(-) diff --git a/openehr-rm/src/test/java/com/nedap/archie/aom/TerminologyCodeConstraintsTest.java b/openehr-rm/src/test/java/com/nedap/archie/aom/TerminologyCodeConstraintsTest.java index e0146205b..091f37173 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/aom/TerminologyCodeConstraintsTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/aom/TerminologyCodeConstraintsTest.java @@ -11,14 +11,14 @@ import com.nedap.archie.flattener.Flattener; import com.nedap.archie.flattener.FlattenerConfiguration; import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; -import com.nedap.archie.flattener.specexamples.FlattenerTestUtil; -import org.openehr.rm.datatypes.CodePhrase; -import org.openehr.rm.datavalues.DvCodedText; +import com.nedap.archie.testutil.ParseValidArchetypeTestUtil; import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rules.evaluation.DummyRulesPrimitiveObjectParent; import org.junit.Before; import org.junit.Test; import org.openehr.referencemodels.AllMetaModelsInitialiser; +import org.openehr.rm.datatypes.CodePhrase; +import org.openehr.rm.datavalues.DvCodedText; import java.net.URI; import java.util.*; @@ -181,8 +181,8 @@ public void validationInOptTest() throws Exception { //getting the term for a use archetype is a bit of a tricky situation - it's not for the 'id1' code, //it's for the code in the parent. So do some specific test here InMemoryFullArchetypeRepository repository = new InMemoryFullArchetypeRepository(); - repository.addArchetype(FlattenerTestUtil.parse("/com/nedap/archie/aom/openEHR-EHR-COMPOSITION.parent.v1.0.0.adls")); - repository.addArchetype(FlattenerTestUtil.parse("/com/nedap/archie/aom/openEHR-EHR-GENERIC_ENTRY.included.v1.0.0.adls")); + repository.addArchetype(ParseValidArchetypeTestUtil.parse(this.getClass(), "/com/nedap/archie/aom/openEHR-EHR-COMPOSITION.parent.v1.0.0.adls")); + repository.addArchetype(ParseValidArchetypeTestUtil.parse(this.getClass(), "/com/nedap/archie/aom/openEHR-EHR-GENERIC_ENTRY.included.v1.0.0.adls")); //create operational template Flattener flattener = new Flattener(repository, AllMetaModelsInitialiser.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); diff --git a/tools/src/test/java/com/nedap/archie/aom/ArchetypeTerminologyTest.java b/tools/src/test/java/com/nedap/archie/aom/ArchetypeTerminologyTest.java index 02f015707..9ea507c93 100644 --- a/tools/src/test/java/com/nedap/archie/aom/ArchetypeTerminologyTest.java +++ b/tools/src/test/java/com/nedap/archie/aom/ArchetypeTerminologyTest.java @@ -5,7 +5,7 @@ import com.nedap.archie.flattener.Flattener; import com.nedap.archie.flattener.FlattenerConfiguration; import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; -import com.nedap.archie.flattener.specexamples.FlattenerTestUtil; +import com.nedap.archie.testutil.ParseValidArchetypeTestUtil; import org.junit.After; import org.junit.Test; import org.openehr.referencemodels.AllMetaModelsInitialiser; @@ -27,8 +27,8 @@ public void termForUseArchetype() throws IOException, ADLParseException { //getting the term for a use archetype is a bit of a tricky situation - it's not for the 'id1' code, //it's for the code in the parent. So do some specific test here InMemoryFullArchetypeRepository repository = new InMemoryFullArchetypeRepository(); - repository.addArchetype(FlattenerTestUtil.parse("/com/nedap/archie/aom/openEHR-EHR-COMPOSITION.parent.v1.0.0.adls")); - repository.addArchetype(FlattenerTestUtil.parse("/com/nedap/archie/aom/openEHR-EHR-GENERIC_ENTRY.included.v1.0.0.adls")); + repository.addArchetype(ParseValidArchetypeTestUtil.parse(this.getClass(), "/com/nedap/archie/aom/openEHR-EHR-COMPOSITION.parent.v1.0.0.adls")); + repository.addArchetype(ParseValidArchetypeTestUtil.parse(this.getClass(), "/com/nedap/archie/aom/openEHR-EHR-GENERIC_ENTRY.included.v1.0.0.adls")); //check that they are valid, just to be sure repository.compile(AllMetaModelsInitialiser.getMetaModels()); diff --git a/tools/src/test/java/com/nedap/archie/diff/SiblingOrderDiffTest.java b/tools/src/test/java/com/nedap/archie/diff/SiblingOrderDiffTest.java index 5865cd913..611bebc8c 100644 --- a/tools/src/test/java/com/nedap/archie/diff/SiblingOrderDiffTest.java +++ b/tools/src/test/java/com/nedap/archie/diff/SiblingOrderDiffTest.java @@ -1,5 +1,6 @@ package com.nedap.archie.diff; +import com.nedap.archie.testutil.DiffTestUtil; import org.junit.Before; import org.junit.Test; @@ -15,7 +16,7 @@ public void setup() throws Exception { @Test public void testAnchor() throws Exception { - diffTestUtil.testWithExplicitExpect("openEHR-EHR-CLUSTER.order-parent.v1.0.0.adls", "openEHR-EHR-CLUSTER.test_anchoring.v1.0.0.adls"); + diffTestUtil.testWithExplicitExpect(this.getClass(),"openEHR-EHR-CLUSTER.order-parent.v1.0.0.adls", "openEHR-EHR-CLUSTER.test_anchoring.v1.0.0.adls"); } /** @@ -25,7 +26,7 @@ public void testAnchor() throws Exception { */ @Test public void reorderParentNodes() throws Exception { - diffTestUtil.testWithExplicitExpect("openEHR-EHR-CLUSTER.order-parent.v1.0.0.adls", "openEHR-EHR-CLUSTER.reorder_parent_nodes.v1.0.0.adls"); + diffTestUtil.testWithExplicitExpect(this.getClass(),"openEHR-EHR-CLUSTER.order-parent.v1.0.0.adls", "openEHR-EHR-CLUSTER.reorder_parent_nodes.v1.0.0.adls"); } @@ -35,7 +36,7 @@ public void reorderParentNodes() throws Exception { */ @Test public void redefinitionAtSamePlace() throws Exception { - diffTestUtil.test("openEHR-EHR-CLUSTER.order-parent.v1.0.0.adls","openEHR-EHR-CLUSTER.redefinition_at_same_place.v1.0.0.adls"); + diffTestUtil.test(this.getClass(),"openEHR-EHR-CLUSTER.order-parent.v1.0.0.adls","openEHR-EHR-CLUSTER.redefinition_at_same_place.v1.0.0.adls"); } //The two tricky edge cases in the flattener test are really not interesting here, as the Differentiator will never create such hard to do code diff --git a/tools/src/test/java/com/nedap/archie/diff/specexamples/DifferentiatorExamplesFromSpecTest.java b/tools/src/test/java/com/nedap/archie/diff/specexamples/DifferentiatorExamplesFromSpecTest.java index dc66066c2..db1af68ef 100644 --- a/tools/src/test/java/com/nedap/archie/diff/specexamples/DifferentiatorExamplesFromSpecTest.java +++ b/tools/src/test/java/com/nedap/archie/diff/specexamples/DifferentiatorExamplesFromSpecTest.java @@ -1,6 +1,6 @@ package com.nedap.archie.diff.specexamples; -import com.nedap.archie.diff.DiffTestUtil; +import com.nedap.archie.testutil.DiffTestUtil; import org.junit.Before; import org.junit.Test; @@ -17,12 +17,12 @@ public void setup() throws Exception { @Test public void specializationPaths() throws Exception { - diffTestUtil.test("openEHR-EHR-OBSERVATION.lab-test.v1.0.0.adls", "specialization_paths.adls"); + diffTestUtil.test(this.getClass(),"openEHR-EHR-OBSERVATION.lab-test.v1.0.0.adls", "specialization_paths.adls"); } @Test public void redefinitionForRefinement() throws Exception { - diffTestUtil.testWithExplicitExpect("problem.adls", "diagnosis.adls"); + diffTestUtil.testWithExplicitExpect(this.getClass(),"problem.adls", "diagnosis.adls"); } //9.3.2. Redefinition for Specialisation has been fully covered by specialization paths and is not needed in tests @@ -30,21 +30,21 @@ public void redefinitionForRefinement() throws Exception { //9.3.2.1. Specialisation with Cloning @Test public void specialisationWithCloning() throws Exception { - diffTestUtil.testWithExplicitExpect("openEHR-EHR-CLUSTER.laboratory_test_panel.v1.0.0.adls", "openEHR-EHR-CLUSTER.lipid_studies_panel.adls"); + diffTestUtil.testWithExplicitExpect(this.getClass(),"openEHR-EHR-CLUSTER.laboratory_test_panel.v1.0.0.adls", "openEHR-EHR-CLUSTER.lipid_studies_panel.adls"); } //9.4.1 in definitions specs @Test public void existenceRedefinition() throws Exception { - diffTestUtil.test("openEHR-EHR-OBSERVATION.empty_observation.v1.0.0.adls", "openEHR-EHR-OBSERVATION.protocol_mandatory.v1.0.0.adls"); - diffTestUtil.test("openEHR-EHR-OBSERVATION.empty_observation.v1.0.0.adls", "openEHR-EHR-OBSERVATION.protocol_exclusion.v1.0.0.adls"); + diffTestUtil.test(this.getClass(),"openEHR-EHR-OBSERVATION.empty_observation.v1.0.0.adls", "openEHR-EHR-OBSERVATION.protocol_mandatory.v1.0.0.adls"); + diffTestUtil.test(this.getClass(),"openEHR-EHR-OBSERVATION.empty_observation.v1.0.0.adls", "openEHR-EHR-OBSERVATION.protocol_exclusion.v1.0.0.adls"); } @Test public void cardinalityRedefinition() throws Exception { - diffTestUtil.testWithExplicitExpect("openEHR-EHR-CLUSTER.cardinality_parent.v1.0.0.adls","openEHR-EHR-CLUSTER.cardinality_specialized.v1.0.0.adls"); + diffTestUtil.testWithExplicitExpect(this.getClass(),"openEHR-EHR-CLUSTER.cardinality_parent.v1.0.0.adls","openEHR-EHR-CLUSTER.cardinality_specialized.v1.0.0.adls"); } //ordering already fully covered in previous examples @@ -54,41 +54,41 @@ public void cardinalityRedefinition() throws Exception { @Test public void exclusionRemoval() throws Exception { - diffTestUtil.testWithExplicitExpect("openEHR-EHR-CLUSTER.occurrences_parent.v1.0.0.adls", "openEHR-EHR-CLUSTER.occurrences_specialized.v1.0.0.adls"); + diffTestUtil.testWithExplicitExpect(this.getClass(),"openEHR-EHR-CLUSTER.occurrences_parent.v1.0.0.adls", "openEHR-EHR-CLUSTER.occurrences_specialized.v1.0.0.adls"); } //9.5.6. Internal Reference (Proxy Object) Redefinition @Test public void internalReferenceRedefinition() throws Exception { - diffTestUtil.test("openEHR-EHR-ENTRY.reference_redefinition_parent.v1.0.0.adls", "openEHR-EHR-ENTRY.reference_redefinition_specialized.v1.0.0.adls"); + diffTestUtil.test(this.getClass(),"openEHR-EHR-ENTRY.reference_redefinition_parent.v1.0.0.adls", "openEHR-EHR-ENTRY.reference_redefinition_specialized.v1.0.0.adls"); } @Test public void internalReferenceRedefinitionNoReplacement() throws Exception { //diff generates an extra after statement for now, so explicit diff result! - diffTestUtil.test("openEHR-EHR-ENTRY.reference_redefinition_parent.v1.0.0.adls", "openEHR-EHR-ENTRY.reference_redefinition_no_replacement.v1.0.0.adls"); + diffTestUtil.test(this.getClass(),"openEHR-EHR-ENTRY.reference_redefinition_parent.v1.0.0.adls", "openEHR-EHR-ENTRY.reference_redefinition_no_replacement.v1.0.0.adls"); } @Test public void numericPrimitiveRedefinition() throws Exception { - diffTestUtil.test("openEHR-EHR-ELEMENT.numeric_primitive_parent.v1.0.0.adls", "openEHR-EHR-ELEMENT.numeric_primitive_specialized.v1.0.0.adls"); + diffTestUtil.test(this.getClass(),"openEHR-EHR-ELEMENT.numeric_primitive_parent.v1.0.0.adls", "openEHR-EHR-ELEMENT.numeric_primitive_specialized.v1.0.0.adls"); } @Test public void tupleRedefinition() throws Exception { - diffTestUtil.testWithExplicitExpect("openEHR-EHR-ELEMENT.tuple_parent.v1.0.0.adls","openEHR-EHR-ELEMENT.tuple_specialized.v1.0.0.adls"); + diffTestUtil.testWithExplicitExpect(this.getClass(),"openEHR-EHR-ELEMENT.tuple_parent.v1.0.0.adls","openEHR-EHR-ELEMENT.tuple_specialized.v1.0.0.adls"); } @Test public void addTuple() throws Exception { - diffTestUtil.test("openEHR-EHR-ELEMENT.type_refinement_parent.v1.0.0.adls", "openEHR-EHR-ELEMENT.add_tuple.v1.0.0.adls"); + diffTestUtil.test(this.getClass(),"openEHR-EHR-ELEMENT.type_refinement_parent.v1.0.0.adls", "openEHR-EHR-ELEMENT.add_tuple.v1.0.0.adls"); } @Test public void valueSets() throws Exception { - diffTestUtil.test("openEHR-EHR-ELEMENT.internal_value_set_parent.v1.0.0.adls", "openEHR-EHR-ELEMENT.interval_value_set_specialized.v1.0.0.adls"); + diffTestUtil.test(this.getClass(),"openEHR-EHR-ELEMENT.internal_value_set_parent.v1.0.0.adls", "openEHR-EHR-ELEMENT.interval_value_set_specialized.v1.0.0.adls"); } } diff --git a/tools/src/test/java/com/nedap/archie/flattener/OperationalTemplateCreatorTest.java b/tools/src/test/java/com/nedap/archie/flattener/OperationalTemplateCreatorTest.java index d7d2949dd..867566191 100644 --- a/tools/src/test/java/com/nedap/archie/flattener/OperationalTemplateCreatorTest.java +++ b/tools/src/test/java/com/nedap/archie/flattener/OperationalTemplateCreatorTest.java @@ -6,7 +6,7 @@ import com.nedap.archie.aom.*; import com.nedap.archie.archetypevalidator.ArchetypeValidator; import com.nedap.archie.archetypevalidator.ValidationResult; -import com.nedap.archie.flattener.specexamples.FlattenerTestUtil; +import com.nedap.archie.testutil.ParseValidArchetypeTestUtil; import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ReferenceModels; import org.junit.Test; @@ -144,6 +144,6 @@ private Archetype parseAndCreateOPTWithConfig(String fileName, InMemoryFullArche } private Archetype parse(String filePath) throws IOException, ADLParseException { - return FlattenerTestUtil.parse(filePath); + return ParseValidArchetypeTestUtil.parse(this.getClass(), filePath); } } diff --git a/tools/src/test/java/com/nedap/archie/flattener/SiblingOrderFlattenerTest.java b/tools/src/test/java/com/nedap/archie/flattener/SiblingOrderFlattenerTest.java index 159dbf323..c8d8551a2 100644 --- a/tools/src/test/java/com/nedap/archie/flattener/SiblingOrderFlattenerTest.java +++ b/tools/src/test/java/com/nedap/archie/flattener/SiblingOrderFlattenerTest.java @@ -8,7 +8,7 @@ import com.nedap.archie.aom.CObject; import com.nedap.archie.archetypevalidator.ArchetypeValidator; import com.nedap.archie.archetypevalidator.ValidationResult; -import com.nedap.archie.flattener.specexamples.FlattenerTestUtil; +import com.nedap.archie.testutil.ParseValidArchetypeTestUtil; import com.nedap.archie.openehr.rminfo.OpenEhrRmInfoLookup; import com.nedap.archie.rminfo.ReferenceModels; import org.junit.Before; @@ -211,7 +211,7 @@ public void orderArchetypeSlotFilling() throws Exception { } private Archetype parse(String fileName) throws IOException, ADLParseException { - return FlattenerTestUtil.parse("/com/nedap/archie/flattener/siblingorder/" + fileName); + return ParseValidArchetypeTestUtil.parse(this.getClass(), "/com/nedap/archie/flattener/siblingorder/" + fileName); } private Archetype parseAndFlatten(String fileName) throws IOException, ADLParseException { diff --git a/tools/src/test/java/com/nedap/archie/flattener/specexamples/FlattenerExamplesFromSpecTest.java b/tools/src/test/java/com/nedap/archie/flattener/specexamples/FlattenerExamplesFromSpecTest.java index 3ab69a8b9..a10df2711 100644 --- a/tools/src/test/java/com/nedap/archie/flattener/specexamples/FlattenerExamplesFromSpecTest.java +++ b/tools/src/test/java/com/nedap/archie/flattener/specexamples/FlattenerExamplesFromSpecTest.java @@ -24,7 +24,7 @@ import java.util.List; import java.util.stream.Collectors; -import static com.nedap.archie.flattener.specexamples.FlattenerTestUtil.*; +import static com.nedap.archie.testutil.ParseValidArchetypeTestUtil.*; import static org.junit.Assert.*; public class FlattenerExamplesFromSpecTest { @@ -42,9 +42,9 @@ public void setup() throws Exception { @Test public void specializationPaths() throws Exception { - Archetype labTest = parse("openEHR-EHR-OBSERVATION.lab-test.v1.0.0.adls"); + Archetype labTest = parse(this.getClass(), "openEHR-EHR-OBSERVATION.lab-test.v1.0.0.adls"); repository.addArchetype(labTest); - Archetype specializationPaths = parse("specialization_paths.adls"); + Archetype specializationPaths = parse(this.getClass(), "specialization_paths.adls"); Archetype flattened = new Flattener(repository, models).flatten(specializationPaths); assertEquals(specializationPaths.getParentArchetypeId(), flattened.getParentArchetypeId()); @@ -67,9 +67,9 @@ public void specializationPaths() throws Exception { @Test public void redefinitionForRefinement() throws Exception { - Archetype problem = parse("problem.adls"); + Archetype problem = parse(this.getClass(), "problem.adls"); repository.addArchetype(problem); - Archetype diagnosis = parse("diagnosis.adls"); + Archetype diagnosis = parse(this.getClass(), "diagnosis.adls"); Archetype flattenedDiagnosis = new Flattener(repository, models).flatten(diagnosis); assertEquals("Recording of diagnosis", flattenedDiagnosis.getDefinition().getTerm().getText()); @@ -104,9 +104,9 @@ public void redefinitionForRefinement() throws Exception { //9.3.2.1. Specialisation with Cloning @Test public void specialisationWithCloning() throws Exception { - Archetype labTestPanel = parse("openEHR-EHR-CLUSTER.laboratory_test_panel.v1.0.0.adls"); + Archetype labTestPanel = parse(this.getClass(), "openEHR-EHR-CLUSTER.laboratory_test_panel.v1.0.0.adls"); repository.addArchetype(labTestPanel); - Archetype lipidStudiesPanel = parse("openEHR-EHR-CLUSTER.lipid_studies_panel.adls"); + Archetype lipidStudiesPanel = parse(this.getClass(), "openEHR-EHR-CLUSTER.lipid_studies_panel.adls"); Archetype flattenedLipidStudies = new Flattener(repository, models).flatten(lipidStudiesPanel); List itemNodes = flattenedLipidStudies.getDefinition().getAttribute("items").getChildren(); @@ -131,11 +131,11 @@ public void specialisationWithCloning() throws Exception { //9.4.1 in definitions specs @Test public void existenceRedefinition() throws Exception { - Archetype emptyObservation = parse("openEHR-EHR-OBSERVATION.empty_observation.v1.0.0.adls"); + Archetype emptyObservation = parse(this.getClass(), "openEHR-EHR-OBSERVATION.empty_observation.v1.0.0.adls"); repository.addArchetype(emptyObservation); - Archetype mandatory = parse("openEHR-EHR-OBSERVATION.protocol_mandatory.v1.0.0.adls"); - Archetype exclusion = parse("openEHR-EHR-OBSERVATION.protocol_exclusion.v1.0.0.adls"); + Archetype mandatory = parse(this.getClass(), "openEHR-EHR-OBSERVATION.protocol_mandatory.v1.0.0.adls"); + Archetype exclusion = parse(this.getClass(), "openEHR-EHR-OBSERVATION.protocol_exclusion.v1.0.0.adls"); Archetype mandatoryFlat = new Flattener(repository, models).flatten(mandatory); Archetype exclusionFlat = new Flattener(repository, models).flatten(exclusion); @@ -152,9 +152,9 @@ public void existenceRedefinition() throws Exception { @Test public void cardinalityRedefinition() throws Exception { - Archetype cardinalityParent = parse("openEHR-EHR-CLUSTER.cardinality_parent.v1.0.0.adls"); + Archetype cardinalityParent = parse(this.getClass(), "openEHR-EHR-CLUSTER.cardinality_parent.v1.0.0.adls"); repository.addArchetype(cardinalityParent); - Archetype specialized = parse("openEHR-EHR-CLUSTER.cardinality_specialized.v1.0.0.adls"); + Archetype specialized = parse(this.getClass(), "openEHR-EHR-CLUSTER.cardinality_specialized.v1.0.0.adls"); Archetype flat = new Flattener(repository, models).flatten(specialized); @@ -174,10 +174,10 @@ public void cardinalityRedefinition() throws Exception { @Test public void exclusionRemoval() throws Exception { - Archetype occurrencesParent = parse("openEHR-EHR-CLUSTER.occurrences_parent.v1.0.0.adls"); + Archetype occurrencesParent = parse(this.getClass(), "openEHR-EHR-CLUSTER.occurrences_parent.v1.0.0.adls"); repository.addArchetype(occurrencesParent); - Archetype occurrencesSpecialized = parse("openEHR-EHR-CLUSTER.occurrences_specialized.v1.0.0.adls"); + Archetype occurrencesSpecialized = parse(this.getClass(), "openEHR-EHR-CLUSTER.occurrences_specialized.v1.0.0.adls"); Archetype flat = new Flattener(repository, models).removeZeroOccurrencesConstraints(true).flatten(occurrencesSpecialized); CAttribute attribute = flat.itemAtPath("/items[id3]/value"); @@ -191,10 +191,10 @@ public void exclusionRemoval() throws Exception { @Test public void exclusionDefault() throws Exception { - Archetype occurrencesParent = parse("openEHR-EHR-CLUSTER.occurrences_parent.v1.0.0.adls"); + Archetype occurrencesParent = parse(this.getClass(), "openEHR-EHR-CLUSTER.occurrences_parent.v1.0.0.adls"); repository.addArchetype(occurrencesParent); - Archetype occurrencesSpecialized = parse("openEHR-EHR-CLUSTER.occurrences_specialized.v1.0.0.adls"); + Archetype occurrencesSpecialized = parse(this.getClass(), "openEHR-EHR-CLUSTER.occurrences_specialized.v1.0.0.adls"); Archetype flat = new Flattener(repository, models).flatten(occurrencesSpecialized); CAttribute attribute = flat.itemAtPath("/items[id3]/value"); @@ -216,8 +216,8 @@ public void exclusionDefault() throws Exception { //because we don't know what it should do in this case @Test public void RMTypeRefinement() throws Exception { - Archetype rmTypeRefinement = parse("openEHR-EHR-ELEMENT.type_refinement_parent.v1.0.0.adls"); - Archetype specialized = parse("openEHR-EHR-ELEMENT.type_refinement_specialized.v1.0.0.adls"); + Archetype rmTypeRefinement = parse(this.getClass(), "openEHR-EHR-ELEMENT.type_refinement_parent.v1.0.0.adls"); + Archetype specialized = parse(this.getClass(), "openEHR-EHR-ELEMENT.type_refinement_specialized.v1.0.0.adls"); repository.addArchetype(rmTypeRefinement); Archetype flat = new Flattener(repository, models).flatten(specialized); @@ -243,9 +243,9 @@ public void RMTypeRefinement() throws Exception { //9.5.6. Internal Reference (Proxy Object) Redefinition @Test public void internalReferenceRedefinition() throws Exception { - Archetype parent = parse("openEHR-EHR-ENTRY.reference_redefinition_parent.v1.0.0.adls"); + Archetype parent = parse(this.getClass(), "openEHR-EHR-ENTRY.reference_redefinition_parent.v1.0.0.adls"); repository.addArchetype(parent); - Archetype specialized = parse("openEHR-EHR-ENTRY.reference_redefinition_specialized.v1.0.0.adls"); + Archetype specialized = parse(this.getClass(), "openEHR-EHR-ENTRY.reference_redefinition_specialized.v1.0.0.adls"); Archetype flat = new Flattener(repository, models).flatten(specialized); assertNotNull(flat.itemAtPath("/data[id3]/items[id4]")); @@ -257,9 +257,9 @@ public void internalReferenceRedefinition() throws Exception { @Test public void internalReferenceRedefinitionNoReplacement() throws Exception { - Archetype parent = parse("openEHR-EHR-ENTRY.reference_redefinition_parent.v1.0.0.adls"); + Archetype parent = parse(this.getClass(), "openEHR-EHR-ENTRY.reference_redefinition_parent.v1.0.0.adls"); repository.addArchetype(parent); - Archetype specialized = parse("openEHR-EHR-ENTRY.reference_redefinition_no_replacement.v1.0.0.adls"); + Archetype specialized = parse(this.getClass(), "openEHR-EHR-ENTRY.reference_redefinition_no_replacement.v1.0.0.adls"); Archetype flat = new Flattener(repository, models).flatten(specialized); ArchetypeModelObject cluster = flat.itemAtPath("/data[id3]"); @@ -270,9 +270,9 @@ public void internalReferenceRedefinitionNoReplacement() throws Exception { @Test public void numericPrimitiveRedefinition() throws Exception { - Archetype parent = parse("openEHR-EHR-ELEMENT.numeric_primitive_parent.v1.0.0.adls"); + Archetype parent = parse(this.getClass(), "openEHR-EHR-ELEMENT.numeric_primitive_parent.v1.0.0.adls"); repository.addArchetype(parent); - Archetype specialized = parse("openEHR-EHR-ELEMENT.numeric_primitive_specialized.v1.0.0.adls"); + Archetype specialized = parse(this.getClass(), "openEHR-EHR-ELEMENT.numeric_primitive_specialized.v1.0.0.adls"); Archetype flat = new Flattener(repository, models).flatten(specialized); CReal flatConstraint = flat.itemAtPath("/value[id3]/magnitude[1]"); @@ -286,9 +286,9 @@ public void numericPrimitiveRedefinition() throws Exception { @Test public void tupleRedefinition() throws Exception { - Archetype parent = parse("openEHR-EHR-ELEMENT.tuple_parent.v1.0.0.adls"); + Archetype parent = parse(this.getClass(), "openEHR-EHR-ELEMENT.tuple_parent.v1.0.0.adls"); repository.addArchetype(parent); - Archetype specialized = parse("openEHR-EHR-ELEMENT.tuple_specialized.v1.0.0.adls"); + Archetype specialized = parse(this.getClass(), "openEHR-EHR-ELEMENT.tuple_specialized.v1.0.0.adls"); Archetype flat = new Flattener(repository, models).flatten(specialized); //the tuple should be completely replaced with the new tuple //the attributes should be correct @@ -314,9 +314,9 @@ public void tupleRedefinition() throws Exception { @Test public void addTuple() throws Exception { - Archetype parent = parse("openEHR-EHR-ELEMENT.type_refinement_parent.v1.0.0.adls"); + Archetype parent = parse(this.getClass(), "openEHR-EHR-ELEMENT.type_refinement_parent.v1.0.0.adls"); repository.addArchetype(parent); - Archetype specialized = parse("openEHR-EHR-ELEMENT.add_tuple.v1.0.0.adls"); + Archetype specialized = parse(this.getClass(), "openEHR-EHR-ELEMENT.add_tuple.v1.0.0.adls"); Archetype flat = new Flattener(repository, models).flatten(specialized); //the tuple should be completely replaced with the new tuple //the attributes should be correct diff --git a/tools/src/test/java/com/nedap/archie/flattener/specexamples/TerminologyFlattenerExamplesFromSpec.java b/tools/src/test/java/com/nedap/archie/flattener/specexamples/TerminologyFlattenerExamplesFromSpec.java index adfbf2653..0784e9f68 100644 --- a/tools/src/test/java/com/nedap/archie/flattener/specexamples/TerminologyFlattenerExamplesFromSpec.java +++ b/tools/src/test/java/com/nedap/archie/flattener/specexamples/TerminologyFlattenerExamplesFromSpec.java @@ -11,7 +11,7 @@ import java.util.Map; -import static com.nedap.archie.flattener.specexamples.FlattenerTestUtil.*; +import static com.nedap.archie.testutil.ParseValidArchetypeTestUtil.*; import static org.junit.Assert.*; public class TerminologyFlattenerExamplesFromSpec { @@ -25,10 +25,10 @@ public void setup() throws Exception { @Test public void internalValueSetRedefinition() throws Exception { - Archetype parent = parse("openEHR-EHR-ELEMENT.internal_value_set_parent.v1.0.0.adls"); + Archetype parent = parse(this.getClass(), "openEHR-EHR-ELEMENT.internal_value_set_parent.v1.0.0.adls"); repository.addArchetype(parent); - Archetype specialized = parse("openEHR-EHR-ELEMENT.interval_value_set_specialized.v1.0.0.adls"); + Archetype specialized = parse(this.getClass(), "openEHR-EHR-ELEMENT.interval_value_set_specialized.v1.0.0.adls"); Archetype flat = new Flattener(repository, AllMetaModelsInitialiser.getNativeRms()).flatten(specialized); Map valueSets = flat.getTerminology().getValueSets(); diff --git a/tools/src/testFixtures/java/com/nedap/archie/testutil/DiffTestUtil.java b/tools/src/testFixtures/java/com/nedap/archie/testutil/DiffTestUtil.java index 91b396ec5..7f8593563 100644 --- a/tools/src/testFixtures/java/com/nedap/archie/testutil/DiffTestUtil.java +++ b/tools/src/testFixtures/java/com/nedap/archie/testutil/DiffTestUtil.java @@ -1,12 +1,11 @@ -package com.nedap.archie.diff; +package com.nedap.archie.testutil; import com.nedap.archie.aom.Archetype; +import com.nedap.archie.diff.Differentiator; import com.nedap.archie.flattener.Flattener; import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; -import com.nedap.archie.flattener.specexamples.FlattenerTestUtil; import com.nedap.archie.rminfo.MetaModels; import com.nedap.archie.serializer.adl.ADLArchetypeSerializer; -import com.nedap.archie.testutil.TestUtil; import org.openehr.bmm.v2.validation.BmmRepository; import org.openehr.referencemodels.AllMetaModelsInitialiser; @@ -29,10 +28,10 @@ public DiffTestUtil(String archetypesResourceLocation, String expectationsResour models = new MetaModels(AllMetaModelsInitialiser.getNativeRms(), (BmmRepository) null); } - public void test(String parentFileName, String childFileName) throws Exception { - Archetype parent = FlattenerTestUtil.parse(archetypesResourceLocation + parentFileName); + public void test(Class caller, String parentFileName, String childFileName) throws Exception { + Archetype parent = ParseValidArchetypeTestUtil.parse(caller, archetypesResourceLocation + parentFileName); repository.addArchetype(parent); - Archetype child = FlattenerTestUtil.parse(archetypesResourceLocation + childFileName); + Archetype child = ParseValidArchetypeTestUtil.parse(caller, archetypesResourceLocation + childFileName); Archetype flattened = new Flattener(repository, models).flatten(child); assertEquals(child.getParentArchetypeId(), flattened.getParentArchetypeId()); @@ -48,11 +47,11 @@ public void test(String parentFileName, String childFileName) throws Exception { } - public void testWithExplicitExpect(String parentFileName, String childFileName) throws Exception { - Archetype parent = FlattenerTestUtil.parse(archetypesResourceLocation + parentFileName); + public void testWithExplicitExpect(Class caller, String parentFileName, String childFileName) throws Exception { + Archetype parent = ParseValidArchetypeTestUtil.parse(caller, archetypesResourceLocation + parentFileName); repository.addArchetype(parent); - Archetype child = FlattenerTestUtil.parse(archetypesResourceLocation + childFileName); - Archetype expectedDiff = FlattenerTestUtil.parse(expectationsResourceLocation + childFileName); + Archetype child = ParseValidArchetypeTestUtil.parse(caller, archetypesResourceLocation + childFileName); + Archetype expectedDiff = ParseValidArchetypeTestUtil.parse(caller, expectationsResourceLocation + childFileName); Archetype flattened = new Flattener(repository, models).flatten(child); assertEquals(child.getParentArchetypeId(), flattened.getParentArchetypeId()); diff --git a/tools/src/testFixtures/java/com/nedap/archie/testutil/ParseValidArchetypeTestUtil.java b/tools/src/testFixtures/java/com/nedap/archie/testutil/ParseValidArchetypeTestUtil.java index 4b6fd933d..04636a528 100644 --- a/tools/src/testFixtures/java/com/nedap/archie/testutil/ParseValidArchetypeTestUtil.java +++ b/tools/src/testFixtures/java/com/nedap/archie/testutil/ParseValidArchetypeTestUtil.java @@ -10,11 +10,11 @@ import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; -public class FlattenerTestUtil { +public class ParseValidArchetypeTestUtil { - public static Archetype parse(String filename) throws IOException, ADLParseException { + public static Archetype parse(Class caller, String filename) throws IOException, ADLParseException { ADLParser parser = new ADLParser(); - try(InputStream stream = FlattenerTestUtil.class.getResourceAsStream(filename)) { + try(InputStream stream = caller.getResourceAsStream(filename)) { if (stream == null) { fail("cannot find file: " + filename); } From 032630e89433092e5581b71f815965e3022961b2 Mon Sep 17 00:00:00 2001 From: wolandscat Date: Sat, 18 May 2024 12:39:16 -0600 Subject: [PATCH 15/19] Same refactoring as previous commit for parse helper routines - they now take a 'class' arg to ensure the corect /resources area is access (i.e. the caller's area, which could be in the same project or another). --- .../archie/adlparser/RMPathQueryTest.java | 10 +++---- .../aom/AttributeTupleConstraintsTest.java | 2 +- .../com/nedap/archie/json/AOMJacksonTest.java | 2 +- .../RmObjectValidatorTest.java | 2 +- .../ValidateArchetypedTest.java | 2 +- .../ArchetypeSlotValidationTest.java | 6 ++--- .../archie/adlparser/AOMPathQueryTest.java | 4 +-- .../adlparser/AomUtilsPathFindingTest.java | 2 +- .../archie/adlparser/DefinitionTest.java | 2 +- .../nedap/archie/adlparser/MetadataTest.java | 12 +++------ .../com/nedap/archie/adlparser/PathTest.java | 2 +- .../PrimitivesConstraintParserTest.java | 9 ++----- .../com/nedap/archie/adlparser/RegexTest.java | 5 +--- .../archie/adlparser/TerminologyTest.java | 2 +- .../nedap/archie/aom/ArchetypeCloneTest.java | 3 +-- .../com/nedap/archie/aom/CObjectTest.java | 2 +- .../ArchetypeValidatorVersionsTest.java | 12 ++++----- .../TermCodeSpecializationTest.java | 26 +++++++++---------- .../flattener/RMOverlayFlattenerTest.java | 8 +++--- .../adl/ADLArchetypeSerializerTest.java | 2 +- .../com/nedap/archie/xml/JAXBAOMTest.java | 2 +- .../com/nedap/archie/testutil/TestUtil.java | 8 +++--- 22 files changed, 56 insertions(+), 69 deletions(-) diff --git a/openehr-rm/src/test/java/com/nedap/archie/adlparser/RMPathQueryTest.java b/openehr-rm/src/test/java/com/nedap/archie/adlparser/RMPathQueryTest.java index e5e12ceb2..24ca13136 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/adlparser/RMPathQueryTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/adlparser/RMPathQueryTest.java @@ -39,7 +39,7 @@ public class RMPathQueryTest { @Before public void setup() throws Exception { testUtil = new TestUtil(OpenEhrRmInfoLookup.getInstance()); - archetype = TestUtil.parseFailOnErrors("/basic.adl"); + archetype = TestUtil.parseFailOnErrors(this.getClass(),"/basic.adl"); new RMConstraintImposer().imposeConstraints(archetype.getDefinition()); } @@ -119,7 +119,7 @@ public void multipleItems() { public void findMatchSpecialisedNodes() throws Exception { InMemoryFullArchetypeRepository inMemoryFullArchetypeRepository = new InMemoryFullArchetypeRepository(); inMemoryFullArchetypeRepository.addArchetype(archetype); - Archetype archetype_specialised = TestUtil.parseFailOnErrors("/basic_specialised.adls"); + Archetype archetype_specialised = TestUtil.parseFailOnErrors(this.getClass(),"/basic_specialised.adls"); inMemoryFullArchetypeRepository.addArchetype(archetype_specialised); Flattener flattener = new Flattener(inMemoryFullArchetypeRepository, AllMetaModelsInitialiser.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); OperationalTemplate opt = (OperationalTemplate) flattener.flatten(archetype_specialised); @@ -134,7 +134,7 @@ public void findMatchSpecialisedNodes() throws Exception { public void findListMatchSpecialisedNodes() throws Exception { InMemoryFullArchetypeRepository inMemoryFullArchetypeRepository = new InMemoryFullArchetypeRepository(); inMemoryFullArchetypeRepository.addArchetype(archetype); - Archetype archetype_specialised = TestUtil.parseFailOnErrors("/basic_specialised.adls"); + Archetype archetype_specialised = TestUtil.parseFailOnErrors(this.getClass(),"/basic_specialised.adls"); inMemoryFullArchetypeRepository.addArchetype(archetype_specialised); Flattener flattener = new Flattener(inMemoryFullArchetypeRepository, AllMetaModelsInitialiser.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); OperationalTemplate opt = (OperationalTemplate) flattener.flatten(archetype_specialised); @@ -149,8 +149,8 @@ public void findListMatchSpecialisedNodes() throws Exception { public void findListMatchTwiceSpecialisedNodes() throws Exception { InMemoryFullArchetypeRepository inMemoryFullArchetypeRepository = new InMemoryFullArchetypeRepository(); inMemoryFullArchetypeRepository.addArchetype(archetype); - Archetype archetype_specialised = TestUtil.parseFailOnErrors("/basic_specialised.adls"); - Archetype archetype_specialised_twice = TestUtil.parseFailOnErrors("/basic_specialised2.adls"); + Archetype archetype_specialised = TestUtil.parseFailOnErrors(this.getClass(),"/basic_specialised.adls"); + Archetype archetype_specialised_twice = TestUtil.parseFailOnErrors(this.getClass(),"/basic_specialised2.adls"); inMemoryFullArchetypeRepository.addArchetype(archetype_specialised); inMemoryFullArchetypeRepository.addArchetype(archetype_specialised_twice); Flattener flattener = new Flattener(inMemoryFullArchetypeRepository, AllMetaModelsInitialiser.getMetaModels(), FlattenerConfiguration.forOperationalTemplate()); diff --git a/openehr-rm/src/test/java/com/nedap/archie/aom/AttributeTupleConstraintsTest.java b/openehr-rm/src/test/java/com/nedap/archie/aom/AttributeTupleConstraintsTest.java index 41b48ddc0..2a62205d4 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/aom/AttributeTupleConstraintsTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/aom/AttributeTupleConstraintsTest.java @@ -19,7 +19,7 @@ public class AttributeTupleConstraintsTest { @BeforeClass public static void setup() throws Exception { - Archetype archetype = TestUtil.parseFailOnErrors("/basic.adl"); + Archetype archetype = TestUtil.parseFailOnErrors(AttributeTupleConstraintsTest.class,"/basic.adl"); CComplexObject valueObject = archetype.getDefinition().itemAtPath("/context[id11]/other_context[id2]/items[id3]/items[id7]/value[id16]"); attributeTuple = valueObject.getAttributeTuples().get(0); } diff --git a/openehr-rm/src/test/java/com/nedap/archie/json/AOMJacksonTest.java b/openehr-rm/src/test/java/com/nedap/archie/json/AOMJacksonTest.java index 48476c4a5..509d4ff07 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/json/AOMJacksonTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/json/AOMJacksonTest.java @@ -246,7 +246,7 @@ public void cTerminologyCode() throws Exception { @Test public void rmOverlay() throws Exception { - Archetype archetype = TestUtil.parseFailOnErrors("/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.to_flatten_parent_with_overlay.v1.0.0.adls"); + Archetype archetype = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.to_flatten_parent_with_overlay.v1.0.0.adls"); String json = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()).writeValueAsString(archetype); Archetype parsed = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()).readValue(json, Archetype.class); diff --git a/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/RmObjectValidatorTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/RmObjectValidatorTest.java index 1877f5c74..994f6e4f2 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/RmObjectValidatorTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/RmObjectValidatorTest.java @@ -162,7 +162,7 @@ public void testNestedEmptyElementWithoutArchetype() { private Archetype parse(String filename) throws IOException, ADLParseException { - return TestUtil.parseFailOnErrors(filename); + return TestUtil.parseFailOnErrors(this.getClass(), filename); } } \ No newline at end of file diff --git a/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/ValidateArchetypedTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/ValidateArchetypedTest.java index 1b5dee64a..c0b4524dc 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/ValidateArchetypedTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/ValidateArchetypedTest.java @@ -91,6 +91,6 @@ private OperationalTemplate createOpt(Archetype archetype) { } private Archetype parse(String filename) throws IOException, ADLParseException { - return TestUtil.parseFailOnErrors(filename); + return TestUtil.parseFailOnErrors(this.getClass(), filename); } } diff --git a/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/validations/ArchetypeSlotValidationTest.java b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/validations/ArchetypeSlotValidationTest.java index 997ffc010..09fe6f9f9 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/validations/ArchetypeSlotValidationTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rmobjectvalidator/validations/ArchetypeSlotValidationTest.java @@ -44,10 +44,10 @@ public class ArchetypeSlotValidationTest { @Before public void setup() throws IOException, ADLParseException { - Archetype parent = TestUtil.parseFailOnErrors("/adl2-tests/validity/slots/openEHR-EHR-SECTION.slot_parent.v1.0.0.adls"); + Archetype parent = TestUtil.parseFailOnErrors(this.getClass(),"/adl2-tests/validity/slots/openEHR-EHR-SECTION.slot_parent.v1.0.0.adls"); - included = TestUtil.parseFailOnErrors("/com/nedap/archie/rmobjectvalidation/openEHR-EHR-OBSERVATION.redefine_child.v1.0.0.adls"); - parentOfIncluded = TestUtil.parseFailOnErrors("/com/nedap/archie/rmobjectvalidation/openEHR-EHR-OBSERVATION.spec_test_parent_2.v1.0.0.adls"); + included = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/rmobjectvalidation/openEHR-EHR-OBSERVATION.redefine_child.v1.0.0.adls"); + parentOfIncluded = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/rmobjectvalidation/openEHR-EHR-OBSERVATION.spec_test_parent_2.v1.0.0.adls"); repository = new InMemoryFullArchetypeRepository(); repository.addArchetype(parent); repository.addArchetype(included); diff --git a/tools/src/test/java/com/nedap/archie/adlparser/AOMPathQueryTest.java b/tools/src/test/java/com/nedap/archie/adlparser/AOMPathQueryTest.java index c90e6b392..a50ff8f7d 100644 --- a/tools/src/test/java/com/nedap/archie/adlparser/AOMPathQueryTest.java +++ b/tools/src/test/java/com/nedap/archie/adlparser/AOMPathQueryTest.java @@ -26,7 +26,7 @@ public class AOMPathQueryTest { @Before public void setup() throws Exception { - archetype = TestUtil.parseFailOnErrors("/basic.adl"); + archetype = TestUtil.parseFailOnErrors(this.getClass(),"/basic.adl"); ArchieLanguageConfiguration.setThreadLocalLogicalPathLanguage("en"); ArchieLanguageConfiguration.setThreadLocalDescriptiongAndMeaningLanguage("en"); } @@ -57,7 +57,7 @@ public void basicPaths() throws Exception { @Test public void differentialPaths() throws Exception { - Archetype archetype = TestUtil.parseFailOnErrors("/adl2-tests/features/specialisation/openEHR-EHR-OBSERVATION.redefine_1_value.v1.0.0.adls"); + Archetype archetype = TestUtil.parseFailOnErrors(this.getClass(),"/adl2-tests/features/specialisation/openEHR-EHR-OBSERVATION.redefine_1_value.v1.0.0.adls"); //query with a differential path halfway AOMPathQuery query = new AOMPathQuery("/data/events[id3]/data/items[id4.1]/value[id0.6]"); diff --git a/tools/src/test/java/com/nedap/archie/adlparser/AomUtilsPathFindingTest.java b/tools/src/test/java/com/nedap/archie/adlparser/AomUtilsPathFindingTest.java index 9ee976832..a1e8b81f9 100644 --- a/tools/src/test/java/com/nedap/archie/adlparser/AomUtilsPathFindingTest.java +++ b/tools/src/test/java/com/nedap/archie/adlparser/AomUtilsPathFindingTest.java @@ -14,7 +14,7 @@ public class AomUtilsPathFindingTest { @Test public void isPathInArchetypeOrRm() throws Exception{ - Archetype archetype = TestUtil.parseFailOnErrors("/basic.adl"); + Archetype archetype = TestUtil.parseFailOnErrors(this.getClass(),"/basic.adl"); MetaModels metaModels = AllMetaModelsInitialiser.getMetaModels(); metaModels.selectModel(archetype); //AOM path diff --git a/tools/src/test/java/com/nedap/archie/adlparser/DefinitionTest.java b/tools/src/test/java/com/nedap/archie/adlparser/DefinitionTest.java index c36ff07b9..9880ad0e2 100644 --- a/tools/src/test/java/com/nedap/archie/adlparser/DefinitionTest.java +++ b/tools/src/test/java/com/nedap/archie/adlparser/DefinitionTest.java @@ -28,7 +28,7 @@ public class DefinitionTest { @Before public void setup() throws Exception { - archetype = TestUtil.parseFailOnErrors("/basic.adl");; + archetype = TestUtil.parseFailOnErrors(this.getClass(),"/basic.adl");; } @Test diff --git a/tools/src/test/java/com/nedap/archie/adlparser/MetadataTest.java b/tools/src/test/java/com/nedap/archie/adlparser/MetadataTest.java index 44756f452..a193b0a7b 100644 --- a/tools/src/test/java/com/nedap/archie/adlparser/MetadataTest.java +++ b/tools/src/test/java/com/nedap/archie/adlparser/MetadataTest.java @@ -2,17 +2,13 @@ import com.nedap.archie.antlr.errors.ANTLRParserMessage; import com.nedap.archie.aom.Archetype; -import com.nedap.archie.aom.AuthoredArchetype; -import com.nedap.archie.aom.CAttribute; import com.nedap.archie.aom.CComplexObject; import com.nedap.archie.testutil.TestUtil; -import org.junit.Before; import org.junit.Test; import java.io.IOException; import java.util.List; import java.util.Map; -import java.util.Optional; import static org.junit.Assert.*; @@ -24,7 +20,7 @@ public class MetadataTest { @Test public void idTest() throws IOException, ADLParseException { - Archetype archetype = TestUtil.parseFailOnErrors("/com/nedap/archie/adlparser/openEHR-EHR-COMPOSITION.metadata_locatable_uid.v1.0.0.adls"); + Archetype archetype = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/adlparser/openEHR-EHR-COMPOSITION.metadata_locatable_uid.v1.0.0.adls"); assertEquals("openEHR-EHR-COMPOSITION.metadata_locatable_uid.v1.0.0", archetype.getArchetypeId().getFullId()); assertNull(archetype.getArchetypeId().getNamespace()); @@ -37,7 +33,7 @@ public void idTest() throws IOException, ADLParseException { @Test public void metadataTest() throws IOException, ADLParseException { - Archetype archetype = TestUtil.parseFailOnErrors("/com/nedap/archie/adlparser/openEHR-EHR-COMPOSITION.metadata_locatable_uid.v1.0.0.adls"); + Archetype archetype = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/adlparser/openEHR-EHR-COMPOSITION.metadata_locatable_uid.v1.0.0.adls"); // (adl_version=2.0.5-alpha; rm_release= 1.0.2; generated; controlled; uid =a2bc5e00-c67e-4d7e-bb87-b3b74cdefd00; // build_uid = B430138C-1DD2-42EF-B54C-633909437054;reviewed_by ; Pieter=007; Bos=0.0.7; bbb007=b-b-b0-0-7) @@ -56,7 +52,7 @@ public void metadataTest() throws IOException, ADLParseException { @Test public void locatableTest() throws IOException, ADLParseException { - Archetype archetype = TestUtil.parseFailOnErrors("/com/nedap/archie/adlparser/openEHR-EHR-COMPOSITION.metadata_locatable_uid.v1.0.0.adls"); + Archetype archetype = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/adlparser/openEHR-EHR-COMPOSITION.metadata_locatable_uid.v1.0.0.adls"); // Test uid tag within locatable as attribute CComplexObject definition = archetype.getDefinition(); @@ -69,7 +65,7 @@ public void locatableTest() throws IOException, ADLParseException { @Test public void testInvalidMetadata() throws IOException { try { - TestUtil.parseFailOnErrors("/com/nedap/archie/adlparser/openEHR-EHR-COMPOSITION.invalid_metadata.v1.0.0.adls"); + TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/adlparser/openEHR-EHR-COMPOSITION.invalid_metadata.v1.0.0.adls"); fail(); } catch (ADLParseException ex) { assertEquals("Error: Encountered metadata tag 'adl_version' with an invalid version id: null\n" + diff --git a/tools/src/test/java/com/nedap/archie/adlparser/PathTest.java b/tools/src/test/java/com/nedap/archie/adlparser/PathTest.java index 60f9dfa04..ea75021d1 100644 --- a/tools/src/test/java/com/nedap/archie/adlparser/PathTest.java +++ b/tools/src/test/java/com/nedap/archie/adlparser/PathTest.java @@ -20,7 +20,7 @@ public class PathTest { @Before public void setup() throws Exception { - archetype = TestUtil.parseFailOnErrors("/basic.adl"); + archetype = TestUtil.parseFailOnErrors(this.getClass(),"/basic.adl"); ArchieLanguageConfiguration.setThreadLocalLogicalPathLanguage("en"); } diff --git a/tools/src/test/java/com/nedap/archie/adlparser/PrimitivesConstraintParserTest.java b/tools/src/test/java/com/nedap/archie/adlparser/PrimitivesConstraintParserTest.java index 2dfa72a13..c203f0451 100644 --- a/tools/src/test/java/com/nedap/archie/adlparser/PrimitivesConstraintParserTest.java +++ b/tools/src/test/java/com/nedap/archie/adlparser/PrimitivesConstraintParserTest.java @@ -1,13 +1,8 @@ package com.nedap.archie.adlparser; import com.nedap.archie.aom.Archetype; -import com.nedap.archie.aom.primitives.CDuration; import com.nedap.archie.testutil.TestUtil; import org.junit.Before; -import org.junit.BeforeClass; - -import java.io.IOException; -import java.io.InputStream; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; @@ -22,7 +17,7 @@ public abstract class PrimitivesConstraintParserTest { @Before public void setup() throws Exception { - archetype = TestUtil.parseFailOnErrors("/adl2-tests/features/aom_structures/basic/openehr-TEST_PKG-WHOLE.primitive_types.v1.0.0.adls"); + archetype = TestUtil.parseFailOnErrors(this.getClass(),"/adl2-tests/features/aom_structures/basic/openehr-TEST_PKG-WHOLE.primitive_types.v1.0.0.adls"); } public T getAttribute(String attributeName) { @@ -30,7 +25,7 @@ public T getAttribute(String attributeName) { } public Archetype getAssumedValuesArchetype() throws Exception { - return TestUtil.parseFailOnErrors("/adl2-tests/features/aom_structures/basic/openehr-TEST_PKG-WHOLE.assumed_values.v1.0.0.adls"); + return TestUtil.parseFailOnErrors(this.getClass(),"/adl2-tests/features/aom_structures/basic/openehr-TEST_PKG-WHOLE.assumed_values.v1.0.0.adls"); } diff --git a/tools/src/test/java/com/nedap/archie/adlparser/RegexTest.java b/tools/src/test/java/com/nedap/archie/adlparser/RegexTest.java index b8a718675..7f12cacfb 100644 --- a/tools/src/test/java/com/nedap/archie/adlparser/RegexTest.java +++ b/tools/src/test/java/com/nedap/archie/adlparser/RegexTest.java @@ -32,7 +32,7 @@ public void basic_regexps() { @Test public void extended_regexp() throws Exception { - archetype = TestUtil.parseFailOnErrors("/regexps.adls"); + archetype = TestUtil.parseFailOnErrors(this.getClass(),"/regexps.adls"); CString regexpSlashEscape = getAttribute("slash_escaped"); CString regexpUTF8 = getAttribute("utf8"); CString regexpAssumedValue = getAttribute("utf8_assumed_value"); @@ -71,7 +71,4 @@ public void extended_regexp() throws Exception { } } - - - } diff --git a/tools/src/test/java/com/nedap/archie/adlparser/TerminologyTest.java b/tools/src/test/java/com/nedap/archie/adlparser/TerminologyTest.java index 9f10c11a5..8ff047343 100644 --- a/tools/src/test/java/com/nedap/archie/adlparser/TerminologyTest.java +++ b/tools/src/test/java/com/nedap/archie/adlparser/TerminologyTest.java @@ -20,7 +20,7 @@ public class TerminologyTest { @Before public void setup() throws Exception { - archetype = TestUtil.parseFailOnErrors("/basic.adl");; + archetype = TestUtil.parseFailOnErrors(this.getClass(),"/basic.adl");; } diff --git a/tools/src/test/java/com/nedap/archie/aom/ArchetypeCloneTest.java b/tools/src/test/java/com/nedap/archie/aom/ArchetypeCloneTest.java index d3a4618ba..3749b59dd 100644 --- a/tools/src/test/java/com/nedap/archie/aom/ArchetypeCloneTest.java +++ b/tools/src/test/java/com/nedap/archie/aom/ArchetypeCloneTest.java @@ -1,6 +1,5 @@ package com.nedap.archie.aom; -import com.nedap.archie.adlparser.ADLParser; import com.nedap.archie.testutil.TestUtil; import org.junit.Before; import org.junit.Test; @@ -16,7 +15,7 @@ public class ArchetypeCloneTest { @Before public void setup() throws Exception { - archetype = TestUtil.parseFailOnErrors("/basic.adl"); + archetype = TestUtil.parseFailOnErrors(this.getClass(),"/basic.adl"); } @Test diff --git a/tools/src/test/java/com/nedap/archie/aom/CObjectTest.java b/tools/src/test/java/com/nedap/archie/aom/CObjectTest.java index e2dbef457..165be77a0 100644 --- a/tools/src/test/java/com/nedap/archie/aom/CObjectTest.java +++ b/tools/src/test/java/com/nedap/archie/aom/CObjectTest.java @@ -21,7 +21,7 @@ public class CObjectTest { @Before public void setup() throws Exception { - archetype = TestUtil.parseFailOnErrors("/basic.adl"); + archetype = TestUtil.parseFailOnErrors(this.getClass(),"/basic.adl"); } @Test diff --git a/tools/src/test/java/com/nedap/archie/archetypevalidator/ArchetypeValidatorVersionsTest.java b/tools/src/test/java/com/nedap/archie/archetypevalidator/ArchetypeValidatorVersionsTest.java index 31a96c3cb..b7dffafaf 100644 --- a/tools/src/test/java/com/nedap/archie/archetypevalidator/ArchetypeValidatorVersionsTest.java +++ b/tools/src/test/java/com/nedap/archie/archetypevalidator/ArchetypeValidatorVersionsTest.java @@ -16,9 +16,9 @@ public class ArchetypeValidatorVersionsTest { @Test public void testMultipleVersions() throws IOException, ADLParseException { - Archetype parentv1 = TestUtil.parseFailOnErrors("/com/nedap/archie/archetypevalidator/openEHR-EHR-CLUSTER.parent.v1.0.0.adls"); - Archetype parentv11 = TestUtil.parseFailOnErrors("/com/nedap/archie/archetypevalidator/openEHR-EHR-CLUSTER.parent.v1.1.0.adls"); - Archetype child = TestUtil.parseFailOnErrors("/com/nedap/archie/archetypevalidator/openEHR-EHR-CLUSTER.child.v0.0.1.adls"); + Archetype parentv1 = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/archetypevalidator/openEHR-EHR-CLUSTER.parent.v1.0.0.adls"); + Archetype parentv11 = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/archetypevalidator/openEHR-EHR-CLUSTER.parent.v1.1.0.adls"); + Archetype child = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/archetypevalidator/openEHR-EHR-CLUSTER.child.v0.0.1.adls"); InMemoryFullArchetypeRepository repo = new InMemoryFullArchetypeRepository(); repo.addArchetype(parentv1); repo.addArchetype(parentv11); @@ -40,9 +40,9 @@ public void testMultipleVersions() throws IOException, ADLParseException { @Test public void testMultipleVersionsFullyCompile() throws Exception { //same test as above, but with the 'compile this repo at once' method - Archetype parentv1 = TestUtil.parseFailOnErrors("/com/nedap/archie/archetypevalidator/openEHR-EHR-CLUSTER.parent.v1.0.0.adls"); - Archetype parentv11 = TestUtil.parseFailOnErrors("/com/nedap/archie/archetypevalidator/openEHR-EHR-CLUSTER.parent.v1.1.0.adls"); - Archetype child = TestUtil.parseFailOnErrors("/com/nedap/archie/archetypevalidator/openEHR-EHR-CLUSTER.child.v0.0.1.adls"); + Archetype parentv1 = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/archetypevalidator/openEHR-EHR-CLUSTER.parent.v1.0.0.adls"); + Archetype parentv11 = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/archetypevalidator/openEHR-EHR-CLUSTER.parent.v1.1.0.adls"); + Archetype child = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/archetypevalidator/openEHR-EHR-CLUSTER.child.v0.0.1.adls"); InMemoryFullArchetypeRepository repo = new InMemoryFullArchetypeRepository(); repo.addArchetype(parentv1); repo.addArchetype(parentv11); diff --git a/tools/src/test/java/com/nedap/archie/archetypevalidator/TermCodeSpecializationTest.java b/tools/src/test/java/com/nedap/archie/archetypevalidator/TermCodeSpecializationTest.java index cfca8ccb5..ff41ce3a1 100644 --- a/tools/src/test/java/com/nedap/archie/archetypevalidator/TermCodeSpecializationTest.java +++ b/tools/src/test/java/com/nedap/archie/archetypevalidator/TermCodeSpecializationTest.java @@ -21,8 +21,8 @@ public class TermCodeSpecializationTest { @Test public void validRequiredBindingStrength() throws Exception { - Archetype parent = TestUtil.parseFailOnErrors("/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_parent.v1.0.0.adls"); - Archetype child = TestUtil.parseFailOnErrors("/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_valid_child.v1.0.0.adls"); + Archetype parent = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_parent.v1.0.0.adls"); + Archetype child = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_valid_child.v1.0.0.adls"); InMemoryFullArchetypeRepository repo = new InMemoryFullArchetypeRepository(); repo.addArchetype(parent); repo.addArchetype(child); @@ -39,8 +39,8 @@ public void validRequiredBindingStrength() throws Exception { @Test public void invalidRequiredBindingStrength() throws Exception { - Archetype parent = TestUtil.parseFailOnErrors("/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_parent.v1.0.0.adls"); - Archetype child = TestUtil.parseFailOnErrors("/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_invalid_child.v1.0.0.adls"); + Archetype parent = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_parent.v1.0.0.adls"); + Archetype child = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_invalid_child.v1.0.0.adls"); InMemoryFullArchetypeRepository repo = new InMemoryFullArchetypeRepository(); repo.addArchetype(parent); repo.addArchetype(child); @@ -53,8 +53,8 @@ public void invalidRequiredBindingStrength() throws Exception { @Test public void invalidConstraintStrengthRedefinition() throws Exception { - Archetype parent = TestUtil.parseFailOnErrors("/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_parent.v1.0.0.adls"); - Archetype child = TestUtil.parseFailOnErrors("/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_invalid_redefinition.v1.0.0.adls"); + Archetype parent = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_parent.v1.0.0.adls"); + Archetype child = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_invalid_redefinition.v1.0.0.adls"); InMemoryFullArchetypeRepository repo = new InMemoryFullArchetypeRepository(); repo.addArchetype(parent); repo.addArchetype(child); @@ -67,8 +67,8 @@ public void invalidConstraintStrengthRedefinition() throws Exception { @Test public void valueSetCodeChanges() throws IOException, ADLParseException { - Archetype parent = TestUtil.parseFailOnErrors("/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_parent.v1.0.0.adls"); - Archetype child = TestUtil.parseFailOnErrors("/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_change_valueset_code.v1.0.0.adls"); + Archetype parent = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_parent.v1.0.0.adls"); + Archetype child = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_change_valueset_code.v1.0.0.adls"); InMemoryFullArchetypeRepository repo = new InMemoryFullArchetypeRepository(); repo.addArchetype(parent); repo.addArchetype(child); @@ -86,13 +86,13 @@ public void valueSetCodeChanges() throws IOException, ADLParseException { @Test public void invalidConstraintStrenghKeyword() throws IOException { - TestUtil.parseExpectErrorCode("/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_wrong_name.v1.0.0.adls", "Constraint status incorrect"); + TestUtil.parseExpectErrorCode(this.getClass(), "/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_wrong_name.v1.0.0.adls", "Constraint status incorrect"); } @Test public void invalidValueSetRedefinition() throws IOException, ADLParseException { - Archetype parent = TestUtil.parseFailOnErrors("/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_parent.v1.0.0.adls"); - Archetype child = TestUtil.parseFailOnErrors("/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_invalid_redefined_value-set.v1.0.0.adls"); + Archetype parent = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_parent.v1.0.0.adls"); + Archetype child = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_invalid_redefined_value-set.v1.0.0.adls"); InMemoryFullArchetypeRepository repo = new InMemoryFullArchetypeRepository(); repo.addArchetype(parent); repo.addArchetype(child); @@ -105,8 +105,8 @@ public void invalidValueSetRedefinition() throws IOException, ADLParseException @Test public void nonExistingParentValueSet() throws IOException, ADLParseException { - Archetype parent = TestUtil.parseFailOnErrors("/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_parent.v1.0.0.adls"); - Archetype child = TestUtil.parseFailOnErrors("/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.incorrect_parent_valueset_code.v1.0.0.adls"); + Archetype parent = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.constraint_strength_parent.v1.0.0.adls"); + Archetype child = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/archetypevalidator/primitives/openEHR-EHR-CLUSTER.incorrect_parent_valueset_code.v1.0.0.adls"); InMemoryFullArchetypeRepository repo = new InMemoryFullArchetypeRepository(); repo.addArchetype(parent); repo.addArchetype(child); diff --git a/tools/src/test/java/com/nedap/archie/flattener/RMOverlayFlattenerTest.java b/tools/src/test/java/com/nedap/archie/flattener/RMOverlayFlattenerTest.java index 2edd931b0..5e628a02b 100644 --- a/tools/src/test/java/com/nedap/archie/flattener/RMOverlayFlattenerTest.java +++ b/tools/src/test/java/com/nedap/archie/flattener/RMOverlayFlattenerTest.java @@ -14,8 +14,8 @@ public class RMOverlayFlattenerTest { @Test public void flattenParentChild() throws Exception{ - Archetype parent = TestUtil.parseFailOnErrors("/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.to_flatten_parent_with_overlay.v1.0.0.adls"); - Archetype child = TestUtil.parseFailOnErrors("/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.to_flatten_child_with_overlay.v1.0.0.adls"); + Archetype parent = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.to_flatten_parent_with_overlay.v1.0.0.adls"); + Archetype child = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.to_flatten_child_with_overlay.v1.0.0.adls"); InMemoryFullArchetypeRepository repository = new InMemoryFullArchetypeRepository(); repository.addArchetype(parent); repository.addArchetype(child); @@ -34,8 +34,8 @@ public void flattenParentChild() throws Exception{ @Test public void flattenIncludedArchetype() throws Exception { - Archetype parent = TestUtil.parseFailOnErrors("/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.to_flatten_parent_with_overlay.v1.0.0.adls"); - Archetype composition = TestUtil.parseFailOnErrors("/com/nedap/archie/flattener/openEHR-COMPOSITION.including_overlay.v1.0.0.adls"); + Archetype parent = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.to_flatten_parent_with_overlay.v1.0.0.adls"); + Archetype composition = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/flattener/openEHR-COMPOSITION.including_overlay.v1.0.0.adls"); InMemoryFullArchetypeRepository repository = new InMemoryFullArchetypeRepository(); repository.addArchetype(parent); repository.addArchetype(composition); diff --git a/tools/src/test/java/com/nedap/archie/serializer/adl/ADLArchetypeSerializerTest.java b/tools/src/test/java/com/nedap/archie/serializer/adl/ADLArchetypeSerializerTest.java index a18d36ab6..c8da4bc04 100644 --- a/tools/src/test/java/com/nedap/archie/serializer/adl/ADLArchetypeSerializerTest.java +++ b/tools/src/test/java/com/nedap/archie/serializer/adl/ADLArchetypeSerializerTest.java @@ -102,7 +102,7 @@ public void serializeAnnotations() throws Exception { @Test public void rmOverlay() throws Exception { - Archetype archetype = TestUtil.parseFailOnErrors("/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.to_flatten_parent_with_overlay.v1.0.0.adls"); + Archetype archetype = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.to_flatten_parent_with_overlay.v1.0.0.adls"); String serialized = ADLArchetypeSerializer.serialize(archetype); assertTrue(serialized.contains("rm_overlay\n" + diff --git a/tools/src/test/java/com/nedap/archie/xml/JAXBAOMTest.java b/tools/src/test/java/com/nedap/archie/xml/JAXBAOMTest.java index 4186e9582..76896452b 100644 --- a/tools/src/test/java/com/nedap/archie/xml/JAXBAOMTest.java +++ b/tools/src/test/java/com/nedap/archie/xml/JAXBAOMTest.java @@ -131,7 +131,7 @@ public void parseCDuration() throws Exception { @Test public void rmOverlay() throws Exception { - Archetype archetype = TestUtil.parseFailOnErrors("/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.to_flatten_parent_with_overlay.v1.0.0.adls"); + Archetype archetype = TestUtil.parseFailOnErrors(this.getClass(),"/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.to_flatten_parent_with_overlay.v1.0.0.adls"); Marshaller marshaller = OpenEhrRmJAXBUtil.getArchieJAXBContext().createMarshaller(); StringWriter writer = new StringWriter(); diff --git a/tools/src/testFixtures/java/com/nedap/archie/testutil/TestUtil.java b/tools/src/testFixtures/java/com/nedap/archie/testutil/TestUtil.java index 4a16c854d..97b940438 100644 --- a/tools/src/testFixtures/java/com/nedap/archie/testutil/TestUtil.java +++ b/tools/src/testFixtures/java/com/nedap/archie/testutil/TestUtil.java @@ -147,9 +147,9 @@ private static boolean primitiveObjectMatches(CPrimitiveObject o1, CObject return (o2 instanceof CPrimitiveObject) && Objects.equals(((CPrimitiveObject) o2).getConstraint(), o1.getConstraint()); } - public static Archetype parseFailOnErrors(String resourceName) throws IOException, ADLParseException { + public static Archetype parseFailOnErrors(Class caller, String resourceName) throws IOException, ADLParseException { ADLParser parser = new ADLParser(); - try(InputStream stream = TestUtil.class.getResourceAsStream(resourceName)) { + try(InputStream stream = caller.getResourceAsStream(resourceName)) { if(stream == null) { throw new RuntimeException("Resource does not exist: " + resourceName); } @@ -161,9 +161,9 @@ public static Archetype parseFailOnErrors(String resourceName) throws IOExceptio } } - public static void parseExpectErrorCode(String resourceName, String errorCode) throws IOException { + public static void parseExpectErrorCode(Class caller, String resourceName, String errorCode) throws IOException { ADLParser parser = new ADLParser(); - try(InputStream stream = TestUtil.class.getResourceAsStream(resourceName)) { + try(InputStream stream = caller.getResourceAsStream(resourceName)) { if(stream == null) { throw new RuntimeException("Resource does not exist: " + resourceName); } From 1f731097bdfaea626138ba9e74f2fc259617b6db Mon Sep 17 00:00:00 2001 From: wolandscat Date: Sat, 18 May 2024 12:42:07 -0600 Subject: [PATCH 16/19] Forced by other refactoring to remove static import of CoreMatchers and Assert. Not sure if this matters functionally - probably just an efficiency thing. TODO: check whether this change introduces any errors, or whether it can be reverted by some other simple change. --- .../com/nedap/archie/testutil/TestUtil.java | 41 ++++++++----------- 1 file changed, 17 insertions(+), 24 deletions(-) diff --git a/tools/src/testFixtures/java/com/nedap/archie/testutil/TestUtil.java b/tools/src/testFixtures/java/com/nedap/archie/testutil/TestUtil.java index 97b940438..54e3e3ddd 100644 --- a/tools/src/testFixtures/java/com/nedap/archie/testutil/TestUtil.java +++ b/tools/src/testFixtures/java/com/nedap/archie/testutil/TestUtil.java @@ -3,19 +3,16 @@ import com.google.common.collect.Lists; import com.nedap.archie.adlparser.ADLParseException; import com.nedap.archie.adlparser.ADLParser; -import com.nedap.archie.antlr.errors.ANTLRParserErrors; import com.nedap.archie.aom.Archetype; import com.nedap.archie.aom.CAttribute; import com.nedap.archie.aom.CComplexObject; import com.nedap.archie.aom.CObject; import com.nedap.archie.aom.CPrimitiveObject; import com.nedap.archie.creation.RMObjectCreator; -import com.nedap.archie.flattener.FullArchetypeRepository; -import com.nedap.archie.flattener.InMemoryFullArchetypeRepository; import com.nedap.archie.base.RMObject; import com.nedap.archie.rminfo.ReflectionModelInfoLookup; -import org.reflections.Reflections; -import org.reflections.scanners.Scanners; +import org.hamcrest.CoreMatchers; +import org.junit.Assert; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -24,12 +21,8 @@ import java.util.ArrayList; import java.util.List; import java.util.Objects; -import java.util.regex.Pattern; import java.util.stream.Collectors; -import static org.hamcrest.CoreMatchers.*; -import static org.junit.Assert.*; - /** * Created by pieter.bos on 06/04/16. */ @@ -87,11 +80,11 @@ public RMObject constructEmptyRMObject(CObject object) { * @throws Exception */ public static void assertCObjectEquals(CObject cobject1, CObject cobject2) throws Exception { - assertThat(cobject1.getClass(), is(equalTo(cobject2.getClass()))); - assertThat(cobject1.getRmTypeName(), is(cobject2.getRmTypeName())); - assertThat(cobject1.getNodeId(), is(cobject2.getNodeId())); - assertThat(cobject1.getAttributes().size(), is(cobject2.getAttributes().size())); - assertThat(cobject1.getOccurrences(), is(cobject2.getOccurrences())); + Assert.assertThat(cobject1.getClass(), CoreMatchers.is(CoreMatchers.equalTo(cobject2.getClass()))); + Assert.assertThat(cobject1.getRmTypeName(), CoreMatchers.is(cobject2.getRmTypeName())); + Assert.assertThat(cobject1.getNodeId(), CoreMatchers.is(cobject2.getNodeId())); + Assert.assertThat(cobject1.getAttributes().size(), CoreMatchers.is(cobject2.getAttributes().size())); + Assert.assertThat(cobject1.getOccurrences(), CoreMatchers.is(cobject2.getOccurrences())); for(CAttribute attribute1:cobject1.getAttributes()) { String path = attribute1.getPath(); CAttribute attribute2; @@ -100,9 +93,9 @@ public static void assertCObjectEquals(CObject cobject1, CObject cobject2) throw } else { attribute2 = cobject2.getAttribute(attribute1.getRmAttributeName()); } - assertThat(path, attribute2, is(notNullValue())); - assertThat(path, attribute1.getCardinality(), is(attribute2.getCardinality())); - assertThat(path, attribute1.getExistence(), is(attribute2.getExistence())); + Assert.assertThat(path, attribute2, CoreMatchers.is(CoreMatchers.notNullValue())); + Assert.assertThat(path, attribute1.getCardinality(), CoreMatchers.is(attribute2.getCardinality())); + Assert.assertThat(path, attribute1.getExistence(), CoreMatchers.is(attribute2.getExistence())); for(CObject childObject1:attribute1.getChildren()) { if(childObject1 instanceof CComplexObject) { List childObjects2 = attribute2.getChildren().stream() @@ -123,7 +116,7 @@ public static void assertCObjectEquals(CObject cobject1, CObject cobject2) throw if(lastException != null) { throw lastException; } else { - fail("no objects for cobject: " + childObject1); + Assert.fail("no objects for cobject: " + childObject1); } } @@ -134,7 +127,7 @@ public static void assertCObjectEquals(CObject cobject1, CObject cobject2) throw .filter( o -> primitiveObjectMatches(primitiveChild, o) ).collect(Collectors.toList()); - assertFalse("a primitive object should have a matching primitive object", childObjects2.isEmpty()); + Assert.assertFalse("a primitive object should have a matching primitive object", childObjects2.isEmpty()); } } @@ -155,8 +148,8 @@ public static Archetype parseFailOnErrors(Class caller, String resourceName) } Archetype archetype = parser.parse(stream); parser.getErrors().logToLogger(); - assertFalse(parser.getErrors().toString(), parser.getErrors().hasErrors()); - assertNotNull(archetype); + Assert.assertFalse(parser.getErrors().toString(), parser.getErrors().hasErrors()); + Assert.assertNotNull(archetype); return archetype; } } @@ -169,11 +162,11 @@ public static void parseExpectErrorCode(Class caller, String resourceName, St } try { Archetype archetype = parser.parse(stream); - assertTrue("Parser expected to have errors, but there were none", parser.getErrors().hasErrors()); + Assert.assertTrue("Parser expected to have errors, but there were none", parser.getErrors().hasErrors()); } catch (ADLParseException ex) { parser.getErrors().logToLogger(); - assertTrue("Parser expected to have errors, but there were none", parser.getErrors().hasErrors()); - assertTrue("expected error code to be present: " + errorCode, parser.getErrors().getErrors().stream().filter(e -> e.getShortMessage().equalsIgnoreCase(errorCode)).findFirst().isPresent()); + Assert.assertTrue("Parser expected to have errors, but there were none", parser.getErrors().hasErrors()); + Assert.assertTrue("expected error code to be present: " + errorCode, parser.getErrors().getErrors().stream().filter(e -> e.getShortMessage().equalsIgnoreCase(errorCode)).findFirst().isPresent()); } } } From 2a9e0e5b0f605b4e283be42196fd8698f6caeca6 Mon Sep 17 00:00:00 2001 From: wolandscat Date: Sat, 18 May 2024 12:42:50 -0600 Subject: [PATCH 17/19] Remove S2 related tests. We'll recreate these in the S2 fork of Archie. --- .../com/nedap/archie/json/AOMJacksonTest.java | 30 ------------------- 1 file changed, 30 deletions(-) diff --git a/openehr-rm/src/test/java/com/nedap/archie/json/AOMJacksonTest.java b/openehr-rm/src/test/java/com/nedap/archie/json/AOMJacksonTest.java index 509d4ff07..f0aad22c7 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/json/AOMJacksonTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/json/AOMJacksonTest.java @@ -273,34 +273,4 @@ public void rmOverlay() throws Exception { " }\n" + " },")); } - - @Test - public void parseS2AomJson() throws Exception { - try(InputStream stream = getClass().getResourceAsStream( "/S2/json/flat/s2-EHR-Action.medication.v1.2.2.json")) { - - Archetype parsed = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()).readValue(stream, Archetype.class); - assertNotNull(parsed); - } - } - - @Ignore // for local testing - @Test - public void parseS2AomJsonAll() throws Exception { - - ObjectMapper mapper = OpenEhrRmJacksonUtil.getObjectMapper(ArchieJacksonConfiguration.createStandardsCompliant()); - - Files.find(new File("../../ADL-exported/S2-S2_demo/json/flat").toPath(), - 1, - (file, att) -> file.toString().endsWith(".json")) - .forEach(file -> { - try (InputStream stream = Files.newInputStream(file)) { - Archetype parsed = mapper.readValue(stream, Archetype.class); - assertNotNull(parsed); - } catch (Exception e) { - System.out.println("Error parsing " + file.toString()); - throw new RuntimeException(e); - } - }); - } - } From a93f90c9132baa4bb11b6e705233357b0b183162 Mon Sep 17 00:00:00 2001 From: wolandscat Date: Sat, 18 May 2024 12:43:29 -0600 Subject: [PATCH 18/19] Correct counts of BMM models parsed. --- .../archie/rminfo/OpenEhrRmMetaModelsInitialiserTest.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmMetaModelsInitialiserTest.java b/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmMetaModelsInitialiserTest.java index 2c1585f5f..048d257b9 100644 --- a/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmMetaModelsInitialiserTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/rminfo/OpenEhrRmMetaModelsInitialiserTest.java @@ -29,9 +29,9 @@ public void bmmRepository() throws Exception { System.out.println(validation.getLogger().toString()); } - assertEquals(38, bmmRepository.getPersistentSchemas().size()); - assertEquals(38, bmmRepository.getModels().size()); - assertEquals(36, bmmRepository.getValidModels().size()); + assertEquals(39, bmmRepository.getPersistentSchemas().size()); + assertEquals(39, bmmRepository.getModels().size()); + assertEquals(37, bmmRepository.getValidModels().size()); assertEquals(2, bmmRepository.getInvalidModels().size()); } From 2a3bea9051a0d28256181fbd2a8e5ff322607928 Mon Sep 17 00:00:00 2001 From: wolandscat Date: Sat, 18 May 2024 13:12:34 -0600 Subject: [PATCH 19/19] Move xml tests to openehr-rm. --- .../archie/xml/JAXBAOMRoundTripTest.java | 15 +- .../com/nedap/archie/xml/JAXBAOMTest.java | 0 .../nedap/archie/xml/JAXBRMRoundTripTest.java | 0 .../java/com/nedap/archie/xml/JAXBRMTest.java | 0 .../openEHR-EHR-CLUSTER.device.v1.adls | 550 +++ ...EHR-COMPOSITION.blood_pressure.v1.0.0.adlt | 374 ++ ...openEHR-EHR-COMPOSITION.length.v1.0.0.adlt | 153 + ...nEHR-EHR-COMPOSITION.report-result.v1.adls | 74 + .../openEHR-EHR-COMPOSITION.report.v1.adls | 98 + ...EHR-EHR-OBSERVATION.blood_pressure.v1.adls | 3538 +++++++++++++++++ .../openEHR-EHR-OBSERVATION.height.v1.adls | 730 ++++ 11 files changed, 5524 insertions(+), 8 deletions(-) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/xml/JAXBAOMRoundTripTest.java (77%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/xml/JAXBAOMTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/xml/JAXBRMRoundTripTest.java (100%) rename {tools => openehr-rm}/src/test/java/com/nedap/archie/xml/JAXBRMTest.java (100%) create mode 100644 openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-CLUSTER.device.v1.adls create mode 100644 openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.blood_pressure.v1.0.0.adlt create mode 100644 openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.length.v1.0.0.adlt create mode 100644 openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.report-result.v1.adls create mode 100644 openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.report.v1.adls create mode 100644 openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.blood_pressure.v1.adls create mode 100644 openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.height.v1.adls diff --git a/tools/src/test/java/com/nedap/archie/xml/JAXBAOMRoundTripTest.java b/openehr-rm/src/test/java/com/nedap/archie/xml/JAXBAOMRoundTripTest.java similarity index 77% rename from tools/src/test/java/com/nedap/archie/xml/JAXBAOMRoundTripTest.java rename to openehr-rm/src/test/java/com/nedap/archie/xml/JAXBAOMRoundTripTest.java index 2f59677ce..9d95e001e 100644 --- a/tools/src/test/java/com/nedap/archie/xml/JAXBAOMRoundTripTest.java +++ b/openehr-rm/src/test/java/com/nedap/archie/xml/JAXBAOMRoundTripTest.java @@ -3,7 +3,6 @@ import com.nedap.archie.adlparser.ADLParser; import com.nedap.archie.aom.Archetype; import com.nedap.archie.flattener.Flattener; -import com.nedap.archie.flattener.FlattenerTest; import com.nedap.archie.flattener.SimpleArchetypeRepository; import com.nedap.archie.openehr.serialisation.xml.OpenEhrRmJAXBUtil; import com.nedap.archie.testutil.TestUtil; @@ -74,16 +73,16 @@ public void operationalTemplate() throws Exception { // it adds a blood pressure observation // it also adds a device // it contains specific template overlays for both blood pressure observation and device - Archetype report = new ADLParser().parse(FlattenerTest.class.getResourceAsStream("/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.report.v1.adls")); - Archetype reportResult = new ADLParser().parse(FlattenerTest.class.getResourceAsStream("/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.report-result.v1.adls")); - Archetype device = new ADLParser().parse(FlattenerTest.class.getResourceAsStream("/com/nedap/archie/flattener/openEHR-EHR-CLUSTER.device.v1.adls")); + Archetype report = new ADLParser().parse(getClass().getResourceAsStream("/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.report.v1.adls")); + Archetype reportResult = new ADLParser().parse(getClass().getResourceAsStream("/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.report-result.v1.adls")); + Archetype device = new ADLParser().parse(getClass().getResourceAsStream("/com/nedap/archie/flattener/openEHR-EHR-CLUSTER.device.v1.adls")); - Archetype bloodPressureObservation = new ADLParser().parse(FlattenerTest.class.getResourceAsStream("/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.blood_pressure.v1.adls")); - Archetype bloodPressureComposition = new ADLParser().parse(FlattenerTest.class.getResourceAsStream("/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.blood_pressure.v1.0.0.adlt")); + Archetype bloodPressureObservation = new ADLParser().parse(getClass().getResourceAsStream("/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.blood_pressure.v1.adls")); + Archetype bloodPressureComposition = new ADLParser().parse(getClass().getResourceAsStream("/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.blood_pressure.v1.0.0.adlt")); - Archetype height = new ADLParser().parse(FlattenerTest.class.getResourceAsStream("/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.height.v1.adls")); - Archetype heightTemplate = new ADLParser().parse(FlattenerTest.class.getResourceAsStream("/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.length.v1.0.0.adlt")); + Archetype height = new ADLParser().parse(getClass().getResourceAsStream("/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.height.v1.adls")); + Archetype heightTemplate = new ADLParser().parse(getClass().getResourceAsStream("/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.length.v1.0.0.adlt")); SimpleArchetypeRepository repository = new SimpleArchetypeRepository(); repository.addArchetype(report); diff --git a/tools/src/test/java/com/nedap/archie/xml/JAXBAOMTest.java b/openehr-rm/src/test/java/com/nedap/archie/xml/JAXBAOMTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/xml/JAXBAOMTest.java rename to openehr-rm/src/test/java/com/nedap/archie/xml/JAXBAOMTest.java diff --git a/tools/src/test/java/com/nedap/archie/xml/JAXBRMRoundTripTest.java b/openehr-rm/src/test/java/com/nedap/archie/xml/JAXBRMRoundTripTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/xml/JAXBRMRoundTripTest.java rename to openehr-rm/src/test/java/com/nedap/archie/xml/JAXBRMRoundTripTest.java diff --git a/tools/src/test/java/com/nedap/archie/xml/JAXBRMTest.java b/openehr-rm/src/test/java/com/nedap/archie/xml/JAXBRMTest.java similarity index 100% rename from tools/src/test/java/com/nedap/archie/xml/JAXBRMTest.java rename to openehr-rm/src/test/java/com/nedap/archie/xml/JAXBRMTest.java diff --git a/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-CLUSTER.device.v1.adls b/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-CLUSTER.device.v1.adls new file mode 100644 index 000000000..3e86f6da2 --- /dev/null +++ b/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-CLUSTER.device.v1.adls @@ -0,0 +1,550 @@ +archetype (adl_version=2.0.5; rm_release=1.0.2; generated) + openEHR-EHR-CLUSTER.device.v1.0.0 + +language + original_language = <[ISO_639-1::en]> + translations = < + ["nb"] = < + language = <[ISO_639-1::nb]> + author = < + ["name"] = <"Lars Bitsch-Larsen"> + ["organisation"] = <"Haukeland University Hospital"> + ["email"] = <"lbla@helse-bergen.no"> + > + > + ["ar-sy"] = < + language = <[ISO_639-1::ar-sy]> + author = < + ["name"] = <"Mona Saleh"> + > + > + ["es-ar"] = < + language = <[ISO_639-1::es-ar]> + author = < + ["name"] = <"Alan March"> + ["organisation"] = <"Hospital Universitario Austral, Buenos Aires, Argentina"> + ["email"] = <"amarch@cas.austral.edu.ar"> + > + accreditation = <"MD"> + > + > + +description + lifecycle_state = <"unmanaged"> + original_author = < + ["name"] = <"Heather Leslie"> + ["organisation"] = <"Ocean Informatics"> + ["email"] = <"heather.leslie@oceaninformatics.com"> + ["date"] = <"2010-06-29"> + > + copyright = <"© openEHR Foundation"> + details = < + ["ar-sy"] = < + language = <[ISO_639-1::ar-sy]> + purpose = <"لتسجيل التفاصيل حول شيئ محسوس, مُنتَج أو جهيزة يتم استخدامها في أوسع وصف لتقديم الخدمة الصحية, و لكن دون طريقة أيضية أو علاجية مباشِرة."> + use = <"يستخدم لتسجيل التفاصيل حول أي جهيزة جنيسة (غير محدودة الملكية) و التي يمكن أن تستخدم إما مباشرةً بطريقة علاجية أو تشخيصية أو تستخدم بشكل غير مباشر لدعم تقديم الخدمة الصحية. +و يختلف استخدام اللفظ (جهيزة) على حسب السياق. +و في داخل عالم المعايير, فإن اللفظ (جهيزة) يميل إلى الإشارة إلى الجهائز الإلكترونية أو الميكانيكية/الحركية و التي تدعم الرعاية الصحية, و تتطلب توثيق مكثف فيما يتعلق بالمواصفات و الصيانة... إلى آخره. +و في سياق عالم المصطلحات فإن استخدام (جهيزة) واسع جدا, بما في ذلك أي شيئ محسوس يمكن استخدامه في تقديم الرعاية الصحية إما بشكل مباشر أو غير مباشر. +و تتضمن الأمثلة: دوائر أجهزة التنفس الصناعي, مقاييس الجريان القِمِّي, مقاييس التنفس, نظارات العين, العدسات اللاصقة, القثطار داخل الوريد, طُعوم الثدي, البِدْلات, أنابيب المَنْزَح, و الحلقات المسمارية. + +و تم تصميم هذا النموذج ليمثل الأساس لعرض مركب لأي جهيزة, من مثال بسيط لنوع من غميسة البول مع تاريخ الاستخدام, إلى طعم أذن من كائن حيّ و الذي يتطلب توثيق مركب مثل البرنامج الإلكتروني, و الأجزاء الصلبة, و الصيانة و التعيير, إلى آخره. + +و بالنسبة لحالات الاستخدام المعتادة, فقد يكون من المناسب تخصيص هذا النموذج خاصة في القثطار داخل الوريد أو القثطار البولي."> + keywords = <"الجهيزة", "الآلة", "الطُّعم", "جهاز مساعد", "القثطار", "البِدْلة", "مساعدة", "طبي بيولوجي", "أداة", "المعدات", "مقياس", "مِرْقب", "بدني/محسوس", "شيئ"> + misuse = <"لا يستخدم لتسجيل المنتجات, مثل الأدوية أو التطعيمات أو ما شابه, و التي تستخدم لأغراض علاجية أو أيضية"> + > + ["en"] = < + language = <[ISO_639-1::en]> + purpose = <"To record the details of a medical device used in the provision of healthcare."> + use = <"Use to record the details of a medical device used in the provision of healthcare. + +Use of the term 'medical device' varies depending on context. Within the Standards world, the term device tends to refer to mechanical or electronic devices that support healthcare and require rigorous documentation regarding location tracking, maintenance, calibration, software versions etc. Within the terminology context the use of device is very broad, including any medical device that can be used in direct or indirect provision of clinical care, as long as it does not act in a way that exerts a direct pharmacological, metabolic or immunological effect. + +Examples of medical devices range from simple devices such as urinary catheters, tongue depressors, contact lenses, artificial joint implants, breast implants and plain dressings through to advanced devices such as artificial hearts, syringe drivers, spirometers, mobile phone applications and computerised devices that capture point-of-care medical measurements. + +In the complex situation where a surgically implanted device is used as the means to deliver therapeutic agents such as chemotherapy directly into the body, this archetype will be used to record only the details about the medical device itself and the order for medication and details about the actual administration of the therapeutic agent will be recorded using specific medication-related INSTRUCTION and ACTION archetypes. + +This archetype is designed to provide the framework for structured representation of any medical device and the data elements that are contained here are not specific for any one type of device. Single use devices will commonly require data elements such as Lot Number and Date of Expiry. In contrast these are usually not relevant for durable devices which will often have a set of identifiers, including a UID, Serial Number, Model etc. + +Further, different types of devices will require specific information relevant to their purpose. This data can be recorded using specific CLUSTER archetypes inserted into the 'Specific properties' SLOT. For example: use of a urinary catheter may require additional details about the diameter and length of catheter, material composition, number of lumens etc. + +If the medical device has a number of components that require recording of details, each individual component should be recorded explicitly by using an additional CLUSTER.device archetype inserted into the 'Components' SLOT. + +The data field 'Software Version' allows for only a single version to be recorded. This is primarily applicable for a device which is a software application. If the device has multiple software or hardware components that need to be specified, this should be done by using an addition CLUSTER.device inserted into the 'Components' SLOT. + +To record additional details for durable or persistent devices that relate to ownership, physical location tracking, maintenance schedules etc, use CLUSTER.device_details archetype inserted into the 'Asset management' SLOT in this archetype. + +This archetype has been designed for generic use within other archetypes that need to describe a device. Examples include: OBSERVATION.blood_pressure for the sphygmomanometer; OBSERVATION.ecg for the ECG machine; OBSERVATION.urinalysis for the reactent strips and the device used for testing; ACTION.procedure; and CLUSTER.exam_tympanic_membrane to detail the otoscope used."> + keywords = <"device", "machine", "implant", "appliance", "catheter", "prosthesis", "aid", "biomedical", "instrument", "equipment", "meter", "monitor", "software"> + misuse = <"Not to be used to record data about medicinal products that exert a direct pharmacological, metabolic or immunologic effect. For example: a medicine impregnated dressing that requires a prescription should be recorded using the INSTRUCTION.medication_order archetype, focused on the active ingredients, dosage etc."> + > + ["es-ar"] = < + language = <[ISO_639-1::es-ar]> + purpose = <"Registrar los detalles de un objeto físico, producto o dispositivo utilizado en el sentido mas amplio de la provisión de cuidados de la salud, pero no como medio terapéutico o metabólico."> + use = <"Utilizado para registrar los detalles de cualquier dispositivo genérico que puede ser utilizado directamente de un modo terapéutico o diagnóstico, o indirectamente como apoyo a la provisión de cuidados de la salud. El uso del término dispositivo varía dependiendo del contexto. En el mundo de los estándares, el término dispositivo tiende a referirse a dispositivos mecánicos o electrónicos que actuan como apoyo del cuidado de la salud y que requiren documentación rigurosa en cuanto a especificaciones, mantenimiento, etc. En el contexto de las terminologías, el uso de dispositivo es muy amplio, incluyendo a cualquier objeto físico que pueda ser utilizado directa o indirectamente en la provisión de cuidados clínicos. Los ejemplos incluyen ventiladores, medidores de flujo expiratorio máximo, espirómetros, lentes oculares y de contacto, catéteres endovasculares, implantes mamarios, prótesis, tubos de drenaje y anillos para callos. +Este arquetipo esta diseñado para proveer la base de una representación estructurada de cualquier dispositivo, desde el simple ejemplo de una marca de tira reactiva urinaria con una fecha de vencimiento hasta un oído biónico implantable que puede requerir documentación compleja, software, hardware, mantenimiento, calibración, etc. +Para los casos de uso habituales podría ser apropiada la especialización de este arquetipo para formas específicas (ej.: cateter endovascular o cateter urinario)."> + keywords = <"dispositivo", "máquina", "implante", "cateter", "prótesis", "auxiliar", "biomédico", "instrumento", "equipamiento", "medidor", "monitor", "físico", "objeto"> + misuse = <"No debe ser utilizado para el registro de medicamentos, vacunas o similares, que se utizan como medios terapéuticos o metabólicos."> + > + ["nb"] = < + language = <[ISO_639-1::nb]> + purpose = <"*To record the details of a medical device used in the provision of healthcare.(en)"> + use = <"*Use to record the details of a medical device used in the provision of healthcare. + +Use of the term 'medical device' varies depending on context. Within the Standards world, the term device tends to refer to mechanical or electronic devices that support healthcare and require rigorous documentation regarding location tracking, maintenance, calibration, software versions etc. Within the terminology context the use of device is very broad, including any medical device that can be used in direct or indirect provision of clinical care, as long as it is does not act in a way that exerts a direct pharmacological, metabolic or immunological effect. + +Examples of medical devices range from simple devices such as urinary catheters, tongue depressors, contact lenses, breast implants, plain dressings, joint prostheses, syringe drivers and spirometers through to advanced devices such as artificial hearts, mobile phone applications and computerised devices that capture point-of-care medical measurements. + +In the complex situation where a surgically implanted device is used as the means to deliver therapeutic agents such as chemotherapy directly into the body, this archetype will be used to record only the details about the medical device itself and the order for medication and details about the actual administration of the therapeutic agent will be recorded using specific medication-related INSTRUCTION and ACTION archetypes. + +This archetype is designed to provide the framework for structured representation of any medical device and the data elements that are contained here are not specific for any one type of device. Single use devices will commonly require data elements such as Lot Number and Date of Expiry. In contrast these are usually not relevant for durable devices which will often have a set of identifiers, including a UID, Serial Number, Model etc. + +Further, different types of devices will require specific information relevant to their purpose. This data can be recorded using specific CLUSTER archetypes inserted into the 'Specific propserties' SLOT. For example: use of a urinary catheter may require additional details about the diameter and length of catheter, material composition, number of lumens etc. + +If the medical device has a number of components that require recording of details, each individual component should be recorded explicitly by using an additional CLUSTER.device archetype inserted into the 'Components' SLOT. + +The data field 'Software Version' allows for only a single version to be recorded. This is primarily applicable for a device which is a software application. If the device has multiple software or hardware components that need to be specified, this should be done by using an addition CLUSTER.device inserted into the 'Components' SLOT. + +To record additional details for durable or persistent devices that relate to ownership, physical location tracking, maintenance schedules etc, use CLUSTER.device_details archetype inserted into the 'Asset management' SLOT in this archetype.(en)"> + keywords = <"*device(en)", "*machine(en)", "*implant(en)", "*appliance(en)", "*catheter(en)", "*prosthesis(en)", "*aid(en)", "*biomedical(en)", "*instrument(en)", "*equipment(en)", "*meter(en)", "*monitor(en)", "*software(en)"> + misuse = <"*Not to be used to record data about medicinal products that exert a direct pharmacological, metabolic or immunologic direct effect. For example: a medicine impregnated dressing should be recorded using the INSTRUCTION.medication_order archetype, focused on the active ingredients, dosage etc.(en)"> + > + > + other_contributors = <"Tomas Alme, DIPS, Norway", "Koray Atalag, University of Auckland, New Zealand", "Silje Ljosland Bakke, Bergen Hospital Trust, Norway", "Mate Bestek, Ministry of Health of the Republic of Slovenia, Slovenia", "Lars Bitsch-Larsen, Haukeland University hospital, Norway", "Diego Bosca, IBIME group, Spain", "Margaret Campbell, Queensland Health, Australia", "Rong Chen, Cambio Healthcare Systems, Sweden", "Stephen Chu, Queensland Health, Australia", "Samo Drnovsek, Marand ltd, Slovenia", "Ivan Drvaric, NIJZ- National institute for public health of Slovenia, Slovenia", "Shahla Foozonkhah, Ocean Informatics, Australia", "Einar Fosse, National Centre for Integrated Care and Telemedicine, Norway", "Heather Grain, Llewelyn Grain Informatics, Australia", "Grahame Grieve, Australia", "Sam Heard, Ocean Informatics, Australia", "Gorazd Kalan, University Medical Centre Ljubljana, Slovenia", "Lars Karlsen, DIPS ASA, Norway", "Daniel Karlsson, Linköping University, Sweden", "Russell Leftwich, Russell B Leftwich MD, United States", "Sabine Leh, Haukeland University Hospital, Department of Pathology, Norway", "Heather Leslie, Ocean Informatics, Australia (Editor)", "Vesna Levasic, Orthopaedic Hospital Valdoltra, Slovenia", "Luis Marco Ruiz, Norwegian Center for Integrated Care and Telemedicine, Norway", "Ian McNicoll, freshEHR Clinical Informatics, United Kingdom (Editor)", "Bjoern Naess, DIPS ASA, Norway", "Dave Nurse, Allocate Software, United Kingdom", "Živa Rant, National Instittute of Public Health, Slovenia", "Anoop Shah, University College London, United Kingdom", "Micaela Thierley, Helse Bergen, Norway"> + other_details = < + ["current_contact"] = <"Heather Leslie, Ocean Informatics, heather.leslie@oceaninformatics.com"> + ["references"] = <"Resource Device [Internet]. HL7 International, FHIR Specification first DSTU version (v 0.0.82) [cited: 2015-02-25]. Available from: http://www.hl7.org/implement/standards/fhir/device.html. + +Guidelines for 64-bit Global Identifier (EUI-64) [Internet]. IEEE Standards Association [cited: 2015-02-25]. Available from: http://standards.ieee.org/regauth/oui/tutorials/EUI64.html."> + ["MD5-CAM-1.0.1"] = <"F09649C839F331ADA3FA32CD0F42B5A5"> + > + +definition + CLUSTER[id1] matches { -- Medical Device + items matches { + ELEMENT[id2] matches { -- Device name + value matches { + DV_TEXT[id29] + } + } + ELEMENT[id4] occurrences matches {0..1} matches { -- Type + value matches { + DV_TEXT[id30] + } + } + ELEMENT[id3] occurrences matches {0..1} matches { -- Description + value matches { + DV_TEXT[id31] + } + } + allow_archetype CLUSTER[id10] occurrences matches {0..*} matches { -- Properties + include + archetype_id/value matches {/openEHR-EHR-CLUSTER\.dimensions(-a-zA-Z0-9_]+)*\.v1|openEHR-EHR-CLUSTER\.catheter(-a-zA-Z0-9_]+)*\.v1/} + } + ELEMENT[id22] occurrences matches {0..1} matches { -- Unique device identifier (UDI) + value matches { + DV_IDENTIFIER[id32] + } + } + ELEMENT[id5] occurrences matches {0..1} matches { -- Manufacturer + value matches { + DV_TEXT[id33] + } + } + ELEMENT[id6] occurrences matches {0..1} matches { -- Date of manufacture + value matches { + DV_DATE_TIME[id34] + } + } + ELEMENT[id21] occurrences matches {0..1} matches { -- Serial number + value matches { + DV_TEXT[id35] + } + } + ELEMENT[id23] occurrences matches {0..1} matches { -- Catalogue number + value matches { + DV_TEXT[id36] + } + } + ELEMENT[id24] occurrences matches {0..1} matches { -- Model number + value matches { + DV_TEXT[id37] + } + } + ELEMENT[id7] occurrences matches {0..1} matches { -- Batch/Lot number + value matches { + DV_TEXT[id38] + } + } + ELEMENT[id26] occurrences matches {0..1} matches { -- Software version + value matches { + DV_TEXT[id39] + } + } + ELEMENT[id8] occurrences matches {0..1} matches { -- Date of expiry + value matches { + DV_DATE_TIME[id40] + } + } + ELEMENT[id25] occurrences matches {0..*} matches { -- Other identifier + value matches { + DV_IDENTIFIER[id41] + } + } + allow_archetype CLUSTER[id20] occurrences matches {0..*} matches { -- Asset management + include + archetype_id/value matches {/openEHR-EHR-CLUSTER\.device_details(-a-zA-Z0-9_]+)*\.v1/} + } + allow_archetype CLUSTER[id19] occurrences matches {0..*} matches { -- Components + include + archetype_id/value matches {/openEHR-EHR-CLUSTER\.device(-a-zA-Z0-9_]+)*\.v1/} + } + allow_archetype CLUSTER[id27] occurrences matches {0..*} matches { -- Extension + include + archetype_id/value matches {/.*/} + } + allow_archetype CLUSTER[id28] occurrences matches {0..*} matches { -- Multimedia + include + archetype_id/value matches {/openEHR-EHR-CLUSTER\.multimedia(-a-zA-Z0-9_]+)*\.v1/} + } + ELEMENT[id9] occurrences matches {0..1} matches { -- Comment + value matches { + DV_TEXT[id42] + } + } + } + } + +terminology + term_definitions = < + ["ar-sy"] = < + ["id1"] = < + text = <"*Medical Device(en)"> + description = <"*An instrument, apparatus, implant, material or similar, used in the provision of healthcare. In this context, a medical device includes a broad range of devices which act through a variety of physical, mechanical, thermal or similar means but specifically excludes devices which act through medicinal means such as pharmacological, metabolic or immunological methods. The scope is inclusive of disposable devices as well as durable or persisting devices that require tracking, maintenance activities or regular calibration, recognising that each type of device has specific data recording requirements.(en)"> + > + ["id2"] = < + text = <"*Device name(en)"> + description = <"*Identification of the medical device, preferably by a common name, a formal fully descriptive name or, if required, by class or category of device.(en)"> + > + ["id3"] = < + text = <"الوصف"> + description = <"وصف الجهيزة"> + > + ["id4"] = < + text = <"*Type(en)"> + description = <"*Type of medical device.(en)"> + > + ["id5"] = < + text = <"المُصَنِّع"> + description = <"اسم المُصَنِّع"> + > + ["id6"] = < + text = <"تاريخ التصنيع"> + description = <"تاريخ تصنيع الجهيزة"> + > + ["id7"] = < + text = <"رقم التشغيلة"> + description = <"رقم التشغيلة من المُصَنِّع"> + > + ["id8"] = < + text = <"تاريخ انتهاء الصلاحية"> + description = <"التاريخ الذي يكون عنجه الجهيزة/المنتج غير مناسبا للاستخدام"> + > + ["id9"] = < + text = <"تعليق"> + description = <"تعليق نصي إضافي حولالجهيزة, لم يتم التطرق لها في الحقول الأخرى"> + > + ["id10"] = < + text = <"التفاصيل الإضافية"> + description = <"المزيد من التفاصيل حول الجهيزة"> + > + ["id19"] = < + text = <"*Components(en)"> + description = <"*Additional structured informations about identified components of the device.(en)"> + > + ["id20"] = < + text = <"*Cluster(en)"> + description = <"**(en)"> + > + ["id21"] = < + text = <"*New element(en)"> + description = <"**(en)"> + > + ["id22"] = < + text = <"*New element(en)"> + description = <"**(en)"> + > + ["id23"] = < + text = <"*New element(en)"> + description = <"**(en)"> + > + ["id24"] = < + text = <"*New element(en)"> + description = <"**(en)"> + > + ["id25"] = < + text = <"*Other identifier(en)"> + description = <"*Unspecified identifier, which can be further specified in a template or at run time.(en)"> + > + ["id26"] = < + text = <"*Software version(en)"> + description = <"*Identification of the version of software being used in the medical device.(en)"> + > + ["id27"] = < + text = <"*Cluster(en)"> + description = <"**(en)"> + > + ["id28"] = < + text = <"*Multimedia(en)"> + description = <"*Digital representation of the device.(en)"> + > + > + ["en"] = < + ["id1"] = < + text = <"Medical Device"> + description = <"An instrument, apparatus, implant, material or similar, used in the provision of healthcare. In this context, a medical device includes a broad range of devices which act through a variety of physical, mechanical, thermal or similar means but specifically excludes devices which act through medicinal means such as pharmacological, metabolic or immunological methods. The scope is inclusive of disposable devices as well as durable or persisting devices that require tracking, maintenance activities or regular calibration, recognising that each type of device has specific data recording requirements."> + > + ["id2"] = < + text = <"Device name"> + description = <"Identification of the medical device, preferably by a common name, a formal fully descriptive name or, if required, by class or category of device."> + > + ["id3"] = < + text = <"Description"> + description = <"Narrative description of the medical device."> + > + ["id4"] = < + text = <"Type"> + description = <"The category or kind of device."> + > + ["id5"] = < + text = <"Manufacturer"> + description = <"Name of manufacturer."> + > + ["id6"] = < + text = <"Date of manufacture"> + description = <"Date the device was manufactured."> + > + ["id7"] = < + text = <"Batch/Lot number"> + description = <"The number assigned by the manufacturer which identifies a group of items manufactured at the same time, usually found on the label or packaging material."> + > + ["id8"] = < + text = <"Date of expiry"> + description = <"Date after which the device/product is no longer fit for use, usually found on the device itself or printed on the accompanying packaging."> + > + ["id9"] = < + text = <"Comment"> + description = <"Additional narrative about the device not captured in other fields."> + > + ["id10"] = < + text = <"Properties"> + description = <"Further details about specific properties about the medical device."> + > + ["id19"] = < + text = <"Components"> + description = <"Additional structured informations about identified components of the device."> + > + ["id20"] = < + text = <"Asset management"> + description = <"Further details about management and maintenance of the device."> + > + ["id21"] = < + text = <"Serial number"> + description = <"Number assigned by the manufacturer which can be found on the device, and should be specific to each device., its label, or accompanying packaging."> + > + ["id22"] = < + text = <"Unique device identifier (UDI)"> + description = <"A numeric or alphanumeric string that is associated with this device within a given system."> + > + ["id23"] = < + text = <"Catalogue number"> + description = <"The exact number assigned by the manufacturer, as it appears in the manufacturer's catalogue, device labeling, or accompanying packaging."> + > + ["id24"] = < + text = <"Model number"> + description = <"The exact model number assigned by the manufacturer and found on the device label or accompanying packaging."> + > + ["id25"] = < + text = <"Other identifier"> + description = <"Unspecified identifier, which can be further specified in a template or at run time."> + > + ["id26"] = < + text = <"Software version"> + description = <"Identification of the version of software being used in the medical device."> + > + ["id27"] = < + text = <"Extension"> + description = <"Additional information required to capture local context or to align with other reference models/formalisms."> + > + ["id28"] = < + text = <"Multimedia"> + description = <"Digital representation of the device."> + > + > + ["nb"] = < + ["id1"] = < + text = <"*Medical Device(en)"> + description = <"*An instrument, apparatus, implant, material or similar, used in the provision of healthcare. In this context, a medical device includes a broad range of devices which act through a variety of physical, mechanical, thermal or similar means but specifically excludes devices which act through medicinal means such as pharmacological, metabolic or immunological methods. The scope is inclusive of disposable devices as well as durable or persisting devices that require tracking, maintenance activities or regular calibration, recognising that each type of device has specific data recording requirements.(en)"> + > + ["id2"] = < + text = <"Enhets navn"> + description = <"*Identification of the medical device, preferably by a common name, a formal fully descriptive name or, if required, by class or category of device.(en)"> + > + ["id3"] = < + text = <"Beskrivelse"> + description = <"*Narrative description of the medical device.(en)"> + > + ["id4"] = < + text = <"Type"> + description = <"*The category or kind of device.(en)"> + > + ["id5"] = < + text = <"Produsent"> + description = <"Navnet til produsenten."> + > + ["id6"] = < + text = <"Produksjonsdato"> + description = <"Dato for produksjon av enheten."> + > + ["id7"] = < + text = <"*Batch/Lot number(en)"> + description = <"*The number assigned by the manufacturer which identifies a group of items manufactured at the same time, usually found on the label or packaging material.(en)"> + > + ["id8"] = < + text = <"Utløpsdato"> + description = <"*Date after which the device/product is no longer fit for use, usually found on the device itself or printed on the accompanying packaging.(en)"> + > + ["id9"] = < + text = <"Kommentar"> + description = <"Ytterligere narrativ opplysninger om enheten som ikke er inneholdt i andre felter."> + > + ["id10"] = < + text = <"*Properties(en)"> + description = <"*Further details about specific properties about the medical device.(en)"> + > + ["id19"] = < + text = <"*Components(en)"> + description = <"*Additional structured informations about identified components of the device.(en)"> + > + ["id20"] = < + text = <"*Asset management(en)"> + description = <"*Further details about management and maintenance of the device.(en)"> + > + ["id21"] = < + text = <"*Serial number(en)"> + description = <"*Number assigned by the manufacturer which can be found on the device, and should be specific to each device., its label, or accompanying packaging.(en)"> + > + ["id22"] = < + text = <"*Unique device identifier (UDI)(en)"> + description = <"*A numeric or alphanumeric string that is associated with this device within a given system.(en)"> + > + ["id23"] = < + text = <"*Catalog number(en)"> + description = <"*The exact number assigned by the manufacturer, as it appears in the manufacturer's catalog, device labeling, or accompanying packaging.(en)"> + > + ["id24"] = < + text = <"*Model number(en)"> + description = <"*The exact model number assigned by the manufacturer and found on the device label or accompanying packaging.(en)"> + > + ["id25"] = < + text = <"*Other identifier(en)"> + description = <"*Unspecified identifier, which can be further specified in a template or at run time.(en)"> + > + ["id26"] = < + text = <"*Software version(en)"> + description = <"*Identification of the version of software being used in the medical device.(en)"> + > + ["id27"] = < + text = <"*Extension(en)"> + description = <"*Additional information required to capture local context or to align with other reference models/formalisms.(en)"> + > + ["id28"] = < + text = <"*Multimedia(en)"> + description = <"*Digital representation of the device.(en)"> + > + > + ["es-ar"] = < + ["id1"] = < + text = <"*Medical Device(en)"> + description = <"*An instrument, apparatus, implant, material or similar, used in the provision of healthcare. In this context, a medical device includes a broad range of devices which act through a variety of physical, mechanical, thermal or similar means but specifically excludes devices which act through medicinal means such as pharmacological, metabolic or immunological methods. The scope is inclusive of disposable devices as well as durable or persisting devices that require tracking, maintenance activities or regular calibration, recognising that each type of device has specific data recording requirements.(en)"> + > + ["id2"] = < + text = <"*Device name(en)"> + description = <"*Identification of the medical device, preferably by a common name, a formal fully descriptive name or, if required, by class or category of device.(en)"> + > + ["id3"] = < + text = <"Descripción"> + description = <"Descripción del dispositivo."> + > + ["id4"] = < + text = <"*Type(en)"> + description = <"*Type of medical device.(en)"> + > + ["id5"] = < + text = <"Fabricante"> + description = <"Fabricante del dispositivo."> + > + ["id6"] = < + text = <"Fecha de fabricación"> + description = <"Fecha de fabricación del dispositivo."> + > + ["id7"] = < + text = <"Número de lote"> + description = <"Número de lote del fabricante."> + > + ["id8"] = < + text = <"Fecha de vencimiento"> + description = <"Fecha para la cual el dispositivo o producto deja de ser adecuado para su uso."> + > + ["id9"] = < + text = <"Comentario"> + description = <"Narrativa adicional sobre el dispositivo que no fué cubierta en los otros campos."> + > + ["id10"] = < + text = <"Detalles adicionales"> + description = <"Detalles adicionales acerca del dispositivo."> + > + ["id19"] = < + text = <"*Components(en)"> + description = <"*Additional structured informations about identified components of the device.(en)"> + > + ["id20"] = < + text = <"*Cluster(en)"> + description = <"**(en)"> + > + ["id21"] = < + text = <"*New element(en)"> + description = <"**(en)"> + > + ["id22"] = < + text = <"*New element(en)"> + description = <"**(en)"> + > + ["id23"] = < + text = <"*New element(en)"> + description = <"**(en)"> + > + ["id24"] = < + text = <"*New element(en)"> + description = <"**(en)"> + > + ["id25"] = < + text = <"*Other identifier(en)"> + description = <"*Unspecified identifier, which can be further specified in a template or at run time.(en)"> + > + ["id26"] = < + text = <"*Software version(en)"> + description = <"*Identification of the version of software being used in the medical device.(en)"> + > + ["id27"] = < + text = <"*Cluster(en)"> + description = <"**(en)"> + > + ["id28"] = < + text = <"*Multimedia(en)"> + description = <"*Digital representation of the device.(en)"> + > + > + > diff --git a/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.blood_pressure.v1.0.0.adlt b/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.blood_pressure.v1.0.0.adlt new file mode 100644 index 000000000..374b71c9d --- /dev/null +++ b/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.blood_pressure.v1.0.0.adlt @@ -0,0 +1,374 @@ +template (adl_version=2.0.5; rm_release=1.0.2; generated) + openEHR-EHR-COMPOSITION.blood_pressure.v1.0.0 + +specialize + openEHR-EHR-COMPOSITION.report-result.v1.0.0 + +language + original_language = <[ISO_639-1::en]> + translations = < + ["ar-sy"] = < + author = < + ["name"] = <"Mona Saleh"> + > + language = <[ISO_639-1::ar-sy]> + > + > + +description + copyright = <"© openEHR Foundation"> + details = < + ["ar-sy"] = < + keywords = <"تقرير"> + language = <[ISO_639-1::ar-sy]> + misuse = <""> + purpose = <"نموذج جنيس (غير محدود الملكية) يحتوي على معلومات من أجل مشاركتها مع الجميع."> + use = <"يستخدم كنموذج جنيس (غير محدود الملكية) ليحتوي على المعلومات التي ينبغي مشاركتها مع الآخرين. و من الأمثلة المشهورة, توثيق الاستجابة لطلب معلومات, ناتج اختبار, الأنشطة التي تم إجراؤها أو الوقائع التي حدثت بالفعل. +و هو يمثل إحدى المكونات التي تتناسب مع السياق و يمكن استخدامه كشرفة في: +- إضافة محتوى اختياري أثناء إعداد القالب لدعم متطلبات محددة متعلقة بحالة الاستخدام. +- إضافة نماذج ديموغرافية على نمط السجل الطبي الإلكتروني, يمثل الأطراف المساهِمة. و في حين أن ذلك قد لا يكون مرغوبا فيه عند التشغيل, فإنه قد يكون من المفيد عرض كيف يمكن تمثيل المعلومات الديموغرافية في وقت التشغيل, بمعنى استخدامها كدعم لتجميع متطلبات المحتوى السريري أو مراجعة القالب. +و قد تم تعمد جعل مُكَوِّن المقاطع غير مقيد للوصول إلى الحد الأقصى لإعادة استخدام هذا النموذج."> + > + ["en"] = < + keywords = <"report", "test", "result", "diagnostic", "audiogram", "tympanogram", "audiometry", "tympanography"> + language = <[ISO_639-1::en]> + misuse = <""> + purpose = <"Generic container archetype to carry information about the result of a test or assessment."> + use = <"Use as a generic archetype to carry information about the result of a test or assessment. Common result examples are: a pathology/laboratory test; an imaging examination test; or an audiogram hearing assessement. +The Context component contains an optional unnamed slot that can be used to: +- add optional content during templating to support a use-case specific requirements; +- add EHR model demographic archetypes representing participating parties. While this may not be desired at implementation, this can be useful to demonstrate how demographics may be represented in an implementation ie as a support to clinical content requirements gathering or template review. +The Sections component has been deliberately left unconstrained to maximise re-use of this archetype."> + > + > + lifecycle_state = <"unmanaged"> + original_author = < + ["name"] = <"Heather Leslie"> + ["organisation"] = <"Ocean Informatics"> + ["email"] = <"heather.leslie@oceaninformatics.com"> + ["date"] = <"2012-12-11"> + > + other_contributors = <"Heath Frankel, Ocean Informatics, Australia", "Sam Heard, Ocean Informatics, Australia", "Sistine Barretto-Daniels, Ocean Informatics, Australia", "Hugh Leslie, Ocean Informatics, Australia", "Ian McNicoll, Ocean Informatics, Australia"> + +definition + COMPOSITION[id1.1.1] matches { -- Blood pressure result + content matches { + use_archetype OBSERVATION[id0.0.5, openEHR-EHR-OBSERVATION.ovl-blood_pressure-blood_pressure-001.v1.0.0] + } + } + +terminology + term_definitions = < + ["ar-sy"] = < + ["id1.1.1"] = < + text = <"*Result Report(en)"> + description = <"*Document to communicate information to others about the result of a test or assessment.(en)"> + > + ["id0.0.5"] = < + text = <"*Result Report(en)"> + description = <"*Document to communicate information to others about the result of a test or assessment.(en)"> + > + > + ["en"] = < + ["id1.1.1"] = < + text = <"*Result Report(en)"> + description = <"*Document to communicate information to others about the result of a test or assessment.(en)"> + > + ["id0.0.5"] = < + text = <"*Result Report(en)"> + description = <"*Document to communicate information to others about the result of a test or assessment.(en)"> + > + > + ["sl"] = < + ["id1.1.1"] = < + text = <"*Result Report(en)"> + description = <"*Document to communicate information to others about the result of a test or assessment.(en)"> + > + ["id0.0.5"] = < + text = <"*Result Report(en)"> + description = <"*Document to communicate information to others about the result of a test or assessment.(en)"> + > + > + ["es-ar"] = < + ["id1.1.1"] = < + text = <"*Result Report(en)"> + description = <"*Document to communicate information to others about the result of a test or assessment.(en)"> + > + ["id0.0.5"] = < + text = <"*Result Report(en)"> + description = <"*Document to communicate information to others about the result of a test or assessment.(en)"> + > + > + > + + +--------------------------------------------------------------------------------- +template_overlay + openEHR-EHR-OBSERVATION.ovl-blood_pressure-blood_pressure-001.v1.0.0 + +specialize + openEHR-EHR-OBSERVATION.blood_pressure.v1.0.0 + +definition + OBSERVATION[id1.1] matches { -- Blood Pressure + /data[id2]/events[id7]/data[id4]/items matches { + ELEMENT[id5.1] occurrences matches {1} matches { -- Systolic + value matches { + DV_QUANTITY[id1054.1] matches { + magnitude matches {|0.0..<500.0|} + } + } + } + ELEMENT[id34] occurrences matches {0} -- no comment + } + /protocol[id12]/items matches { + CLUSTER[id1034.1] occurrences matches {0..1} -- Measurement location + use_archetype CLUSTER[id1026.1, openEHR-EHR-CLUSTER.ovl-blood_pressure-device-001.v1.0.0] + allow_archetype CLUSTER[id1026] occurrences matches {0} + } + } + +terminology + term_definitions = < + ["en"] = < + ["id1.1"] = < + text = <"Blood Pressure"> + description = <"The local measurement of arterial blood pressure which is a surrogate for arterial. pressure in the systemic circulation. Most commonly, use of the term 'blood pressure' refers to measurement of brachial artery pressure in the upper arm."> + > + ["id1034.1"] = < + text = <"Measurement location"> + description = <"Body location where blood pressure is measured. Use 'Location of measurement' to select from common sites. Use 'Specific location' to record more specific details or a site that is not in the common set or to refer to an external terminology."> + > + ["id5.1"] = < + text = <"Systolic"> + description = <"Peak systemic arterial blood pressure - measured in systolic or contraction phase of the heart cycle."> + > + ["id1026.1"] = < + text = <"Systolic"> + description = <"Peak systemic arterial blood pressure - measured in systolic or contraction phase of the heart cycle."> + > + > + ["ja"] = < + ["id1.1"] = < + text = <"血圧"> + description = <"全身に循環する動脈圧を示すものとして,局所で測定される血圧。一般的には「血圧」とは上腕で上腕動脈を測定したものをさすことが多い。"> + > + ["id1034.1"] = < + text = <"部位"> + description = <"血圧測定を行った体の部位。「測定部位」を一般的な場所では利用する。「特定部位」はより詳細に部位を特定したり、外部のターミノロジーや一般的な用語にはない部位を指すために用いる。"> + > + ["id5.1"] = < + text = <"収縮期"> + description = <"1つ以上の脈の間で最高値を示す全身の動脈圧 - 心機図の収縮期で測定される"> + > + ["id1026.1"] = < + text = <"Systolic"> + description = <"Peak systemic arterial blood pressure - measured in systolic or contraction phase of the heart cycle."> + > + > + > + + +--------------------------------------------------------------------------------- +template_overlay + openEHR-EHR-CLUSTER.ovl-blood_pressure-device-001.v1.0.0 + +specialize + openEHR-EHR-CLUSTER.device.v1.0.0 + +definition + CLUSTER[id1.1] matches { -- Medical Device + items matches { + ELEMENT[id2.1] matches { -- Scale name + value matches { + DV_TEXT[id29.1] + } + } + ELEMENT[id4.1] occurrences matches {0..1} matches { -- Type + value matches { + DV_CODED_TEXT[id30.1] matches { + defining_code matches {[ac0.1; at0.6]} + } + } + } + } + } + +terminology + term_definitions = < + ["ar-sy"] = < + ["id1.1"] = < + text = <"*Medical Device(en)"> + description = <"*An instrument, apparatus, implant, material or similar, used in the provision of healthcare. In this context, a medical device includes a broad range of devices which act through a variety of physical, mechanical, thermal or similar means but specifically excludes devices which act through medicinal means such as pharmacological, metabolic or immunological methods. The scope is inclusive of disposable devices as well as durable or persisting devices that require tracking, maintenance activities or regular calibration, recognising that each type of device has specific data recording requirements.(en)"> + > + ["id2.1"] = < + text = <"*Device name(en)"> + description = <"*Identification of the medical device, preferably by a common name, a formal fully descriptive name or, if required, by class or category of device.(en)"> + > + ["id4.1"] = < + text = <"*Type(en)"> + description = <"*Type of medical device.(en)"> + > + ["at0.1"] = < + text = <"Balance (en)"> + description = <"Probably not the best choice (en)"> + > + ["at0.2"] = < + text = <"Kitchen scale (en)"> + description = <"For very small people (en)"> + > + ["at0.3"] = < + text = <"Household scale (en)"> + description = <"Hmm right (en)"> + > + ["at0.4"] = < + text = <"Optimistic scale (en)"> + description = <"Always shows optimal weight for your length (en)"> + > + ["at0.5"] = < + text = <"Pessimistic scale (en)"> + description = <"Garfield's scale (en)"> + > + ["ac0.1"] = < + text = <"Scale types (en)"> + description = <"Scale types description (en)"> + > + ["at0.6"] = < + text = <"Postal scale (en)"> + description = <"in case you want to mail the patient (en)"> + > + > + ["en"] = < + ["id1.1"] = < + text = <"Medical Device"> + description = <"An instrument, apparatus, implant, material or similar, used in the provision of healthcare. In this context, a medical device includes a broad range of devices which act through a variety of physical, mechanical, thermal or similar means but specifically excludes devices which act through medicinal means such as pharmacological, metabolic or immunological methods. The scope is inclusive of disposable devices as well as durable or persisting devices that require tracking, maintenance activities or regular calibration, recognising that each type of device has specific data recording requirements."> + > + ["id2.1"] = < + text = <"Scale name"> + description = <"Identification of the medical device, preferably by a common name, a formal fully descriptive name or, if required, by class or category of device."> + > + ["id4.1"] = < + text = <"Type"> + description = <"The category or kind of device."> + > + ["at0.1"] = < + text = <"Balance"> + description = <"Probably not the best choice"> + > + ["at0.2"] = < + text = <"Kitchen scale"> + description = <"For very small people"> + > + ["at0.3"] = < + text = <"Household scale"> + description = <"Hmm right"> + > + ["at0.4"] = < + text = <"Optimistic scale"> + description = <"Always shows optimal weight for your length"> + > + ["at0.5"] = < + text = <"Pessimistic scale"> + description = <"Garfield's scale"> + > + ["ac0.1"] = < + text = <"Scale types"> + description = <"Scale types description"> + > + ["at0.6"] = < + text = <"Postal scale"> + description = <"in case you want to mail the patient"> + > + > + ["nb"] = < + ["id1.1"] = < + text = <"*Medical Device(en)"> + description = <"*An instrument, apparatus, implant, material or similar, used in the provision of healthcare. In this context, a medical device includes a broad range of devices which act through a variety of physical, mechanical, thermal or similar means but specifically excludes devices which act through medicinal means such as pharmacological, metabolic or immunological methods. The scope is inclusive of disposable devices as well as durable or persisting devices that require tracking, maintenance activities or regular calibration, recognising that each type of device has specific data recording requirements.(en)"> + > + ["id2.1"] = < + text = <"Enhets navn"> + description = <"*Identification of the medical device, preferably by a common name, a formal fully descriptive name or, if required, by class or category of device.(en)"> + > + ["id4.1"] = < + text = <"Type"> + description = <"*The category or kind of device.(en)"> + > + ["at0.1"] = < + text = <"Balance (en)"> + description = <"Probably not the best choice (en)"> + > + ["at0.2"] = < + text = <"Kitchen scale (en)"> + description = <"For very small people (en)"> + > + ["at0.3"] = < + text = <"Household scale (en)"> + description = <"Hmm right (en)"> + > + ["at0.4"] = < + text = <"Optimistic scale (en)"> + description = <"Always shows optimal weight for your length (en)"> + > + ["at0.5"] = < + text = <"Pessimistic scale (en)"> + description = <"Garfield's scale (en)"> + > + ["ac0.1"] = < + text = <"Scale types (en)"> + description = <"Scale types description (en)"> + > + ["at0.6"] = < + text = <"Postal scale (en)"> + description = <"in case you want to mail the patient (en)"> + > + > + ["es-ar"] = < + ["id1.1"] = < + text = <"*Medical Device(en)"> + description = <"*An instrument, apparatus, implant, material or similar, used in the provision of healthcare. In this context, a medical device includes a broad range of devices which act through a variety of physical, mechanical, thermal or similar means but specifically excludes devices which act through medicinal means such as pharmacological, metabolic or immunological methods. The scope is inclusive of disposable devices as well as durable or persisting devices that require tracking, maintenance activities or regular calibration, recognising that each type of device has specific data recording requirements.(en)"> + > + ["id2.1"] = < + text = <"*Device name(en)"> + description = <"*Identification of the medical device, preferably by a common name, a formal fully descriptive name or, if required, by class or category of device.(en)"> + > + ["id4.1"] = < + text = <"*Type(en)"> + description = <"*Type of medical device.(en)"> + > + ["at0.1"] = < + text = <"Balance (en)"> + description = <"Probably not the best choice (en)"> + > + ["at0.2"] = < + text = <"Kitchen scale (en)"> + description = <"For very small people (en)"> + > + ["at0.3"] = < + text = <"Household scale (en)"> + description = <"Hmm right (en)"> + > + ["at0.4"] = < + text = <"Optimistic scale (en)"> + description = <"Always shows optimal weight for your length (en)"> + > + ["at0.5"] = < + text = <"Pessimistic scale (en)"> + description = <"Garfield's scale (en)"> + > + ["ac0.1"] = < + text = <"Scale types (en)"> + description = <"Scale types description (en)"> + > + ["at0.6"] = < + text = <"Postal scale (en)"> + description = <"in case you want to mail the patient (en)"> + > + > + > + value_sets = < + ["ac0.1"] = < + id = <"ac0.1"> + members = <"at0.1", "at0.2", "at0.3", "at0.4", "at0.5", "at0.6"> + > + > + diff --git a/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.length.v1.0.0.adlt b/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.length.v1.0.0.adlt new file mode 100644 index 000000000..701222835 --- /dev/null +++ b/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.length.v1.0.0.adlt @@ -0,0 +1,153 @@ +template (adl_version=2.0.5; rm_release=1.0.2; generated) + openEHR-EHR-COMPOSITION.length.v1.0.0 + +specialize + openEHR-EHR-COMPOSITION.report-result.v1.0.0 + +language + original_language = <[ISO_639-1::en]> + translations = < + ["ar-sy"] = < + author = < + ["name"] = <"Mona Saleh"> + > + language = <[ISO_639-1::ar-sy]> + > + > + +description + copyright = <"© openEHR Foundation"> + details = < + ["ar-sy"] = < + keywords = <"تقرير"> + language = <[ISO_639-1::ar-sy]> + misuse = <""> + purpose = <"نموذج جنيس (غير محدود الملكية) يحتوي على معلومات من أجل مشاركتها مع الجميع."> + use = <"يستخدم كنموذج جنيس (غير محدود الملكية) ليحتوي على المعلومات التي ينبغي مشاركتها مع الآخرين. و من الأمثلة المشهورة, توثيق الاستجابة لطلب معلومات, ناتج اختبار, الأنشطة التي تم إجراؤها أو الوقائع التي حدثت بالفعل. +و هو يمثل إحدى المكونات التي تتناسب مع السياق و يمكن استخدامه كشرفة في: +- إضافة محتوى اختياري أثناء إعداد القالب لدعم متطلبات محددة متعلقة بحالة الاستخدام. +- إضافة نماذج ديموغرافية على نمط السجل الطبي الإلكتروني, يمثل الأطراف المساهِمة. و في حين أن ذلك قد لا يكون مرغوبا فيه عند التشغيل, فإنه قد يكون من المفيد عرض كيف يمكن تمثيل المعلومات الديموغرافية في وقت التشغيل, بمعنى استخدامها كدعم لتجميع متطلبات المحتوى السريري أو مراجعة القالب. +و قد تم تعمد جعل مُكَوِّن المقاطع غير مقيد للوصول إلى الحد الأقصى لإعادة استخدام هذا النموذج."> + > + ["en"] = < + keywords = <"report", "test", "result", "diagnostic", "audiogram", "tympanogram", "audiometry", "tympanography"> + language = <[ISO_639-1::en]> + misuse = <""> + purpose = <"Generic container archetype to carry information about the result of a test or assessment."> + use = <"Use as a generic archetype to carry information about the result of a test or assessment. Common result examples are: a pathology/laboratory test; an imaging examination test; or an audiogram hearing assessement. +The Context component contains an optional unnamed slot that can be used to: +- add optional content during templating to support a use-case specific requirements; +- add EHR model demographic archetypes representing participating parties. While this may not be desired at implementation, this can be useful to demonstrate how demographics may be represented in an implementation ie as a support to clinical content requirements gathering or template review. +The Sections component has been deliberately left unconstrained to maximise re-use of this archetype."> + > + > + lifecycle_state = <"unmanaged"> + original_author = < + ["name"] = <"Heather Leslie"> + ["organisation"] = <"Ocean Informatics"> + ["email"] = <"heather.leslie@oceaninformatics.com"> + ["date"] = <"2012-12-11"> + > + other_contributors = <"Heath Frankel, Ocean Informatics, Australia", "Sam Heard, Ocean Informatics, Australia", "Sistine Barretto-Daniels, Ocean Informatics, Australia", "Hugh Leslie, Ocean Informatics, Australia", "Ian McNicoll, Ocean Informatics, Australia"> + +definition + COMPOSITION[id1.1.1] matches { -- Length Report + content matches { + use_archetype OBSERVATION[id0.0.2, openEHR-EHR-OBSERVATION.ovl-length-height-001.v1.0.0] + } + } + +terminology + term_definitions = < + ["ar-sy"] = < + ["id1.1.1"] = < + text = <"*Result Report(en)"> + description = <"*Document to communicate information to others about the result of a test or assessment.(en)"> + > + ["id0.0.2"] = < + text = <"*Result Report(en)"> + description = <"*Document to communicate information to others about the result of a test or assessment.(en)"> + > + > + ["en"] = < + ["id1.1.1"] = < + text = <"Length Report"> + description = <"Document to record the length of a client"> + > + ["id0.0.2"] = < + text = <"*Result Report(en)"> + description = <"*Document to communicate information to others about the result of a test or assessment.(en)"> + > + > + > + + +--------------------------------------------------------------------------------- +template_overlay + openEHR-EHR-OBSERVATION.ovl-length-height-001.v1.0.0 + +specialize + openEHR-EHR-OBSERVATION.height.v1.0.0 + +definition + OBSERVATION[id1.1] -- Lengte + +terminology + term_definitions = < + ["nl"] = < + ["id1.1"] = < + text = <"Lengte"> + description = <"De lichaamslengte wordt gemeten vanaf de kruin van het hoofd tot en met de voetzool. In het engelse taaldomein wordt er verschil gemaakt tussen hoogte (height) en lengte (length), waarbij hoogte staande gemeten wordt en lengte liggend."> + > + > + ["en"] = < + ["id1.1"] = < + text = <"Height/Length"> + description = <"Height, or body length, is measured from crown of head to sole of foot. Height is measured with the individual in a standing position and body length in a recumbent position."> + > + > + ["de"] = < + ["id1.1"] = < + text = <"Größe/Länge"> + description = <"Größe bzw. Körperlänge wird vom Scheitel bis zur Fußsohle gemessen. Größe wird in einer stehenden Position gemessen, Körperlänge in einer liegenden Position."> + > + > + ["pt-br"] = < + ["id1.1"] = < + text = <"Altura / comprimento"> + description = <"Altura ou comprimento do corpo, é medida a partir da coroa da cabeça a sola do pé. +A altura é medida com o indivíduo na posição de pé e comprimento do corpo na posição decúbito dorsal."> + > + > + ["fa"] = < + ["id1.1"] = < + text = <"قد و یا طول"> + description = <"قد یا طول بدن از نوک سر تا کف پا اندازه گیری می شود.بلندی در حالت ایستاده و طول بدن فرد در حالت خوابیده اندازه گیری می شود "> + > + > + ["ar-sy"] = < + ["id1.1"] = < + text = <"الارتفاع / الطول"> + description = <"الارتفاع أو طول الجسم, يتم قياسه من تاج الرأس إلى أخمص القدم. يتم قياس الارتفاع عندما يكون الفرد واقفا, و طول الجسم عندما يكون الفرد مستلقيا."> + > + > + ["es-ar"] = < + ["id1.1"] = < + text = <"Altura/Longitud corporal"> + description = <"La altura o longitud corporal es medida desde la coronilla de la cabeza hasta la planta de los pies. La altura es medida con el individuo en posición erguida y la longitud corporal, en posición recostada."> + > + > + ["ru"] = < + ["id1.1"] = < + text = <"Рост/длина тела"> + description = <"Рост или длина тела. Измеряется от макушки до пяток, стоя, или в вытянутом положении."> + > + > + ["zh-cn"] = < + ["id1.1"] = < + text = <"身高/身长"> + description = <"从头顶至脚底(足底)所测得的身高(高度)/身长(长度)。身高测量采用直立位,而身长测量则采用的是卧位(平卧位)。"> + > + > + > + diff --git a/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.report-result.v1.adls b/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.report-result.v1.adls new file mode 100644 index 000000000..40031abbb --- /dev/null +++ b/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.report-result.v1.adls @@ -0,0 +1,74 @@ +archetype (adl_version=2.0.5; rm_release=1.0.2; generated) + openEHR-EHR-COMPOSITION.report-result.v1.0.0 + +specialize + openEHR-EHR-COMPOSITION.report.v1 + +language + original_language = <[ISO_639-1::en]> + translations = < + ["ar-sy"] = < + language = <[ISO_639-1::ar-sy]> + author = < + ["name"] = <"Mona Saleh"> + > + > + > + +description + lifecycle_state = <"unmanaged"> + original_author = < + ["name"] = <"Heather Leslie"> + ["organisation"] = <"Ocean Informatics"> + ["email"] = <"heather.leslie@oceaninformatics.com"> + ["date"] = <"2012-12-11"> + > + copyright = <"© openEHR Foundation"> + details = < + ["ar-sy"] = < + language = <[ISO_639-1::ar-sy]> + purpose = <"نموذج جنيس (غير محدود الملكية) يحتوي على معلومات من أجل مشاركتها مع الجميع."> + use = <"يستخدم كنموذج جنيس (غير محدود الملكية) ليحتوي على المعلومات التي ينبغي مشاركتها مع الآخرين. و من الأمثلة المشهورة, توثيق الاستجابة لطلب معلومات, ناتج اختبار, الأنشطة التي تم إجراؤها أو الوقائع التي حدثت بالفعل. +و هو يمثل إحدى المكونات التي تتناسب مع السياق و يمكن استخدامه كشرفة في: +- إضافة محتوى اختياري أثناء إعداد القالب لدعم متطلبات محددة متعلقة بحالة الاستخدام. +- إضافة نماذج ديموغرافية على نمط السجل الطبي الإلكتروني, يمثل الأطراف المساهِمة. و في حين أن ذلك قد لا يكون مرغوبا فيه عند التشغيل, فإنه قد يكون من المفيد عرض كيف يمكن تمثيل المعلومات الديموغرافية في وقت التشغيل, بمعنى استخدامها كدعم لتجميع متطلبات المحتوى السريري أو مراجعة القالب. +و قد تم تعمد جعل مُكَوِّن المقاطع غير مقيد للوصول إلى الحد الأقصى لإعادة استخدام هذا النموذج."> + keywords = <"تقرير", ...> + misuse = <""> + > + ["en"] = < + language = <[ISO_639-1::en]> + purpose = <"Generic container archetype to carry information about the result of a test or assessment."> + use = <"Use as a generic archetype to carry information about the result of a test or assessment. Common result examples are: a pathology/laboratory test; an imaging examination test; or an audiogram hearing assessement. +The Context component contains an optional unnamed slot that can be used to: +- add optional content during templating to support a use-case specific requirements; +- add EHR model demographic archetypes representing participating parties. While this may not be desired at implementation, this can be useful to demonstrate how demographics may be represented in an implementation ie as a support to clinical content requirements gathering or template review. +The Sections component has been deliberately left unconstrained to maximise re-use of this archetype."> + keywords = <"report", "test", "result", "diagnostic", "audiogram", "tympanogram", "audiometry", "tympanography"> + misuse = <""> + > + > + other_contributors = <"Heath Frankel, Ocean Informatics, Australia", "Sam Heard, Ocean Informatics, Australia", "Sistine Barretto-Daniels, Ocean Informatics, Australia", "Hugh Leslie, Ocean Informatics, Australia", "Ian McNicoll, Ocean Informatics, Australia"> + other_details = < + ["current_contact"] = <"Heather Leslie, Ocean Informatics, heather.leslie@oceaninformatics.com"> + ["MD5-CAM-1.0.1"] = <"B5D462F35C25C47965DCD2DB991D7B48"> + > + +definition + COMPOSITION[id1.1] -- Result Report + +terminology + term_definitions = < + ["ar-sy"] = < + ["id1.1"] = < + text = <"*Result Report(en)"> + description = <"*Document to communicate information to others about the result of a test or assessment.(en)"> + > + > + ["en"] = < + ["id1.1"] = < + text = <"Result Report"> + description = <"Document to communicate information to others about the result of a test or assessment."> + > + > + > diff --git a/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.report.v1.adls b/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.report.v1.adls new file mode 100644 index 000000000..aeb761490 --- /dev/null +++ b/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-COMPOSITION.report.v1.adls @@ -0,0 +1,98 @@ +archetype (adl_version=2.0.5; rm_release=1.0.2; generated) + openEHR-EHR-COMPOSITION.report.v1.0.0 + +language + original_language = <[ISO_639-1::en]> + +description + lifecycle_state = <"unmanaged"> + original_author = < + ["name"] = <"Heather Leslie"> + ["organisation"] = <"Ocean Informatics"> + ["email"] = <"heather.leslie@oceaninformatics.com"> + ["date"] = <"2010-04-14"> + > + copyright = <"© openEHR"> + details = < + ["en"] = < + language = <[ISO_639-1::en]> + purpose = <"Generic container archetype to carry information that needs to be shared with others."> + use = <"Use as a generic archetype to carry information that needs to be shared with others. Common examples are: documenting a response to a request for information; the outcome of testing; activities that have been performed; or events that have occurred. +The Context component contains an optional unnamed slot that can be used to: +- add optional content during templating to support a use-case specific requirements; +- add EHR model demographic archetypes representing participating parties. While this may not be desired at implementation, this can be useful to demonstrate how demographics may be represented in an implementation ie as a support to clinical content requirements gathering or template review. +The Sections component has been deliberately left unconstrained to maximise re-use of this archetype."> + keywords = <"report", ...> + misuse = <""> + > + > + other_contributors = <"Heath Frankel, Ocean Informatics, Australia", "Sam Heard, Ocean Informatics, Australia", "Sistine Barretto-Daniels, Ocean Informatics, Australia", "Hugh Leslie, Ocean Informatics, Australia", "Ian McNicoll, Ocean Informatics, Australia"> + other_details = < + ["current_contact"] = <"Heather Leslie, Ocean Informatics, heather.leslie@oceaninformatics.com"> + ["references"] = <"Report, draft archetype, openEHR Foundation. “www.openEHR.org/knowledge.” openEHR Clinical Knowledge Manager. Authored: 14 Apr 2010. http://www.openehr.org/knowledge/OKM.html#showarchetype_1013.1.677 (accessed Dec 10, 2012)."> + ["MD5-CAM-1.0.1"] = <"C4DF25AE97563196F340F6BD8D8D05F7"> + > + +definition + COMPOSITION[id1] matches { -- Report + category matches { + DV_CODED_TEXT[id7] matches { + defining_code matches {[at1]} + } + } + context matches { + EVENT_CONTEXT[id8] matches { + other_context matches { + ITEM_TREE[id2] matches { + items matches { + ELEMENT[id3] occurrences matches {0..1} matches { -- Report ID + value matches { + DV_TEXT[id9] + } + } + ELEMENT[id6] occurrences matches {0..1} matches { -- Status + value matches { + DV_TEXT[id10] + } + } + allow_archetype CLUSTER[id11] matches { -- (added by post-parse processor) + include + archetype_id/value matches {/.*/} + } + } + } + } + } + } + } + +terminology + term_definitions = < + ["en"] = < + ["id1"] = < + text = <"Report"> + description = <"Document to communicate information to others, commonly in response to a request from another party."> + > + ["id3"] = < + text = <"Report ID"> + description = <"Identification information about the report."> + > + ["id6"] = < + text = <"Status"> + description = <"The status of the entire report. Note: This is not the status of any of the report components."> + > + ["at1"] = < + text = <"event"> + description = <"event"> + > + ["id11"] = < + text = <"(added by post-parse processor)"> + description = <"(added by post-parse processor)"> + > + > + > + term_bindings = < + ["openehr"] = < + ["at1"] = + > + > \ No newline at end of file diff --git a/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.blood_pressure.v1.adls b/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.blood_pressure.v1.adls new file mode 100644 index 000000000..65836d357 --- /dev/null +++ b/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.blood_pressure.v1.adls @@ -0,0 +1,3538 @@ +archetype (adl_version=2.0.5; rm_release=1.0.2; generated) + openEHR-EHR-OBSERVATION.blood_pressure.v1.0.0 + +language + original_language = <[ISO_639-1::en]> + translations = < + ["de"] = < + language = <[ISO_639-1::de]> + author = < + ["name"] = <"Sebastian Garde, Jasmin Buck"> + ["organisation"] = <"Ocean Informatics, University of Heidelberg"> + > + > + ["zh-cn"] = < + language = <[ISO_639-1::zh-cn]> + author = < + ["name"] = <"Chunlan Ma; Lin Zhang"> + ["organisation"] = <"Ocean Informatics; BIPH"> + ["email"] = <"chunlan.ma@oceaninformatics.com; linforest@163.com"> + > + > + ["ko"] = < + language = <[ISO_639-1::ko]> + author = < + ["name"] = <"Seung-Jong Yu"> + ["organisation"] = <"NOUSCO Co.,Ltd."> + ["email"] = <"seungjong.yu@gmail.com"> + > + accreditation = <"Certified Board of Family Medicine in South Korea"> + > + ["ar-sy"] = < + language = <[ISO_639-1::ar-sy]> + author = < + ["name"] = <"Mona Saleh"> + > + > + ["es-ar"] = < + language = <[ISO_639-1::es-ar]> + author = < + ["name"] = <"Domingo Liotta"> + ["organisation"] = <"Universidad de Morón"> + ["email"] = <"domingo_liotta@hotmail.com"> + > + accreditation = <"Universidad de Morón"> + > + ["fa"] = < + language = <[ISO_639-1::fa]> + author = < + ["name"] = <"Shahla Foozonkhah"> + ["organisation"] = <"Ocean Informatics"> + ["email"] = <"shahla.foozonkhah@oceaninformatics.com"> + > + > + ["ru"] = < + language = <[ISO_639-1::ru]> + author = < + ["name"] = <"Igor Lizunov"> + ["email"] = <"i.lizunov@infinnity.ru"> + > + > + ["es"] = < + language = <[ISO_639-1::es]> + author = < + ["name"] = <"Pablo Pazos"> + ["organisation"] = <"CaboLabs"> + > + accreditation = <"Computer Engineer"> + > + ["ja"] = < + language = <[ISO_639-1::ja]> + author = < + ["name"] = <"Shinji Kobayashi"> + ["organisation"] = <"Kyoto University"> + ["email"] = <"skoba@moss.gr.jp"> + > + > + ["nl"] = < + language = <[ISO_639-1::nl]> + author = < + ["name"] = <"Marja Buur"> + ["organisation"] = <"M.C.A."> + ["email"] = <"m.buur-krom@mca.nl"> + > + > + ["pt-br"] = < + language = <[ISO_639-1::pt-br]> + author = < + ["name"] = <"Jussara Rözsch"> + ["organisation"] = <"OpenEHR Foundation"> + ["email"] = <"jussara.macedo@gmail.com"> + > + accreditation = <"Medical Doctor, Psychiarist, Clinical Modeller, openEHR Diretor, ehealth infostructuture WG ccoordinator- brazilian ehealth program"> + > + > + +description + lifecycle_state = <"unmanaged"> + original_author = < + ["name"] = <"Sam Heard"> + ["organisation"] = <"Ocean Informatics"> + ["email"] = <"sam.heard@oceaninformatics.com"> + ["date"] = <"2006-03-22"> + > + copyright = <"© openEHR Foundation"> + details = < + ["ja"] = < + language = <[ISO_639-1::ja]> + purpose = <"個人の全身動脈血圧を記録するためのもの。"> + use = <"測定方法や身体部位を問わず、すべての血圧についての表現が記録するために使用される。このアーキタイプはすべての臨床シナリオを網羅することを目指している。たとえば、家庭用の血圧計で自己測定した血圧や、集中治療において機械的に計測された一連の血圧などである。 +患者の体位や運動、攻落する因子や研究におけるティルト台の角度を識別することにより、計測についての理解を手助けする豊富なステートモデルもある。 +指定されているイベントは、24時間平均血圧に制限されているが、テンプレートではデフォルトの「任意のイベント」にさらなる制約を加えることで、特定の時間や間隔にわたって(数学的機能を追加したり、削除して)、血圧を記録するように、血圧測定にタイする特定の要求を行うようにすることができる。"> + keywords = <"観察", "計測", "血圧", "バイタルサイン", "平均動脈圧", "脈圧", "収縮期", "拡張期", "RR間隔", "非観血血圧"> + misuse = <"静脈内圧のためには使用されない +全身に循環する動脈圧の代理としてではない、たとえば、右肺動脈の計測といった動脈圧の計測としては用いられない。 +このような場合には、関連した特殊化であるOBSERVATION.intravascular_pressureを利用すること。"> + > + ["de"] = < + language = <[ISO_639-1::de]> + purpose = <"Dient der Dokumentation des systemischen arteriellen Blutdrucks einer Person."> + use = <"Alle Blutdruckmessungen werden unter Zuhilfenahme dieses Archetypen dokumentiert, unabhängig davon, welche Methode oder Körperstelle zur Messung benutzt wurden. Der Archetyp dient der Dokumentation des Blutdrucks in alle klinischen Szenarien - z.B. durch eine Blutdruckmaschine zuhause; eine Notfallmessung durch Palpation und ein Sphygmomanometer; Messungen beim Hausarzt oder im Rahmen von Belastungstests; sowie einer Serie von Messungen durch eine Maschine auf der Intensivstation. +Der Archetyp beinhaltet ein umfassendes Status-Modell, das die Interpretation der Messung unterstützt, indem Position, Anstrengung, Einflussfaktoren, Neigungswinkel angegeben werden können. +Benannte Ereignisse wurden auf den 24-stündigen Durchschnitt beschränkt, jedoch können Templates jederzeit das standardmäßig vorhandene Ereignis ('any event') weiter einschränken, um spezifischen Anforderungen gerecht zu werden, wie z.B. der Messung zu bestimmten Zeitpunkten, oder über eine Anzahl von Intervallen (+/- mathematische Funktionen)."> + keywords = <"Beobachtungen", "Messungen", "Vitalparameter", "Mittlerer arterieller Druck", "Pulsdruck", "systolisch", "diastolisch", "RR", "Riva-Rocci", "NIBP"> + misuse = <"Nicht benutzen zur Dokumentation des intravenösen Drucks. +Nicht benutzen zur Dokumentation des arteriellen Blutdrucks, welcher KEIN Surrogat für den arteriellen Druck in der systemischen Zirkluation ist, z.B. die spezifische Messung des rechten pulmonaren Arteriendrucks. +In diesem Fall sollte der OBSERVATION.intravascular_pressure Archetyp bzw. dessen Spezialisierungen verwendet werden."> + > + ["zh-cn"] = < + language = <[ISO_639-1::zh-cn]> + purpose = <"旨在记录一个人的体循环血压(systemic blood pressure,全身血压,系统血压)。此测量结果原始型记录的是收缩压和舒张压,所采取的记录方式适合于视为代表全身体循环血压的结果。"> + use = <"用于记录体循环血压测量结果的所有表达形式,无论其用于记录结果的究竟是什么方法或身体位置。本原始型旨在采集所有临床场景下的血压测量结果;例如,采用家用血压测量仪进行的自助检测、采用触诊方法和血压计进行的收缩压紧急评估、临床会诊或运动负荷试验过程中进行的测量以及重症监护过程中利用仪器所完成的一系列测量。 +这是一个丰富的状态模型,支持通过确定患者体位、运动情况、干扰因素以及研究工作所采用的倾斜工作台的角度,来解释测量结果。 +具名事件(named events)仅限于24小时期间的均值;不过,可以利用模板来进一步约束默认的“any event”(任何事件),以满足关于血压测量的具体需要,诸如按具体的时间点(时刻)来记录血压,或者是记录为变化范围(+/-数学函数)。"> + keywords = <"观察", "观测", "观察指标", "观测指标", "观察结果", "观测结果", "观察项目", "观测项目", "检测", "测量", "测定", "检测指标", "测量指标", "测定指标", "检测结果", "测量结果", "测定结果", "检测项目", "测量项目", "测定项目", "血压", "blood pressure", "bp", "生命体征", "体征", "平均动脉压", "脉压", "脉搏压", "收缩压", "舒张压", "收缩期", "舒张期", "RR", "无创性测压法", "non-invasive blood pressure", "NIBP"> + misuse = <"并不用于静脉内血压。 +并不用于并非代表体循环动脉压的动脉血压的测量,如右肺动脉压的专用测量指标。 +在上述这两种情况下,请采用血管内压力观察指标原始型(OBSERVATION.intravascular_pressure)及相关的特化形式。"> + > + ["nl"] = < + language = <[ISO_639-1::nl]> + purpose = <"Het registreren van de systemische arteriele bloeddruk van een individu."> + use = <"Wordt gebruikt om alle weergaven van de systemische bloeddruk te registreren, ongeacht welke methode of welke lichaamslocatie is gebruikt om de meting te doen. Het archetype is bedoeld om bloeddruk metingen in alle klinische scenario's vast te leggen - bijvoorbeeld, zelf-meting met een thuis bloeddrukmeter; een nood beoordeling van de systolische bloeddruk met behulp van palpatie en een drukmanchet; metingen tijdens consulten, overleg of tijdens inspannings stress testen, en een reeks van metingen die door een apparaat zijn gedaan in de intensieve zorg. +Er is een uitgebreid status model dat interpretatie van metingen ondersteunt, door patiënt positie, inspanning, beïnvloedende factoren en de hoek/het aantal graden waarin de onderzoekstafel staat, te specificeren. +Genoemde gebeurtenissen zijn gelimiteerd tot een gemiddelde over een periode van 24 uur, maar templates kunnen de standaard 'iedere gebeurtenis' verder vernauwen om specifieke eisen voor de bloeddrukmeting, zoals registreren van de bloeddruk op een specifiek tijdsmoment, of over een reeks van intervallen (+/- statistisch gebruik) te faciliteren. +"> + keywords = <"observaties", "meting", "blddr", "vitale functies", "gemiddelde arteriele druk", "polsdruk", "systolisch", "diastolisch", "RR", "NIBP", "tensie"> + misuse = <"Niet te gebruiken voor intraveneuze druk. +Niet te gebruiken voor de meting van de arteriele bloeddruk welke geen surrogaat is voor de arteriele druk in de systemische circulatie, bv de specifieke meting van de rechter arterie pulmonalis druk. +Gebruik OBSERVATION.intravascular_pressure en gerelateerde specialisaties in beide situaties."> + > + ["ru"] = < + language = <[ISO_639-1::ru]> + purpose = <"Для записи системного артериального давления крови человека."> + use = <"Используется для записи всех представлений измерения системного артериального кровяного давления, независимо от используемого метода или расположения тела пациента. Архетип предназначен для записи измерений давления во всех клинических сценариях - например, самостоятельное измерение давления крови домашним автоматическим манометром, в чрезвычайной ситуации использование пальпации пульсовой волны и сфигмоманометр; измерений в ходе клинических консультаций или в ходе осуществления стресс-тестирования, а также серии измерений, выполненных аппаратом в реанимации. +Поддерживает интерпретацию измерений путем определения позиции пациента, физические упражнения, осложняющих факторов и угла наклона стола в научных исследованиях. +Предполаагется интервал между измерениями 24 часа, однако может быть дополнено событиями (по умолчанию \"любое событие\") для удовлетворения специфических требований для измерения кровяного давления, такие как записи в отношении кровяного давления конкретные моменты времени, или в диапазоне интервалов."> + keywords = <"обследование", "измерение", "артериальное давление", "диастолическое", "систолическое"> + misuse = <"Не следует использовать для внутривенного давления. +Не следует использовать для измерения артериального давления, которое не является суррогатом артериального давления в системном кровотоке, например, конкретные измерения давления в легочной артерии. +Использовать OBSERVATION.intravascular_pressure и смежных специальностей в обоих этих ситуациях. +"> + > + ["fa"] = < + language = <[ISO_639-1::fa]> + purpose = <"ثبت نمودن فشار خون وریدی کل یک فرد"> + use = <"برای ثبت هر چیز نشاندهنده اندازه گیری فشاره خون وریدی کل، جدا از ابنکه برای ثبت آن از چه شیوه ای یا کدام بخش از بدن استفاده شده باشد، بکار می رود. این الگوساز برای گردآوری اندازه گیری فشار خون در همه سناریوهای بالینی طراحی شده است، مانند اندازه گیری توسط خود فرد بوسیله دستگاه فشار خون خانگی، ارزیابی اورژانسی سیستولیک با لمس نبض و یک \"فشارسنج خون\"، اندازه گیریهای انجام گرفته در مشاوره بالینی یا حین تست ورزشی، و یا یک رشته از اندازه گیریهای دستگاه مراقبت های ویژه. +مدل حالت توانمندی وجود دارد که تفسیر اندازه گیری ها را از طریق شناسایی موقعیت بیمار، ورزش، فاکتورهای مبهم و تست تخت شیبدار، پشتیبانی می کند. +رویدادهای نام گذاری شده بگونه ای محدود شده اند که روی یک دوره 24 ساعته میانگین گیری کنند هر چند که الگو ها می توانند پیش فرض -هر گونه رویداد- را برای فراهم کردن خواسته های خاص از اندازه گیری فشار خون، با محدودیتهایی نظیر ثبت فشار خون سر وقت یا روی رنجی از فاصله های زمانی (با عمل جمع یا منها)، بیشتر محدود کنند +"> + keywords = <"مشاهدات", "اندازه گیری", "فشار خون", "علایم حیاتی", "میانگین فشار وریدی", "فشار نبض", "سیستولیک", "دیاستولیک", "تنفسهای سریع", "فشار خون غیر تهاجمی"> + misuse = <"برای فشار داخل وریدی استفاده نشود. +برای اندازه گیری فشار خون وریدی نباید استفاده شود که جایگزینی برای فشار وریدی در گردش خون کلی نیست، بعنوان مثال اندازه گیری خاص فشار وریدی ریه راست. + + و تخصص های مربوطه برای موارد بالا بکار رود\"OBSERVATION.intravascular_pressure\" + +"> + > + ["ar-sy"] = < + language = <[ISO_639-1::ar-sy]> + purpose = <"لتسجيل ضغط الدم الشرياني النظامي للشخص"> + use = <"يستخدم لتسجيل جميع طرق عرض ضغط الدم الشرايني النظامي, بغض النظر عن الطريقة أو الموضع من الجسم المستخدم في التسجيل. + +يستخدم هذا النموذج لالتقاط قياسات ضغط الدم في جميع السيناريوهات السريرية - مثلا, قياس ضغط الدم بواسطة الشخص لنفسه باستخدام آلة القياس المنزلية, تقييم الضغط الانقباضي في حالة الطوارئ باستخدام المجس و مقياس الضغط الزئبقي, القياسات التي تم أخذها في الاستشارات السريرية أو في أثناء اختبار الضغط البدني, و سلسلة من القياسات التي تتم باستخدام آلات العناية المركزة. + +يستخدم هذا النموذج الغني في تسجيل حالات القياس من خلال تفسيره في ضوء وضع المريض عند القياس, المجهود البدني, العوامل المربكة, و زاوية انحناء الطاولة المستخدمة عند القياس. + +تم تحديد بعض الوقائع إلى المتوسط خلال 24 ساعة, إلا أن القوالب تستطيع تقييد الاختيار التلقائي (إحدى الوقائع) لمتطلبات معينة حول قياسات ضغط الدم مثل تسجيل ضغط الدم في نقاط زمنية معينة أو خلال مدى من الفواصل الزمنية - زائد أو ناقص دوال حسابية"> + keywords = <"الملاحظات", "القياس", "ضغط الدم", "العلامات الحياتية", "متوسط الضغط الشرياني", "الضغط عند النبض", "الانقباضي", "الانبساطي", "معدل التنفس", "قياس ضغط الدم غير الباضع"> + misuse = <"لا يستخدم لتسجيل الضغط داخل الوريد. +لا يستخدم لقياس ضغط الدم الشرياني الذي لا يحل بديلا عن ضغط الدم الشرياني في الدورة الجهازية مثل قياسات معينة لضغط الشريان الرئوي الأيمن. +استخدم نموذج ملاحظة. الضغط داخل الأوعية الدموية , و التخصيصات المتعلقة في كل من هذين الموقفين."> + > + ["es-ar"] = < + language = <[ISO_639-1::es-ar]> + purpose = <"Registrar la presión arterial sistémica de un individuo"> + use = <"Usar para registrar todas las representaciones de la presión arterial sistémica, sin importar que método o localización del cuerpo se use para el registro. El arquetipo se usa para capturar la medida de la presión arterial en todos los escenarios clínicos - por ejemplo: automedición con un tensiómetro de uso domiciliario; la evaluación en situación de emergencia, de la sistólica usando palpación y un esfingomanómetro; medidas tomadas durante la consulta clínica o durante la prueba de esfuerzo (ergometría); y la serie de medidas automáticas hechas en la Unidad de Cuidados Intensivos. +Existe un variado modelo de situaciones que soporta la interpretación de mediciones a través de la interpretación de la posición del paciente, ejercicio, factores confluentes y el ángulo de inclinación de la camilla en situaciones de investigación. +Los eventos se han limitado a promediarse sobre un intervalo de 24 horas, sin embargo plantillas pueden acotar la medida por defecto 'cualquier evento' para ajustarse a requerimientos específicos de medida de la presión arterial como el Registro de la Tensión Arterial durante momentos específicos de tiempo, o sobre un rango de intervalos (+/- funciones matemáticas) + + "> + keywords = <"observaciones(sp)", "mediciones(sp)", "presión arterial(sp)", "signos vitales(sp)", "presión arterial media(sp)", "presión pulso(sp)", "sistólica(sp)", "diastólica(sp)", "RR(en)", "Presión Arterial No Invasiva(sp)", "PANI(sp)"> + misuse = <"No debe usarse para la presión intravenosa +No debe usarse para la medida de la presión arterial que NO deriva de la presión arterial de la circulación sistémica ej: la medida específica de la presión de la arteria Pulmonar (presión capilar) +Usen Observación.presión_intravascular y especializaciones relacionadas para estas dos situaciones en particular. +"> + > + ["pt-br"] = < + language = <[ISO_639-1::pt-br]> + purpose = <"Para registrar a pressão arterial sistêmica de um indivíduo."> + use = <"Usado para registrar todas as representações da medida da pressão areterial sistêmica, não importando qual método ou localização corporal usada para registrá-la. O objetivo do arquétipo é capturar a pressão sanguínea em todos os cenários clínicos - por exemplo, auto-medida com um aparelho de pressão caseiro; um avaliação de emergência da pressão sistólica usando palpação e esfigmomanômetro; medidas realizadas em consultas clínicas ou durante testes de esforço; e uma série de medidas feitas por uma máquina em uma Unidade de Terapia Intensiva. +Existe um modelo rico que apoia a interpretação de medidas através da identificação da posição do paciente, nível exercício, gatores confundidores e ângulo de uma mesa de inclinação em uma pesquisa. +Eventos nomeados têm sido limitados em médica a um período de 24 horas, entretanto templates podem, posteriormente, restringir o padrão predeterminado 'qualquer evento' para atender a requisitos específicos registro de medida de pressão sanguínea em pontos no tempo específicos, ou em faixas de intervalos (+/-funções matemáticas)."> + keywords = <"observações", "medidas", "PA", "pressão sanguínea", "sinais vitais", "Pressão arterial média", "Pressão de Pulso", "sistólica", "diástólica"> + misuse = <"Não deve ser usada para registrar pressão intravenosa. +Não deve ser usada para medida da pressão arterial que NÃO é um substituto da pressão arterial na circulação sistêmica, por exemplo, medida específica da pressão da artéria Pulmonar direita. +Em ambas situações use OBSERVATION.intravascular_pressure e especializações relacionadas."> + > + ["ko"] = < + language = <[ISO_639-1::ko]> + purpose = <"개인의 체동맥혈압 기록"> + use = <"전신 동맥혈압측정의 모든 표현들을 저장하는데 사용, 어떤 방법 또는 신체부위와 관계없이 기록하는데 사용된다. 이 archetype은 모든 임상 시나리오에서 동맥혈압을 획득하기 위한 것이다 - 예를 들어, 가정 혈압기기를 이용한 자가 측정; 타진과 혈압계를 이용한 수축기의 응급평가; 임상 의뢰 또는 운동부하검사에서의 측정; 그리고 중환자실에서 기계에 의한 일련의 측정. + +여기에는 환자 자세, 운동, 혼란 변수 그리고 연구에서 틸트테이블의 각도를 통한 측정의 해석을 지원하는 풍부한 상태 모델(state model)이 있음. + +명명된 events는 24시간 동안의 평균에 제한되어 있지만 templates는 특정 시각 또는 기간(+/- 수학 함수)에 대한 혈압의 기록과 같은 혈압 측정을 위한 특정한 요구사항을 제공하기 위해서 default 'any event'에 추가적인 constrain을 할 수 있음."> + keywords = <"*관찰(ko)", "*측정(ko)", "*혈압(ko)", "*생체징후(ko)", "*평균 동맥 혈압(ko)", "*맥압(ko)", "*수축기의(ko)", "*이완기의(ko)", "*호흡수(ko)", "*비침습적 혈압(ko)"> + misuse = <"정맥혈압 측정을 위해서 사용되지 않음. + +예를 들어 우폐동맥압과 같은 특별한 측정과 같이 체순환에서의 동맥압을 대신하지 않는 동맥혈압의 측정을 위해 사용되지 않음. + +위의 2가지 상황에서는 OBSERVATION.intravascular_pressure와 관련된 specialisations를 사용해야 함."> + > + ["en"] = < + language = <[ISO_639-1::en]> + purpose = <"To record the systemic arterial blood pressure of an individual."> + use = <"Use to record all representations of systemic arterial blood pressure measurement, no matter which method or body location is used to record it. The archetype is intended to capture blood pressure measurements in all clinical scenarios - for example, self-measurement with a home blood pressure machine; an emergency assessment of systolic using palpation and a sphygmomanometer; measurements taken in clinical consultations or during exercise stress testing; and a series of measurements made by a machine in Intensive Care. +There is a rich state model that supports interpretation of measurements through identifying patient position, exercise, confounding factors and angle of a tilt table in research. +Named events have been limited to average over a 24 hour period, however templates can further constrain the default 'any event' to cater for specific requirements for blood pressure measurements such as recording Blood Pressure against specific points in time, or over a range of intervals (+/- mathematical functions)."> + keywords = <"observations", "measurement", "bp", "vital signs", "mean arterial pressure", "pulse pressure", "systolic", "diastolic", "RR", "NIBP"> + misuse = <"Not to be used for intravenous pressure. +Not to be used for the measurement of arterial blood pressure which is NOT a surrogate for arterial pressure in the systemic circulation eg specific measurement of right Pulmonary artery pressure. +Use OBSERVATION.intravascular_pressure and related specialisations in both of these situations."> + > + ["es"] = < + language = <[ISO_639-1::es]> + purpose = <"Registro de la presión arterial de un paciente."> + use = <"Registro de la presión arterial independientemente del método y localización de la zona de la medida, para cualquier escenario clínico."> + keywords = <"observaciones", "medidas", "pa", "pas", "pad", "signos vitales", "presión arterial", "presión del pulso", "sistólica", "diastólica"> + misuse = <"No se debe usar para presión intravenosa. + +No se debe usar para presión arterial que no sea sistémica, por ejemplo presión de la arteria pulmonar derecha. + +En estos casos utilizar el arquetipo OBSERVATION.intravascular_pressure."> + > + > + other_contributors = <"Koray Atalag, University of Auckland, New Zealand", "Knut Bernstein, MEDIQ, Denmark", "Marja Buur, Medisch Centrum Alkmaar, Netherlands", "Rong Chen, Cambio Healthcare Systems, Sweden", "Beatriz de Faria Leão, Zilics, Brazil", "Paul Donaldson, Nursing Informatics Australia, Australia", "Jose Florez Arango, Universidad de Antioquia, Colombia", "Gerard Freriks, ERC, Netherlands", "Sebastian Garde, Ocean Informatics, Germany", "Anneke Goossen, Results 4 Care, Netherlands", "Sam Heard, Ocean Informatics, Australia", "Karsten Heusser, Hannover Medical School, Germany", "Omer Hotomaroglu, Turkey", "Evelyn Hovenga, EJSH Consulting, Australia", "Derek Hoy, United Kingdom", "Pieter Hummel, Medisch Centrum Alkmaar, Netherlands", "Eugene Igras, IRIS Systems, Inc., Canada", "Sundaresan Jagannathan, Scottish NHS, United Kingdom", "Andrew James, University of Toronto, Canada", "Heather Leslie, Ocean Informatics, Australia (Editor)", "Rikard Lovstrom, Swedish Medical Association, Sweden", "Rohan Martin, Ambulance Victoria, Australia", "Ian McNicoll, Ocean Informatics, United Kingdom", "Jeroen Meintjens, Medisch Centrum Alkmaar, Netherlands", "Udo Müller-Oest, CompuGROUP Software, Germany", "Melvin Reynolds, United Kingdom", "Tony Shannon, NHS, United Kingdom", "Hwei-Yee Tai, Tan Tock Seng Hospital, Singapore", "Stef Verlinden, Vivici, Netherlands", "Soon Ghee Yap, Singapore Health Services Pte Ltd, Singapore"> + other_details = < + ["references"] = <"O'Brien E, Asmar R, Beilin L, et al. European Society of Hypertension recommendations for conventional, ambulatory and home blood pressure measurement. Journal of Hypertension [Internet]. 2003 [cited 2009 Jul 30] ; 21(5):821-848. Available from http://www.bhsoc.org/bp_monitors/ESH_BP_rec.pdf + +Perloff D, Grim C, Flack J, Frohlich ED, Hill M, McDonald M, Morgenstern BZ. Human blood pressure determination by sphygmomanometry. Circulation [Internet]. 1993 [cited 2009 Jul 29] 88 (5): 2460. Available from: http://circ.ahajournals.org/cgi/reprint/88/5/2460"> + ["MD5-CAM-1.0.1"] = <"653044FE0EB159F0878054D17E0160F7"> + > + +definition + OBSERVATION[id1] matches { -- Blood Pressure + data matches { + HISTORY[id2] matches { -- history + events cardinality matches {1..*; unordered} matches { + EVENT[id7] occurrences matches {0..*} matches { -- any event + data matches { + ITEM_TREE[id4] matches { + items matches { + ELEMENT[id5] occurrences matches {0..1} matches { -- Systolic + value matches { + DV_QUANTITY[id1054] matches { + property matches {[at1055]} + magnitude matches {|0.0..<1000.0|} + precision matches {0} + units matches {"mm[Hg]"} + } + } + } + ELEMENT[id6] occurrences matches {0..1} matches { -- Diastolic + value matches { + DV_QUANTITY[id1055] matches { + property matches {[at1055]} + magnitude matches {|0.0..<1000.0|} + precision matches {0} + units matches {"mm[Hg]"} + } + } + } + ELEMENT[id1007] occurrences matches {0..1} matches { -- Mean Arterial Pressure + value matches { + DV_QUANTITY[id1056] matches { + property matches {[at1055]} + magnitude matches {|0.0..<1000.0|} + precision matches {0} + units matches {"mm[Hg]"} + } + } + } + ELEMENT[id1008] occurrences matches {0..1} matches { -- Pulse Pressure + value matches { + DV_QUANTITY[id1057] matches { + property matches {[at1055]} + magnitude matches {|0.0..<1000.0|} + precision matches {0} + units matches {"mm[Hg]"} + } + } + } + ELEMENT[id34] occurrences matches {0..1} matches { -- Comment + value matches { + DV_TEXT[id1058] + } + } + } + } + } + state matches { + ITEM_TREE[id8] matches { + items matches { + ELEMENT[id9] occurrences matches {0..1} matches { -- Position + value matches { + DV_CODED_TEXT[id1059] matches { + defining_code matches {[ac1; at1002]} -- Position (synthesised) + } + } + } + ELEMENT[id1053] occurrences matches {0..1} matches { -- Confounding factors + value matches { + DV_TEXT[id1060] + } + } + allow_archetype CLUSTER[id1031] occurrences matches {0..1} matches { -- Exertion + include + archetype_id/value matches {/openEHR-EHR-CLUSTER\.level_of_exertion(-a-zA-Z0-9_]+)*\.v1/} + } + ELEMENT[id1044] occurrences matches {0..1} matches { -- Sleep status + value matches { + DV_CODED_TEXT[id1061] matches { + defining_code matches {[ac2; at1045]} -- Sleep status (synthesised) + } + } + } + ELEMENT[id1006] occurrences matches {0..1} matches { -- Tilt + value matches { + DV_QUANTITY[id1062] matches { + property matches {[at1056]} + magnitude matches {|-90.0..90.0|} + precision matches {0} + units matches {"°"} + } + } + } + } + } + } + } + INTERVAL_EVENT[id1043] occurrences matches {0..1} matches { -- 24 hour average + math_function matches { + DV_CODED_TEXT[id1063] matches { + defining_code matches {[at1057]} + } + } + width matches { + DV_DURATION[id1064] matches { + value matches {PT24H} + } + } + data matches { + use_node ITEM_TREE[id1065] /data[id2]/events[id7]/data[id4] -- /data[history]/events[any event]/data[id4] + } + state matches { + use_node ITEM_TREE[id1066] /data[id2]/events[id7]/state[id8] -- /data[history]/events[any event]/state[id8] + } + } + } + } + } + protocol matches { + ITEM_TREE[id12] matches { -- Tree + items matches { + ELEMENT[id14] occurrences matches {0..1} matches { -- Cuff size + value matches { + DV_CODED_TEXT[id1067] matches { + defining_code matches {[ac3]} -- Cuff size (synthesised) + } + } + } + CLUSTER[id1034] occurrences matches {0..1} matches { -- Location + items matches { + ELEMENT[id15] occurrences matches {0..1} matches { -- Location of measurement + value matches { + DV_CODED_TEXT[id1068] matches { + defining_code matches {[ac4]} -- Location of measurement (synthesised) + } + } + } + ELEMENT[id1035] occurrences matches {0..1} matches { -- Specific location + value matches { + DV_TEXT[id1069] + } + } + } + } + ELEMENT[id1036] occurrences matches {0..1} matches { -- Method + value matches { + DV_CODED_TEXT[id1070] matches { + defining_code matches {[ac5]} -- Method (synthesised) + } + } + } + ELEMENT[id1039] occurrences matches {0..1} matches { -- Mean Arterial Pressure Formula + value matches { + DV_TEXT[id1071] + } + } + ELEMENT[id1011] occurrences matches {0..1} matches { -- Diastolic endpoint + value matches { + DV_CODED_TEXT[id1072] matches { + defining_code matches {[ac6]} -- Diastolic endpoint (synthesised) + } + } + } + allow_archetype CLUSTER[id1026] occurrences matches {0..1} matches { -- Device + include + archetype_id/value matches {/openEHR-EHR-CLUSTER\.device(-a-zA-Z0-9_]+)*\.v1/} + } + } + } + } + } + +terminology + term_definitions = < + ["en"] = < + ["id1"] = < + text = <"Blood Pressure"> + description = <"The local measurement of arterial blood pressure which is a surrogate for arterial. pressure in the systemic circulation. Most commonly, use of the term 'blood pressure' refers to measurement of brachial artery pressure in the upper arm."> + > + ["id2"] = < + text = <"history"> + description = <"History Structural node."> + > + ["id5"] = < + text = <"Systolic"> + description = <"Peak systemic arterial blood pressure - measured in systolic or contraction phase of the heart cycle."> + > + ["id6"] = < + text = <"Diastolic"> + description = <"Minimum systemic arterial blood pressure - measured in the diastolic or relaxation phase of the heart cycle."> + > + ["id7"] = < + text = <"any event"> + description = <"Default event."> + > + ["id9"] = < + text = <"Position"> + description = <"The position of the subject at the time of measurement."> + > + ["id12"] = < + text = <"Tree"> + description = <"List structure."> + > + ["id14"] = < + text = <"Cuff size"> + description = <"The size of the cuff used for blood pressure measurement."> + > + ["id15"] = < + text = <"Location of measurement"> + description = <"Common body sites where blood pressure is recorded."> + > + ["at16"] = < + text = <"Adult Thigh"> + description = <"A cuff used for an adult thigh - bladder approx 20cm x 42cm."> + > + ["at17"] = < + text = <"Large Adult"> + description = <"A cuff for adults with larger arms - bladder approx 16cm x 38cm."> + > + ["at18"] = < + text = <"Adult"> + description = <"A cuff that is standard for an adult - bladder approx 13cm x 30cm."> + > + ["at26"] = < + text = <"Right arm"> + description = <"The right arm of the person."> + > + ["at27"] = < + text = <"Left arm"> + description = <"The left arm of the person."> + > + ["at28"] = < + text = <"Right thigh"> + description = <"The right thigh of the person."> + > + ["at29"] = < + text = <"Left thigh"> + description = <"The left thigh of the person."> + > + ["id34"] = < + text = <"Comment"> + description = <"Comment on blood pressure measurement."> + > + ["at1001"] = < + text = <"Standing"> + description = <"Standing at the time of blood pressure measurement."> + > + ["at1002"] = < + text = <"Sitting"> + description = <"Sitting (for example on bed or chair) at the time of blood pressure measurement."> + > + ["at1003"] = < + text = <"Reclining"> + description = <"Reclining at the time of blood pressure measurement."> + > + ["at1004"] = < + text = <"Lying"> + description = <"Lying flat at the time of blood pressure measurement."> + > + ["id1006"] = < + text = <"Tilt"> + description = <"The craniocaudal tilt of the surface on which the person is lying at the time of measurement."> + > + ["id1007"] = < + text = <"Mean Arterial Pressure"> + description = <"The average arterial pressure that occurs over the entire course of the heart contraction and relaxation cycle."> + > + ["id1008"] = < + text = <"Pulse Pressure"> + description = <"The difference between the systolic and diastolic pressure."> + > + ["at1009"] = < + text = <"Small Adult"> + description = <"A cuff used for a small adult - bladder approx 10cm x 24cm."> + > + ["at1010"] = < + text = <"Paediatric/Child"> + description = <"A cuff that is appropriate for a child or adult with a thin arm - bladder approx 8cm x 21cm."> + > + ["id1011"] = < + text = <"Diastolic endpoint"> + description = <"Record which Korotkoff sound is used for determining diastolic pressure using auscultative method."> + > + ["at1012"] = < + text = <"Phase IV"> + description = <"The fourth Korotkoff sound is identified as an abrupt muffling of sounds."> + > + ["at1013"] = < + text = <"Phase V"> + description = <"The fifth Korotkoff sound is identified by absence of sounds as the cuff pressure drops below the diastolic blood pressure."> + > + ["at1015"] = < + text = <"Lying with tilt to left"> + description = <"Lying flat with some lateral tilt, usually angled towards the left side. Commonly required in the last trimester of pregnancy to relieve aortocaval compression."> + > + ["at1019"] = < + text = <"Infant"> + description = <"A cuff used for infants - bladder approx 5cm x 15cm."> + > + ["at1020"] = < + text = <"Neonatal"> + description = <"A cuff used for a neonate, assuming cuff is the appropriate size for maturity and birthweight of the neonate."> + > + ["at1021"] = < + text = <"Right wrist"> + description = <"The right wrist of the subject."> + > + ["at1022"] = < + text = <"Left wrist"> + description = <"The left wrist of the subject."> + > + ["id1026"] = < + text = <"Device"> + description = <"Details about sphygmomanometer or other device used to measure the blood pressure."> + > + ["at1027"] = < + text = <"Right ankle"> + description = <"The right ankle of the subject."> + > + ["id1031"] = < + text = <"Exertion "> + description = <"Details about physical activity undertaken at the time of blood pressure.measurement."> + > + ["at1032"] = < + text = <"Left ankle"> + description = <"The left ankle of the subject."> + > + ["at1033"] = < + text = <"Finger"> + description = <"A finger of the subject. Identification of the finger can be recorded in 'Specific Location' data element, if required."> + > + ["id1034"] = < + text = <"Location"> + description = <"Body location where blood pressure is measured. Use 'Location of measurement' to select from common sites. Use 'Specific location' to record more specific details or a site that is not in the common set or to refer to an external terminology."> + > + ["id1035"] = < + text = <"Specific location"> + description = <"Specific details about the body site where blood pressure is recorded."> + > + ["id1036"] = < + text = <"Method"> + description = <"Method of measurement of blood pressure."> + > + ["at1037"] = < + text = <"Auscultation"> + description = <"Method of measuring blood pressure externally, using a stethoscope and Korotkoff sounds."> + > + ["at1038"] = < + text = <"Palpation"> + description = <"Method of measuring blood pressure externally, using palpation (usually of the brachial or radial arteries)."> + > + ["id1039"] = < + text = <"Mean Arterial Pressure Formula"> + description = <"Formula used to calculate the MAP (if recorded in data)."> + > + ["at1040"] = < + text = <"Machine"> + description = <"Method of measuring blood pressure externally, using a blood pressure machine."> + > + ["at1041"] = < + text = <"Invasive"> + description = <"Method of measuring blood pressure internally ie involving penetration of the skin and measuring inside blood vessels."> + > + ["id1043"] = < + text = <"24 hour average "> + description = <"Estimate of the average blood pressure over a 24 hour period."> + > + ["id1044"] = < + text = <"Sleep status"> + description = <"Sleep status - supports interpretation of 24 hour ambulatory blood pressure records."> + > + ["at1045"] = < + text = <"Alert & awake"> + description = <"Subject is fully conscious."> + > + ["at1046"] = < + text = <"Sleeping"> + description = <"Subject is in the natural state of bodily rest."> + > + ["at1052"] = < + text = <"Toe"> + description = <"A toe of the subject. Identification of the toe can be recorded in 'Specific Location' data element, if required."> + > + ["id1053"] = < + text = <"Confounding factors"> + description = <"Comment on and record other incidental factors that may be contributing to the blood pressure measurement. For example, level of anxiety or 'white coat syndrome'; pain or fever; changes in atmospheric pressure etc."> + > + ["at1054"] = < + text = <"Intra-arterial"> + description = <"Invasive measurement via transducer access line within an artery. Location of the transducer can be recorded in 'Specific Location' data element, if required."> + > + ["at1055"] = < + text = <"Pressure"> + description = <"Pressure"> + > + ["at1056"] = < + text = <"Angle, plane"> + description = <"Angle, plane"> + > + ["at1057"] = < + text = <"mean"> + description = <"mean"> + > + ["ac1"] = < + text = <"Position (synthesised)"> + description = <"The position of the subject at the time of measurement. (synthesised)"> + > + ["ac2"] = < + text = <"Sleep status (synthesised)"> + description = <"Sleep status - supports interpretation of 24 hour ambulatory blood pressure records. (synthesised)"> + > + ["ac3"] = < + text = <"Cuff size (synthesised)"> + description = <"The size of the cuff used for blood pressure measurement. (synthesised)"> + > + ["ac4"] = < + text = <"Location of measurement (synthesised)"> + description = <"Common body sites where blood pressure is recorded. (synthesised)"> + > + ["ac5"] = < + text = <"Method (synthesised)"> + description = <"Method of measurement of blood pressure. (synthesised)"> + > + ["ac6"] = < + text = <"Diastolic endpoint (synthesised)"> + description = <"Record which Korotkoff sound is used for determining diastolic pressure using auscultative method. (synthesised)"> + > + > + ["ja"] = < + ["id1"] = < + text = <"血圧"> + description = <"全身に循環する動脈圧を示すものとして,局所で測定される血圧。一般的には「血圧」とは上腕で上腕動脈を測定したものをさすことが多い。"> + > + ["id2"] = < + text = <"history"> + description = <"history 構造ノード"> + > + ["id5"] = < + text = <"収縮期"> + description = <"1つ以上の脈の間で最高値を示す全身の動脈圧 - 心機図の収縮期で測定される"> + > + ["id6"] = < + text = <"拡張期"> + description = <"1つ以上の脈の間で最低値を示す全身の動脈圧 - 心機図の拡張期で測定される"> + > + ["id7"] = < + text = <"任意のイベント"> + description = <"デフォルトのイベント"> + > + ["id9"] = < + text = <"体位"> + description = <"計測のときの対象者の体位"> + > + ["id12"] = < + text = <"list構造"> + description = <"list構造"> + > + ["id14"] = < + text = <"カフサイズ"> + description = <"血圧測定のために使われるカフの大きさ."> + > + ["id15"] = < + text = <"計測部位"> + description = <"血圧が一般的に測定される身体の部位"> + > + ["at16"] = < + text = <"成人大腿"> + description = <"成人の大腿で血圧を測定するためのカフ。袋の大きさはおよそ 20cm x 42cm."> + > + ["at17"] = < + text = <"大柄な成人"> + description = <"大柄な成人のためのカフ。 袋の大きさはおよそ 16cm x 38cm."> + > + ["at18"] = < + text = <"成人"> + description = <"一般的な成人のためのカフ - 袋の大きさはおよそ 13cm x 30cm."> + > + ["at26"] = < + text = <"右腕"> + description = <"人の右腕"> + > + ["at27"] = < + text = <"左腕"> + description = <"人の左腕"> + > + ["at28"] = < + text = <"右大腿"> + description = <"人の右大腿"> + > + ["at29"] = < + text = <"左大腿"> + description = <"人の左大腿。"> + > + ["id34"] = < + text = <"コメント"> + description = <"血圧測定のコメント"> + > + ["at1001"] = < + text = <"立位"> + description = <"血圧測定時に立位でいること。"> + > + ["at1002"] = < + text = <"座位"> + description = <"血圧測定時に(たとえば、ベッドやいすの上で)坐位でいること。"> + > + ["at1003"] = < + text = <"斜位"> + description = <"血圧測定時に斜位でいること。"> + > + ["at1004"] = < + text = <"臥位"> + description = <"血圧測定時に臥位でいること。"> + > + ["id1006"] = < + text = <"ティルト"> + description = <"血圧測定時に個人の体表面が頭尾方向に傾斜しているということ。"> + > + ["id1007"] = < + text = <"平均同脈圧"> + description = <"縮拡張サイクルのすべての過程における動脈圧の平均値."> + > + ["id1008"] = < + text = <"脈圧"> + description = <"1回の収縮サイクルでの血圧の変動"> + > + ["at1009"] = < + text = <"小柄な成人"> + description = <"小柄な成人のためのカフ - 袋の大きさはおよそ 10cm x 24cm."> + > + ["at1010"] = < + text = <"幼児/省に"> + description = <"小児あるいは痩せた成人のためのカフ - 袋の大きさはおよそ 8cm x 21cm."> + > + ["id1011"] = < + text = <"拡張期終末"> + description = <"拡張期圧を決めるためにどのコロトコフ音が使用されたかについて記録."> + > + ["at1012"] = < + text = <"4期"> + description = <"コロトコフの4音。急速に減弱する時期."> + > + ["at1013"] = < + text = <"5期"> + description = <"コロトコフの5音が聴取される時期。カフ圧が拡張期圧を下回り音が聴取されなくなる時期"> + > + ["at1015"] = < + text = <"左側臥位"> + description = <"側臥位 通常は左側 通常は妊娠最終トリメスタで必要となる体位。一般的には妊娠の第3トリメスターで大動脈・静脈を圧排から解放するために求められる体位である。"> + > + ["at1019"] = < + text = <"幼児"> + description = <"幼児のために使われるカフ - 袋の大きさはおよそ 5cm x 15cm."> + > + ["at1020"] = < + text = <"新生児"> + description = <"新生児用のカフ 想定されるカフは新生児の生下時体重と成熟度に応じて適切なものであること."> + > + ["at1021"] = < + text = <"右手首"> + description = <"対象の右手首"> + > + ["at1022"] = < + text = <"左手首"> + description = <"対象の左手首"> + > + ["id1026"] = < + text = <"測定機器"> + description = <"水銀血圧計あるいはそのほかの血圧を測定するために使われる機器."> + > + ["at1027"] = < + text = <"右足首"> + description = <"対象の右足首"> + > + ["id1031"] = < + text = <"労作"> + description = <"血圧測定時に行われた肉体的運動についての詳細。"> + > + ["at1032"] = < + text = <"左足首"> + description = <"対象の左足首"> + > + ["at1033"] = < + text = <"指"> + description = <"対象の指。指の識別は必要であれば「特定部位」エレメントで記録される"> + > + ["id1034"] = < + text = <"部位"> + description = <"血圧測定を行った体の部位。「測定部位」を一般的な場所では利用する。「特定部位」はより詳細に部位を特定したり、外部のターミノロジーや一般的な用語にはない部位を指すために用いる。"> + > + ["id1035"] = < + text = <"特定部位"> + description = <"血圧が測定される場所についての詳細な記録."> + > + ["id1036"] = < + text = <"方法"> + description = <"血圧を測定する方法。"> + > + ["at1037"] = < + text = <"聴診"> + description = <"聴診器を使いコロトコフ音で外部から血圧を測定する方法."> + > + ["at1038"] = < + text = <"触診"> + description = <"脈拍(通常は上腕動脈あるいは橈骨動脈)を触診することにより外部から血圧を測定する方法"> + > + ["id1039"] = < + text = <"平均同脈圧の計算式"> + description = <"平均同脈圧を計算するために使われた式(もしデータに記録されていれば)"> + > + ["at1040"] = < + text = <"機械"> + description = <"血圧測定器を使って外部から血圧を測定する方法."> + > + ["at1041"] = < + text = <"侵襲的"> + description = <"経皮的に動脈を穿刺し,血管内部から血圧を測定する方法."> + > + ["id1043"] = < + text = <"24時間平均"> + description = <"24時間にわたる推定平均血圧"> + > + ["id1044"] = < + text = <"睡眠状況"> + description = <"睡眠状況 24時間外来血圧記録の解釈を助けるため"> + > + ["at1045"] = < + text = <"覚醒"> + description = <"対象は完全に意識がある。"> + > + ["at1046"] = < + text = <"睡眠中"> + description = <"対象は自然な休養状態にある"> + > + ["at1052"] = < + text = <"足先"> + description = <"対象の足尖部。足尖部の識別は必要であれば「特定部位」エレメントに記録される"> + > + ["id1053"] = < + text = <"交絡因子"> + description = <"血圧測定に寄与しうるその他の偶発的な要素についてのコメント。たとえば、不安の程度や「白衣性高血圧」、痛みや怒り、大気圧の変化など。"> + > + ["at1054"] = < + text = <"動脈内"> + description = <"動脈内のトランスデューサーに接続されたラインから侵襲的に測定する方法。動脈の部位は必要であれば「特定部位」エレメントに記録される"> + > + ["at1055"] = < + text = <"*Pressure (en)"> + description = <"*Pressure (en)"> + > + ["at1056"] = < + text = <"*Angle, plane (en)"> + description = <"*Angle, plane (en)"> + > + ["at1057"] = < + text = <"*mean (en)"> + description = <"*mean (en)"> + > + ["ac1"] = < + text = <"体位 (synthesised)"> + description = <"計測のときの対象者の体位 (synthesised)"> + > + ["ac2"] = < + text = <"睡眠状況 (synthesised)"> + description = <"睡眠状況 24時間外来血圧記録の解釈を助けるため (synthesised)"> + > + ["ac3"] = < + text = <"カフサイズ (synthesised)"> + description = <"血圧測定のために使われるカフの大きさ. (synthesised)"> + > + ["ac4"] = < + text = <"計測部位 (synthesised)"> + description = <"血圧が一般的に測定される身体の部位 (synthesised)"> + > + ["ac5"] = < + text = <"方法 (synthesised)"> + description = <"血圧を測定する方法。 (synthesised)"> + > + ["ac6"] = < + text = <"拡張期終末 (synthesised)"> + description = <"拡張期圧を決めるためにどのコロトコフ音が使用されたかについて記録. (synthesised)"> + > + > + ["de"] = < + ["id1"] = < + text = <"Blutdruck"> + description = <"Die lokale Messung des arteriellen Blutdrucks als Surrogat für den arteriellen Druck in der systemischen Zirkulation. Häufig wird der Ausdruck 'Blutdruck' zur Bezeichung der Messung des brachialen Ateriendrucks im Oberarm verwendet."> + > + ["id2"] = < + text = <"Historie"> + description = <"Historie"> + > + ["id5"] = < + text = <"Systolisch"> + description = <"Der höchste arterielle Blutdruck eines Zyklus - gemessen in der systolischen oder Kontraktionsphase des Herzens."> + > + ["id6"] = < + text = <"Diastolisch"> + description = <"Der minimale systemische arterielle Blutdruck eines Zyklus - gemessen in der diastolischen oder Entspannungsphase des Herzens."> + > + ["id7"] = < + text = <"any event"> + description = <"Default event"> + > + ["id9"] = < + text = <"Position"> + description = <"Die Position der untersuchten Person während der Messung."> + > + ["id12"] = < + text = <"Listenstruktur"> + description = <"Listenstruktur"> + > + ["id14"] = < + text = <"Manschettengröße"> + description = <"Die Größe der Manschette, die zur Blutdruckmessung benutzt wurde."> + > + ["id15"] = < + text = <"Körperstelle der Messung"> + description = <"Gewöhnliche Körperstellen, an denen der Blutdruck gemessen wird."> + > + ["at16"] = < + text = <"Oberschenkel eines Erwachsenen"> + description = <"Eine Manschette für den Oberschenkel eines Erwachsenen - ca. 20cm x 42cm."> + > + ["at17"] = < + text = <"Großer Erwachsener"> + description = <"Eine Manschette für Erwachsene mit größeren Armen - ca. 16cm x 38cm."> + > + ["at18"] = < + text = <"Erwachsener"> + description = <"Eine Standard-Manschette für einen Erwachsenen - ca. 13cm x 30cm."> + > + ["at26"] = < + text = <"Rechter Arm"> + description = <"Der rechte Arm der Person."> + > + ["at27"] = < + text = <"Linker Arm"> + description = <"Der linke Arm der Person."> + > + ["at28"] = < + text = <"Rechter Oberschenkel"> + description = <"Der rechte Oberschenkel der Person."> + > + ["at29"] = < + text = <"Linker Oberschenkel"> + description = <"Der linke Oberschenkel der Person."> + > + ["id34"] = < + text = <"Kommentar"> + description = <"Kommentar zur Blutdruckmessung."> + > + ["at1001"] = < + text = <"Stehend"> + description = <"Stehend zum Zeitpunkt der Blutdruckmessung."> + > + ["at1002"] = < + text = <"Sitzend"> + description = <"Sitzend zum Zeitpunkt der Blutdruckmessung (z.B. auf einem Bett oder Stuhl)."> + > + ["at1003"] = < + text = <"Zurückgelehnt"> + description = <"Patient zurückgelehnt zum Zeitpunkt der Blutdruckmessung."> + > + ["at1004"] = < + text = <"Liegend"> + description = <"Flach liegend zum Zeitpunkt der Blutdruckmessung."> + > + ["id1006"] = < + text = <"Neigung"> + description = <"Die cranio-kaudale Neigung der Oberfläche auf der die Person zum Zeitpunkt der Messung liegt."> + > + ["id1007"] = < + text = <"Mittlerer arterieller Druck"> + description = <"Der mittlerer arterielle Druck über den gesamten Verlauf der Konktraktions- und Entspannungsphase des Herzens."> + > + ["id1008"] = < + text = <"Pulsdruck"> + description = <"Der Abstand zwischen dem systolischen und dem diastolischen Blutdruckwert."> + > + ["at1009"] = < + text = <"Kleiner Erwachsener"> + description = <"Eine Manschette für einen kleinen Erwachsenen - ca. 10cm x 24cm."> + > + ["at1010"] = < + text = <"Pädiatrisch/Kind"> + description = <"Eine Manschette für ein Kind oder auch einen Erwachsenen mit einem schmalen Arm - 8cm x 21cm."> + > + ["id1011"] = < + text = <"Diastolischer Endpunkt"> + description = <"Dient der Dokumentation des Korotkoff-Geräusches, das verwendet wird, um bei auskultarischer Messung den diastolischen Blutdruck zu bestimmen."> + > + ["at1012"] = < + text = <"Phase IV"> + description = <"Das 4. Korotkoff-Geräusch - Die Geräusche klingen plätzlich gedämpft."> + > + ["at1013"] = < + text = <"Phase V"> + description = <"Das 5. Korotkoff-Geräusch - die Geräusche verschwinden völlig während der Manschettendruck unter den diastolischen Blutdruck fällt."> + > + ["at1015"] = < + text = <"Nach links geneigt liegend"> + description = <"Flach liegend mit seitlicher Neigung, normalerweise zur linken Seite. Häufig verwendet im letzten Drittel eine Schwangerschaft, um aorto-cavale Kompression zu vermeiden."> + > + ["at1019"] = < + text = <"Kleinkind"> + description = <"Eine Manschette für Kleinkinder und Säuglinge - ca. 5cm x 15cm."> + > + ["at1020"] = < + text = <"Neonatal"> + description = <"Eine Manschette für Neugeborene mit passender Größe für die Reife und das Geburtsgewicht des Neugeborenen."> + > + ["at1021"] = < + text = <"Rechtes Handgelenk"> + description = <"Das rechte Handgelenk der Person."> + > + ["at1022"] = < + text = <"Linkes Handgelenk"> + description = <"Das linke Handgelenk der Person."> + > + ["id1026"] = < + text = <"Gerät"> + description = <"Details über das Sphygmomanometer oder ein anderes Gerät, dass zur Blutdruckmessung verwendet wird."> + > + ["at1027"] = < + text = <"Rechtes Fußgelenk"> + description = <"Das rechte Fußgelenk der Person."> + > + ["id1031"] = < + text = <"Anstrengung"> + description = <"Details über physische Aktivitäten zur Zeit der Blutdruckmessung."> + > + ["at1032"] = < + text = <"Linkes Fußgelenk"> + description = <"Das linke Fußgelenk der Person"> + > + ["at1033"] = < + text = <"Finger"> + description = <"Ein Finger der Person. Der Finger kann, falls benötigt, als 'Spezifische Stelle' genauer identifiziert werden."> + > + ["id1034"] = < + text = <"Körperstelle"> + description = <"Körperstelle der Blutdruckmessung. 'Körperstelle der Messung' kann für die gewöhnlichen Stellen verwendet werden. 'Spezifische Stelle' wird für die Aufzeichnung spezifischer Details einer Körperstelle, die nicht in den gewöhnlichen Stellen enthalten ist, verwendet, Sie kann auch verwendet werden, um auf eine externe Teminologie zu verweisen."> + > + ["id1035"] = < + text = <"Spezifische Stelle"> + description = <"Spezifische Details über die Körperstelle, an der der Blutdruck gemessen wird."> + > + ["id1036"] = < + text = <"Methode"> + description = <"Methode der Messung des Blutdrucks."> + > + ["at1037"] = < + text = <"Auskultation"> + description = <"Auskulatorische Messung unter Benutzung eines Stethoskops und der Korotkoff-Geräusche."> + > + ["at1038"] = < + text = <"Palpation"> + description = <"Palpatorische Messung, normalerweise an den brachialen oder radialen Arterien."> + > + ["id1039"] = < + text = <"Formel für mittleren arterieller Druck"> + description = <"Die Formel die ggf. verwendet wurde, um den mittleren arteriellen Druck zu berechnen."> + > + ["at1040"] = < + text = <"Machine"> + description = <"Messung durch eine Blutdruckmaschine."> + > + ["at1041"] = < + text = <"Invasiv"> + description = <"Invasive Messung des Blutdrucks innerhalb eines Gefäßes."> + > + ["id1043"] = < + text = <"24 Stunden Durchschnitt"> + description = <"Schätzung des durchschnittlichen Blutdrucks über eine 24-stündigen Zeitraum."> + > + ["id1044"] = < + text = <"Schlafzustand"> + description = <"Schlafzustand - unterstützt die Auswertung von 24-stündigen ambulanten Aufzeichnungen des Blutdrucks."> + > + ["at1045"] = < + text = <"Aufmerksam und wach"> + description = <"Die untersuchte Person ist bei vollem Bewusstsein."> + > + ["at1046"] = < + text = <"Schlafend"> + description = <"Die untersuchte Person schläft."> + > + ["at1052"] = < + text = <"Zeh"> + description = <"Ein Zeh der Person. Der Zeh kann, falls benötigt, als 'Spezifische Stelle' genauer identifiziert werden."> + > + ["id1053"] = < + text = <"Einflussfaktoren"> + description = <"Kommentar und Aufzeichung anderer Faktoren die ggf. zu dem Ergebnis der Blutdruckmessung beitragen können. Die kann z.B. bei belastenden Situationen der Fall sein (z.B. sog. Weißkittelhypertonie, Schmerzen, Fieber, Änderungen im atmosphärischen Druck)."> + > + ["at1054"] = < + text = <"Intra-arteriell"> + description = <"Invasive Messung über einen arteriellen Drucksensor. Die genaue Stelle des Drucksensors kann, falls benötigt, als 'Spezifische Stelle' genauer identifiziert werden."> + > + ["at1055"] = < + text = <"*Pressure (en)"> + description = <"*Pressure (en)"> + > + ["at1056"] = < + text = <"*Angle, plane (en)"> + description = <"*Angle, plane (en)"> + > + ["at1057"] = < + text = <"*mean (en)"> + description = <"*mean (en)"> + > + ["ac1"] = < + text = <"Position (synthesised)"> + description = <"Die Position der untersuchten Person während der Messung. (synthesised)"> + > + ["ac2"] = < + text = <"Schlafzustand (synthesised)"> + description = <"Schlafzustand - unterstützt die Auswertung von 24-stündigen ambulanten Aufzeichnungen des Blutdrucks. (synthesised)"> + > + ["ac3"] = < + text = <"Manschettengröße (synthesised)"> + description = <"Die Größe der Manschette, die zur Blutdruckmessung benutzt wurde. (synthesised)"> + > + ["ac4"] = < + text = <"Körperstelle der Messung (synthesised)"> + description = <"Gewöhnliche Körperstellen, an denen der Blutdruck gemessen wird. (synthesised)"> + > + ["ac5"] = < + text = <"Methode (synthesised)"> + description = <"Methode der Messung des Blutdrucks. (synthesised)"> + > + ["ac6"] = < + text = <"Diastolischer Endpunkt (synthesised)"> + description = <"Dient der Dokumentation des Korotkoff-Geräusches, das verwendet wird, um bei auskultarischer Messung den diastolischen Blutdruck zu bestimmen. (synthesised)"> + > + > + ["zh-cn"] = < + ["id1"] = < + text = <"血压"> + description = <"代表体循环动脉压的动脉血压的局部测量。最为常见的情况就是,采用“血压”一词来表示上臂肱动脉血压的测量。"> + > + ["id2"] = < + text = <"历史"> + description = <"历史结构节点"> + > + ["id5"] = < + text = <"收缩压"> + description = <"在心动周期的收缩期所测量到的体循环动脉血压峰值。"> + > + ["id6"] = < + text = <"舒张压"> + description = <"在心动周期的舒张期所测量到的体循环动脉血压最低值(谷值,最小值)。"> + > + ["id7"] = < + text = <"任何事件"> + description = <"默认事件"> + > + ["id9"] = < + text = <"体位"> + description = <"测量时受检对象的体位或者说身体姿势。"> + > + ["id12"] = < + text = <"列表结构"> + description = <"列表结构"> + > + ["id14"] = < + text = <"袖带尺寸"> + description = <"用于血压测量的袖带(臂带,袖套,臂围)的大小或者说尺寸。"> + > + ["id15"] = < + text = <"测量位置"> + description = <"血压测量和记录的常见身体部位。"> + > + ["at16"] = < + text = <"成年人大腿型"> + description = <"适用于成年人大腿的袖带(臂带,袖套,臂围) - 气囊尺寸约为 20cm x 42cm。"> + > + ["at17"] = < + text = <"成年人粗大型"> + description = <"适用于上肢较为粗大的成年人的袖带(臂带,袖套,臂围) - 气囊尺寸约为16cm x 38cm。"> + > + ["at18"] = < + text = <"成年人标准型"> + description = <"适用于成年人的标准袖带(臂带,袖套,臂围) - 气囊尺寸约为13cm x 30cm。"> + > + ["at26"] = < + text = <"右臂"> + description = <"受检对象的右臂。"> + > + ["at27"] = < + text = <"左臂"> + description = <"受检对象的左臂。"> + > + ["at28"] = < + text = <"右腿"> + description = <"受检对象的右腿。"> + > + ["at29"] = < + text = <"左腿"> + description = <"受检对象的左腿。"> + > + ["id34"] = < + text = <"注释"> + description = <"有关血压值的注释、评论或意见。"> + > + ["at1001"] = < + text = <"立位"> + description = <"测量血压时身体处于站立体位"> + > + ["at1002"] = < + text = <"坐位"> + description = <"测量血压时身体处于坐位,又称为“坐姿”。"> + > + ["at1003"] = < + text = <"侧卧位"> + description = <"测量血压时身体处于45度角侧卧位或者说采取的是斜靠的姿势。"> + > + ["at1004"] = < + text = <"平卧位"> + description = <"测量血压时受检者采取的是平躺或者说平卧的姿势,又称为“仰卧位”。"> + > + ["id1006"] = < + text = <"倾斜"> + description = <"测量时受检对象采取卧位时所基于的表面的轴位倾斜(craniocaudal tilt,头尾方向的倾斜)。"> + > + ["id1007"] = < + text = <"平均动脉压"> + description = <"又称为“平均动脉血压”,指的是在整个心脏收缩与舒张周期过程中出现的动脉压均值(平均动脉压)。"> + > + ["id1008"] = < + text = <"脉压"> + description = <"收缩压与舒张压之间的差值,又称为“脉压差”或“脉搏压”。"> + > + ["at1009"] = < + text = <"成年人细小型"> + description = <"适用于体型瘦小的成年人的袖带(臂带,袖套,臂围) - 气囊尺寸约为10cm x 24cm。"> + > + ["at1010"] = < + text = <"儿科型/儿童型"> + description = <"适用于儿童或上肢较瘦成年人的袖带(臂带,袖套,臂围) - 气囊尺寸约为8cm x 21cm。"> + > + ["id1011"] = < + text = <"舒张期终点"> + description = <"旨在记录当确定舒张压时所采用的究竟是哪种柯氏音。"> + > + ["at1012"] = < + text = <"第IV时相"> + description = <"将声音的突然减弱(消音,捂住,低沉)或者说其向捂音的突然转变确定为第IV柯氏音,即柯氏音的第IV时相(变音)。"> + > + ["at1013"] = < + text = <"第V时相"> + description = <"将声音随着袖带压力降至舒张压以下时声音的消失确定为第V柯氏音,即柯氏音的第V时相。"> + > + ["at1015"] = < + text = <"左斜卧位"> + description = <"测量血压时受检者采取的是平躺或者说平卧姿势,且有向侧位一定程度的倾斜,通常是斜向左侧。在妊娠晚期,为了缓解主腔静脉压迫(aortocaval compression),常常需要采取这种体位。"> + > + ["at1019"] = < + text = <"婴幼儿型"> + description = <"适用于婴幼儿的袖带(臂带,袖套,臂围) - 气囊尺寸约为5cm x 15cm。"> + > + ["at1020"] = < + text = <"新生儿型"> + description = <"适用于新生儿的袖带(臂带,袖套,臂围),且假定袖带尺寸适合于新生儿的成熟度和出生体重。"> + > + ["at1021"] = < + text = <"右手腕"> + description = <"受检对象的右手腕。"> + > + ["at1022"] = < + text = <"左手腕"> + description = <"受检对象的左手腕。"> + > + ["id1026"] = < + text = <"装置"> + description = <"关于用于测量血压的血压计或其他装置(仪器,设备)的详情。"> + > + ["at1027"] = < + text = <"右踝"> + description = <"受检对象的右踝。"> + > + ["id1031"] = < + text = <"体力活动"> + description = <"关于血压测量时所从事的体力活动或者说身体活动的详情。"> + > + ["at1032"] = < + text = <"左踝"> + description = <"受检对象的左踝。"> + > + ["at1033"] = < + text = <"手指"> + description = <"受检对象的手指。如果需要的话,可在数据元“特殊位置”(Specific Location)之中记录所测手指的标识信息。"> + > + ["id1034"] = < + text = <"位置"> + description = <"血压测量的身体位置。采用“测量位置”(Location of measurement)从常见部位之中进行选择。采用“特殊位置”(Specific location)来记录更为具体的细节信息或者常用集合之中所没有的部位,或者用于引用外部术语集。"> + > + ["id1035"] = < + text = <"特殊位置"> + description = <"关于血压测量的身体部位的特殊细节信息。"> + > + ["id1036"] = < + text = <"方法"> + description = <"血压测量方法。"> + > + ["at1037"] = < + text = <"听诊法"> + description = <"利用听诊器和柯氏音(Korotkoff sounds)在身体外部测量血压的方法。"> + > + ["at1038"] = < + text = <"触诊法"> + description = <"利用触诊(扪诊)在身体外部测量血压的方法(通常采用的是对肱动脉或桡动脉的触诊)。"> + > + ["id1039"] = < + text = <"平均动脉压公式"> + description = <"用于计算平均动脉压(Mean Arterial Pressure,MAP,平均动脉血压)的公式(如果在数据之中加以记录的话)。"> + > + ["at1040"] = < + text = <"仪器法"> + description = <"利用血压测量设备(仪器,装置)在身体外部测量血压的方法。"> + > + ["at1041"] = < + text = <"有创法"> + description = <"在身体内部测量血压的方法,也就是说涉及到皮肤穿刺和在血管内进行测量。"> + > + ["id1043"] = < + text = <"*24小时均值"> + description = <"24小时期间血压均值的估计"> + > + ["id1044"] = < + text = <"睡眠状态"> + description = <"睡眠状态 - 旨在支持对于24小时流动式/门诊血压记录的解释。"> + > + ["at1045"] = < + text = <"警觉且清醒"> + description = <"受检对象意识完全清楚。"> + > + ["at1046"] = < + text = <"睡眠状态"> + description = <"受检对象处在全身休息的自然状态下。"> + > + ["at1052"] = < + text = <"脚趾"> + description = <"受检对象的脚趾。如果需要的话,可在数据元“特殊位置”(Specific Location)之中记录所测脚趾的标识信息。"> + > + ["id1053"] = < + text = <"干扰因素"> + description = <"旨在记录和说明可能影响血压测量结果的偶然因素。例如,焦虑/进展程度或“白大褂综合征(white coat syndrome)”、疼痛、发热、大气压变化等等。"> + > + ["at1054"] = < + text = <"动脉内"> + description = <"在动脉内借助于传感器接入线路进行的有创式测量。如果需要的话,可在数据元“特殊位置”(Specific Location)之中记录传感器的位置。"> + > + ["at1055"] = < + text = <"*Pressure (en)"> + description = <"*Pressure (en)"> + > + ["at1056"] = < + text = <"*Angle, plane (en)"> + description = <"*Angle, plane (en)"> + > + ["at1057"] = < + text = <"*mean (en)"> + description = <"*mean (en)"> + > + ["ac1"] = < + text = <"体位 (synthesised)"> + description = <"测量时受检对象的体位或者说身体姿势。 (synthesised)"> + > + ["ac2"] = < + text = <"睡眠状态 (synthesised)"> + description = <"睡眠状态 - 旨在支持对于24小时流动式/门诊血压记录的解释。 (synthesised)"> + > + ["ac3"] = < + text = <"袖带尺寸 (synthesised)"> + description = <"用于血压测量的袖带(臂带,袖套,臂围)的大小或者说尺寸。 (synthesised)"> + > + ["ac4"] = < + text = <"测量位置 (synthesised)"> + description = <"血压测量和记录的常见身体部位。 (synthesised)"> + > + ["ac5"] = < + text = <"方法 (synthesised)"> + description = <"血压测量方法。 (synthesised)"> + > + ["ac6"] = < + text = <"舒张期终点 (synthesised)"> + description = <"旨在记录当确定舒张压时所采用的究竟是哪种柯氏音。 (synthesised)"> + > + > + ["nl"] = < + ["id1"] = < + text = <"Bloeddruk"> + description = <"De lokale meting van de arteriële bloeddruk, welke surrogaat is voor de arteriële druk in de systemische circulatie. Meest gebruikelijk is dat de term 'bloeddruk' refereert aan de meting van de bloeddruk van de arterie brachialis in de bovenarm."> + > + ["id2"] = < + text = <"Geschiedenis"> + description = <"Gestructureerde geschiedenismap"> + > + ["id5"] = < + text = <"Systole"> + description = <"De maximale (piek) systemische arteriele bloeddruk - gemeten in de systolische of samentrekkingsfase van de hartslag"> + > + ["id6"] = < + text = <"Diastole"> + description = <"Laagste systemische arteriele bloeddruk - gemeten in de diastolische of ontspanningsfase van de hartslag"> + > + ["id7"] = < + text = <"any event"> + description = <"Default gebeurtenis"> + > + ["id9"] = < + text = <"Houding"> + description = <"De houding van het individu op het moment van de meting"> + > + ["id12"] = < + text = <"lijst structuur"> + description = <"lijst structuur"> + > + ["id14"] = < + text = <"Manchet grootte"> + description = <"De grootte van de manchet gebruikt bij de meting"> + > + ["id15"] = < + text = <"Plaats van meting"> + description = <"Gewoonlijke lichaamslocaties waar bloeddruk gemeten wordt."> + > + ["at16"] = < + text = <"Volwassen dijbeen"> + description = <"Een manchet voor een volwassen dijbeen - manchet grootte ca. 20cm x 42cm."> + > + ["at17"] = < + text = <"Grote volwassene"> + description = <"Een manchet voor volwassenen met langere armen, manchet grootte ca. 16cm x 38cm."> + > + ["at18"] = < + text = <"Volwassene"> + description = <"De standaard manchet voor een volwassene - manchet grootte ca. 13cm x 30cm"> + > + ["at26"] = < + text = <"Rechterarm"> + description = <"De rechterarm van de persoon."> + > + ["at27"] = < + text = <"Linkerarm"> + description = <"De linkerarm van de persoon."> + > + ["at28"] = < + text = <"Rechterdijbeen"> + description = <"Het rechterdijbeen van de persoon."> + > + ["at29"] = < + text = <"Linkerdijbeen"> + description = <"De linkerdijbeen van de persoon."> + > + ["id34"] = < + text = <"Opmerking"> + description = <"Opmerking over de gemeten bloeddruk"> + > + ["at1001"] = < + text = <"Staand"> + description = <"Bloeddrukmeting bij staand individu"> + > + ["at1002"] = < + text = <"Zittend"> + description = <"Bloeddrukmeting bij zittend (b.v. op bed of in stoel) individu"> + > + ["at1003"] = < + text = <"Halfzittend"> + description = <"Halfzittend op het moment van de bloeddrukmeting"> + > + ["at1004"] = < + text = <"Liggend"> + description = <"Platliggend op het moment van de bloeddrukmeting"> + > + ["id1006"] = < + text = <"Schuinte"> + description = <"De craniocaudale schuinte van het oppervlak waarop het individu ligt op het moment van de meting"> + > + ["id1007"] = < + text = <"Gemiddelde arteriële druk"> + description = <"De gemiddelde bloeddruk gedurende 1 cyclus van samentrekken en ontspannen van het hart."> + > + ["id1008"] = < + text = <"Polsdruk"> + description = <"Het verschil tussen de systolische en diastolische bloeddruk"> + > + ["at1009"] = < + text = <"Kleine volwassene"> + description = <"Een manchet voor een kleine volwassene - manchet maat ca. 10cm x 24cm."> + > + ["at1010"] = < + text = <"Pediatrie/kinder"> + description = <"Een manchet voor een kind of volwassene met een dunne arm - manchet grootte ca. 8cm x 21cm."> + > + ["id1011"] = < + text = <"Diastolisch eindpunt"> + description = <"Om te registreren welk Korotkoff geluid gebruikt is om de diastolische druk te meten door de auscultatieve methode."> + > + ["at1012"] = < + text = <"Fase IV"> + description = <"Het vierde Korotkoff geluid wordt gedefinieerd als een abrupte vermindering van geluid"> + > + ["at1013"] = < + text = <"Fase 5"> + description = <"Het vijfde Korotkoff geluid is geïdentificeerd door afwezigheid van geluiden als de manchetdruk onder diastolische bloeddruk komt."> + > + ["at1015"] = < + text = <"Liggend met kanteling naar linkerzijde"> + description = <"Platliggend met enige laterale kanteling, meestal gekanteld naar de linkerzijde. Gebruikelijk benodigd in het laatste trimester van de zwangerschap om aortacavale compressie te verlichten."> + > + ["at1019"] = < + text = <"Zuigeling"> + description = <"Een manchet voor zuigelingen - manchet maat ca. 5cm x 15cm."> + > + ["at1020"] = < + text = <"Neonaat"> + description = <"Een manchet voor een neonaat, er van uitgaande dat de manchet de juiste maat is voor volgroeidheid en geboortegewicht van de neonaat"> + > + ["at1021"] = < + text = <"Rechterpols"> + description = <"De rechterpols van de persoon"> + > + ["at1022"] = < + text = <"Linkerpols"> + description = <"De linkerpols van de persoon."> + > + ["id1026"] = < + text = <"Apparaat"> + description = <"Details over sphygmomanometerof ander apparaat om de bloeddruk te meten."> + > + ["at1027"] = < + text = <"Rechterenkel"> + description = <"De rechterenkel van de persoon"> + > + ["id1031"] = < + text = <"Inspanning"> + description = <"Details over de lichamelijke inspanning die ondernomen wordt op het moment van de bloeddrukmeting"> + > + ["at1032"] = < + text = <"Linkerenkel"> + description = <"De linkerenkel van de persoon"> + > + ["at1033"] = < + text = <"Vinger"> + description = <"Een vinger van de persoon. Identificatie van de vinger kan zo nodig worden opgeslagen in 'specifieke locatie' data element."> + > + ["id1034"] = < + text = <"Locatie"> + description = <"Lichaamslocatie waar de bloeddrukmeting is gemeten. Gebruik 'locatie van meting' om gebruikelijke plaatsen te selecteren. Gebruik 'specifieke locatie' om meer specifieke details of locatie te registreren, die niet in de gebruikelijke set staan of om aan een externe terminologie te refereren."> + > + ["id1035"] = < + text = <"Specifieke locatie"> + description = <"Specifieke details over de lichaamsplaats waar de bloeddruk is gemeten."> + > + ["id1036"] = < + text = <"Methodiek"> + description = <"De methode van de meting van de bloeddruk"> + > + ["at1037"] = < + text = <"Auscultatie"> + description = <"Uitwendige meting van de bloeddruk, met gebruikmaking van een stethoscoop en Korotkoff geluiden."> + > + ["at1038"] = < + text = <"Palpatie"> + description = <"Uitwendige meting van de bloeddruk, met gebruikmaking van palpatie (meestal de arterie brachialis of radialis)"> + > + ["id1039"] = < + text = <"Gemiddelde arteriële druk formule"> + description = <"Formule om de MAP (mean arterial pressure=gemiddelde arteriële druk) te berekenen (als deze data opgeslagen wordt)."> + > + ["at1040"] = < + text = <"Machinaal"> + description = <"Uitwendige meting van de bloeddruk, met gebruikmaking van een mechanische bloeddrukmeter"> + > + ["at1041"] = < + text = <"Invasief"> + description = <"Inwendige meting van de bloeddruk, inclusief penetratie van de huid en meting in het bloedvat."> + > + ["id1043"] = < + text = <"24 uur gemiddelde"> + description = <"Inschatting van de gemiddelde bloeddruk over een periode van 24 uur"> + > + ["id1044"] = < + text = <"Slaap/waak toestand"> + description = <"Slaap/waak toestand, ondersteunt de interpretatie van de 24-uurs bloeddrukmeting."> + > + ["at1045"] = < + text = <"Alert en wakker"> + description = <"Individu is volledig bij bewustzijn"> + > + ["at1046"] = < + text = <"Slapend"> + description = <"Individu is in de natuurlijke slaap."> + > + ["at1052"] = < + text = <"Teen"> + description = <"Een teen van de persoon. Identificatie van de vinger kan zo nodig worden opgeslagen in 'specifieke locatie' data element."> + > + ["id1053"] = < + text = <"Beïnvloedende factoren"> + description = <"Opmerking over en vastleggen van andere incidentele factoren die de bloeddrukmeting zouden kunnen beïnvloeden. Bijvoorbeeld, mate van angst, of 'witte jas syndroom'; pijn of koorts; veranderingen in atmosferische druk etc."> + > + ["at1054"] = < + text = <"Intra-arterieel"> + description = <"Invasieve meting via lijn met transducer in een arterie. Locatie van de transducer kan, zo nodig, opgeslagen worden in 'specifieke locatie' data element."> + > + ["at1055"] = < + text = <"*Pressure (en)"> + description = <"*Pressure (en)"> + > + ["at1056"] = < + text = <"*Angle, plane (en)"> + description = <"*Angle, plane (en)"> + > + ["at1057"] = < + text = <"*mean (en)"> + description = <"*mean (en)"> + > + ["ac1"] = < + text = <"Houding (synthesised)"> + description = <"De houding van het individu op het moment van de meting (synthesised)"> + > + ["ac2"] = < + text = <"Slaap/waak toestand (synthesised)"> + description = <"Slaap/waak toestand, ondersteunt de interpretatie van de 24-uurs bloeddrukmeting. (synthesised)"> + > + ["ac3"] = < + text = <"Manchet grootte (synthesised)"> + description = <"De grootte van de manchet gebruikt bij de meting (synthesised)"> + > + ["ac4"] = < + text = <"Plaats van meting (synthesised)"> + description = <"Gewoonlijke lichaamslocaties waar bloeddruk gemeten wordt. (synthesised)"> + > + ["ac5"] = < + text = <"Methodiek (synthesised)"> + description = <"De methode van de meting van de bloeddruk (synthesised)"> + > + ["ac6"] = < + text = <"Diastolisch eindpunt (synthesised)"> + description = <"Om te registreren welk Korotkoff geluid gebruikt is om de diastolische druk te meten door de auscultatieve methode. (synthesised)"> + > + > + ["ru"] = < + ["id1"] = < + text = <"АД"> + description = <"Локальное измерение артериального давления, которое является суррогатом артериального давления в системном кровотоке. Как правило, термин относится к давления плечевой артерии на предплечье. +"> + > + ["id2"] = < + text = <"*history(en)"> + description = <"*history Structural node(en)"> + > + ["id5"] = < + text = <"Систолическое"> + description = <"Пик системного артериального давления - измеряется в систолиу или в фазу сокращения сердца"> + > + ["id6"] = < + text = <"Диастолическое"> + description = <"Минимальное системное артериальное давление - измеряется в диастолу или в фазу релаксации сердца."> + > + ["id7"] = < + text = <"Любое событие"> + description = <"*Default event(en)"> + > + ["id9"] = < + text = <"Поза"> + description = <"Поза пациента во время измерения давления."> + > + ["id12"] = < + text = <"*list structure(en)"> + description = <"*list structure(en)"> + > + ["id14"] = < + text = <"Размер манжеты(ru)"> + description = <"Размер манжеты для измерения кровяного давления."> + > + ["id15"] = < + text = <"Место измерения"> + description = <"Обобщенное место тела, в которм производится измерение артериального давления."> + > + ["at16"] = < + text = <"Взрослая для бедра"> + description = <"Манжеты для бедра взрослого- пузырь приблизительно 20см х 42см."> + > + ["at17"] = < + text = <"Взрослая большая"> + description = <"Манжета для руки взрослого, увеличенного объёма - пузырь приблизительно 16cm x 38cm."> + > + ["at18"] = < + text = <"Взрослая"> + description = <"Манжета стандартная для взрослого - пузырь приблизительно 13 х 30cm."> + > + ["at26"] = < + text = <"Правая рука"> + description = <"Правая рука пациента."> + > + ["at27"] = < + text = <"Левая рука"> + description = <"Левая рука пациента."> + > + ["at28"] = < + text = <"Правое бедро"> + description = <"Правое бедро пациента."> + > + ["at29"] = < + text = <"Левое бедро"> + description = <"Левое бедро пациента."> + > + ["id34"] = < + text = <"Комментарии"> + description = <"Комментарии к измерению кровяного давления."> + > + ["at1001"] = < + text = <"Стоя"> + description = <"Пациент стоит во время измерения АД."> + > + ["at1002"] = < + text = <"Сидя"> + description = <"Пациент сидит во время измерения АД (на стуле, кровати или кресле)."> + > + ["at1003"] = < + text = <"Реклинация"> + description = <"Пациент лежит в вынужденной неизменной позе (на реклинации)во время измерения АД."> + > + ["at1004"] = < + text = <"Лёжа"> + description = <"Пациент лежит во время измерения АД."> + > + ["id1006"] = < + text = <"Наклонная поверхность"> + description = <"краниокаудальный наклон поверхности, на которой лежит пациент во время измерения АД."> + > + ["id1007"] = < + text = <"Среднего артериального давления крови"> + description = <"Среднее артериальное давление на всём протяжении цикла сокращения и релаксации сердца."> + > + ["id1008"] = < + text = <"Пульсовое давление"> + description = <"Разница между систолическим и диастолическим давлением."> + > + ["at1009"] = < + text = <"Взрослая малая"> + description = <"Манжета взрослая малая - пузырь приблизительно 10 x 24cm."> + > + ["at1010"] = < + text = <"Педиатрическая(детская)"> + description = <"Манжета для детей или взрослых с тонкой рукой - пузырь примерно 8см x 21cm."> + > + ["id1011"] = < + text = <"Диастолическая конечная точка"> + description = <"Запись звука Короткова который используют для определения диастолического давления с помощью метода аускультации."> + > + ["at1012"] = < + text = <"Фаза 4"> + description = <"Четвёртый звук Короткова, определяющийся как резкое приглушение звуков."> + > + ["at1013"] = < + text = <"Фаза 5"> + description = <"Пятый звук Короткова определяется отсутствием звуков, так как давление в манжете падает ниже диастолического артериального давления."> + > + ["at1015"] = < + text = <"Лёжа с наклоном влево"> + description = <"Лёжа на плоской поверхности с боковым наклоном, как правило, под углом по направлению с левой стороны. Обычно требуется в последнем триместре беременности, чтобы облегчить сдавление нижней полой вены."> + > + ["at1019"] = < + text = <"Для младенцев"> + description = <"Манжета для младенцев - пузырь приблизительно 5см x 15cm."> + > + ["at1020"] = < + text = <"Для новорожденных"> + description = <"Манжета для новорожденных, используется в соответствии с весом новорожденного."> + > + ["at1021"] = < + text = <"Правое запястье"> + description = <"Правое запястье пациента."> + > + ["at1022"] = < + text = <"Левое запястье"> + description = <"Левое запястье пациента."> + > + ["id1026"] = < + text = <"Устройство"> + description = <"Информация о сфигмоманометре или другом устройстве, используемом для измерения АД."> + > + ["at1027"] = < + text = <"Правая лодыжка"> + description = <"Правая лодыжка пациента."> + > + ["id1031"] = < + text = <"Нагрузка"> + description = <"Подробная информация о физической деятельности, осуществляемой во время измерения АД."> + > + ["at1032"] = < + text = <"Левая лодыжка"> + description = <"Левая лодыжка пациента"> + > + ["at1033"] = < + text = <"Палец руки"> + description = <"Палец руки пациента. Уточнение может быть записано в элемент данных \"Точное месторасположение\", в случае необходимости."> + > + ["id1034"] = < + text = <"*Location(en)"> + description = <"Место тела, где измеряется АД. Используйте \"Место измерения\", чтобы выбрать из обобщённых мест. Используйте \"Точное местограсположение\", чтобы записать более конкретную информацию или место, которое не входит в обобщённый список или обратиться к внешней терминологии."> + > + ["id1035"] = < + text = <"Точное месторасположение"> + description = <"Конкретные сведения о месте тела, где регистрируется АД."> + > + ["id1036"] = < + text = <"Метод"> + description = <"Метод измерения кровяного давления."> + > + ["at1037"] = < + text = <"Аускультация"> + description = <"Неинвазивный метод измерения АД с использованием стетоскопа и звуков Короткова."> + > + ["at1038"] = < + text = <"Пальпация"> + description = <"Неинвазивный метод измерения АД с использованием пальпации (обычно плечевой или лучевой артерии)."> + > + ["id1039"] = < + text = <"Формула среднего артериального давления"> + description = <"Формула, используемая для вычисления СрАД (если требуется записывать)."> + > + ["at1040"] = < + text = <"Автоматический тонометр"> + description = <"Неинвазивный метод измерения АД с помощью автоматического тонометра."> + > + ["at1041"] = < + text = <"Инвазивный"> + description = <"Инвазивный метод измерения АД, с помещением датчика внутри кровеносного сосуда."> + > + ["id1043"] = < + text = <"Среднее за 24 часа"> + description = <"Оценка среднего АД за период в 24 часа."> + > + ["id1044"] = < + text = <"Стадия сна(ru)"> + description = <"Стадия сна - для интерпретации записи амбулаторного измерения АД в течение 42 часов."> + > + ["at1045"] = < + text = <"Пробуждение и подъём"> + description = <"Пациент полностью в сознании."> + > + ["at1046"] = < + text = <"Сон"> + description = <"Пациент находится в состоянии естественного покоя, тело расслаблено."> + > + ["at1052"] = < + text = <"Палец ноги"> + description = <"Палец ноги пациента. Уточнение может быть записано в элемент данных \"Точное месторасположение\", в случае необходимости."> + > + ["id1053"] = < + text = <"Стохастические факторы(ru)"> + description = <"Комментарий и записи других случайных факторов, которые могут способствовать измерению артериального давления. Например,\"боязнь белого халата\" или боль и жар, изменения атмосферного давления т.д."> + > + ["at1054"] = < + text = <"Внутриартериальное"> + description = <"Инвазивное измерение с помощью датчика линии доступа в артерию. Расположение датчика могут быть записаны в элемент данных \"Точное месторасположение\", в случае необходимости."> + > + ["at1055"] = < + text = <"*Pressure (en)"> + description = <"*Pressure (en)"> + > + ["at1056"] = < + text = <"*Angle, plane (en)"> + description = <"*Angle, plane (en)"> + > + ["at1057"] = < + text = <"*mean (en)"> + description = <"*mean (en)"> + > + ["ac1"] = < + text = <"Поза (synthesised)"> + description = <"Поза пациента во время измерения давления. (synthesised)"> + > + ["ac2"] = < + text = <"Стадия сна(ru) (synthesised)"> + description = <"Стадия сна - для интерпретации записи амбулаторного измерения АД в течение 42 часов. (synthesised)"> + > + ["ac3"] = < + text = <"Размер манжеты(ru) (synthesised)"> + description = <"Размер манжеты для измерения кровяного давления. (synthesised)"> + > + ["ac4"] = < + text = <"Место измерения (synthesised)"> + description = <"Обобщенное место тела, в которм производится измерение артериального давления. (synthesised)"> + > + ["ac5"] = < + text = <"Метод (synthesised)"> + description = <"Метод измерения кровяного давления. (synthesised)"> + > + ["ac6"] = < + text = <"Диастолическая конечная точка (synthesised)"> + description = <"Запись звука Короткова который используют для определения диастолического давления с помощью метода аускультации. (synthesised)"> + > + > + ["fa"] = < + ["id1"] = < + text = <"فشار خون"> + description = <"اندازه گیری موضعی فشار خون وریدی، که جایگزینی برای فشار وریدی در گردش خون کلی است. +معمولا واژه \"فشار خون\" به اندازه گیری فشار ورید بازویی در روی بازو گفته می شود"> + > + ["id2"] = < + text = <"تاریخچه"> + description = <"گره ساختاری تاریخچه "> + > + ["id5"] = < + text = <"سیستولیک"> + description = <"اوج فشار خون وریدی کلی که در سیستولیک یا فاز انقباضی چرخه گردش خون اندازه گیری می شود "> + > + ["id6"] = < + text = <"دیاستولیک"> + description = <"حداقل فشار خون وریدی کلی که در دیاستولیک یا فاز انبساطی چرخه گردش خون اندازه گیری می شود"> + > + ["id7"] = < + text = <"هر رویداد"> + description = <"رویداد پیش فرض"> + > + ["id9"] = < + text = <"موقعیت"> + description = <"موقعیت فرد در زمان اندازه گیری "> + > + ["id12"] = < + text = <"ساختار لیست"> + description = <"ساختار لیست "> + > + ["id14"] = < + text = <"اندازه کاف"> + description = <"اندازه کاف استفاده شده برای اندازه گیری فشار خون"> + > + ["id15"] = < + text = <"*Location of measurement(en)"> + description = <"*Common body sites where blood pressure is recorded.(en)"> + > + ["at16"] = < + text = <"ران بزرگسال"> + description = <"کاف استفاده شده در ران بزرگسال -اندازه مثانه 20 سانتی متر در 42 سانتی متر"> + > + ["at17"] = < + text = <"بزرگسال درشت"> + description = <"کاف بزرگسالان با برآمدگی بازوی بزرگتر در حدود 16 در 38 سانتیمتر"> + > + ["at18"] = < + text = <"*Adult(en)"> + description = <"*A cuff that is standard for an adult - bladder approx 13cm x 30cm.(en)"> + > + ["at26"] = < + text = <"*Right arm(en)"> + description = <"*The right arm of the person.(en)"> + > + ["at27"] = < + text = <"*Left arm(en)"> + description = <"*The left arm of the person.(en)"> + > + ["at28"] = < + text = <"*Right thigh(en)"> + description = <"*The right thigh of the person.(en)"> + > + ["at29"] = < + text = <"*Left thigh(en)"> + description = <"*The left thigh of the person.(en)"> + > + ["id34"] = < + text = <"نظر"> + description = <"نظر در مورد اندازه گیری فشار خون"> + > + ["at1001"] = < + text = <"ایستاده"> + description = <"ایستاده در زمان اندازه گیری فشار خون"> + > + ["at1002"] = < + text = <"نشسته"> + description = <"نشسته ( به عنوان مثال روی تخت یا صندلی) در زمان اندازه گیری فشار خون"> + > + ["at1003"] = < + text = <"خمیده"> + description = <"خمیده در زمان اندازه گیری فشار خون"> + > + ["at1004"] = < + text = <"خوابیده"> + description = <"خوابیده در زمان اندازه گیری فشار خون"> + > + ["id1006"] = < + text = <"شیب"> + description = <"شیب طولی سطحی که فرد در حین اندازه گیری رون آن دراز کشیده است"> + > + ["id1007"] = < + text = <"میانگین فشار وریدی"> + description = <"متوسط فشار خون وریدی که در کل دوره انقباظ و انبساط قلبی رخ می دهد"> + > + ["id1008"] = < + text = <"فشار نبضی"> + description = <"تفاوت بین فشار سیستولیک و دیاستولیک"> + > + ["at1009"] = < + text = <"*Small Adult(en)"> + description = <"*A cuff used for a small adult - bladder approx 10cm x 24cm.(en)"> + > + ["at1010"] = < + text = <"*Paediatric/Child(en)"> + description = <"*A cuff that is appropriate for a child or adult with a thin arm - bladder approx 8cm x 21cm.(en)"> + > + ["id1011"] = < + text = <"*Diastolic endpoint(en)"> + description = <"*Record which Korotkoff sound is used for determining diastolic pressure using auscultative method.(en)"> + > + ["at1012"] = < + text = <"*Phase IV(en)"> + description = <"*The fourth Korotkoff sound is identified as an abrupt muffling of sounds.(en)"> + > + ["at1013"] = < + text = <"*Phase V(en)"> + description = <"*The fifth Korotkoff sound is identified by absence of sounds as the cuff pressure drops below the diastolic blood pressure.(en)"> + > + ["at1015"] = < + text = <"خوابیده به چپ"> + description = <"خوابیدن صاف با کمی تمایل به یک سمت، معمولا به جهت چپ میل کرده و عموما در سه ماهه آخر حاملگی برای تسکین فشار آئورت نیاز به آن است"> + > + ["at1019"] = < + text = <"*Infant(en)"> + description = <"*A cuff used for infants - bladder approx 5cm x 15cm.(en)"> + > + ["at1020"] = < + text = <"*Neonatal(en)"> + description = <"*A cuff used for a neonate, assuming cuff is the appropriate size for maturity and birthweight of the neonate.(en)"> + > + ["at1021"] = < + text = <"*Right wrist(en)"> + description = <"*The right wrist of the subject.(en)"> + > + ["at1022"] = < + text = <"*Left wrist(en)"> + description = <"*The left wrist of the subject.(en)"> + > + ["id1026"] = < + text = <"*Device(en)"> + description = <"*Details about sphygmomanometer or other device used to measure the blood pressure.(en)"> + > + ["at1027"] = < + text = <"*Right ankle(en)"> + description = <"*The right ankle of the subject.(en)"> + > + ["id1031"] = < + text = <"تقلا"> + description = <"جزییاتی درباره فعالیت فیزیکی انجام شده در زمان اندازه گیری فشار خون "> + > + ["at1032"] = < + text = <"*Left ankle(en)"> + description = <"*The left ankle of the subject.(en)"> + > + ["at1033"] = < + text = <"*Finger(en)"> + description = <"*A finger of the subject. Identification of the finger can be recorded in 'Specific Location' data element, if required.(en)"> + > + ["id1034"] = < + text = <"*Location(en)"> + description = <"*Body location where blood pressure is measured. Use 'Location of measurement' to select from common sites. Use 'Specific location' to record more specific details or a site that is not in the common set or to refer to an external terminology.(en)"> + > + ["id1035"] = < + text = <"*Specific location(en)"> + description = <"*Specific details about the body site where blood pressure is recorded.(en)"> + > + ["id1036"] = < + text = <"*Method(en)"> + description = <"*Method of measurement of blood pressure.(en)"> + > + ["at1037"] = < + text = <"*Auscultation(en)"> + description = <"*Method of measuring blood pressure externally, using a stethoscope and Korotkoff sounds.(en)"> + > + ["at1038"] = < + text = <"*Palpation(en)"> + description = <"*Method of measuring blood pressure externally, using palpation (usually of the brachial or radial arteries).(en)"> + > + ["id1039"] = < + text = <"*Mean Arterial Pressure Formula(en)"> + description = <"*Formula used to calculate the MAP (if recorded in data).(en)"> + > + ["at1040"] = < + text = <"*Machine(en)"> + description = <"*Method of measuring blood pressure externally, using a blood pressure machine.(en)"> + > + ["at1041"] = < + text = <"*Invasive(en)"> + description = <"*Method of measuring blood pressure internally ie involving penetration of the skin and measuring inside blood vessels.(en)"> + > + ["id1043"] = < + text = <"میانگین 24 ساعته"> + description = <"برآورد میانگین فشار خون در دوره زمانی 24 ساعته"> + > + ["id1044"] = < + text = <"وضعیت خواب"> + description = <"وضعیت خواب- به تفسیر ثبتهای صورت گرفته از فشار خون در خانه در طول 24 ساعت کمک می کند "> + > + ["at1045"] = < + text = <"هشیار و بیدار"> + description = <"فرد کاملا به هوش است "> + > + ["at1046"] = < + text = <"خوابیده"> + description = <"فرد در حالت طبیعی استراحت بدنی است"> + > + ["at1052"] = < + text = <"*Toe(en)"> + description = <"*A toe of the subject. Identification of the toe can be recorded in 'Specific Location' data element, if required.(en)"> + > + ["id1053"] = < + text = <"عوامل مبهم"> + description = <"نظردهی و ثبت سایر عوامل ضمنی که ممکن است به اندازه گیری فشار خون کمک کنند . به عنوان مثال سطح اضطراب یا \"سندرم روپوش سفید\"، درد یا تب ، تغییرات فشار جوی و غیره "> + > + ["at1054"] = < + text = <"*Intra-arterial(en)"> + description = <"*Invasive measurement via transducer access line within an artery. Location of the transducer can be recorded in 'Specific Location' data element, if required.(en)"> + > + ["at1055"] = < + text = <"*Pressure (en)"> + description = <"*Pressure (en)"> + > + ["at1056"] = < + text = <"*Angle, plane (en)"> + description = <"*Angle, plane (en)"> + > + ["at1057"] = < + text = <"*mean (en)"> + description = <"*mean (en)"> + > + ["ac1"] = < + text = <"موقعیت (synthesised)"> + description = <"موقعیت فرد در زمان اندازه گیری (synthesised)"> + > + ["ac2"] = < + text = <"وضعیت خواب (synthesised)"> + description = <"وضعیت خواب- به تفسیر ثبتهای صورت گرفته از فشار خون در خانه در طول 24 ساعت کمک می کند (synthesised)"> + > + ["ac3"] = < + text = <"اندازه کاف (synthesised)"> + description = <"اندازه کاف استفاده شده برای اندازه گیری فشار خون (synthesised)"> + > + ["ac4"] = < + text = <"*Location of measurement(en) (synthesised)"> + description = <"*Common body sites where blood pressure is recorded.(en) (synthesised)"> + > + ["ac5"] = < + text = <"*Method(en) (synthesised)"> + description = <"*Method of measurement of blood pressure.(en) (synthesised)"> + > + ["ac6"] = < + text = <"*Diastolic endpoint(en) (synthesised)"> + description = <"*Record which Korotkoff sound is used for determining diastolic pressure using auscultative method.(en) (synthesised)"> + > + > + ["ar-sy"] = < + ["id1"] = < + text = <"ضغط الدم"> + description = <"قياس موضعي لضغط الدم الشرياني و الذي يحل محل الضغط الشرياني في الدورة الدموية الجهازية. +و عادة ما يستخدم مصطلح \"ضغط الدم\" لللإشارة إلى قياس ضغط دم الشريان العضُدي في أعلى الذراع."> + > + ["id2"] = < + text = <"التاريخ"> + description = <"العقدة التركيبية للتاريخ"> + > + ["id5"] = < + text = <"الانقباضي"> + description = <"ذروة ضغط الدم الشرياني الجهازي - يتم قياسه في طور الانقباض من دورة القلب"> + > + ["id6"] = < + text = <"الانبساطي"> + description = <"الحد الأدني لضغط الدم الشرياني الجهازي - يتم قياسها في طور الانبساط - الارتخاء من دورة القلب"> + > + ["id7"] = < + text = <"إحدى الوقائع"> + description = <"الواقعة التلقائية"> + > + ["id9"] = < + text = <"الموضع"> + description = <"موضع الشخص في وقت القياس"> + > + ["id12"] = < + text = <"تركيب القائمة"> + description = <"تركيب القائمة"> + > + ["id14"] = < + text = <"حجم الكُفَّة"> + description = <"حجم الكُفَّة المستخدمة في قياس ضغط الدم"> + > + ["id15"] = < + text = <"موضع القياس"> + description = <"الأماكن المعتادة من الجسم التي يتم فيها عادة قياس ضغط الدم"> + > + ["at16"] = < + text = <"فخذ البالغ"> + description = <"كفة تستخدم لفخذ البالغ - مثانة/ كيسة من 20 سينتيمتر * 42 سينتيمتر تقريبا"> + > + ["at17"] = < + text = <"بالغ كبير"> + description = <"كفة للبالغين ذوي الأذرع الكبيرة - المثانة/ الكيسة 16 سينتيمتر * 38 سينتيمتر تقريبا"> + > + ["at18"] = < + text = <"البالغ"> + description = <"كفة عيارية للبالغين - مثانة من 13 سينتيمتر * 30 سينتيمتر تقريبا"> + > + ["at26"] = < + text = <"الذراع الأيمن"> + description = <"الذراع الأيمن للشخص"> + > + ["at27"] = < + text = <"الذراع الأيسر"> + description = <"الذراع الأيسر للشخص"> + > + ["at28"] = < + text = <"الفخذ الأيمن"> + description = <"الفخذ الأيمن للشخص"> + > + ["at29"] = < + text = <"الفخذ الأيسر"> + description = <"الفخذ الأيسر للشخص"> + > + ["id34"] = < + text = <"تعليق"> + description = <"تعليق حول قياس ضغط الدم"> + > + ["at1001"] = < + text = <"واقف"> + description = <"الشخص واقف عند القيام بقياس ضغط الدم"> + > + ["at1002"] = < + text = <"جالس"> + description = <"الشخص جالس (مثلا على سرير أو كرسي) عند القيام بقياس ضغط الدم"> + > + ["at1003"] = < + text = <"مضطجع"> + description = <"الشخص مضطجع عند القيام بقياس ضغط الدم"> + > + ["at1004"] = < + text = <"مستلقٍ"> + description = <"الشخص مستلقٍ بشكل مستوٍ عند القيام بقياس ضغط الدم"> + > + ["id1006"] = < + text = <"الانحناء"> + description = <"الانحناء الرأسي الذنبي على السطح الذي يستلقي عليه الشخص في أثناء القياس"> + > + ["id1007"] = < + text = <"متوسط الضغط الشرياني"> + description = <"متوسط الضغط الشرياني الذي يحدث خلال جميع أطوار دورة القلب الواحدة من انقباض و انبساط/ ارتخاء"> + > + ["id1008"] = < + text = <"الضغط عند النبض"> + description = <"الفرق بين ضغط الدم الانقباضي و الانبساطي"> + > + ["at1009"] = < + text = <"البالغ الصغير"> + description = <"كفة تستخدم للبالغ الصغير - مثانة/ كيسة من 10 سينتيمتر * 24 سينتيمتر تقريبا"> + > + ["at1010"] = < + text = <"طفل"> + description = <"كفة تستخدم للطفل أو البالغ ذي الذراع الرفيعة - من 8 سينتيمتر * 21 سينتيمتر تقريبا"> + > + ["id1011"] = < + text = <"النقطة النهائية الانبساطية/ الارتخائية"> + description = <"تستخدم أصوات كورتكوف لتحديد ضغط الدم الانبساطي باستخدام طريقة التسمُّع"> + > + ["at1012"] = < + text = <"الطور الرابع"> + description = <"يتم التعرف على صوت كورتكوف الرابع على أنه تخفيت منفصل"> + > + ["at1013"] = < + text = <"الطور الخامس"> + description = <"يتم التعرف على صوت كورتكوف الخامس بغياب الأصوات حيث ينخفض ضغط الكفة تحت ضغط الدم الانبساطي"> + > + ["at1015"] = < + text = <"مستلق و مائل لجانبه الأيسر"> + description = <"الشخص مستلق بشكل مستو مع ميل جانبي بزاوية تجاه جانبه الأيسر. عادة ما يُحتاج إلى هذا الوضع في الأثلوث الأخير من الحمل لتخفيف الانضغاط الأبهري الجوفي"> + > + ["at1019"] = < + text = <"رضيع"> + description = <"كفة تستخدم للرضيع - مثانة/ كيسة من 5 سينتيمتر * 15 سينتيمتر تقريبا"> + > + ["at1020"] = < + text = <"حديث الولادة"> + description = <"الكفة المستخدمة لحديثي الولادة, على افتراض أن الكفة مناسبة للحجم و النضج و الوزن عند ولادة الطفل"> + > + ["at1021"] = < + text = <"الساعد الأيمن"> + description = <"الساعد الأيمن للشخص"> + > + ["at1022"] = < + text = <"الساعد الأيسر"> + description = <"الساعد الأيسر للشخص"> + > + ["id1026"] = < + text = <"الجهيزة"> + description = <"تفاصيل حول جهاز ضغط الدم الزئبقي أو جهيزة أخرى تستخدم لقياس ضغط الدم"> + > + ["at1027"] = < + text = <"الكاحل الأيمن"> + description = <"الكاحل الأيمن للشخص"> + > + ["id1031"] = < + text = <"المجهود"> + description = <"تفاصيل حول النشاط البدني الذي يتم القيام به في وقت قياس ضغط الدم."> + > + ["at1032"] = < + text = <"الكاحل الأيسر"> + description = <"الكاحل الأيسر للشخص"> + > + ["at1033"] = < + text = <"الأصبع"> + description = <"أصبع الشخص. تعريف الأصبع الذي يتم تسجيله كنوع بيانات (مكان معيَّن), حسب الحاجة"> + > + ["id1034"] = < + text = <"الموضع"> + description = <"الموضع من الجسم الذي يتم قياس ضغط الدم عنده. +استخدم (موضع القياس) للاختيار من الأماكن المعتادة. +استخدم (موضع معيَّن) لتسجيل تفاصيل أكثر تحديدا أو موضعا ليس في مجموعة الخيارات المعتادة أو للإشارة إلى مجموعة مصطلحات خارجية."> + > + ["id1035"] = < + text = <"موقع معين"> + description = <"تفاصلي معينة عن الموقع من الجسم الذي يتم فيه قياس ضغط الدم"> + > + ["id1036"] = < + text = <"الطريقة"> + description = <"طريقة قياس ضغط الدم"> + > + ["at1037"] = < + text = <"التسمع"> + description = <"طريقة خارجية لقياس ضغط الدم, باستخدام سماعة طبيب أو أصوات كوروتكوف"> + > + ["at1038"] = < + text = <"الجس"> + description = <"طريقة خارجية لقياس ضغط الدم, باستخدام الجس - عادةً الشرايين الذراعية و الكعبري"> + > + ["id1039"] = < + text = <"صيغة متوسط الضغط الشرياني"> + description = <"الصيغة المستخدمة لقياس متوسط الضغط الشرياني - إذا تم تسجيل بياناتها"> + > + ["at1040"] = < + text = <"الآلة"> + description = <"طريقة خارجية لقياس ضغط الدم بالستخدام آلة قياس ضغط الدم"> + > + ["at1041"] = < + text = <"باضع"> + description = <"طريقة داخلية لقيسا ضغط الدم, و ذلك يعني اختراق الجلد/ البشرة داخل الأوعية الدموية"> + > + ["id1043"] = < + text = <"المتوسط خلال 24 ساعة"> + description = <"تقدير متوسط ضغط الدم خلال فترة من 24 ساعة"> + > + ["id1044"] = < + text = <"حالة النوم"> + description = <"حالة النوم - تدعم تفسير قياسات ضغط الدم المِسيارية خلال 24 ساعة"> + > + ["at1045"] = < + text = <"متنبه و يقظ"> + description = <"الشخص واعٍ بشكل كامل"> + > + ["at1046"] = < + text = <"نائم"> + description = <"الشخص في الحالة الطبيعية الخاصة بالراحة الجسدية"> + > + ["at1052"] = < + text = <"أصبع القدم"> + description = <"أصبع قدم الشخص. +يمكن تسجيل تعريف أصبع القدم كنوع بيانات (موضع معيَّن), حسب الحاجة."> + > + ["id1053"] = < + text = <"العوامل المربكة"> + description = <"تعليق حول و تسجيل للعوامل الطارئة التي قد تسهم في قياس ضغط الدم. مثلا, مستوى القلق أو متلازمة البالطو الأبيض أو الألم أو الحمى أو التغييرات في الضغط الجوي,, إلى آخره"> + > + ["at1054"] = < + text = <"داخل الشريان"> + description = <"قياس باضع عن طريق دخول خط تِرجام في داخل الشريان. +يمكن تسجيل الترجام كنوع بيانات (موضع معيَّن), حسب الحاجة."> + > + ["at1055"] = < + text = <"*Pressure (en)"> + description = <"*Pressure (en)"> + > + ["at1056"] = < + text = <"*Angle, plane (en)"> + description = <"*Angle, plane (en)"> + > + ["at1057"] = < + text = <"*mean (en)"> + description = <"*mean (en)"> + > + ["ac1"] = < + text = <"الموضع (synthesised)"> + description = <"موضع الشخص في وقت القياس (synthesised)"> + > + ["ac2"] = < + text = <"حالة النوم (synthesised)"> + description = <"حالة النوم - تدعم تفسير قياسات ضغط الدم المِسيارية خلال 24 ساعة (synthesised)"> + > + ["ac3"] = < + text = <"حجم الكُفَّة (synthesised)"> + description = <"حجم الكُفَّة المستخدمة في قياس ضغط الدم (synthesised)"> + > + ["ac4"] = < + text = <"موضع القياس (synthesised)"> + description = <"الأماكن المعتادة من الجسم التي يتم فيها عادة قياس ضغط الدم (synthesised)"> + > + ["ac5"] = < + text = <"الطريقة (synthesised)"> + description = <"طريقة قياس ضغط الدم (synthesised)"> + > + ["ac6"] = < + text = <"النقطة النهائية الانبساطية/ الارتخائية (synthesised)"> + description = <"تستخدم أصوات كورتكوف لتحديد ضغط الدم الانبساطي باستخدام طريقة التسمُّع (synthesised)"> + > + > + ["es-ar"] = < + ["id1"] = < + text = <"Presión Arterial"> + description = <"La medición local de la tensión arterial que deriva de la medida de la presión arterial en la circulación sistémica. Comúnmente el uso de 'presión arterial' se refiere a la medida de la presión de la arteria braquial por encima del pliegue del codo."> + > + ["id2"] = < + text = <"historia"> + description = <"historia Nodo estructural"> + > + ["id5"] = < + text = <"Sistólica"> + description = <"Presión arterial sistólica pico - medido en sístole o la fase de contracción del ciclo cardíaco"> + > + ["id6"] = < + text = <"Diástole"> + description = <"Presión arterial sistémica mínima - medido durante la diástole o fase de relajación del ciclo cardíaco."> + > + ["id7"] = < + text = <"cualquier evento"> + description = <"Evento por defecto"> + > + ["id9"] = < + text = <"Posición"> + description = <"La posición del individuo en el momento del registro."> + > + ["id12"] = < + text = <"estructura de lista"> + description = <"estructura tipo lista"> + > + ["id14"] = < + text = <"Tamaño del manguito"> + description = <"El tamaño del manguito usado para la toma de la presión arterial"> + > + ["id15"] = < + text = <"Localización de la medida"> + description = <"Sitios comunes del cuerpo donde se registra la presión arterial"> + > + ["at16"] = < + text = <"Muslo Adulto"> + description = <"Un manguito usado para el muslo del adulto - cámara de caucho aproximadamente de 20cm x 42 cm"> + > + ["at17"] = < + text = <"Adulto grande"> + description = <"Un manguito para adultos con brazos mas grandes - cámara de caucho aproximadamente de 16cm x 38cm."> + > + ["at18"] = < + text = <"Adulto"> + description = <"Un manguito estándar para adulto - cámara de caucho approximadamente de 13cm x 30cm."> + > + ["at26"] = < + text = <"Brazo derecho"> + description = <"El brazo derecho del individuo"> + > + ["at27"] = < + text = <"Brazo izquierdo"> + description = <"El brazo izquierdo del individuo"> + > + ["at28"] = < + text = <"Muslo derecho"> + description = <"El muslo derecho del individuo"> + > + ["at29"] = < + text = <"Muslo izquierdo"> + description = <"El muslo izquierdo del individuo"> + > + ["id34"] = < + text = <"Comentario"> + description = <"Comentario sobre la medición de la presión sanguínea"> + > + ["at1001"] = < + text = <"De pie"> + description = <"De pie al momento de la medición de la tensión arterial."> + > + ["at1002"] = < + text = <"Sentado"> + description = <"Sentado (en la cama o en una silla) durante el registro de la presión arterial "> + > + ["at1003"] = < + text = <"Reclinado"> + description = <"Reclinado (semisentado) durante el registro de la presión arterial"> + > + ["at1004"] = < + text = <"Acostado"> + description = <"Acostado horizontal durante la medición de la presión arterial"> + > + ["id1006"] = < + text = <"Inclinación"> + description = <"La inclinación craneo-caudal de la superficie sobre la cual el sujeto esta acostado al momento de la medición"> + > + ["id1007"] = < + text = <"Presión Arterial Media"> + description = <"La presión arterial promedio que ocurre durante el ciclo entero de la contracción y relajación del corazon"> + > + ["id1008"] = < + text = <"Presión de Pulso"> + description = <"La diferencia entre la presión sistólica y la presión diastólica"> + > + ["at1009"] = < + text = <"Adulto pequeño"> + description = <"Un manguito usado para adulto pequeño - cámara de caucho approximadamente de 10cm x 24cm."> + > + ["at1010"] = < + text = <"Pediátrico/Niño"> + description = <"Un manguito que es apropiado para un niño o un adulto con brazos delgados - cámara de caucho approximadamente 8cm x 21cm."> + > + ["id1011"] = < + text = <"Punto final diastólica"> + description = <"Registro usando los sonidos de Korotkoff para determinar la presión diastólica"> + > + ["at1012"] = < + text = <"Fase IV"> + description = <"El cuarto sonido de Korotkoff se identifica como una abrupta amortiguación de sonidos."> + > + ["at1013"] = < + text = <"Fase V"> + description = <"El quinto sonido de Korotkoff se identifica como la ausencia de sonidos a medida que la presión del manguito insuflado cae por debajo de la presión arterial diastólica."> + > + ["at1015"] = < + text = <"Acostado e inclinado levemente sobre su costado izquierdo"> + description = <"Acostado horizontal e inclinado levemente sobre su costado izquierdo. Comúnmente se requiere durante el último trimestre del embarazo para aliviar la compresión aortocava."> + > + ["at1019"] = < + text = <"Infantil"> + description = <"Un manguito usado para infantes - cámara de caucho approximadamente de 5cm x 15cm."> + > + ["at1020"] = < + text = <"Neonatal"> + description = <"Un manguito usado para neonatos, asumiendo que es del tamaño adecuado para la madurez y el peso corporal del neonato."> + > + ["at1021"] = < + text = <"Muñeca derecha"> + description = <"La muñeca derecha del individuo."> + > + ["at1022"] = < + text = <"Muñeca izquierda"> + description = <"La muñeca inquierda del individuo."> + > + ["id1026"] = < + text = <"Dispositivo"> + description = <"Detalles del esfingomanómetro u otro dispositivo usado para medir la presión arterial."> + > + ["at1027"] = < + text = <"Tobillo derecho "> + description = <"El tobillo derecho del individuo."> + > + ["id1031"] = < + text = <"Ejercicio"> + description = <"Detalles de la actividad física realizados durante la medición de la presión arterial "> + > + ["at1032"] = < + text = <"Tobillo izquierdo"> + description = <"El tobillo izquierdo del individuo"> + > + ["at1033"] = < + text = <"Dedo"> + description = <"Un dedo del individuo. La identificación del dedo puede ser registrado en el data elemento: 'Localización específica' si se requiere. "> + > + ["id1034"] = < + text = <"Localización"> + description = <"Localización del cuerpo donde se mide la presión arterial. Use 'Localización de la medida' para seleccionar los sitios más comunes. Use 'Localización específica' para registrar detalles mas específicos o un sitio que no pertenece al conjunto mas común o para referirse a una terminología externa."> + > + ["id1035"] = < + text = <"Localización específica"> + description = <"Detalles específicos sobre el sitio corporal donde se registro la presión arterial"> + > + ["id1036"] = < + text = <"Método"> + description = <"Método de la medición de la presión arterial"> + > + ["at1037"] = < + text = <"Auscultación"> + description = <"Método de la medición de la presión arterial externa, usando un estetoscopio y los sonidos de Korotkoff"> + > + ["at1038"] = < + text = <"Palpación"> + description = <"Método de medición de la presión arterial externa, usando palpación (normalmente de la arteria humeral o radial)."> + > + ["id1039"] = < + text = <"Fórmula de la Presión Arterial Media (PAM)"> + description = <"Fórmula usada para calcular la PAM (si se registra en el campo data)"> + > + ["at1040"] = < + text = <"Máquina"> + description = <"Método de medición de la presión arterial externa, utilizando un monitor automático (mecánico) de presión arterial"> + > + ["at1041"] = < + text = <"Invasivo"> + description = <"Método de medición de la presión arterial interna o sea invasiva: punción de la piel y la introducción de un cateter para medir dentro de un vaso sanguíneo."> + > + ["id1043"] = < + text = <"Promedio de 24 horas"> + description = <"Estimativo de la media de la presión arterial sobre un período de 24 horas"> + > + ["id1044"] = < + text = <"Estado del sueño"> + description = <"Estado del sueño - soporta la interpretación de los registros de presión arterial ambulatorios de 24 horas"> + > + ["at1045"] = < + text = <"Alerta y despierto"> + description = <"El sujeto esta plenamente consciente"> + > + ["at1046"] = < + text = <"Dormido"> + description = <"El sujeto esta en un estado natural de sueño corporal"> + > + ["at1052"] = < + text = <"Dedo del pie"> + description = <"Un dedo del pie del individuo. La identificación del dedo del pie puede ser registrado en el data elemento: 'Localización específica' si se requiere. "> + > + ["id1053"] = < + text = <"Factores confluentes"> + description = <"Comentario y registro sobre otros factores que pueden incidir sobre la medición de la presión arterial. Por ejemplo: nivel de ansiedad o \"síndrome del guardapolvo blanco\"; dolor o fiebre; cambios en la presión atmosférica etc."> + > + ["at1054"] = < + text = <"Intra-arterial"> + description = <"Medición invasiva mediante una vía de acceso transductor, dentro de la arteria. La localización del transductor puede ser registrado en el data elemento: 'Localización específica' si se requiere. "> + > + ["at1055"] = < + text = <"*Pressure (en)"> + description = <"*Pressure (en)"> + > + ["at1056"] = < + text = <"*Angle, plane (en)"> + description = <"*Angle, plane (en)"> + > + ["at1057"] = < + text = <"*mean (en)"> + description = <"*mean (en)"> + > + ["ac1"] = < + text = <"Posición (synthesised)"> + description = <"La posición del individuo en el momento del registro. (synthesised)"> + > + ["ac2"] = < + text = <"Estado del sueño (synthesised)"> + description = <"Estado del sueño - soporta la interpretación de los registros de presión arterial ambulatorios de 24 horas (synthesised)"> + > + ["ac3"] = < + text = <"Tamaño del manguito (synthesised)"> + description = <"El tamaño del manguito usado para la toma de la presión arterial (synthesised)"> + > + ["ac4"] = < + text = <"Localización de la medida (synthesised)"> + description = <"Sitios comunes del cuerpo donde se registra la presión arterial (synthesised)"> + > + ["ac5"] = < + text = <"Método (synthesised)"> + description = <"Método de la medición de la presión arterial (synthesised)"> + > + ["ac6"] = < + text = <"Punto final diastólica (synthesised)"> + description = <"Registro usando los sonidos de Korotkoff para determinar la presión diastólica (synthesised)"> + > + > + ["pt-br"] = < + ["id1"] = < + text = <"Pressão Arterial"> + description = <"A medida local da pressão sanguínea arterial, a qual é uma substituta da pressão arterial na circulação arterial sistêmica. Mais comumente o uso do termo pressão arterial se refere à medida da pressão da artéria braquial no antebraço."> + > + ["id2"] = < + text = <"história"> + description = <"nodo Estrutural história"> + > + ["id5"] = < + text = <"Sistólica"> + description = <"Pressão arterial sistêmica máxima - medida na fase sistólica ou de contração do ciclo cardíaco."> + > + ["id6"] = < + text = <"Diastólica"> + description = <"Pressão arterial sistêmica mínima - medida na fase diastólica ou de dilatação do ciclo cardíaco."> + > + ["id7"] = < + text = <"qualquer evento"> + description = <"evento Default, padrão predeterminado"> + > + ["id9"] = < + text = <"Posição"> + description = <"A posição do sujeito na hora da medida."> + > + ["id12"] = < + text = <"estrutura de lista"> + description = <"estrutura de lista"> + > + ["id14"] = < + text = <"Tamanho da braçadeira"> + description = <"Tamanho da braçadeira usada para medir a pressão arterial."> + > + ["id15"] = < + text = <"Local de Medida"> + description = <"Locais do corpo mais comuns onde a pressão arterial é medida."> + > + ["at16"] = < + text = <"Coxa de adulto"> + description = <"Uma braçadeira usada na coxa de um aduto - manguito de aproximadamente 20cm x 42cm."> + > + ["at17"] = < + text = <"Adulto Grande"> + description = <"Uma braçadeira para adultos com braço largo - manguito de aproximadamente 16cm x 38cm."> + > + ["at18"] = < + text = <"Adulto"> + description = <"Uma braçadeira padrão para adultos - manguito de aproximadamente 13cm x 30cm."> + > + ["at26"] = < + text = <"Braço direito"> + description = <"O braço direito da pessoa."> + > + ["at27"] = < + text = <"Braço esquerdo"> + description = <"O braço esquerdo da pessoa."> + > + ["at28"] = < + text = <"Coxa direita"> + description = <"A coxa direita da pessoa."> + > + ["at29"] = < + text = <"Coxa esquerda"> + description = <"A coxa esquerda da pessoa."> + > + ["id34"] = < + text = <"Comentários"> + description = <"Comentários sobre a medida da pressão arterial."> + > + ["at1001"] = < + text = <"Em pé"> + description = <"Em pé na hora da medida da pressão arterial."> + > + ["at1002"] = < + text = <"Sentado"> + description = <"Sentado (por exemplo na cama ou em uma cadeira) na hora da medida da pressão arterial."> + > + ["at1003"] = < + text = <"Reclinado"> + description = <"Reclinado na hora da medida da pressão arterial."> + > + ["at1004"] = < + text = <"Deitado"> + description = <"Deitado sem reclinação hora da medida da pressão arterial."> + > + ["id1006"] = < + text = <"Nível de inclinação"> + description = <"O nível de inclinação crânio-caudal da superfície sobre a qual a pessoa está deitada no momento da medição."> + > + ["id1007"] = < + text = <"Pressão arterial Média"> + description = <"A pressão arterial média que ocorrre ao longo de todo o ciclo de contração e dilatação do coração."> + > + ["id1008"] = < + text = <"Pressão de Pulso"> + description = <"A diferença entre a pressão sistólica e diastólica."> + > + ["at1009"] = < + text = <"Adulto pequeno"> + description = <"Uma braçadeira usada para adultos pequenos -manguito de aproximadamente 10cm x 24cm."> + > + ["at1010"] = < + text = <"Criança/Pediátrico"> + description = <"Manguito apropriao para uma criança ou um adulto com um braço fino - bolsa de aproximadamente 8cm x 21cm."> + > + ["id1011"] = < + text = <"Final da diástole"> + description = <"Registro do som Korotkoff usado para determinar a pressão arterial diastólica, usando o método auscultativo."> + > + ["at1012"] = < + text = <"Fhase IV."> + description = <"O quarto som de Korotkoff é identificado como um súbito abafamento dos sons."> + > + ["at1013"] = < + text = <"Phase V"> + description = <"O quinto som de Korotkoff é identificado pela ausência de sons, pois a pressão da braçadeira cai abaixo da pressão diastólica do sangue."> + > + ["at1015"] = < + text = <"Deitado com inclinação para esquerda"> + description = <"Deitado sem reclinação com alguma inclinação lateral, usualmente com angulação para o lado esquerdo. Comumente requerido no último trimestre da gravidez para aliviar a compressão aortocaval."> + > + ["at1019"] = < + text = <"Criança pequena "> + description = <"Uma braçadeira utilizada em crianças pequenas - manguito de aproximadamente 5cm x 15cm."> + > + ["at1020"] = < + text = <"Neonatal"> + description = <"Uma braçadeira usada para um recém-nascido, supondo que o tamanho é apropriado para a maturidade e o peso ao nascer do neonato."> + > + ["at1021"] = < + text = <"Pulso direito"> + description = <"O pulso direito da pessoa."> + > + ["at1022"] = < + text = <"Pulso esquerdo"> + description = <"O pulso esquerdo da pessoa."> + > + ["id1026"] = < + text = <"Aparelho"> + description = <"Detalhes sobre o esfigmomanômetro ou outro aparelho utilizado para medir a pressão sanguínea."> + > + ["at1027"] = < + text = <"Tornozelo direito"> + description = <"O tornozelo direito da pessoa."> + > + ["id1031"] = < + text = <"Esforço físico"> + description = <"Detalhes sobre atividade física realizada na hora da medida da pressão arterial."> + > + ["at1032"] = < + text = <"Tornozelo esquerdo"> + description = <"O tornozelo esquerdo da pessoa."> + > + ["at1033"] = < + text = <"Dedo da mão"> + description = <"O dedo da mão da pessoa. A identificação do dedo pode ser registrada no elemento de dado 'Local Específico', se requerido."> + > + ["id1034"] = < + text = <"Local"> + description = <"Local do corpo onde foi medida a pressão arterial. Use 'Local da Medida' para selecionar entre os locais mais comuns. Use 'Local Específico' para registrar detalhes mais específicos ou um local que não está representado no conjunto comum ou para se referenciar a uma terminologia externa."> + > + ["id1035"] = < + text = <"Local Específico"> + description = <"Detalhes específicos sobre o local do corpo onde a pressão arterial é registrada."> + > + ["id1036"] = < + text = <"Método"> + description = <"Método de medida da pressão arterial."> + > + ["at1037"] = < + text = <"Ausculta"> + description = <"Método de medir a pressão externamente, usando o estetoscópiso e os sons Korotkoff."> + > + ["at1038"] = < + text = <"Palpação"> + description = <"Método de medir a pressão arterial externamente, usando a palpação (geralmente artérias braquiais ou radiais)."> + > + ["id1039"] = < + text = <"Fórmula de Pressão Arterial Média"> + description = <"Fórmula usada para calcular a pressão arterial média (PAM), se registrada em dados."> + > + ["at1040"] = < + text = <"Aparelho de pressão"> + description = <"Método de medir a pressão arterial externamente, usando o aparelho de pressão arterial."> + > + ["at1041"] = < + text = <"Invasivo"> + description = <"Método de medir a pressão arterial internamente, isto é, envolvendo a penetração da pele e a medida interior dos vasos sanguíneos."> + > + ["id1043"] = < + text = <"Media de 24 horas"> + description = <"Estimativa da pressão arterial média em um período de 24 horas."> + > + ["id1044"] = < + text = <"Status do sono"> + description = <"Status do sono - apóia a interpretação do registro do mapa de pressão arterial (ambulatorial de 24 horas)."> + > + ["at1045"] = < + text = <"Alerta e acordado"> + description = <"Sujeito está totalmente consciente."> + > + ["at1046"] = < + text = <"Dormindo"> + description = <"Sujeito está no estado natural de descanso corporal."> + > + ["at1052"] = < + text = <"Dedo do pé"> + description = <"O dedo do pé da pessoa. A identificação do dedo do pé pode ser registrada no elemento de dado 'Local Específico', se requerido."> + > + ["id1053"] = < + text = <"Fatores confundidores"> + description = <"Comentários sobre e registros de outros fatores incidentais que possam estar contribuindo na medida da pressão sanguínea. Por exemplo, nível de ansiedade ou \"síndrome do jaleco branco\"; dor ou febre; mudanças na pressão atmosférica, etc."> + > + ["at1054"] = < + text = <"Intra-arterial"> + description = <"Medida invasiva da pressão em uma artéria acessada por um cateter . Local do transductor pode ser registrado no elemento de dado 'Local Específico', se requerido."> + > + ["at1055"] = < + text = <"*Pressure (en)"> + description = <"*Pressure (en)"> + > + ["at1056"] = < + text = <"*Angle, plane (en)"> + description = <"*Angle, plane (en)"> + > + ["at1057"] = < + text = <"*mean (en)"> + description = <"*mean (en)"> + > + ["ac1"] = < + text = <"Posição (synthesised)"> + description = <"A posição do sujeito na hora da medida. (synthesised)"> + > + ["ac2"] = < + text = <"Status do sono (synthesised)"> + description = <"Status do sono - apóia a interpretação do registro do mapa de pressão arterial (ambulatorial de 24 horas). (synthesised)"> + > + ["ac3"] = < + text = <"Tamanho da braçadeira (synthesised)"> + description = <"Tamanho da braçadeira usada para medir a pressão arterial. (synthesised)"> + > + ["ac4"] = < + text = <"Local de Medida (synthesised)"> + description = <"Locais do corpo mais comuns onde a pressão arterial é medida. (synthesised)"> + > + ["ac5"] = < + text = <"Método (synthesised)"> + description = <"Método de medida da pressão arterial. (synthesised)"> + > + ["ac6"] = < + text = <"Final da diástole (synthesised)"> + description = <"Registro do som Korotkoff usado para determinar a pressão arterial diastólica, usando o método auscultativo. (synthesised)"> + > + > + ["ko"] = < + ["id1"] = < + text = <"혈압"> + description = <"체순환에서 동맥압을 대신하는 동맥혈압의 국소 측정. 보통은 '혈압'이라는 용어의 사용은 상완에서 상완동맥의 측정을 의미함."> + > + ["id2"] = < + text = <"*history(en)"> + description = <"*History Structural node.(en)"> + > + ["id5"] = < + text = <"수축기"> + description = <"최대 체동맥 혈압 - 심장 싸이클의 수축기에서 측정."> + > + ["id6"] = < + text = <"이완기"> + description = <"최소 체동맥 혈압 - 심장 싸이클의 이완기에서 측정됨."> + > + ["id7"] = < + text = <"*any event(en)"> + description = <"*Default event.(en)"> + > + ["id9"] = < + text = <"자세"> + description = <"측정 시에 대상의 자세"> + > + ["id12"] = < + text = <"*Tree(en)"> + description = <"*List structure.(en)"> + > + ["id14"] = < + text = <"Cuff 크기"> + description = <"혈압 측정을 위해 사용되는 cuff의 크기."> + > + ["id15"] = < + text = <"*측정 위치(ko)"> + description = <"*혈압이 기록되는 일반적인 신체 위치(Common body sites).(ko)"> + > + ["at16"] = < + text = <"성인 허벅지"> + description = <"성인 허벅지을 위한 cuff - bladder가 약 20cm x 42cm."> + > + ["at17"] = < + text = <"*큰 성인(ko)"> + description = <"*큰 팔을 가진 성인을 위한 cuff - bladder가 약 16cm x 38cm.(ko)"> + > + ["at18"] = < + text = <"*성인(ko)"> + description = <"*성인을 위한 표준인 cuff - bladder가 약 13cm x 30cm.(ko)"> + > + ["at26"] = < + text = <"*우측 팔(ko)"> + description = <"*사람의 우측 팔.(ko)"> + > + ["at27"] = < + text = <"*좌측 팔(ko)"> + description = <"*사람의 좌측 팔.(ko)"> + > + ["at28"] = < + text = <"*우측 허벅지(ko)"> + description = <"*사람의 우측 허벅지.(ko)"> + > + ["at29"] = < + text = <"*좌측 허벅지(ko)"> + description = <"*사람의 좌측 허벅지.(ko)"> + > + ["id34"] = < + text = <"*코멘트(ko)"> + description = <"*혈압 측정에 관한 코멘트.(ko)"> + > + ["at1001"] = < + text = <"선 자세"> + description = <"혈압측정 시에 서있는 자세."> + > + ["at1002"] = < + text = <"앉은 자세"> + description = <"혈압 측정시에 앉은 자세(침대 또는 의자)."> + > + ["at1003"] = < + text = <"비스듬한 자세"> + description = <"혈압 측정시에 비스듬한 자세(reclining)."> + > + ["at1004"] = < + text = <"누운 자세"> + description = <"혈압 측정시에 바로 누운 자세."> + > + ["id1006"] = < + text = <"기울림(Tilt)"> + description = <"측정 시에 사람이 누워있는 면의 기울임 상태."> + > + ["id1007"] = < + text = <"평균 동맥압"> + description = <"심장의 수축과 이완 싸이클 전체과정 동안에 발생하는 평균 동맥압."> + > + ["id1008"] = < + text = <"맥압"> + description = <"수축기와 이완기 혈압 간의 차이."> + > + ["at1009"] = < + text = <"*작은 성인(ko)"> + description = <"*작은 성인을 위해 사용되는 cuff - bladder가 약 10cm x 24cm.(ko)"> + > + ["at1010"] = < + text = <"*소아/아동(ko)"> + description = <"*아동이나 얋은 팔을 가진 성인에게 적합한 cuff - bladder가 약 8cm x 21cm.(ko)"> + > + ["id1011"] = < + text = <"*이완기 종점(ko)"> + description = <"*청진법을 이용하여 이완기 압력을 결정하는데 사용되는 Korotkoff sound를 기록.(ko)"> + > + ["at1012"] = < + text = <"*Phase IV(en)"> + description = <"*4번째 Korotkoff sound가 갑작스런 약해지는 소리로 확인된다.(ko)"> + > + ["at1013"] = < + text = <"*Phase V(en)"> + description = <"*5번째 Korotkoff sound는 cuff 압력이 이완기 혈압 아래로 떨어져 소리가 없어짐으로써 확인된다.(ko) + +"> + > + ["at1015"] = < + text = <"왼쪽으로 누운 자세"> + description = <"보통 왼쪽으로 기울린, 옆쪽으로 기울여 누운 자세. 보통 임신 3기에 동정맥압력을 완화하기위해 필요함."> + > + ["at1019"] = < + text = <"*영아(ko)"> + description = <"*영아을 위해 사용되는 cuff - bladder가 약 5cm x 15cm.(ko)"> + > + ["at1020"] = < + text = <"*신생아(ko)"> + description = <"*신생아를 위해 사용되는 cuff, cuff는 신생아의 성숙도와 몸무게에 대한 적절한 크기가 가정됨.(ko)"> + > + ["at1021"] = < + text = <"*우측 손목(ko)"> + description = <"*대상의 우측 손목.(ko)"> + > + ["at1022"] = < + text = <"*좌측 손목(ko)"> + description = <"*대상의 좌측 손목.(ko)"> + > + ["id1026"] = < + text = <"*장비(ko)"> + description = <"*혈압을 측정하는데 사용되는 혈압계 또는 기타 장비에 대한 상세내용.(ko)"> + > + ["at1027"] = < + text = <"*우측 발목(ko)"> + description = <"*대상의 우측 발목.(ko)"> + > + ["id1031"] = < + text = <"노력"> + description = <"혈압 측정시에 수행 중인 육체활동에 대한 상세내용."> + > + ["at1032"] = < + text = <"*좌측 발목(ko)"> + description = <"**대상의 좌측 발목.(ko)"> + > + ["at1033"] = < + text = <"*손가락(ko)"> + description = <"*대상의 손가락. 필요하다면 손가락의 식별은 'Specific Location' data element에 기록될 수 있다.(ko)"> + > + ["id1034"] = < + text = <"*위치(ko)"> + description = <"*혈압이 측정되는 신체 위치. Common site에서 선택된 'Location of measurement'를 사용. 특정한 상세내용 또는 common set에 없는 위치를 기록 혹은 외부 용어체계를 참조하기 위해서는 'Specific location'를 사용.(ko) + + + +"> + > + ["id1035"] = < + text = <"*특정 위치(Specific location)(ko)"> + description = <"*혈압이 기록되는 신체 위치에 대한 특별한 상세내역.(ko)"> + > + ["id1036"] = < + text = <"*측정 방법(ko)"> + description = <"*혈압 측정의 방법.(ko)"> + > + ["at1037"] = < + text = <"*청진(ko)"> + description = <"*청진기와 Korotkoff sounds을 사용하여 외부에서 혈압을 측정하는 방법.(ko)"> + > + ["at1038"] = < + text = <"*타진(ko)"> + description = <"*(보통 상완 또는 요골동맥의) 타진을 사용하여 외부에서 혈압을 측정하는 방법.(ko)"> + > + ["id1039"] = < + text = <"*평균 동맥압 공식(ko)"> + description = <"*(데이터 내에 기록되어 있다면) MAP를 계산하는데 사용되는 공식.(ko)"> + > + ["at1040"] = < + text = <"*장비(ko)"> + description = <"*혈압 측정 장비를 사용하여 외부에서 혈압을 측정하는 방법.(ko)"> + > + ["at1041"] = < + text = <"*침습적 방법(ko)"> + description = <"*내부에서 즉 피부를 통과하여 혈관 내에서 혈압을 측정하는 방법.(ko)"> + > + ["id1043"] = < + text = <"24시간 평균"> + description = <"24시간 동안의 평균 혈압의 추정."> + > + ["id1044"] = < + text = <"수면 상태"> + description = <"수면 상태 - 24시간 활동 혈압기록에 대한 해석 지원."> + > + ["at1045"] = < + text = <"각성과 기상 상태"> + description = <"대상은 완전한 의식이 있다."> + > + ["at1046"] = < + text = <"수면 상태"> + description = <"대상은 신체적으로 자연적인 휴식 상태에 있다."> + > + ["at1052"] = < + text = <"*발가락(ko)"> + description = <"*대상의 발가락. 필요하다면 발가락의 식별은 'Specific Location' data element에 기록될 수 있다.(ko)"> + > + ["id1053"] = < + text = <"혼란변수"> + description = <"혈압측정에 영향을 줄 수 있는 기타 우연한 변수들에 대한 코멘트와 기록. 예를 들어, 불안 또는 '백의신드롬'의 레벨; 통증 또는 발열; 대기압의 변화 등."> + > + ["at1054"] = < + text = <"*동맥 내(ko)"> + description = <"*동맥 내에 탐촉자 접근 선(transducer access line)을 통한 침습적인 측정. 필요하다면 탐촉자의 위치는 'Specific Location' data element에 기록될 수 있다.(ko)"> + > + ["at1055"] = < + text = <"*Pressure (en)"> + description = <"*Pressure (en)"> + > + ["at1056"] = < + text = <"*Angle, plane (en)"> + description = <"*Angle, plane (en)"> + > + ["at1057"] = < + text = <"*mean (en)"> + description = <"*mean (en)"> + > + ["ac1"] = < + text = <"자세 (synthesised)"> + description = <"측정 시에 대상의 자세 (synthesised)"> + > + ["ac2"] = < + text = <"수면 상태 (synthesised)"> + description = <"수면 상태 - 24시간 활동 혈압기록에 대한 해석 지원. (synthesised)"> + > + ["ac3"] = < + text = <"Cuff 크기 (synthesised)"> + description = <"혈압 측정을 위해 사용되는 cuff의 크기. (synthesised)"> + > + ["ac4"] = < + text = <"*측정 위치(ko) (synthesised)"> + description = <"*혈압이 기록되는 일반적인 신체 위치(Common body sites).(ko) (synthesised)"> + > + ["ac5"] = < + text = <"*측정 방법(ko) (synthesised)"> + description = <"*혈압 측정의 방법.(ko) (synthesised)"> + > + ["ac6"] = < + text = <"*이완기 종점(ko) (synthesised)"> + description = <"*청진법을 이용하여 이완기 압력을 결정하는데 사용되는 Korotkoff sound를 기록.(ko) (synthesised)"> + > + > + ["es"] = < + ["id1"] = < + text = <"Presión arterial"> + description = <"Medida de la presión arterial"> + > + ["id2"] = < + text = <"*history(en)"> + description = <"*History Structural node.(en)"> + > + ["id5"] = < + text = <"Sistólica"> + description = <"Presión arterial sistólica"> + > + ["id6"] = < + text = <"Diastólica"> + description = <"Presión arterial diastólica"> + > + ["id7"] = < + text = <"*any event(en)"> + description = <"*Default event.(en)"> + > + ["id9"] = < + text = <"Posición"> + description = <"Posición del paciente en el momento de la medida"> + > + ["id12"] = < + text = <"*Tree(en)"> + description = <"*List structure.(en)"> + > + ["id14"] = < + text = <"Tamaño del manguito"> + description = <"Tamaño del manguito utilizado para medir la presión"> + > + ["id15"] = < + text = <"Ubicación de la medida"> + description = <"Sitios comunes del cuerpo dónde se realizan medidas de presión arterial"> + > + ["at16"] = < + text = <"Muslo adulto"> + description = <"El tamaño del manguito es para un muslo adulto 20cm x 42cm aprox"> + > + ["at17"] = < + text = <"Adulto grande"> + description = <"El tamaño del manguito es de un adulto grande 16cm x 38cm aprox"> + > + ["at18"] = < + text = <"Adulto"> + description = <"El tamaño del manguito es para un adulto promedio 13cm x 30cm aprox"> + > + ["at26"] = < + text = <"Brazo derecho"> + description = <"Brazo derecho del paciente"> + > + ["at27"] = < + text = <"Brazo izquierdo"> + description = <"Brazo izquierdo del paciente"> + > + ["at28"] = < + text = <"Muslo derecho"> + description = <"Muslo derecho del paciente"> + > + ["at29"] = < + text = <"Muslo izquierdo"> + description = <"Muslo izquierdo del paciente"> + > + ["id34"] = < + text = <"Comentario"> + description = <"Comentario sobre la medida de la presión arterial"> + > + ["at1001"] = < + text = <"Parado"> + description = <"El paciente está parado en el momento de la medida"> + > + ["at1002"] = < + text = <"Sentado"> + description = <"El paciente está sentado en el momento de la medida"> + > + ["at1003"] = < + text = <"Reclinado"> + description = <"El paciente está reclinado en el momento de la medida"> + > + ["at1004"] = < + text = <"Acostado"> + description = <"El paciente está acostado en el momento de la meidda"> + > + ["id1006"] = < + text = <"Inclinado"> + description = <"El paciente se encuentra acostado sobre una superficie inclinada"> + > + ["id1007"] = < + text = <"Presión arterial media"> + description = <"Promedio del a presión arterial que ocurre en el ciclo completo de contracción y relajación del corazón."> + > + ["id1008"] = < + text = <"Presión del pulso"> + description = <"Diferencia entre la presión sistólica y la diastólica."> + > + ["at1009"] = < + text = <"Adulto pequeño"> + description = <"Tamaño del manguito para un adulto pequeño 10cm x 24cm aprox"> + > + ["at1010"] = < + text = <"Pediátrico"> + description = <"Tamaño del manguito pediátrico 8cm x 21cm aprox"> + > + ["id1011"] = < + text = <"Punto final diastólica"> + description = <"Registra que sonido de Korotkoff se utiliza para determinar la presión arterial utilizando el método auscultativo"> + > + ["at1012"] = < + text = <"Fase IV"> + description = <"El cuarto sonido de Korotkoff es identificado como amortiguación abrupta de sonidos"> + > + ["at1013"] = < + text = <"Fase V"> + description = <"El quinto sonido de Korotkoff se identifica con la ausencia de sonidos a medida que la presión del manguito decrece por debajo de la presión diastólica"> + > + ["at1015"] = < + text = <"Acostado inclinado hacia la izquierda"> + description = <"Acostado con inclinación lateral hacia la izquierda"> + > + ["at1019"] = < + text = <"Infante"> + description = <"Tamaño del manguito para infantes 5cm x 15cm aprox"> + > + ["at1020"] = < + text = <"Neonato"> + description = <"Tamaño del manguito para un neonato"> + > + ["at1021"] = < + text = <"Muñeca derecha"> + description = <"Muñeca derecha del paciente"> + > + ["at1022"] = < + text = <"Muñeca izquierda"> + description = <"Muñeca izquierda del paciente"> + > + ["id1026"] = < + text = <"Dispositivo"> + description = <"Detalles del tensiómetro u otro dispositivo utilizado para medir la presión arterial"> + > + ["at1027"] = < + text = <"Tobillo derecho"> + description = <"Tobillo derecho del paciente"> + > + ["id1031"] = < + text = <"Ejercicio"> + description = <"Detalles sobre actividad física durante la medida de la presión arterial"> + > + ["at1032"] = < + text = <"Tobillo izquierdo"> + description = <"Tobillo izquierdo del paciente"> + > + ["at1033"] = < + text = <"Dedo de la mano"> + description = <"Dedo de la mano del paciente. El dedo específico puede ser registrado en la ubicación específica."> + > + ["id1034"] = < + text = <"Ubicación"> + description = <"Ubicación del cuerpo donde se realiza la medida."> + > + ["id1035"] = < + text = <"Ubicación específica"> + description = <"Ubicación específica del lugar del cuerpo donde se hizo la medida de la presión"> + > + ["id1036"] = < + text = <"Método"> + description = <"Método de medida de la presión"> + > + ["at1037"] = < + text = <"Auscultación"> + description = <"Método de medida externo, utilizando un estetoscopio y los sonidos de Korotkoff"> + > + ["at1038"] = < + text = <"Palpación"> + description = <"Método de medida externo, utilizando palpación, en general de la arteria braquial o radial"> + > + ["id1039"] = < + text = <"Fórmula de la presión arterial media"> + description = <"Fórmula utilizada para medir la presión arterial media"> + > + ["at1040"] = < + text = <"Dispositivo"> + description = <"Método de medida externo mediante un dispositivo o máquina"> + > + ["at1041"] = < + text = <"Invasivo"> + description = <"Método de medida interno, involucra penetración de la piel y medida dentro de los vasos sanguíneos"> + > + ["id1043"] = < + text = <"promedio en 24 horas"> + description = <"Estimación de la presión arterial promedio dentro de las 24 horas"> + > + ["id1044"] = < + text = <"Estado de sueño"> + description = <"Soporta la interpretación de los registros de presión arterial ambulatoria de 24 horas"> + > + ["at1045"] = < + text = <"alerta y despierto"> + description = <"El paciente está totalmente conciente"> + > + ["at1046"] = < + text = <"Durmiendo"> + description = <"El paciente está durmiendo"> + > + ["at1052"] = < + text = <"Dedo del pie"> + description = <"Dedo del pie del paciente. El dedo específico puede ser registrado en la ubicación específica."> + > + ["id1053"] = < + text = <"Factores de confusión"> + description = <"Registro de factores que pueden afectar la medida"> + > + ["at1054"] = < + text = <"Intra-arterial"> + description = <"Método invasivo de toma de la presión intra-arterial"> + > + ["at1055"] = < + text = <"*Pressure (en)"> + description = <"*Pressure (en)"> + > + ["at1056"] = < + text = <"*Angle, plane (en)"> + description = <"*Angle, plane (en)"> + > + ["at1057"] = < + text = <"*mean (en)"> + description = <"*mean (en)"> + > + ["ac1"] = < + text = <"Posición (synthesised)"> + description = <"Posición del paciente en el momento de la medida (synthesised)"> + > + ["ac2"] = < + text = <"Estado de sueño (synthesised)"> + description = <"Soporta la interpretación de los registros de presión arterial ambulatoria de 24 horas (synthesised)"> + > + ["ac3"] = < + text = <"Tamaño del manguito (synthesised)"> + description = <"Tamaño del manguito utilizado para medir la presión (synthesised)"> + > + ["ac4"] = < + text = <"Ubicación de la medida (synthesised)"> + description = <"Sitios comunes del cuerpo dónde se realizan medidas de presión arterial (synthesised)"> + > + ["ac5"] = < + text = <"Método (synthesised)"> + description = <"Método de medida de la presión (synthesised)"> + > + ["ac6"] = < + text = <"Punto final diastólica (synthesised)"> + description = <"Registra que sonido de Korotkoff se utiliza para determinar la presión arterial utilizando el método auscultativo (synthesised)"> + > + > + > + term_bindings = < + ["SNOMED-CT"] = < + ["id1"] = + ["id5"] = + ["id6"] = + ["id14"] = + > + ["openehr"] = < + ["at1055"] = + ["at1056"] = + ["at1057"] = + > + > + value_sets = < + ["ac3"] = < + id = <"ac3"> + members = <"at16", "at17", "at18", "at1009", "at1010", "at1019", "at1020"> + > + ["ac1"] = < + id = <"ac1"> + members = <"at1001", "at1002", "at1003", "at1004", "at1015"> + > + ["ac2"] = < + id = <"ac2"> + members = <"at1045", "at1046"> + > + ["ac4"] = < + id = <"ac4"> + members = <"at26", "at27", "at28", "at29", "at1021", "at1022", "at1027", "at1032", "at1033", "at1052", "at1054"> + > + ["ac5"] = < + id = <"ac5"> + members = <"at1037", "at1038", "at1040", "at1041"> + > + ["ac6"] = < + id = <"ac6"> + members = <"at1012", "at1013"> + > + > diff --git a/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.height.v1.adls b/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.height.v1.adls new file mode 100644 index 000000000..52b7c48fa --- /dev/null +++ b/openehr-rm/src/test/resources/com/nedap/archie/flattener/openEHR-EHR-OBSERVATION.height.v1.adls @@ -0,0 +1,730 @@ +archetype (adl_version=2.0.5; rm_release=1.0.2; generated) + openEHR-EHR-OBSERVATION.height.v1.0.0 + +language + original_language = <[ISO_639-1::en]> + translations = < + ["de"] = < + language = <[ISO_639-1::de]> + author = < + ["name"] = <"Jasmin Buck, Sebastian Garde"> + ["organisation"] = <"University of Heidelberg, Ocean Informatics"> + > + > + ["zh-cn"] = < + language = <[ISO_639-1::zh-cn]> + author = < + ["name"] = <"Lin Zhang"> + ["organisation"] = <"BIPH"> + ["email"] = <"linforest@163.com"> + > + accreditation = <"?"> + > + ["ar-sy"] = < + language = <[ISO_639-1::ar-sy]> + author = < + ["name"] = <"Mona Saleh"> + > + > + ["es-ar"] = < + language = <[ISO_639-1::es-ar]> + author = < + ["name"] = <"Dr. Leonardo Der Jachadurian"> + ["organisation"] = <"Bitios.com"> + > + accreditation = <"Medical Doctor (Internal Medicine Specialist)"> + > + ["fa"] = < + language = <[ISO_639-1::fa]> + author = < + ["name"] = <"Shahla Foozonkhah"> + ["organisation"] = <"Ocean Informatics"> + > + > + ["ru"] = < + language = <[ISO_639-1::ru]> + author = < + ["name"] = <"Andrey Tsaplin"> + ["organisation"] = <"ДГП 99 г. Москвы"> + > + accreditation = <"Russian Medical State University"> + > + ["nl"] = < + language = <[ISO_639-1::nl]> + author = < + ["name"] = <"Marja Buur"> + ["organisation"] = <"Medisch Centrum Alkmaar"> + ["email"] = <"m.buur-krom@mca.nl"> + > + > + ["pt-br"] = < + language = <[ISO_639-1::pt-br]> + author = < + ["name"] = <"Marco Borges"> + ["organisation"] = <"P2D"> + ["email"] = <"marco.borges@p2d.com.br"> + > + accreditation = <"P2D Health Advisor Council"> + > + > + +description + lifecycle_state = <"unmanaged"> + original_author = < + ["name"] = <"Sam Heard"> + ["organisation"] = <"Ocean Informatics"> + ["email"] = <"sam.heard@oceaninformatics.com"> + ["date"] = <"2006-03-09"> + > + copyright = <"© openEHR Foundation"> + details = < + ["nl"] = < + language = <[ISO_639-1::nl]> + purpose = <"Registreren van de lengte van het lichaam van hoofdkruin tot voetzool van een individu - zowel werkelijke als geschatte lengte en zowel in staande als liggende positie."> + use = <"Te gebruiken voor de registratie van de werkelijke lengte/hoogte van een individu op elk moment in de tijd. Een verklaring over fysieke onvolledigheid van het lichaam kan worden opgenomen in het protocol element ‘ beïnvloedende factoren’, indien nodig. Dit is het gebruikelijke archetype voor een typische meting van de hoogte of lengte, onafhankelijk van de klinische setting. +Kan ook worden gebruikt voor het opnemen van een schatting van de lengte/hoogte meting in een klinisch scenario, waarin het niet mogelijk is om een nauwkeurige lengte te meten - bijvoorbeeld het meten van een onwillig kind. +Dit is niet expliciet gemodelleerd in het archetype, omdat het openEHR Referentie model een schatting in ieder kwantitatief data type toestaat. Bij de uitvoering, bijvoorbeeld, zou een applicatie gebruikersinterface, een adequaat geëtiketteerd selectievakje kunnen aanbieden aan clinici, naast de gegevens over het gewicht, waarin door selecteren aangegeven kan worden dat het opgenomen gewicht een schatting is, in plaats van het werkelijke gewicht. + +In het engelse taaldomein wordt er verschil gemaakt tussen hoogte (height) en lengte (length), waarbij hoogte staande gemeten wordt en lengte liggend. +In dat geval zijn lengte metingen aanbevolen voor kinderen onder de leeftijd van 2 jaar en personen die niet kunnen staan; hoogte metingen voor alle anderen. +Idealiter wordt de hoogte(NL: lengte) gemeten, staand op beide voeten met het gewicht gelijkmatig verdeeld, hielen tegen elkaar en beide billen en hakken in contact met een verticale achterkant; lichaamslengte wordt gemeten in een volledig uitgespreide rugligging met het bekken plat, benen gestrekt en voeten gebogen. +Wordt gebruikt voor het registreren van groei en verlies van lengte. Dit kan, in voorkomend geval, momenteel worden gemodelleerd, door het beperken van een 'any event', tot een interval in een template met bijbehorende rekenkundige functie van de groei of krimp."> + keywords = <"krimp", "groeien", "verlies", "lengte", "hoogte"> + misuse = <"Niet te gebruiken ter registratie van de eerste lengte van een kind, spoedig na de geboorte, welke gekenmerkd wordt als de geboortelengte - gebruik hiervoor de specialisatie van dit archetype - zie OBSERVATION.height-birth.(OBSERVATION.lengte-geboorte)."> + > + ["de"] = < + language = <[ISO_639-1::de]> + purpose = <"Zur Dokumentation der Körpergröße in einer gestreckten Position, von Scheitel bis Sohle. Dies kann sowohl genau als auch ungefähr erfolgen, und entweder in einer stehenden oder liegenden Position."> + use = <"Wird verwendet um die tatsächliche Körpegröße/-länge eines Individuums zu dokumentieren. Eine Aussage über die physische Unvollständigkeit des Körpers kann in den 'Einflussfaktoren' des Protokoll Elements dokumentiert werden. Dies ist der gewöhnliche Archetyp zur Dokumentation einer typischen Messung von Körpergröße/-länge, unabhängig von der klinischen Situation. +Der Archetyp kann auch verwendet werden, um eine geschätze Größe/Länge zu dokumentatieren, wenn es nicht möglich ist, eine genaue Messung durchzuführen, z.B. bei der Messung bei einem unkooperativen Kind. Dies ist nicht explizit in dem Archetyp modelliert, da das openEHR Referenzmodell für jeden 'Quantity' Datentyp automatisch das Attribut 'Approximation' zur Verfügung stellt. Zum Zeitpunkt der Implementiertung könnte eine Benutzerschnittstelle es den Klinikern daher ermöglichen, z.B. ein entsprechendes Kontrollkästchen zu aktivieren. +Im allgemeinen werden Längenmessungen für Kinder bis zwei Jahren empfohlen, sowie für Individuen, die nicht stehen können; Größenmessungen für alle anderen. Idealerweise wird die Größe auf beiden Beinen stehend gemessen, mit dem Gewicht gleichmäßig verteilt, den Hacken zusammen und beiden Gesäßbacken und Hacken in Kontakt mit einem senkrechten Brett. Körperlänge wird in einer voll ausgestreckten, liegenden Position gemessen; hierbei wird das Becken flach gehalten, die Beine ausgestreckt und die Füße gebeugt. +Der Archetyp wird auch benutzt, um eine Zunahme/Abnahme der Körpergröße/-länge zu dokumentieren. Dies kann z.B. in einem Template modelliert werden, indem das 'Any event' auf ein Interval eingeschränkt wird, mit der zugehörigen mathematischen Funktion 'increase' or 'decrease'."> + keywords = <"Größe", "Länge", "Wachstum", "Schrumpfung"> + misuse = <"Nicht zur Dokumentation der ersten Länge eines Neugeboren (Geburtslänge) - hier sollte der spezialisierte Archetyp OBSERVATION.height-birth verwendet werden. +Nicht zur Dokumentation der angepassten Größe oder Körperlänge - z.B. der geschätzten vollen Größe einer Person mit Kontraktur der Extremitäten, basierend auf der Messung anderer Körperteile und/oder einem Algorithmus - hier sollte der spezialisierte Archetyp OBSERVATION.height-adjusted verwendet werden. +Nicht zur Dokumentation von Wachstumsgeschwindigkeit. +Nicht zur Dokumentation der Länge eines Objekts oder spezifischen Körperteils."> + > + ["pt-br"] = < + language = <[ISO_639-1::pt-br]> + purpose = <"Para registar o comprimento do corpo de um indivíduo, medindo da coroa da cabeça a sola do pé. +A medida pode ser tanto real como aproximada, quer seja com a posição do indivíduo de pé ou em decúbito dorsal."> + use = <"Usada para gravar a altura real ou comprimento do corpo de um indivíduo a qualquer momento. +A indicação da imperfeição física do corpo pode ser gravado no elemento 'protocolo fatores de confusão', se necessário. +Este é o arquétipo de uso habitual para a medição típica de altura ou comprimento do corpo, independente da situação clínica. +Também pode ser usado para a gravação de uma altura aproximada ou de medição do comprimento do corpo em um cenário clínico no qual não é possível medir uma altura ou comprimento exato - por exemplo, a medição de uma criança que não coopera. Isso não é modelada explicitamente no arquétipo como o modelo de referência openEHR permite que o atributo de aproximação para qualquer tipo de dados quantitativos. Na execução, por exemplo, uma interface de usuário do aplicativo pode permitir que os clínicos para selecionar uma caixa de seleção devidamente setados junto ao campo de dados de altura para indicar que a altura registrada é uma aproximação, ao invés de reais. +Em geral, as medidas de comprimento são recomendados para crianças menores de dois anos de idade e indivíduos que não podem ficar, as medições de altura para todos os outros. +Idealmente, a altura é medida em pé sobre dois pés com peso distribuído uniformemente, os calcanhares unidos e as duas nádegas e calcanhares em contato com uma placa vertical para trás; comprimento do corpo é medido em uma posição totalmente estendida, supino com a pelve plana, pernas estendidas e os pés flexionados. +Use para registar um crescimento e perda de altura. Isso pode ser modelado por restringir a 'qualquer evento' a um intervalo em um modelo associado com a função matemática de aumentar ou diminuir, conforme o caso."> + keywords = <"encolhimento", "crescimento", "diminuição", "diminuição da altura", "altura", "comprimento", "crescimento"> + misuse = <"Não deve ser utilizado para gravar o primeiro comprimento de um bebê, logo após o nascimento. Para isso é designado o \"comprimento de nascimento\" - use a especialização desse arquétipo - ver OBSERVATION.height-birth. +Não deve ser utilizado para registrar a altura ajustada ou comprimento do corpo por exemplo, um cálculo da altura estimada completo de uma pessoa com contraturas dos membros, com base em medições outro corpo e / ou um algoritmo - use OBSERVATION.height-adjusted. +Não deve ser usado para registrar a velocidade de crescimento. +Não deve ser utilizado para gravar o tamanho de um objeto ou parte específica do corpo."> + > + ["fa"] = < + language = <[ISO_639-1::fa]> + purpose = <"برای ثبت طول بدن از نوک سر تا کف پای فرد- بطور واقعی و تقریبی و در حالتهای ایستاده یا خوابیده "> + use = <"برای ثبت قد یا طول واقعی یک فرد در هر نقطه از زمان بکار برده می شود.عبارتی که نواقص فیزیکی بدن را مشخص می کند می تواند درصورت نیاز در بخش پروتکل \" فاکتورهای جانبی \"ثبت شود. ازاین الگو ساز می توان در اندازه گیری های معمول قد یا طول بدن مستقل از وضع بالینی استفاده نمود. +از این الگو ساز همچنین می توان برای ثبت تقریبی اندازه گیری قد یا طول بدن در سناریوهای بالینی استفاده نمود که امکان اندازه گیری دقیق قد یا طول وجود ندارد، به عنوان مثال اندازه گیری قد یا طول کودکی که همکاری نمی کند. این مورد بطور واضح در الگوساز مدل بندی نشده است ولی مدل مرجع \"اوپن ئی اچ ار\" ویژگی تقریب را برای هر نوع داده کمی اجازه می دهد. در پیاده سازی، برای مثال، یک واسط کاربری نرم افزار می تواند به کاربران اجازه دهد تا با انتخاب گزینه ای [چک باکس] درکنار محل مربوط به قد و با نشانه گذاری مناسب نشان دهند که قد ثبت شده اندازه ای است تقریبی و نه واقعی. +بطور عمومی اندازه گیری طول بدن برای کودکان زبر 2 سال و بزرگسالانی که نمی توانند بایستند و انداز گیری قد برای سایر افراد توصیه می شود. +بطور ایده آل قد بصورت ایستاده بر هر دو پا، پاشنه ها کنار هم ، باسن و پاشنه ها در راستای خط عمودی پشت با توزیع وزن مساوی اندازه گیری می شود، طول بدن در حالت کاملا کشیده و طاقباز با لگن صاف، ساق های کشیده و پاهای جمع شده از مچ اندازه گیری می شود. +این الگوساز برای ثبت رشد و افت قد استفاده می شود. در حال حاضر با مشروط کردن \"هر رویداد\" به دوره زمانی در نظر گرفته شده در الگو با عملگرهای ریاضی مرتبط با افزایش یا کاهش بصورت مناسب مدل بندی می شود + +"> + keywords = <"انقباض", "افزایش", "کاهش", "افت قد", "قد", "طول", "رشد"> + misuse = <"برای ثبت اولین اندازه گیری نوزاد بلافاصله بعد ازتولد به عنوان \"طول نوزاد هنگام تولد\" استفاده نمی شود، در این موارد از حالت تخصصی الگوساز استفاده شود. ببینید +OBSERVATION.height-birth +برای ثبت قد یا طول بدن معادل (تطبیق یافته)، مانند محاسبه تخمینی کل قد یک فرد با اندام منقبض، بر اساس اندازه گیری های بخشهایی از بدن و یا یک الگوریتم دیگر استفاده نشود. در این موارد از +OBSERVATION.height-adjusted +استفاده کنید. +برای ثبت رشد قد استفاده نکنید +برای ثبت طول یک شی یا بخشهایی از بدن استفاده نکنید +"> + > + ["ar-sy"] = < + language = <[ISO_639-1::ar-sy]> + purpose = <"لتسجيل طول الجسم من تاج الرأس إلى أخمص القدم للفرد - يشتمل على كل من القياس التقديري و الحقيقي, سواء أكان الفرد واقفا أو مستلقيا."> + use = <"يستخدم لتسجيل الارتفاع أو الطول الحقيقي لجسم الفرد عند أي نقطة من الزمن. و هو بيان لتعريف عدم الاكتمال الجسدي للجسم, و يمكن تسجيله في عنصر العوامل المربكة, إذا لزم. +هذا هو النموذج المعتاد ليستخدم في القياس النمطي لارتفاع أو طول الجسم, مستقلا عن الإطار السريري. + +يمكن استخدامه أيضا في تسجيل قياس تقريبي لارتفاع أو طول الجسم في سيناريو سريري لا يمكن فيه قياس الطول أو الارتفاع بشكل حقيقي – مثلا, قياس طفل غير متعاون. + +و ليس هذا متمثلا بشكل صريح في هذا النموذج حيث إن النموذج المرجعي للـ open EHR +يسمح بوجود صفة التقريب لأي نوع بيانات كمي. + +و عند التنفيذ, مثلا, الشاشة الإلكترونية تسمح للأطباء السريريين أن يختاروا زرا بجوار قياس الطول ليشير إلى أنه قياس تقريبي, و ليس حقيقيا. +و بشكل عام, فإن قياسات الطول يستحسن استخدامها للأطفال أقل من عامين و للأفراد الذين لا يستطيعون الوقوف, أما قياسات الارتفاع فيمكن استخدامها لباقي الحالات. + +و الوضع المثالي لقياس الارتفاع يكون بالوقوف على القدمين مع توزيع الوزن بشكل متساوٍ, و وضع الكعبين متجاورين, و كلا الأليتين متلامستين مع لوح ظهري عمودي, و يتم قياس طول الجسم في وضع مستلقٍٍ متمدد بشكل تام مع استواء الحوض, و الأرجل ممتدة و الأقدام مرتخية. + +يستخدم لقياس النمو و النقص في الطول. و يمكن حاليا وضعه في نموذج (إحدى الوقائع) بتقييده ليمثل فاصلا في إحدى القوالب مع دالة حسابية مصاحبة لحساب الزيادة أو النقص متى كان ذلك مناسبا."> + keywords = <"الانكماش", "الزيادة", "النقص", "فقد الارتفاع", "الطول", "الارتفاع", "النمو"> + misuse = <"لا يستخدم لتسجيل أول قياس لطول المولود بعد الولادة بفترة قصيرة, و الذي يشار إليه بالطول عند الولادة - و استخدم بدلا من ذلك النموذج المخصص بعنوان ملاحظة. الطول عند الولادة. +لا يستخدم لتسجيل الطول أو الارتفاع المُصَحَّح مثل الطول الكلي التقديري للفرد الذي يعاني من تقلصات الأطراف, بناء على قياسات أجزاء أخرى من الجسم و / أو لوغاريتم - استخدم بدلا من ذلك نموذج ملاحظة . الطول المصحح. +لا يستخدم لقياس سرعة النمو. +لا يستخدم لتسجيل طول شيئ ما أو جزء معين من الجسم."> + > + ["es-ar"] = < + language = <[ISO_639-1::es-ar]> + purpose = <"Para registrar la longitud corporal desde la coronilla de la cabeza hasta la planta de los pies, en el momento actual y tanto en posición parada como recostada."> + use = <"Usar para registrar la altura o longitud corporal actuales en cualquier momento. En caso de amputaciones u otra causa de incompletitud corporal puede ser registrado en \"Factores de confusión\", si es requerido. Este es el arquetipo usual para ser usado en una medición típica de altura o longitud corporal, independientemente del contexto clínico. + +También puede ser usado para registrar una aproximación de la altura o longitud corporal en un contexto clínico donde no es posible realizar una medición exacta (Ej. en el caso de un niño que no coopera). Esto no es modelado explícitamente en el arquetipo como el modelo de referencia de openEHR permite el atributo de aproximación para cualquier tipo de dato de Cantidad. En la implementación, por ejemplo, la interfaz con el usuario de una aplicación de software podría permitir a los médicos tildar un cuadro de opción adyacente al campo de datos de Altura, para indicar que el dato registrado es una aproximación, antes que el valor medido exacto. + +En general, la medición de la longitud corporal se recomienda para niños menores a los 2 años y para individuos que no pueden permanecer de pie; medir altura para todos los demás casos. + +Idealmente, la altura es medida de pie sobre ambos pies con el peso distribuido equitativamente entre ambos, con los talones juntos y ambos glúteos y talones en contacto con una tabla posterior vertical y recta; la longitud corporal se mide en posición recostada completamente extendida, con la pelvis plana, las piernas extendidas y los pies flexionados. + +Usar para registrar el crecimiento o la pérdida de altura. Esto puede ser habitualmente modelado restringiendo \"cualquier evento\" a un intervalo en la plantilla, con una función matemática que incrementa o decrementa, según sea apropiado."> + keywords = <"contracción", "aumentar", "disminuir", "pérdida de altura", "altura", "longitud corporal", "crecimiento", "talla", "estatura"> + misuse = <"No usar para registrar la primer talla de un infante en un momento cercano a su nacimiento, usualmente denominado como \\\"altura al nacer\\\". Para este uso utilizar la especialización de este arquetipo (ver OBSERVATION.height-birth.) + +No usar para registrar la altura o la longitud corporal ajustados (Ej. el calculo de la altura total estimada de una persona con contracturas de miembros, basado en las mediciones realizadas en otras partes del cuerpo y/o un algoritmo) Usar para esta situación: OBSERVATION.height-adjusted. + +No usar para registrar velocidad de crecimiento. + +No usar para registrar la longitud de un objeto o de una parte del cuerpo específica."> + > + ["en"] = < + language = <[ISO_639-1::en]> + purpose = <"To record the length of the body from crown of head to sole of foot of an individual - both actual and approximate, and either in a standing or recumbent position."> + use = <"To be used for recording the actual height or body length of an individual at any point in time. A statement identifying the physical incompleteness of the body can be recorded in the 'Confounding factors' protocol element, if required. This is the usual archetype to be used for a typical measurement of height or body length, independent of the clinical setting. +Can also be used for recording an approximation of height or body length measurement in a clinical scenario where it is not possible to measure an accurate height or length - for example, measuring an uncooperative child. This is not modelled explicitly in the archetype as the openEHR Reference model allows the attribute of Approximation for any Quantity data type. At implementation, for example, an application user interface could allow clinicians to select an appropriately labelled check box adjacent to the Height data field to indicate that the recorded height is an approximation, rather than actual. +In general, length measurements are recommended for children under 2 years of age and individuals who cannot stand; height measurements for all others. +Ideally, height is measured standing on both feet with weight distributed evenly, heels together and both buttocks and heels in contact with a vertical back board; body length is measured in a fully extended, supine position with the pelvis flat, legs extended and feet flexed. +Use to record growth and loss of height. This can currently be modelled by constraining the 'any event' to an interval in a template with associated mathematical function of increase or decrease, as appropriate."> + keywords = <"shrinkage", "increase", "decrease", "height loss", "height", "length", "growth"> + misuse = <"Not to be used to record the first length of an infant soon after birth which is designated as their 'birth length' - use the specialisation of this archetype - see OBSERVATION.height-birth. +Not to be used to record the adjusted height or body length eg a calculation of the estimated full height of a person with limb contractures, based on other body part measurements and/or an algorithm - use OBSERVATION.height-adjusted. +Not to be used to record growth velocity. +Not to be used to record the length of an object or specific body part."> + > + ["ru"] = < + language = <[ISO_639-1::ru]> + purpose = <"Для записи длины тела человека от макушки до пяток - как фактических, так и приближенных, стоя или лежа. +"> + use = <"Для записи фактической длины тела индивида в любой момент времени. В случае необходимости физическая неполнота тела может быть записана в протоколе - элемент \"Смешанные факторы. Это обычный образец, который будет использоваться для типичного измерения длины тела, независимо от клинических условий. +Может также использоваться для записи приблизителной длины тела в клиническом сценарии, где не возможно измерить точную высоту или длину - например, у ребенка. Это обстоятельство явно не указывается в архетипе, так как модель openEHR позволяет использовать атрибут приближения для любого типа количественных данных. Например, в интерфейсе приложения пользователь может позволить врачам, выбрать надлежащим образом маркированных флажок рядом с полем данных Рост чтобы показать, что записано приблизительное значение, а не фактический. +Измерения длины тела рекомендуется для детей младше 2 лет и лицам, которые не могут стоять, рост стоя, для всех остальных. +В идеале, рост измеряется стоя на двух ногах с весом распределяется равномерно, пятки вместе, и обе ягодицы и пятки в контакте с вертикальной поверхностью, длина тела измеряется в вытянутом положении лежа таз находится на плоскости, ноги вытянуты и ноги согнуты . +Используется для записи роста (ребёнка) и потери высоты. В случае необходимости, подобное применение настоящее время может быть смоделировано путем ограничения \"any event\", до интервала, с соответствующей математической функцией увеличения или уменьшения в шаблоне. +"> + keywords = <"сжатие", "Увеличение", "снижение", "высота потери", "Высота", "Длина", "рост"> + misuse = <"Не следует использовать для записи длины тела новорожденного - использовать специализацию этого архетипа - см. OBSERVATION.height-birth. +Не следует использовать для записи скорректированной длины тела, например, расчет предполажительного роста человека с контрактурами конечностей, на основании измерения других частей телаи / или алгоритмов - используйте OBSERVATION.height-adjusted. +Не следует использовать для записи скорости роста. +Не использовать для записи длины объекта или определенной части тела."> + > + ["zh-cn"] = < + language = <[ISO_639-1::zh-cn]> + purpose = <"旨在用于记录个人身体从头顶至脚底的长度,同时适合于实测值和近似值以及直立位或卧位(平卧位)。"> + use = <"用于记录个人在任何时间点(时刻)的实际身高/身长。必要时,可在方案元素“干扰因素”(Confounding factors)之中记录表明身体残缺情况的陈述。这是适用于记录典型的身高/身长测量结果的常规原始型,与临床场合无关。 +亦可用于记录在不可能测量准确身高/身长的临床场景下关于身高/身长的近似值。例如,孩子不配合测量。当前原始型并未对这种情况加以明确建模,因为openEHR参考模型(Reference model)允许关于任何数量型(Quantity)数据类型的近似值(Approximation)属性。比如,在实施时,应用程序用户界面可以允许临床医生选择身高数据栏旁边带有合适标签的复选框,以便表示当前所记录的身高仅为近似值,而不是实测值。 +一般而言,对于不到2岁的儿童以及无法站立的患者,推荐进行身长测量,而对于其他受检对象,则进行身高测量。 +理想情况下,测量身高时,受检对象应采取直立位,即体重均匀分布于两脚,脚跟并拢且臀部和脚跟均与背后的垂直背板接触;测量身长时,受检对象应采取卧位(平卧位),即身体完全伸展的卧位(平卧位),且骨盆平展,双腿伸展,脚部屈曲。 +用于记录身高的增长或减低。当前,可以通过适当采用关联有关于增高或降低的数学函数的模板,将“任何事件”(any event)限制到特定的时间区间,从而对此加以建模。"> + keywords = <"缩短", "变矮", "增加", "增长", "增高", "减低", "降低", "减短", "高度损失", "身高降低", "身高丢失", "身高", "身长", "高度", "个子", "生长", "成长"> + misuse = <"并非旨在用于记录婴儿出生之后不久的首次身长测量结果;后者被称为“出生身长”(birth length);对此,请采用当前原始型的特化形式 - 参见出生身高原始型OBSERVATION.height-birth。 +并非旨在用于记录经过调整的身高/身长;例如,利用其他身体部分测量结果和/或某种算法,来计算存在肢体挛缩的受检对象的完整身高的估计值;对此,请采用调整型身高原始型OBSERVATION.height-adjusted。 +并非旨在用于记录身高增长速度或者说生长速度。 +并非旨在用于记录某种物体或特定身体组成部分的长度。"> + > + > + other_contributors = <"Jeroen Meintjen, Medisch Centrum Alkmaar, Netherlands", "Sebastian Garde, Ocean Informatics, Germany", "Heather Leslie, Ocean Informatics, Australia", "Omer Hotomaroglu, Turkey", "Andrew James, University of Toronto, Canada", "Anne Harbison, Australia", "Thilo Schuler, Germany", "Anneke Goossen, Results 4 Care, Netherlands", "Rikard Lovstrom, Swedish Medical Association, Sweden", "Heather Grain, Llewelyn Informatics, Australia", "Hans Demski, Helmholtz Zentrum München, Germany", "Soon Ghee Yap, Singapore Health Services Pte Ltd, Singapore", "Paul Donaldson, Nursing Informatics Australia, Australia", "Rong Chen, Cambio Healthcare Systems, Sweden", "Sundaresan Jagannathan, Scottish NHS, United Kingdom", "Ian McNicoll, Ocean Informatics, United Kingdom", "Marja Buur, Medisch Centrum Alkmaar, Netherlands"> + other_details = < + ["references"] = <"Wilks Z, Bryan S, Mead V and Davies EH. Clinical guideline: Height, measuring a child [Internet]. London, United Kingdom: UCL Institute of Child Health; 2008 Apr 01 [cited 2009 Jul 28 ]. Available from: http://www.ich.ucl.ac.uk/clinical_information/clinical_guidelines/cpg_guideline_00060"> + ["MD5-CAM-1.0.1"] = <"A4240F6ED2E696597510DB5385D3E4B4"> + > + +definition + OBSERVATION[id1] matches { -- Height/Length + data matches { + HISTORY[id2] matches { + events cardinality matches {1..*; unordered} matches { + EVENT[id3] occurrences matches {1..*} matches { -- Any event + data matches { + ITEM_TREE[id4] matches { + items cardinality matches {1..*; unordered} matches { + ELEMENT[id5] matches { -- Height/Length + value matches { + DV_QUANTITY[id21] matches { + property matches {[at22]} + [magnitude, units] matches { + [{|0.0..1000.0|}, {"cm"}], + [{|0.0..250.0|}, {"in"}] + } + } + } + } + ELEMENT[id19] occurrences matches {0..1} matches { -- Comment + value matches { + DV_TEXT[id22] + } + } + } + } + } + state matches { + ITEM_TREE[id14] matches { + items matches { + ELEMENT[id15] occurrences matches {0..1} matches { -- Position + value matches { + DV_CODED_TEXT[id23] matches { + defining_code matches {[ac1; at17]} -- Position (synthesised) + } + } + } + ELEMENT[id20] occurrences matches {0..1} matches { -- Confounding factors + value matches { + DV_TEXT[id24] + } + } + } + } + } + } + } + } + } + protocol matches { + ITEM_TREE[id8] matches { + items matches { + allow_archetype CLUSTER[id12] occurrences matches {0..1} matches { -- Device + include + archetype_id/value matches {/openEHR-EHR-CLUSTER\.device(-a-zA-Z0-9_]+)*\.v1/} + } + } + } + } + } + +terminology + term_definitions = < + ["nl"] = < + ["id1"] = < + text = <"Lengte"> + description = <"De lichaamslengte wordt gemeten vanaf de kruin van het hoofd tot en met de voetzool. In het engelse taaldomein wordt er verschil gemaakt tussen hoogte (height) en lengte (length), waarbij hoogte staande gemeten wordt en lengte liggend."> + > + ["id3"] = < + text = <"Any event"> + description = <"Op enig tijdstip gemeten lengte."> + > + ["id5"] = < + text = <"Lengte"> + description = <"De lichaamslengte vanaf de kruin van het hoofd tot en met de voetzool."> + > + ["id12"] = < + text = <"Apparaat"> + description = <"Beschrijving van het bij de meting gebruikte apparaat."> + > + ["id15"] = < + text = <"Positie"> + description = <"Positie tijdens de meting, van de gemeten persoon."> + > + ["at17"] = < + text = <"Staand"> + description = <"De lengte is gemeten, staand op beide voeten met het gewicht gelijkmatig verdeeld, hielen tegen elkaar en beide billen en hakken in contact met een verticale achterkant."> + > + ["id19"] = < + text = <"Opmerking"> + description = <"Opmerking over de meting van de lichaamslengte."> + > + ["id20"] = < + text = <"Beïnvloedende factoren"> + description = <"Vermeld ieder probleem of feit die de meting van de lengte beïnvloedt, b.v. notitie maken van een amputatie."> + > + ["at21"] = < + text = <"Liggend"> + description = <"De lengte is liggend gemeten, volledig uitgestrekt, plat bekken, benen gestrekt en voeten gebogen."> + > + ["at22"] = < + text = <"*Length (en)"> + description = <"*Length (en)"> + > + ["ac1"] = < + text = <"Positie (synthesised)"> + description = <"Positie tijdens de meting, van de gemeten persoon. (synthesised)"> + > + > + ["en"] = < + ["id1"] = < + text = <"Height/Length"> + description = <"Height, or body length, is measured from crown of head to sole of foot. Height is measured with the individual in a standing position and body length in a recumbent position."> + > + ["id3"] = < + text = <"Any event"> + description = <"Any timed measurement of height or body length."> + > + ["id5"] = < + text = <"Height/Length"> + description = <"The length of the body from crown of head to sole of foot."> + > + ["id12"] = < + text = <"Device"> + description = <"Description of the device used to measure height or body length."> + > + ["id15"] = < + text = <"Position"> + description = <"Position of individual when measured."> + > + ["at17"] = < + text = <"Standing"> + description = <"Height is measured standing on both feet with weight distributed evenly, heels together and both buttocks and heels in contact with a vertical back board."> + > + ["id19"] = < + text = <"Comment"> + description = <"Comment about the measurement of body height/length."> + > + ["id20"] = < + text = <"Confounding factors"> + description = <"Record any issues or factors that may impact on the measurement of body height/length eg noting of amputation."> + > + ["at21"] = < + text = <"Lying"> + description = <"Length is measured in a fully extended, recumbent position with the pelvis flat, legs extended and feet flexed."> + > + ["at22"] = < + text = <"Length"> + description = <"Length"> + > + ["ac1"] = < + text = <"Position (synthesised)"> + description = <"Position of individual when measured. (synthesised)"> + > + > + ["de"] = < + ["id1"] = < + text = <"Größe/Länge"> + description = <"Größe bzw. Körperlänge wird vom Scheitel bis zur Fußsohle gemessen. Größe wird in einer stehenden Position gemessen, Körperlänge in einer liegenden Position."> + > + ["id3"] = < + text = <"Any event"> + description = <"Jede zu einem Zeitpunkt gemessene Körpergröße/-länge."> + > + ["id5"] = < + text = <"Größe/Länge"> + description = <"Die Länge des Körpers von Scheitel bis Sohle."> + > + ["id12"] = < + text = <"Gerät"> + description = <"Beschreibung des Geräts, das zur Messung der Größe oder Länge verwendet wurde."> + > + ["id15"] = < + text = <"Position"> + description = <"Position des Individiums bei der Messung."> + > + ["at17"] = < + text = <"Stehend"> + description = <"Größe wird stehend auf beiden Füßen gemessen, mit dem Gewicht gleichmäßig verteilt, den Hacken zusammen und beiden Gesäßbacken und Hacken in Kontakt mit einem senkrechten Brett."> + > + ["id19"] = < + text = <"Kommentar"> + description = <"Kommentar über die Messung der Körpergröße/-länge."> + > + ["id20"] = < + text = <"Einflussfaktoren"> + description = <"Zur Dokumentation von Faktoren, die sich auf die Messung der Körpergröße/-länge auswirken können, z.B. einer Amputation."> + > + ["at21"] = < + text = <"Liegend"> + description = <"Länge wird in einer voll ausgestreckten, liegenden Position gemessen. Hierbei wird das Becken flach gehalten, die Beine ausgestreckt und die Füße gebeugt."> + > + ["at22"] = < + text = <"*Length (en)"> + description = <"*Length (en)"> + > + ["ac1"] = < + text = <"Position (synthesised)"> + description = <"Position des Individiums bei der Messung. (synthesised)"> + > + > + ["pt-br"] = < + ["id1"] = < + text = <"Altura / comprimento"> + description = <"Altura ou comprimento do corpo, é medida a partir da coroa da cabeça a sola do pé. +A altura é medida com o indivíduo na posição de pé e comprimento do corpo na posição decúbito dorsal."> + > + ["id3"] = < + text = <"Qualquer evento"> + description = <"Medida a qualquer momento da altura ou comprimento do corpo."> + > + ["id5"] = < + text = <"Altura / comprimento"> + description = <"O comprimento do corpo da coroa da cabeça a sola do pé."> + > + ["id12"] = < + text = <"Dispositivo"> + description = <"Descrição do dispositivo utilizado para medir altura ou comprimento do corpo."> + > + ["id15"] = < + text = <"Posição"> + description = <"Posição individual quando medido."> + > + ["at17"] = < + text = <"De pé"> + description = <"A altura é medida de pé sobre os dois pés com o peso distribuído uniformemente, calcanhares juntos e as nádegas e os calcanhares em contato com uma placa traseira vertical."> + > + ["id19"] = < + text = <"Comentário"> + description = <"Comentário sobre a medição da altura/comprimento do corpo."> + > + ["id20"] = < + text = <"Fatore de erro"> + description = <"Registrar quaisquer problemas ou fatores que possam ter impacto sobre a medição da altura/comprimento do corpo, por exemplo, observação de amputação."> + > + ["at21"] = < + text = <"Decúbito dorsal"> + description = <"O comprimento é medido em uma posição totalmente estendida, deitada com a pelve plana, pernas estendidas e os pés flexionados."> + > + ["at22"] = < + text = <"*Length (en)"> + description = <"*Length (en)"> + > + ["ac1"] = < + text = <"Posição (synthesised)"> + description = <"Posição individual quando medido. (synthesised)"> + > + > + ["fa"] = < + ["id1"] = < + text = <"قد و یا طول"> + description = <"قد یا طول بدن از نوک سر تا کف پا اندازه گیری می شود.بلندی در حالت ایستاده و طول بدن فرد در حالت خوابیده اندازه گیری می شود "> + > + ["id3"] = < + text = <"هر رویداد"> + description = <"اندازه گیری زمانی قد یا طول بدن"> + > + ["id5"] = < + text = <"قد و یا طول"> + description = <"طول فرد از نوک سر تا کف پا "> + > + ["id12"] = < + text = <"تجهیز"> + description = <"توصیف تجهیز استفاده شده برای اندازه گیری قد یا طول فرد"> + > + ["id15"] = < + text = <"موقعیت"> + description = <"وضعیت فرد در حال اندازه گیری"> + > + ["at17"] = < + text = <"ایستاده"> + description = <"قد بصورت ایستاده بر هر دو پا، پاشنه ها کنار هم ، باسن و پاشنه ها در راستای خط عمودی پشت با توزیع وزن مساوی اندازه گیری می شود"> + > + ["id19"] = < + text = <"نظر"> + description = <"نظر در مورد اندازه گیری قد و یا طول فرد"> + > + ["id20"] = < + text = <"فاکتورهای جانبی"> + description = <"ثبت هر گونه مساله یا فاکتوری که ممکن است روی اندازه گیری قد یا طول تاثیر داشته باشه به عنوان مثال ذکر قطع عضو"> + > + ["at21"] = < + text = <"خوابیده"> + description = <" طول در حالت کاملا کشیده و طاقباز با لگن صاف، ساق های کشیده و پاهای جمع شده از مچ پا اندازه گیری می شود"> + > + ["at22"] = < + text = <"*Length (en)"> + description = <"*Length (en)"> + > + ["ac1"] = < + text = <"موقعیت (synthesised)"> + description = <"وضعیت فرد در حال اندازه گیری (synthesised)"> + > + > + ["ar-sy"] = < + ["id1"] = < + text = <"الارتفاع / الطول"> + description = <"الارتفاع أو طول الجسم, يتم قياسه من تاج الرأس إلى أخمص القدم. يتم قياس الارتفاع عندما يكون الفرد واقفا, و طول الجسم عندما يكون الفرد مستلقيا."> + > + ["id3"] = < + text = <"إحدى الوقائع"> + description = <"قياس في لحظة زمنية معينة لطول أو ارتفاع الجسم."> + > + ["id5"] = < + text = <"الارتفاع / الطول"> + description = <"طول الجسم من تاج الرأس إلى أخمص القدم."> + > + ["id12"] = < + text = <"الجهيزة"> + description = <"وصف الجهيزة المستخدمة لقياس طول أو ارتفاع الجسم."> + > + ["id15"] = < + text = <"الوضع"> + description = <"وضع الشخص عند القياس."> + > + ["at17"] = < + text = <"واقف"> + description = <"يتم قياس الارتفاع و الفرد في وضع الوقوف على القدمين مع توزيع الوزن بشكل متساوٍ, و وضع الكعبين متجاورين, و كلا الأليتين متلامستين مع لوح ظهري عمودي."> + > + ["id19"] = < + text = <"تعليق"> + description = <"تعليق حول قياس طول / ارتفاع الجسم."> + > + ["id20"] = < + text = <"العوامل المربكة"> + description = <"لتسجيل أي مسائل أو عوامل قد تؤثر على قياس طول / ارتفاع الجسم, مثل آثار البتر."> + > + ["at21"] = < + text = <"مستلقٍ"> + description = <"يتم قياس الطول في وضع مستلقٍ متمدد بشكل تام مع استواء الحوض, و الأرجل ممتدة و الأقدام مرتخية."> + > + ["at22"] = < + text = <"*Length (en)"> + description = <"*Length (en)"> + > + ["ac1"] = < + text = <"الوضع (synthesised)"> + description = <"وضع الشخص عند القياس. (synthesised)"> + > + > + ["es-ar"] = < + ["id1"] = < + text = <"Altura/Longitud corporal"> + description = <"La altura o longitud corporal es medida desde la coronilla de la cabeza hasta la planta de los pies. La altura es medida con el individuo en posición erguida y la longitud corporal, en posición recostada."> + > + ["id3"] = < + text = <"Cualquier evento"> + description = <"Cualquier registro de altura o longitud corporal en un momento determinado."> + > + ["id5"] = < + text = <"Altura/Longitud corporal"> + description = <"La longitud corporal desde la coronilla de la cabeza hasta la planta de los pies."> + > + ["id12"] = < + text = <"Instrumento"> + description = <"Descripción del dispositivo usado para medir la altura o la longitud corporal."> + > + ["id15"] = < + text = <"Posición"> + description = <"Posición del individuo durante la medición de estatura."> + > + ["at17"] = < + text = <"De pie"> + description = <"La altura se mide de pie, sobre ambos pies con el peso distribuido en forma homogénea, con los talones juntos y ambos glúteos y talones en contacto con una placa posterior vertical o pared."> + > + ["id19"] = < + text = <"Comentario"> + description = <"Comentario acerca de la medición de la altura/longitud corporal."> + > + ["id20"] = < + text = <"Factores de confusión"> + description = <"Registro de todos las aspectos, condiciones o factores que pueden afectar la medición de la altura/longitud corporal, por ejemplo la amputación de miembros inferiores."> + > + ["at21"] = < + text = <"Acostado"> + description = <"La longitud corporal es medida en una posición recostada y completamente extendida, con la pelvis plana, las piernas extendidas y los pies flexionados."> + > + ["at22"] = < + text = <"*Length (en)"> + description = <"*Length (en)"> + > + ["ac1"] = < + text = <"Posición (synthesised)"> + description = <"Posición del individuo durante la medición de estatura. (synthesised)"> + > + > + ["ru"] = < + ["id1"] = < + text = <"Рост/длина тела"> + description = <"Рост или длина тела. Измеряется от макушки до пяток, стоя, или в вытянутом положении."> + > + ["id3"] = < + text = <"Любое событие"> + description = <"Любой время измерения высоты и длины тела."> + > + ["id5"] = < + text = <"Рост/длина тела"> + description = <"Рост или длина тела. Измеряется от макушки до пяток, стоя, или в вытянутом положении."> + > + ["id12"] = < + text = <"Устройство"> + description = <"Описание устройства для измерения роста и длины тела."> + > + ["id15"] = < + text = <"Положение"> + description = <"Положение человека при измерении"> + > + ["at17"] = < + text = <"Стоя"> + description = <"Рост измеряется стоя на двух ногах с равномерно распределённым весом, пятки вместе, обе ягодицы и пятки в прижаты к вертикальной поверхности."> + > + ["id19"] = < + text = <"Примечание"> + description = <"Примечание к измеряемому росту."> + > + ["id20"] = < + text = <"Дополнительные обстоятельсва"> + description = <"Запишите все вопросы, или факторы, которые могут повлиять на измерения длины тела, например ампутации."> + > + ["at21"] = < + text = <"Лёжа"> + description = <"Длина тела измеряется в полностью вытянутом положении лежа, таз находится на плоскости, ноги вытянуты и ноги согнуты ."> + > + ["at22"] = < + text = <"*Length (en)"> + description = <"*Length (en)"> + > + ["ac1"] = < + text = <"Положение (synthesised)"> + description = <"Положение человека при измерении (synthesised)"> + > + > + ["zh-cn"] = < + ["id1"] = < + text = <"身高/身长"> + description = <"从头顶至脚底(足底)所测得的身高(高度)/身长(长度)。身高测量采用直立位,而身长测量则采用的是卧位(平卧位)。"> + > + ["id3"] = < + text = <"任何事件"> + description = <"任何带有时间标记的身高/身长测量。"> + > + ["id5"] = < + text = <"身高/身长"> + description = <"从头顶至脚底(足底)的身体高度或长度。"> + > + ["id12"] = < + text = <"装置"> + description = <"关于用来测量身高/身长的装置的描述。"> + > + ["id15"] = < + text = <"体位"> + description = <"测量身高/身长时受检对象的体位或者说身体姿势。"> + > + ["at17"] = < + text = <"直立位"> + description = <"测量身高时受检对象采取的姿势为:体重均匀分布于两脚,脚跟并拢且臀部和脚跟均与背后的垂直背板接触。"> + > + ["id19"] = < + text = <"注释"> + description = <"关于身高/身长测量结果的注释、评论或意见。"> + > + ["id20"] = < + text = <"干扰因素"> + description = <"记录任何可能对身高/身长测量结果造成影响的事项或因素;比如,对于截肢情况的记录。"> + > + ["at21"] = < + text = <"卧位"> + description = <"测量身长时受检对象采取的姿势为:身体完全伸展的卧位(平卧位),且骨盆平展,双腿伸展,脚部屈曲。"> + > + ["at22"] = < + text = <"*Length (en)"> + description = <"*Length (en)"> + > + ["ac1"] = < + text = <"体位 (synthesised)"> + description = <"测量身高/身长时受检对象的体位或者说身体姿势。 (synthesised)"> + > + > + > + term_bindings = < + ["openehr"] = < + ["at22"] = + > + > + value_sets = < + ["ac1"] = < + id = <"ac1"> + members = <"at17", "at21"> + > + >