PREFIX fhir: PREFIX fhirvs: PREFIX xsd: BASE start=@ AND {fhir:nodeRole [fhir:treeRoot]} # A map from one set of concepts to one or more other concepts CLOSED { a [fhir:ConceptMap]; fhir:nodeRole [fhir:treeRoot]?; fhir:Resource.id id?; # Logical id of this artifact fhir:Resource.meta @?; # Metadata about the resource fhir:Resource.implicitRules @?; # A set of rules under which this # content was created fhir:Resource.language @?; # Language of the resource content fhir:DomainResource.text @?; # Text summary of the resource, for # human interpretation fhir:DomainResource.contained @*; # Contained, inline Resources fhir:DomainResource.extension @*; # Additional content defined by # implementations fhir:DomainResource.modifierExtension @*; # Extensions that cannot be ignored fhir:ConceptMap.url @?; # Canonical identifier for this # concept map, represented as a URI # (globally unique) fhir:ConceptMap.identifier @?; # Additional identifier for the # concept map fhir:ConceptMap.version @?; # Business version of the concept map fhir:ConceptMap.name @?; # Name for this concept map # (computer friendly) fhir:ConceptMap.title @?; # Name for this concept map (human # friendly) fhir:ConceptMap.status @ AND {fhir:value @fhirvs:publication-status}; # draft | active | retired | unknown fhir:ConceptMap.experimental @?; # For testing purposes, not real # usage fhir:ConceptMap.date @?; # Date last changed fhir:ConceptMap.publisher @?; # Name of the publisher # (organization or individual) fhir:ConceptMap.contact @*; # Contact details for the publisher fhir:ConceptMap.description @?; # Natural language description of # the concept map fhir:ConceptMap.useContext @*; # The context that the content is # intended to support fhir:ConceptMap.jurisdiction @*; # Intended jurisdiction for concept # map (if applicable) fhir:ConceptMap.purpose @?; # Why this concept map is defined fhir:ConceptMap.copyright @?; # Use and/or publishing restrictions ( # The source value set that contains # the concepts that are being mapped fhir:ConceptMap.sourceUri @ | fhir:ConceptMap.sourceCanonical @ )?; ( # The target value set which # provides context for the mappings fhir:ConceptMap.targetUri @ | fhir:ConceptMap.targetCanonical @ )?; fhir:ConceptMap.group @*; # Same source and target systems fhir:index xsd:integer? # Relative position in a list } # Same source and target systems CLOSED { fhir:Element.id string?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:BackboneElement.modifierExtension @*; # Extensions that cannot be ignored # even if unrecognized fhir:ConceptMap.group.source @?; # Source system where concepts to be # mapped are defined fhir:ConceptMap.group.sourceVersion @?; # Specific version of the code # system fhir:ConceptMap.group.target @?; # Target system that the concepts # are to be mapped to fhir:ConceptMap.group.targetVersion @?; # Specific version of the code # system fhir:ConceptMap.group.element @+; # Mappings for a concept from the # source set fhir:ConceptMap.group.unmapped @?; # What to do when there is no # mapping for the source concept fhir:index xsd:integer? # Relative position in a list } # Mappings for a concept from the source set CLOSED { fhir:Element.id string?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:BackboneElement.modifierExtension @*; # Extensions that cannot be ignored # even if unrecognized fhir:ConceptMap.group.element.code @?; # Identifies element being mapped fhir:ConceptMap.group.element.display @?; # Display for the code fhir:ConceptMap.group.element.target @*; # Concept in target system for # element fhir:index xsd:integer? # Relative position in a list } # What to do when there is no mapping for the source concept CLOSED { fhir:Element.id string?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:BackboneElement.modifierExtension @*; # Extensions that cannot be ignored # even if unrecognized fhir:ConceptMap.group.unmapped.mode @ AND {fhir:value @fhirvs:conceptmap-unmapped-mode}; # provided | fixed | other-map fhir:ConceptMap.group.unmapped.code @?; # Fixed code when mode = fixed fhir:ConceptMap.group.unmapped.display @?; # Display for the code fhir:ConceptMap.group.unmapped.url @?; # canonical reference to an # additional ConceptMap to use for # mapping if the source concept is # unmapped fhir:index xsd:integer? # Relative position in a list } # Concept in target system for element CLOSED { fhir:Element.id string?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:BackboneElement.modifierExtension @*; # Extensions that cannot be ignored # even if unrecognized fhir:ConceptMap.group.element.target.code @?; # Code that identifies the target # element fhir:ConceptMap.group.element.target.display @?; # Display for the code fhir:ConceptMap.group.element.target.equivalence @ AND {fhir:value @fhirvs:concept-map-equivalence}; # relatedto | equivalent | equal | # wider | subsumes | narrower | # specializes | inexact | unmatched # | disjoint fhir:ConceptMap.group.element.target.comment @?; # Description of status/issues in # mapping fhir:ConceptMap.group.element.target.dependsOn @*; # Other elements required for this # mapping (from context) fhir:ConceptMap.group.element.target.product @*; # Other concepts that this mapping # also produces fhir:index xsd:integer? # Relative position in a list } # Other concepts that this mapping also produces CLOSED { fhir:index xsd:integer? # Relative position in a list } # Other elements required for this mapping (from context) CLOSED { fhir:Element.id string?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:BackboneElement.modifierExtension @*; # Extensions that cannot be ignored # even if unrecognized fhir:ConceptMap.group.element.target.dependsOn.property @; # Reference to property mapping # depends on fhir:ConceptMap.group.element.target.dependsOn.system @?; # Code System (if necessary) fhir:ConceptMap.group.element.target.dependsOn.value @; # Value of the referenced element fhir:ConceptMap.group.element.target.dependsOn.display @?; # Display for the code (if value is # a code) fhir:index xsd:integer? # Relative position in a list } #---------------------- Data Types ------------------- # Primitive Type dateTime CLOSED { fhir:Element.id string?; # xml:id (or equivalent in JSON) fhir:Element.extension @*; # Additional content defined by # implementations fhir:value dateTime?; # Primitive value for dateTime fhir:index xsd:integer? # Relative position in a list } # Metadata about a resource CLOSED { fhir:Element.id id?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:Meta.versionId @?; # Version specific identifier fhir:Meta.lastUpdated @?; # When the resource version last # changed fhir:Meta.source @?; # Identifies where the resource # comes from fhir:Meta.profile @*; # Profiles this resource claims to # conform to fhir:Meta.security @*; # Security Labels applied to this # resource fhir:Meta.tag @*; # Tags applied to this resource fhir:index xsd:integer? # Relative position in a list } # Primitive Type code CLOSED { fhir:Element.id string?; # xml:id (or equivalent in JSON) fhir:Element.extension @*; # Additional content defined by # implementations fhir:value code?; # Primitive value for code fhir:index xsd:integer? # Relative position in a list } # Primitive Type string CLOSED { fhir:Element.id string?; # xml:id (or equivalent in JSON) fhir:Element.extension @*; # Additional content defined by # implementations fhir:value string MAXLENGTH 1048576?; # Primitive value for string fhir:index xsd:integer? # Relative position in a list } # Base Resource {a .+; fhir:Resource.id id?; # Logical id of this artifact fhir:Resource.meta @?; # Metadata about the resource fhir:Resource.implicitRules @?; # A set of rules under which this # content was created fhir:Resource.language @?; # Language of the resource content fhir:index xsd:integer? } # Primitive Type canonical CLOSED { fhir:Element.id string?; # xml:id (or equivalent in JSON) fhir:Element.extension @*; # Additional content defined by # implementations fhir:value canonical?; # Primitive value for canonical fhir:index xsd:integer? # Relative position in a list } # Primitive Type uri CLOSED { fhir:Element.id string?; # xml:id (or equivalent in JSON) fhir:Element.extension @*; # Additional content defined by # implementations fhir:value uri?; # Primitive value for uri fhir:index xsd:integer? # Relative position in a list } # Optional Extensions Element CLOSED { fhir:Element.id id?; fhir:Element.extension @*; fhir:Extension.url uri; ( fhir:Extension.valueBase64Binary @ | fhir:Extension.valueBoolean @ | fhir:Extension.valueCanonical @ | fhir:Extension.valueCode @ | fhir:Extension.valueDate @ | fhir:Extension.valueDateTime @ | fhir:Extension.valueDecimal @ | fhir:Extension.valueId @ | fhir:Extension.valueInstant @ | fhir:Extension.valueInteger @ | fhir:Extension.valueMarkdown @ | fhir:Extension.valueOid @ | fhir:Extension.valuePositiveInt @ | fhir:Extension.valueString @ | fhir:Extension.valueTime @