Snapshot 3: Connectathon 32 Base

This is Snapshot #3 for FHIR R5, released to support Connectathon 32. For a full list of available versions, see the Directory of published versions.

Example StructureDefinition/Ratio (Turtle)

Modeling and Methodology Work GroupMaturity Level: N/AStandards Status: Informative

Raw Turtle (+ also see Turtle/RDF Format Specification)

StructureDefinition for Ratio

@prefix fhir: <http://hl7.org/fhir/> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .

# - resource -------------------------------------------------------------------

[] a fhir:StructureDefinition;
  fhir:Resource.id [ fhir:value "Ratio"];
  fhir:DomainResource.text [
     fhir:Narrative.status [ fhir:value "generated" ]
  ];
  fhir:DomainResource.extension [
     fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status" ];
     fhir:Extension.value [ fhir:value "normative" ]
  ], [
     fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/structuredefinition-normative-version" ];
     fhir:Extension.value [ fhir:value "4.0.0" ]
  ];
  fhir:CanonicalResource.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/Ratio"];
  fhir:CanonicalResource.version [ fhir:value "5.0.0-snapshot3"];
  fhir:CanonicalResource.name [ fhir:value "Ratio"];
  fhir:CanonicalResource.status [ fhir:value "active"];
  fhir:CanonicalResource.experimental [ fhir:value "false"];
  fhir:CanonicalResource.date [ fhir:value "2022-12-14T07:12:54+11:00"];
  fhir:CanonicalResource.publisher [ fhir:value "HL7 FHIR Standard"];
  fhir:CanonicalResource.contact [
     fhir:ContactDetail.telecom [
       fhir:ContactPoint.system [ fhir:value "url" ];
       fhir:ContactPoint.value [ fhir:value "http://hl7.org/fhir" ]
     ]
  ];
  fhir:CanonicalResource.description [ fhir:value "Ratio Type: A relationship of two Quantity values - expressed as a numerator and a denominator."];
  fhir:CanonicalResource.jurisdiction [
     fhir:CodeableConcept.coding [
       fhir:Coding.system [ fhir:value "http://unstats.un.org/unsd/methods/m49/m49.htm" ];
       fhir:Coding.code [ fhir:value "001" ];
       fhir:Coding.display [ fhir:value "World" ]
     ]
  ];
  fhir:CanonicalResource.purpose [ fhir:value "Need to able to capture ratios for some measurements (titers) and some rates (costs)."];
  fhir:StructureDefinition.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/Ratio"];
  fhir:StructureDefinition.version [ fhir:value "5.0.0-snapshot3"];
  fhir:StructureDefinition.name [ fhir:value "Ratio"];
  fhir:StructureDefinition.status [ fhir:value "active"];
  fhir:StructureDefinition.experimental [ fhir:value "false"];
  fhir:StructureDefinition.date [ fhir:value "2022-12-14T07:12:54+11:00"];
  fhir:StructureDefinition.publisher [ fhir:value "HL7 FHIR Standard"];
  fhir:StructureDefinition.contact [
     fhir:ContactDetail.telecom [
       fhir:ContactPoint.system [ fhir:value "url" ];
       fhir:ContactPoint.value [ fhir:value "http://hl7.org/fhir" ]
     ]
  ];
  fhir:StructureDefinition.description [ fhir:value "Ratio Type: A relationship of two Quantity values - expressed as a numerator and a denominator."];
  fhir:StructureDefinition.jurisdiction [
     fhir:CodeableConcept.coding [
       fhir:Coding.system [ fhir:value "http://unstats.un.org/unsd/methods/m49/m49.htm" ];
       fhir:Coding.code [ fhir:value "001" ];
       fhir:Coding.display [ fhir:value "World" ]
     ]
  ];
  fhir:StructureDefinition.purpose [ fhir:value "Need to able to capture ratios for some measurements (titers) and some rates (costs)."];
  fhir:StructureDefinition.fhirVersion [ fhir:value "5.0.0-snapshot3"];
  fhir:StructureDefinition.mapping [
     fhir:StructureDefinitionMappingComponent.identity [ fhir:value "v2" ];
     fhir:StructureDefinitionMappingComponent.uri [ fhir:value "http://hl7.org/v2" ];
     fhir:StructureDefinitionMappingComponent.name [ fhir:value "HL7 v2 Mapping" ]
  ], [
     fhir:StructureDefinitionMappingComponent.identity [ fhir:value "rim" ];
     fhir:StructureDefinitionMappingComponent.uri [ fhir:value "http://hl7.org/v3" ];
     fhir:StructureDefinitionMappingComponent.name [ fhir:value "RIM Mapping" ]
  ];
  fhir:StructureDefinition.kind [ fhir:value "complex-type"];
  fhir:StructureDefinition.abstract [ fhir:value "false"];
  fhir:StructureDefinition.type [ fhir:value "Ratio"];
  fhir:StructureDefinition.baseDefinition [ fhir:value "http://hl7.org/fhir/StructureDefinition/DataType"];
  fhir:StructureDefinition.derivation [ fhir:value "specialization"];
  fhir:StructureDefinition.snapshot [
     fhir:StructureDefinitionSnapshotComponent.element [
       fhir:Element.id [ fhir:value "Ratio" ];
       fhir:Element.extension [
         fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status" ];
         fhir:Extension.value [ fhir:value "normative" ]
       ], [
         fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/structuredefinition-normative-version" ];
         fhir:Extension.value [ fhir:value "4.0.0" ]
       ];
       fhir:ElementDefinition.path [ fhir:value "Ratio" ];
       fhir:ElementDefinition.short [ fhir:value "A ratio of two Quantity values - a numerator and a denominator" ];
       fhir:ElementDefinition.definition [ fhir:value "A relationship of two Quantity values - expressed as a numerator and a denominator." ];
       fhir:ElementDefinition.comment [ fhir:value "The Ratio datatype should only be used to express a relationship of two numbers if the relationship cannot be suitably expressed using a Quantity and a common unit.  Where the denominator value is known to be fixed to \"1\", Quantity should be used instead of Ratio." ];
       fhir:ElementDefinition.min [ fhir:value "0" ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinitionBaseComponent.path [ fhir:value "Ratio" ];
         fhir:ElementDefinitionBaseComponent.min [ fhir:value "0" ];
         fhir:ElementDefinitionBaseComponent.max [ fhir:value "*" ]
       ];
       fhir:ElementDefinition.constraint [
         fhir:ElementDefinitionConstraintComponent.key [ fhir:value "ele-1" ];
         fhir:ElementDefinitionConstraintComponent.severity [ fhir:value "error" ];
         fhir:ElementDefinitionConstraintComponent.human [ fhir:value "All FHIR elements must have a @value or children" ];
         fhir:ElementDefinitionConstraintComponent.expression [ fhir:value "hasValue() or (children().count() > id.count())" ];
         fhir:ElementDefinitionConstraintComponent.source [ fhir:value "http://hl7.org/fhir/StructureDefinition/Element" ]
       ], [
         fhir:ElementDefinitionConstraintComponent.key [ fhir:value "rat-1" ];
         fhir:ElementDefinitionConstraintComponent.severity [ fhir:value "error" ];
         fhir:ElementDefinitionConstraintComponent.human [ fhir:value "Numerator and denominator SHALL both be present, or both are absent. If both are absent, there SHALL be some extension present" ];
         fhir:ElementDefinitionConstraintComponent.expression [ fhir:value "(numerator.empty() xor denominator.exists()) and (numerator.exists() or extension.exists())" ];
         fhir:ElementDefinitionConstraintComponent.source [ fhir:value "http://hl7.org/fhir/StructureDefinition/Ratio" ]
       ];
       fhir:ElementDefinition.isModifier [ fhir:value "false" ];
       fhir:ElementDefinition.mapping [
         fhir:ElementDefinitionMappingComponent.identity [ fhir:value "rim" ];
         fhir:ElementDefinitionMappingComponent.map [ fhir:value "n/a" ]
       ], [
         fhir:ElementDefinitionMappingComponent.identity [ fhir:value "v2" ];
         fhir:ElementDefinitionMappingComponent.map [ fhir:value "N/A" ]
       ], [
         fhir:ElementDefinitionMappingComponent.identity [ fhir:value "rim" ];
         fhir:ElementDefinitionMappingComponent.map [ fhir:value "RTO" ]
       ]
     ], [
       fhir:Element.id [ fhir:value "Ratio.id" ];
       fhir:ElementDefinition.path [ fhir:value "Ratio.id" ];
       fhir:ElementDefinition.representation [ fhir:value "xmlAttr" ];
       fhir:ElementDefinition.short [ fhir:value "Unique id for inter-element referencing" ];
       fhir:ElementDefinition.definition [ fhir:value "Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces." ];
       fhir:ElementDefinition.min [ fhir:value "0" ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinitionBaseComponent.path [ fhir:value "Element.id" ];
         fhir:ElementDefinitionBaseComponent.min [ fhir:value "0" ];
         fhir:ElementDefinitionBaseComponent.max [ fhir:value "1" ]
       ];
       fhir:ElementDefinition.type [
         fhir:Element.extension [
           fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type" ];
           fhir:Extension.value [ fhir:value "id" ]
         ];
         fhir:TypeRefComponent.code [ fhir:value "http://hl7.org/fhirpath/System.String" ]
       ];
       fhir:ElementDefinition.isModifier [ fhir:value "false" ];
       fhir:ElementDefinition.isSummary [ fhir:value "false" ];
       fhir:ElementDefinition.mapping [
         fhir:ElementDefinitionMappingComponent.identity [ fhir:value "rim" ];
         fhir:ElementDefinitionMappingComponent.map [ fhir:value "n/a" ]
       ]
     ], [
       fhir:Element.id [ fhir:value "Ratio.extension" ];
       fhir:ElementDefinition.path [ fhir:value "Ratio.extension" ];
       fhir:ElementDefinition.slicing [
         fhir:ElementDefinitionSlicingComponent.discriminator [
           fhir:ElementDefinitionSlicingDiscriminatorComponent.type [ fhir:value "value" ];
           fhir:ElementDefinitionSlicingDiscriminatorComponent.path [ fhir:value "url" ]
         ];
         fhir:ElementDefinitionSlicingComponent.description [ fhir:value "Extensions are always sliced by (at least) url" ];
         fhir:ElementDefinitionSlicingComponent.rules [ fhir:value "open" ]
       ];
       fhir:ElementDefinition.short [ fhir:value "Additional content defined by implementations" ];
       fhir:ElementDefinition.definition [ fhir:value "May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension." ];
       fhir:ElementDefinition.comment [ fhir:value "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone." ];
       fhir:ElementDefinition.alias [ fhir:value "extensions" ], [ fhir:value "user content" ];
       fhir:ElementDefinition.min [ fhir:value "0" ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinitionBaseComponent.path [ fhir:value "Element.extension" ];
         fhir:ElementDefinitionBaseComponent.min [ fhir:value "0" ];
         fhir:ElementDefinitionBaseComponent.max [ fhir:value "*" ]
       ];
       fhir:ElementDefinition.type [
         fhir:TypeRefComponent.code [ fhir:value "Extension" ]
       ];
       fhir:ElementDefinition.constraint [
         fhir:ElementDefinitionConstraintComponent.key [ fhir:value "ele-1" ];
         fhir:ElementDefinitionConstraintComponent.severity [ fhir:value "error" ];
         fhir:ElementDefinitionConstraintComponent.human [ fhir:value "All FHIR elements must have a @value or children" ];
         fhir:ElementDefinitionConstraintComponent.expression [ fhir:value "hasValue() or (children().count() > id.count())" ];
         fhir:ElementDefinitionConstraintComponent.source [ fhir:value "http://hl7.org/fhir/StructureDefinition/Element" ]
       ], [
         fhir:ElementDefinitionConstraintComponent.key [ fhir:value "ext-1" ];
         fhir:ElementDefinitionConstraintComponent.severity [ fhir:value "error" ];
         fhir:ElementDefinitionConstraintComponent.human [ fhir:value "Must have either extensions or value[x], not both" ];
         fhir:ElementDefinitionConstraintComponent.expression [ fhir:value "extension.exists() != value.exists()" ];
         fhir:ElementDefinitionConstraintComponent.source [ fhir:value "http://hl7.org/fhir/StructureDefinition/Extension" ]
       ];
       fhir:ElementDefinition.isModifier [ fhir:value "false" ];
       fhir:ElementDefinition.isSummary [ fhir:value "false" ];
       fhir:ElementDefinition.mapping [
         fhir:ElementDefinitionMappingComponent.identity [ fhir:value "rim" ];
         fhir:ElementDefinitionMappingComponent.map [ fhir:value "n/a" ]
       ]
     ], [
       fhir:Element.id [ fhir:value "Ratio.numerator" ];
       fhir:ElementDefinition.path [ fhir:value "Ratio.numerator" ];
       fhir:ElementDefinition.short [ fhir:value "Numerator value" ];
       fhir:ElementDefinition.definition [ fhir:value "The value of the numerator." ];
       fhir:ElementDefinition.min [ fhir:value "0" ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinitionBaseComponent.path [ fhir:value "Ratio.numerator" ];
         fhir:ElementDefinitionBaseComponent.min [ fhir:value "0" ];
         fhir:ElementDefinitionBaseComponent.max [ fhir:value "1" ]
       ];
       fhir:ElementDefinition.type [
         fhir:TypeRefComponent.code [ fhir:value "Quantity" ]
       ];
       fhir:ElementDefinition.constraint [
         fhir:ElementDefinitionConstraintComponent.key [ fhir:value "ele-1" ];
         fhir:ElementDefinitionConstraintComponent.severity [ fhir:value "error" ];
         fhir:ElementDefinitionConstraintComponent.human [ fhir:value "All FHIR elements must have a @value or children" ];
         fhir:ElementDefinitionConstraintComponent.expression [ fhir:value "hasValue() or (children().count() > id.count())" ];
         fhir:ElementDefinitionConstraintComponent.source [ fhir:value "http://hl7.org/fhir/StructureDefinition/Element" ]
       ];
       fhir:ElementDefinition.isModifier [ fhir:value "false" ];
       fhir:ElementDefinition.isSummary [ fhir:value "true" ];
       fhir:ElementDefinition.mapping [
         fhir:ElementDefinitionMappingComponent.identity [ fhir:value "rim" ];
         fhir:ElementDefinitionMappingComponent.map [ fhir:value ".numerator" ]
       ]
     ], [
       fhir:Element.id [ fhir:value "Ratio.denominator" ];
       fhir:ElementDefinition.path [ fhir:value "Ratio.denominator" ];
       fhir:ElementDefinition.short [ fhir:value "Denominator value" ];
       fhir:ElementDefinition.definition [ fhir:value "The value of the denominator." ];
       fhir:ElementDefinition.min [ fhir:value "0" ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinitionBaseComponent.path [ fhir:value "Ratio.denominator" ];
         fhir:ElementDefinitionBaseComponent.min [ fhir:value "0" ];
         fhir:ElementDefinitionBaseComponent.max [ fhir:value "1" ]
       ];
       fhir:ElementDefinition.type [
         fhir:TypeRefComponent.code [ fhir:value "Quantity" ];
         fhir:TypeRefComponent.profile [ fhir:value "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ]
       ];
       fhir:ElementDefinition.constraint [
         fhir:ElementDefinitionConstraintComponent.key [ fhir:value "ele-1" ];
         fhir:ElementDefinitionConstraintComponent.severity [ fhir:value "error" ];
         fhir:ElementDefinitionConstraintComponent.human [ fhir:value "All FHIR elements must have a @value or children" ];
         fhir:ElementDefinitionConstraintComponent.expression [ fhir:value "hasValue() or (children().count() > id.count())" ];
         fhir:ElementDefinitionConstraintComponent.source [ fhir:value "http://hl7.org/fhir/StructureDefinition/Element" ]
       ];
       fhir:ElementDefinition.isModifier [ fhir:value "false" ];
       fhir:ElementDefinition.isSummary [ fhir:value "true" ];
       fhir:ElementDefinition.mapping [
         fhir:ElementDefinitionMappingComponent.identity [ fhir:value "rim" ];
         fhir:ElementDefinitionMappingComponent.map [ fhir:value ".denominator" ]
       ]
     ]
  ];
  fhir:StructureDefinition.differential [
     fhir:StructureDefinitionDifferentialComponent.element [
       fhir:Element.id [ fhir:value "Ratio" ];
       fhir:Element.extension [
         fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status" ];
         fhir:Extension.value [ fhir:value "normative" ]
       ], [
         fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/structuredefinition-normative-version" ];
         fhir:Extension.value [ fhir:value "4.0.0" ]
       ];
       fhir:ElementDefinition.path [ fhir:value "Ratio" ];
       fhir:ElementDefinition.short [ fhir:value "A ratio of two Quantity values - a numerator and a denominator" ];
       fhir:ElementDefinition.definition [ fhir:value "A relationship of two Quantity values - expressed as a numerator and a denominator." ];
       fhir:ElementDefinition.comment [ fhir:value "The Ratio datatype should only be used to express a relationship of two numbers if the relationship cannot be suitably expressed using a Quantity and a common unit.  Where the denominator value is known to be fixed to \"1\", Quantity should be used instead of Ratio." ];
       fhir:ElementDefinition.min [ fhir:value "0" ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.constraint [
         fhir:ElementDefinitionConstraintComponent.key [ fhir:value "rat-1" ];
         fhir:ElementDefinitionConstraintComponent.severity [ fhir:value "error" ];
         fhir:ElementDefinitionConstraintComponent.human [ fhir:value "Numerator and denominator SHALL both be present, or both are absent. If both are absent, there SHALL be some extension present" ];
         fhir:ElementDefinitionConstraintComponent.expression [ fhir:value "(numerator.empty() xor denominator.exists()) and (numerator.exists() or extension.exists())" ];
         fhir:ElementDefinitionConstraintComponent.source [ fhir:value "http://hl7.org/fhir/StructureDefinition/Ratio" ]
       ];
       fhir:ElementDefinition.mapping [
         fhir:ElementDefinitionMappingComponent.identity [ fhir:value "v2" ];
         fhir:ElementDefinitionMappingComponent.map [ fhir:value "N/A" ]
       ], [
         fhir:ElementDefinitionMappingComponent.identity [ fhir:value "rim" ];
         fhir:ElementDefinitionMappingComponent.map [ fhir:value "RTO" ]
       ]
     ], [
       fhir:Element.id [ fhir:value "Ratio.numerator" ];
       fhir:ElementDefinition.path [ fhir:value "Ratio.numerator" ];
       fhir:ElementDefinition.short [ fhir:value "Numerator value" ];
       fhir:ElementDefinition.definition [ fhir:value "The value of the numerator." ];
       fhir:ElementDefinition.min [ fhir:value "0" ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.type [
         fhir:TypeRefComponent.code [ fhir:value "Quantity" ]
       ];
       fhir:ElementDefinition.isSummary [ fhir:value "true" ];
       fhir:ElementDefinition.mapping [
         fhir:ElementDefinitionMappingComponent.identity [ fhir:value "rim" ];
         fhir:ElementDefinitionMappingComponent.map [ fhir:value ".numerator" ]
       ]
     ], [
       fhir:Element.id [ fhir:value "Ratio.denominator" ];
       fhir:ElementDefinition.path [ fhir:value "Ratio.denominator" ];
       fhir:ElementDefinition.short [ fhir:value "Denominator value" ];
       fhir:ElementDefinition.definition [ fhir:value "The value of the denominator." ];
       fhir:ElementDefinition.min [ fhir:value "0" ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.type [
         fhir:TypeRefComponent.code [ fhir:value "Quantity" ];
         fhir:TypeRefComponent.profile [ fhir:value "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ]
       ];
       fhir:ElementDefinition.isSummary [ fhir:value "true" ];
       fhir:ElementDefinition.mapping [
         fhir:ElementDefinitionMappingComponent.identity [ fhir:value "rim" ];
         fhir:ElementDefinitionMappingComponent.map [ fhir:value ".denominator" ]
       ]
     ]
  ] .

# -------------------------------------------------------------------------------------


Usage note: every effort has been made to ensure that the examples are correct and useful, but they are not a normative part of the specification.