Release 5 Ballot

This page is part of the FHIR Specification (v5.0.0-ballot: R5 Ballot - see ballot notes). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B

Example StructureDefinition/DataType (Turtle)

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

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

StructureDefinition for DataType

@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 "DataType"];
  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/DataType"];
  fhir:CanonicalResource.version [ fhir:value "5.0.0-ballot"];
  fhir:CanonicalResource.name [ fhir:value "DataType"];
  fhir:CanonicalResource.status [ fhir:value "active"];
  fhir:CanonicalResource.experimental [ fhir:value "false"];
  fhir:CanonicalResource.date [ fhir:value "2022-09-10T04:52:37+10: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 "DataType Type: The base class for all re-useable types defined as part of the FHIR Specification."];
  fhir:StructureDefinition.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/DataType"];
  fhir:StructureDefinition.version [ fhir:value "5.0.0-ballot"];
  fhir:StructureDefinition.name [ fhir:value "DataType"];
  fhir:StructureDefinition.status [ fhir:value "active"];
  fhir:StructureDefinition.experimental [ fhir:value "false"];
  fhir:StructureDefinition.date [ fhir:value "2022-09-10T04:52:37+10: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 "DataType Type: The base class for all re-useable types defined as part of the FHIR Specification."];
  fhir:StructureDefinition.fhirVersion [ fhir:value "5.0.0-ballot"];
  fhir:StructureDefinition.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 "true"];
  fhir:StructureDefinition.type [ fhir:value "DataType"];
  fhir:StructureDefinition.baseDefinition [ fhir:value "http://hl7.org/fhir/StructureDefinition/Element"];
  fhir:StructureDefinition.derivation [ fhir:value "specialization"];
  fhir:StructureDefinition.snapshot [
     fhir:StructureDefinitionSnapshotComponent.element [
       fhir:Element.id [ fhir:value "DataType" ];
       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 "DataType" ];
       fhir:ElementDefinition.short [ fhir:value "Reuseable Types" ];
       fhir:ElementDefinition.definition [ fhir:value "The base class for all re-useable types defined as part of the FHIR Specification." ];
       fhir:ElementDefinition.min [ fhir:value "0" ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinitionBaseComponent.path [ fhir:value "DataType" ];
         fhir:ElementDefinitionBaseComponent.min [ fhir:value "0" ];
         fhir:ElementDefinitionBaseComponent.max [ fhir:value "*" ]
       ];
       fhir:ElementDefinition.condition [ fhir:value "ele-1" ];
       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.xpath [ fhir:value "@value|f:*|h:div" ];
         fhir:ElementDefinitionConstraintComponent.source [ fhir:value "http://hl7.org/fhir/StructureDefinition/Element" ]
       ];
       fhir:ElementDefinition.isModifier [ fhir:value "false" ];
       fhir:ElementDefinition.mapping [
         fhir:ElementDefinitionMappingComponent.identity [ fhir:value "rim" ];
         fhir:ElementDefinitionMappingComponent.map [ fhir:value "n/a" ]
       ]
     ], [
       fhir:Element.id [ fhir:value "DataType.id" ];
       fhir:ElementDefinition.path [ fhir:value "DataType.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 "DataType.extension" ];
       fhir:ElementDefinition.path [ fhir:value "DataType.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.xpath [ fhir:value "@value|f:*|h:div" ];
         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.xpath [ fhir:value "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])" ];
         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:StructureDefinition.differential [
     fhir:StructureDefinitionDifferentialComponent.element [
       fhir:Element.id [ fhir:value "DataType" ];
       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 "DataType" ];
       fhir:ElementDefinition.short [ fhir:value "Reuseable Types" ];
       fhir:ElementDefinition.definition [ fhir:value "The base class for all re-useable types defined as part of the FHIR Specification." ];
       fhir:ElementDefinition.min [ fhir:value "0" ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.mapping [
         fhir:ElementDefinitionMappingComponent.identity [ fhir:value "rim" ];
         fhir:ElementDefinitionMappingComponent.map [ fhir:value "n/a" ]
       ]
     ]
  ] .

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


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.