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/questionnaire-optionRestriction (Turtle)

FHIR Infrastructure Work GroupMaturity Level: N/AStandards Status: Informative

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

QOptionRestriction

@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 "questionnaire-optionRestriction"];
  fhir:DomainResource.extension [
     fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg" ];
     fhir:Extension.value [ fhir:value "fhir" ]
  ], [
     fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm" ];
     fhir:Extension.value [ fhir:value "1" ]
  ], [
     fhir:Extension.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status" ];
     fhir:Extension.value [ fhir:value "trial-use" ]
  ];
  fhir:CanonicalResource.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/questionnaire-optionRestriction"];
  fhir:CanonicalResource.identifier [
     fhir:Identifier.system [ fhir:value "urn:ietf:rfc:3986" ];
     fhir:Identifier.value [ fhir:value "urn:oid:2.16.840.1.113883.4.642.5.1252" ]
  ];
  fhir:CanonicalResource.version [ fhir:value "5.0.0-snapshot3"];
  fhir:CanonicalResource.name [ fhir:value "QOptionRestriction"];
  fhir:CanonicalResource.title [ fhir:value "Questionnaire Option Restriction"];
  fhir:CanonicalResource.status [ fhir:value "draft"];
  fhir:CanonicalResource.experimental [ fhir:value "false"];
  fhir:CanonicalResource.date [ fhir:value "2013-07-04"];
  fhir:CanonicalResource.publisher [ fhir:value "HL7"];
  fhir:CanonicalResource.contact [
     fhir:ContactDetail.telecom [
       fhir:ContactPoint.system [ fhir:value "url" ];
       fhir:ContactPoint.value [ fhir:value "http://www.hl7.org" ]
     ]
  ];
  fhir:CanonicalResource.description [ fhir:value "Allows disabling certain questionnaire options for the containing item based on evaluating expressions."];
  fhir:StructureDefinition.url [ fhir:value "http://hl7.org/fhir/StructureDefinition/questionnaire-optionRestriction"];
  fhir:StructureDefinition.identifier [
     fhir:Identifier.system [ fhir:value "urn:ietf:rfc:3986" ];
     fhir:Identifier.value [ fhir:value "urn:oid:2.16.840.1.113883.4.642.5.1252" ]
  ];
  fhir:StructureDefinition.version [ fhir:value "5.0.0-snapshot3"];
  fhir:StructureDefinition.name [ fhir:value "QOptionRestriction"];
  fhir:StructureDefinition.title [ fhir:value "Questionnaire Option Restriction"];
  fhir:StructureDefinition.status [ fhir:value "draft"];
  fhir:StructureDefinition.experimental [ fhir:value "false"];
  fhir:StructureDefinition.date [ fhir:value "2013-07-04"];
  fhir:StructureDefinition.publisher [ fhir:value "HL7"];
  fhir:StructureDefinition.contact [
     fhir:ContactDetail.telecom [
       fhir:ContactPoint.system [ fhir:value "url" ];
       fhir:ContactPoint.value [ fhir:value "http://www.hl7.org" ]
     ]
  ];
  fhir:StructureDefinition.description [ fhir:value "Allows disabling certain questionnaire options for the containing item based on evaluating expressions."];
  fhir:StructureDefinition.fhirVersion [ fhir:value "5.0.0"];
  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 "false"];
  fhir:StructureDefinition.context [
     fhir:StructureDefinitionContextComponent.type [ fhir:value "element" ];
     fhir:StructureDefinitionContextComponent.expression [ fhir:value "Questionnaire.item" ]
  ], [
     fhir:StructureDefinitionContextComponent.type [ fhir:value "element" ];
     fhir:StructureDefinitionContextComponent.expression [ fhir:value "ElementDefinition" ]
  ];
  fhir:StructureDefinition.contextInvariant [ fhir:value "answerValueset or answerOption"];
  fhir:StructureDefinition.type [ fhir:value "Extension"];
  fhir:StructureDefinition.baseDefinition [ fhir:value "http://hl7.org/fhir/StructureDefinition/Extension"];
  fhir:StructureDefinition.derivation [ fhir:value "constraint"];
  fhir:StructureDefinition.snapshot [
     fhir:StructureDefinitionSnapshotComponent.element [
       fhir:Element.id [ fhir:value "Extension" ];
       fhir:ElementDefinition.path [ fhir:value "Extension" ];
       fhir:ElementDefinition.short [ fhir:value "Constraint" ];
       fhir:ElementDefinition.definition [ fhir:value "Allows disabling certain questionnaire options for the containing item based on evaluating expressions." ];
       fhir:ElementDefinition.min [ fhir:value "0" ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinitionBaseComponent.path [ fhir:value "Extension" ];
         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 "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:Element.id [ fhir:value "Extension.id" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.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 "Extension.extension" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.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 "Extension.extension:option" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.extension" ];
       fhir:ElementDefinition.sliceName [ fhir:value "option" ];
       fhir:ElementDefinition.short [ fhir:value "Option to exclude" ];
       fhir:ElementDefinition.definition [ fhir:value "Indicates one or more options that should be disabled if the specified expression evaluates to true" ];
       fhir:ElementDefinition.comment [ fhir:value "Options listed are expected to correspond to either answerOption values or Codings found in the answerValueset expansion.  Systems SHOULD treat non-matching answerOptions and MAY treat non-matching answerValueset Codings as an error." ];
       fhir:ElementDefinition.min [ fhir:value "1" ];
       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:Element.id [ fhir:value "Extension.extension:option.id" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.extension.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 "Extension.extension:option.extension" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.extension.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 "Extension" ];
       fhir:ElementDefinition.definition [ fhir:value "An Extension" ];
       fhir:ElementDefinition.min [ fhir:value "0" ];
       fhir:ElementDefinition.max [ fhir:value "0" ];
       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:Element.id [ fhir:value "Extension.extension:option.url" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.extension.url" ];
       fhir:ElementDefinition.representation [ fhir:value "xmlAttr" ];
       fhir:ElementDefinition.short [ fhir:value "identifies the meaning of the extension" ];
       fhir:ElementDefinition.definition [ fhir:value "Source of the definition for the extension code - a logical name or a URL." ];
       fhir:ElementDefinition.comment [ fhir:value "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension." ];
       fhir:ElementDefinition.min [ fhir:value "1" ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinitionBaseComponent.path [ fhir:value "Extension.url" ];
         fhir:ElementDefinitionBaseComponent.min [ fhir:value "1" ];
         fhir:ElementDefinitionBaseComponent.max [ fhir:value "1" ]
       ];
       fhir:ElementDefinition.type [
         fhir:TypeRefComponent.code [ fhir:value "uri" ]
       ];
       fhir:ElementDefinition.fixed [ fhir:value "option" ];
       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 "Extension.extension:option.value[x]" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.extension.value[x]" ];
       fhir:ElementDefinition.short [ fhir:value "Value of extension" ];
       fhir:ElementDefinition.definition [ fhir:value "Value of extension - must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list)." ];
       fhir:ElementDefinition.min [ fhir:value "1" ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinitionBaseComponent.path [ fhir:value "Extension.value[x]" ];
         fhir:ElementDefinitionBaseComponent.min [ fhir:value "0" ];
         fhir:ElementDefinitionBaseComponent.max [ fhir:value "1" ]
       ];
       fhir:ElementDefinition.type [
         fhir:TypeRefComponent.code [ fhir:value "integer" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "date" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "time" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "string" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Coding" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Reference" ]
       ];
       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 "false" ];
       fhir:ElementDefinition.mapping [
         fhir:ElementDefinitionMappingComponent.identity [ fhir:value "rim" ];
         fhir:ElementDefinitionMappingComponent.map [ fhir:value "N/A" ]
       ]
     ], [
       fhir:Element.id [ fhir:value "Extension.extension:expression" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.extension" ];
       fhir:ElementDefinition.sliceName [ fhir:value "expression" ];
       fhir:ElementDefinition.short [ fhir:value "Expression to trigger exclusion" ];
       fhir:ElementDefinition.definition [ fhir:value "The expression to evaluate.  If the evaluation results in true, then the specified options will be suppressed." ];
       fhir:ElementDefinition.min [ fhir:value "1" ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       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:Element.id [ fhir:value "Extension.extension:expression.id" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.extension.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 "Extension.extension:expression.extension" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.extension.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 "Extension" ];
       fhir:ElementDefinition.definition [ fhir:value "An Extension" ];
       fhir:ElementDefinition.min [ fhir:value "0" ];
       fhir:ElementDefinition.max [ fhir:value "0" ];
       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:Element.id [ fhir:value "Extension.extension:expression.url" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.extension.url" ];
       fhir:ElementDefinition.representation [ fhir:value "xmlAttr" ];
       fhir:ElementDefinition.short [ fhir:value "identifies the meaning of the extension" ];
       fhir:ElementDefinition.definition [ fhir:value "Source of the definition for the extension code - a logical name or a URL." ];
       fhir:ElementDefinition.comment [ fhir:value "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension." ];
       fhir:ElementDefinition.min [ fhir:value "1" ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinitionBaseComponent.path [ fhir:value "Extension.url" ];
         fhir:ElementDefinitionBaseComponent.min [ fhir:value "1" ];
         fhir:ElementDefinitionBaseComponent.max [ fhir:value "1" ]
       ];
       fhir:ElementDefinition.type [
         fhir:TypeRefComponent.code [ fhir:value "uri" ]
       ];
       fhir:ElementDefinition.fixed [ fhir:value "requirements" ];
       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 "Extension.extension:expression.value[x]" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.extension.value[x]" ];
       fhir:ElementDefinition.short [ fhir:value "Value of extension" ];
       fhir:ElementDefinition.definition [ fhir:value "Value of extension - must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list)." ];
       fhir:ElementDefinition.min [ fhir:value "1" ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinitionBaseComponent.path [ fhir:value "Extension.value[x]" ];
         fhir:ElementDefinitionBaseComponent.min [ fhir:value "0" ];
         fhir:ElementDefinitionBaseComponent.max [ fhir:value "1" ]
       ];
       fhir:ElementDefinition.type [
         fhir:TypeRefComponent.code [ fhir:value "Expression" ]
       ];
       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 "false" ];
       fhir:ElementDefinition.mapping [
         fhir:ElementDefinitionMappingComponent.identity [ fhir:value "rim" ];
         fhir:ElementDefinitionMappingComponent.map [ fhir:value "N/A" ]
       ]
     ], [
       fhir:Element.id [ fhir:value "Extension.url" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.url" ];
       fhir:ElementDefinition.representation [ fhir:value "xmlAttr" ];
       fhir:ElementDefinition.short [ fhir:value "identifies the meaning of the extension" ];
       fhir:ElementDefinition.definition [ fhir:value "Source of the definition for the extension code - a logical name or a URL." ];
       fhir:ElementDefinition.comment [ fhir:value "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension." ];
       fhir:ElementDefinition.min [ fhir:value "1" ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinitionBaseComponent.path [ fhir:value "Extension.url" ];
         fhir:ElementDefinitionBaseComponent.min [ fhir:value "1" ];
         fhir:ElementDefinitionBaseComponent.max [ fhir:value "1" ]
       ];
       fhir:ElementDefinition.type [
         fhir:TypeRefComponent.code [ fhir:value "uri" ]
       ];
       fhir:ElementDefinition.fixed [ fhir:value "http://hl7.org/fhir/StructureDefinition/questionnaire-optionRestriction" ];
       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 "Extension.value[x]" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.value[x]" ];
       fhir:ElementDefinition.short [ fhir:value "Value of extension" ];
       fhir:ElementDefinition.definition [ fhir:value "Value of extension - must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list)." ];
       fhir:ElementDefinition.min [ fhir:value "0" ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.base [
         fhir:ElementDefinitionBaseComponent.path [ fhir:value "Extension.value[x]" ];
         fhir:ElementDefinitionBaseComponent.min [ fhir:value "0" ];
         fhir:ElementDefinitionBaseComponent.max [ fhir:value "1" ]
       ];
       fhir:ElementDefinition.type [
         fhir:TypeRefComponent.code [ fhir:value "base64Binary" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "boolean" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "canonical" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "code" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "date" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "dateTime" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "decimal" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "id" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "instant" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "integer" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "integer64" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "markdown" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "oid" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "positiveInt" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "string" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "time" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "unsignedInt" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "uri" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "url" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "uuid" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Address" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Age" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Annotation" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Attachment" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "CodeableConcept" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "CodeableReference" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Coding" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "ContactPoint" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Count" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Distance" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Duration" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "HumanName" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Identifier" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Money" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Period" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Quantity" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Range" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Ratio" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "RatioRange" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Reference" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "SampledData" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Signature" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Timing" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "ContactDetail" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "DataRequirement" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Expression" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "ParameterDefinition" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "RelatedArtifact" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "TriggerDefinition" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "UsageContext" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Availability" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "ExtendedContactDetail" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Dosage" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Meta" ]
       ];
       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 "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 "Extension" ];
       fhir:ElementDefinition.path [ fhir:value "Extension" ];
       fhir:ElementDefinition.short [ fhir:value "Constraint" ];
       fhir:ElementDefinition.definition [ fhir:value "Allows disabling certain questionnaire options for the containing item based on evaluating expressions." ];
       fhir:ElementDefinition.min [ fhir:value "0" ];
       fhir:ElementDefinition.max [ fhir:value "*" ]
     ], [
       fhir:Element.id [ fhir:value "Extension.extension:option" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.extension" ];
       fhir:ElementDefinition.sliceName [ fhir:value "option" ];
       fhir:ElementDefinition.short [ fhir:value "Option to exclude" ];
       fhir:ElementDefinition.definition [ fhir:value "Indicates one or more options that should be disabled if the specified expression evaluates to true" ];
       fhir:ElementDefinition.comment [ fhir:value "Options listed are expected to correspond to either answerOption values or Codings found in the answerValueset expansion.  Systems SHOULD treat non-matching answerOptions and MAY treat non-matching answerValueset Codings as an error." ];
       fhir:ElementDefinition.min [ fhir:value "1" ];
       fhir:ElementDefinition.max [ fhir:value "*" ];
       fhir:ElementDefinition.type [
         fhir:TypeRefComponent.code [ fhir:value "Extension" ]
       ]
     ], [
       fhir:Element.id [ fhir:value "Extension.extension:option.extension" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.extension.extension" ];
       fhir:ElementDefinition.max [ fhir:value "0" ]
     ], [
       fhir:Element.id [ fhir:value "Extension.extension:option.url" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.extension.url" ];
       fhir:ElementDefinition.type [
         fhir:TypeRefComponent.code [ fhir:value "uri" ]
       ];
       fhir:ElementDefinition.fixed [ fhir:value "option" ]
     ], [
       fhir:Element.id [ fhir:value "Extension.extension:option.value[x]" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.extension.value[x]" ];
       fhir:ElementDefinition.min [ fhir:value "1" ];
       fhir:ElementDefinition.type [
         fhir:TypeRefComponent.code [ fhir:value "integer" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "date" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "time" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "string" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Coding" ]
       ], [
         fhir:TypeRefComponent.code [ fhir:value "Reference" ]
       ]
     ], [
       fhir:Element.id [ fhir:value "Extension.extension:expression" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.extension" ];
       fhir:ElementDefinition.sliceName [ fhir:value "expression" ];
       fhir:ElementDefinition.short [ fhir:value "Expression to trigger exclusion" ];
       fhir:ElementDefinition.definition [ fhir:value "The expression to evaluate.  If the evaluation results in true, then the specified options will be suppressed." ];
       fhir:ElementDefinition.min [ fhir:value "1" ];
       fhir:ElementDefinition.max [ fhir:value "1" ];
       fhir:ElementDefinition.type [
         fhir:TypeRefComponent.code [ fhir:value "Extension" ]
       ]
     ], [
       fhir:Element.id [ fhir:value "Extension.extension:expression.extension" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.extension.extension" ];
       fhir:ElementDefinition.max [ fhir:value "0" ]
     ], [
       fhir:Element.id [ fhir:value "Extension.extension:expression.url" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.extension.url" ];
       fhir:ElementDefinition.type [
         fhir:TypeRefComponent.code [ fhir:value "uri" ]
       ];
       fhir:ElementDefinition.fixed [ fhir:value "requirements" ]
     ], [
       fhir:Element.id [ fhir:value "Extension.extension:expression.value[x]" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.extension.value[x]" ];
       fhir:ElementDefinition.min [ fhir:value "1" ];
       fhir:ElementDefinition.type [
         fhir:TypeRefComponent.code [ fhir:value "Expression" ]
       ]
     ], [
       fhir:Element.id [ fhir:value "Extension.url" ];
       fhir:ElementDefinition.path [ fhir:value "Extension.url" ];
       fhir:ElementDefinition.type [
         fhir:TypeRefComponent.code [ fhir:value "uri" ]
       ];
       fhir:ElementDefinition.fixed [ fhir:value "http://hl7.org/fhir/StructureDefinition/questionnaire-optionRestriction" ]
     ]
  ] .

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


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.