Current Build

Extension: animal

Patient Administration Work Group Maturity Level: 1InformativeUse Context: Any

URL for this extension:

http://hl7.org/fhir/StructureDefinition/patient-animal

Status: draft. Extension maintained by: HL7

This patient is known to be an animal.

Comment:

The absence of the animal extension does not imply that the patient is a human. If a system requires such a positive assertion that the patient is human, an extension will be required. (Do not use a species of homo-sapiens in animal species, as this would incorrectly infer that the patient is an animal).

Context of Use: Use on Element ID Patient

Extension Content

Summary

NameFlagsCard.TypeDescription & Constraintsdoco
.. animal0..1ExtensionURL = http://hl7.org/fhir/StructureDefinition/patient-animal
animal: This patient is known to be an animal.


Use on Element ID Patient
... species1..1CodeableConceptIdentifies the high level taxonomic categorization of the kind of animal.

... breed0..1CodeableConceptIdentifies the detailed categorization of the kind of animal.

... genderStatus0..1CodeableConceptIndicates the current state of the animal's reproductive organs.


doco Documentation for this format

Full Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. extension0..1ExtensionURL = http://hl7.org/fhir/StructureDefinition/patient-animal
animal: This patient is known to be an animal.


Use on Element ID Patient
... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
... species 1..1ExtensionThe animal species. E.g. Dog, Cow.
.... extension 0..0
.... url 1..1uri"species"
.... value[x] (Slice Definition)Value of extension
Slice: Unordered, Closed by type:$this
..... valueCodeableConcept 0..1CodeableConceptValue of extension
Binding: Animal species (example)
... breed 0..1ExtensionThe animal breed. E.g. Poodle, Angus.
.... extension 0..0
.... url 1..1uri"breed"
.... value[x] (Slice Definition)Value of extension
Slice: Unordered, Closed by type:$this
..... valueCodeableConcept 0..1CodeableConceptValue of extension
Binding: Animal breeds (example)
... genderStatus 0..1ExtensionThe status of the animal's reproductive parts. E.g. Neutered, Intact.
.... extension 0..0
.... url 1..1uri"genderStatus"
.... value[x] (Slice Definition)Value of extension
Slice: Unordered, Closed by type:$this
..... valueCodeableConcept 0..1CodeableConceptValue of extension
Binding: Gender status (example)
... url 1..1uri"http://hl7.org/fhir/StructureDefinition/patient-animal"
... value[x] 0..0
.... valueBase64Binarybase64Binary
.... valueBooleanboolean
.... valueCanonicalcanonical()
.... valueCodecode
.... valueDatedate
.... valueDateTimedateTime
.... valueDecimaldecimal
.... valueIdid
.... valueInstantinstant
.... valueIntegerinteger
.... valueMarkdownmarkdown
.... valueOidoid
.... valuePositiveIntpositiveInt
.... valueStringstring
.... valueTimetime
.... valueUnsignedIntunsignedInt
.... valueUriuri
.... valueUrlurl
.... valueUuiduuid
.... valueAddressAddress
.... valueAgeAge
.... valueAnnotationAnnotation
.... valueAttachmentAttachment
.... valueCodeableConceptCodeableConcept
.... valueCodingCoding
.... valueContactPointContactPoint
.... valueCountCount
.... valueDistanceDistance
.... valueDurationDuration
.... valueHumanNameHumanName
.... valueIdentifierIdentifier
.... valueMoneyMoney
.... valuePeriodPeriod
.... valueQuantityQuantity
.... valueRangeRange
.... valueRatioRatio
.... valueReferenceReference()
.... valueSampledDataSampledData
.... valueSignatureSignature
.... valueTimingTiming
.... valueContactDetailContactDetail
.... valueContributorContributor
.... valueDataRequirementDataRequirement
.... valueExpressionExpression
.... valueParameterDefinitionParameterDefinition
.... valueRelatedArtifactRelatedArtifact
.... valueTriggerDefinitionTriggerDefinition
.... valueUsageContextUsageContext
.... valueDosageDosage
.... valueMetaMeta

doco Documentation for this format

XML Template

<!-- animal -->doco

<extension xmlns="http://hl7.org/fhir"
     url="http://hl7.org/fhir/StructureDefinition/patient-animal" >
 <-- extension sliced by value:url  in the specified orderOpen-->
 <extension url="species"> 1..1 Extension  <!-- 1..1 The animal species.  E.g. Dog, Cow. -->
  <-- valueCodeableConcept sliced by type:$this  in the specified orderClosed-->
  <valueCodeableConcept><!-- 0..1 CodeableConcept Value of extension --></valueCodeableConcept>
 </extension>
 <extension url="breed"> 0..1 Extension  <!-- 0..1 The animal breed.  E.g. Poodle, Angus. -->
  <-- valueCodeableConcept sliced by type:$this  in the specified orderClosed-->
  <valueCodeableConcept><!-- 0..1 CodeableConcept Value of extension --></valueCodeableConcept>
 </extension>
 <extension url="genderStatus"> 0..1 Extension  <!-- 0..1 The status of the animal's reproductive parts.  E.g. Neutered, Intact. -->
  <-- valueCodeableConcept sliced by type:$this  in the specified orderClosed-->
  <valueCodeableConcept><!-- 0..1 CodeableConcept Value of extension --></valueCodeableConcept>
 </extension>
</extension>

JSON Template

{ // animal
    "extension" : [ //  sliced by value:url  in the specified order, Open 
      { // The animal species.  E.g. Dog, Cow. // R! 
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "url" : "species", // R! 
        "valueCodeableConcept" : [ //  sliced by type:$this  in the specified order, Closed ]
        "valueCodeableConcept" : { CodeableConcept } //Value of extension
      },
      { // The animal breed.  E.g. Poodle, Angus. //
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "url" : "breed", // R! 
        "valueCodeableConcept" : [ //  sliced by type:$this  in the specified order, Closed ]
        "valueCodeableConcept" : { CodeableConcept } //Value of extension
      },
      { // The status of the animal's reproductive parts.  E.g. Neutered, Intact. //
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "url" : "genderStatus", // R! 
        "valueCodeableConcept" : [ //  sliced by type:$this  in the specified order, Closed ]
        "valueCodeableConcept" : { CodeableConcept } //Value of extension
      }
    ],
    "url" : "http://hl7.org/fhir/StructureDefinition/patient-animal", // R! 
// value[x]: Value of extension. One of these 50:
  }

Summary

NameFlagsCard.TypeDescription & Constraintsdoco
.. animal0..1ExtensionURL = http://hl7.org/fhir/StructureDefinition/patient-animal
animal: This patient is known to be an animal.


Use on Element ID Patient
... species1..1CodeableConceptIdentifies the high level taxonomic categorization of the kind of animal.

... breed0..1CodeableConceptIdentifies the detailed categorization of the kind of animal.

... genderStatus0..1CodeableConceptIndicates the current state of the animal's reproductive organs.


doco Documentation for this format

Full Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. extension0..1ExtensionURL = http://hl7.org/fhir/StructureDefinition/patient-animal
animal: This patient is known to be an animal.


Use on Element ID Patient
... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
... species 1..1ExtensionThe animal species. E.g. Dog, Cow.
.... extension 0..0
.... url 1..1uri"species"
.... value[x] (Slice Definition)Value of extension
Slice: Unordered, Closed by type:$this
..... valueCodeableConcept 0..1CodeableConceptValue of extension
Binding: Animal species (example)
... breed 0..1ExtensionThe animal breed. E.g. Poodle, Angus.
.... extension 0..0
.... url 1..1uri"breed"
.... value[x] (Slice Definition)Value of extension
Slice: Unordered, Closed by type:$this
..... valueCodeableConcept 0..1CodeableConceptValue of extension
Binding: Animal breeds (example)
... genderStatus 0..1ExtensionThe status of the animal's reproductive parts. E.g. Neutered, Intact.
.... extension 0..0
.... url 1..1uri"genderStatus"
.... value[x] (Slice Definition)Value of extension
Slice: Unordered, Closed by type:$this
..... valueCodeableConcept 0..1CodeableConceptValue of extension
Binding: Gender status (example)
... url 1..1uri"http://hl7.org/fhir/StructureDefinition/patient-animal"
... value[x] 0..0
.... valueBase64Binarybase64Binary
.... valueBooleanboolean
.... valueCanonicalcanonical()
.... valueCodecode
.... valueDatedate
.... valueDateTimedateTime
.... valueDecimaldecimal
.... valueIdid
.... valueInstantinstant
.... valueIntegerinteger
.... valueMarkdownmarkdown
.... valueOidoid
.... valuePositiveIntpositiveInt
.... valueStringstring
.... valueTimetime
.... valueUnsignedIntunsignedInt
.... valueUriuri
.... valueUrlurl
.... valueUuiduuid
.... valueAddressAddress
.... valueAgeAge
.... valueAnnotationAnnotation
.... valueAttachmentAttachment
.... valueCodeableConceptCodeableConcept
.... valueCodingCoding
.... valueContactPointContactPoint
.... valueCountCount
.... valueDistanceDistance
.... valueDurationDuration
.... valueHumanNameHumanName
.... valueIdentifierIdentifier
.... valueMoneyMoney
.... valuePeriodPeriod
.... valueQuantityQuantity
.... valueRangeRange
.... valueRatioRatio
.... valueReferenceReference()
.... valueSampledDataSampledData
.... valueSignatureSignature
.... valueTimingTiming
.... valueContactDetailContactDetail
.... valueContributorContributor
.... valueDataRequirementDataRequirement
.... valueExpressionExpression
.... valueParameterDefinitionParameterDefinition
.... valueRelatedArtifactRelatedArtifact
.... valueTriggerDefinitionTriggerDefinition
.... valueUsageContextUsageContext
.... valueDosageDosage
.... valueMetaMeta

doco Documentation for this format

XML Template

<!-- animal -->doco

<extension xmlns="http://hl7.org/fhir"
     url="http://hl7.org/fhir/StructureDefinition/patient-animal" >
 <-- extension sliced by value:url  in the specified orderOpen-->
 <extension url="species"> 1..1 Extension  <!-- 1..1 The animal species.  E.g. Dog, Cow. -->
  <-- valueCodeableConcept sliced by type:$this  in the specified orderClosed-->
  <valueCodeableConcept><!-- 0..1 CodeableConcept Value of extension --></valueCodeableConcept>
 </extension>
 <extension url="breed"> 0..1 Extension  <!-- 0..1 The animal breed.  E.g. Poodle, Angus. -->
  <-- valueCodeableConcept sliced by type:$this  in the specified orderClosed-->
  <valueCodeableConcept><!-- 0..1 CodeableConcept Value of extension --></valueCodeableConcept>
 </extension>
 <extension url="genderStatus"> 0..1 Extension  <!-- 0..1 The status of the animal's reproductive parts.  E.g. Neutered, Intact. -->
  <-- valueCodeableConcept sliced by type:$this  in the specified orderClosed-->
  <valueCodeableConcept><!-- 0..1 CodeableConcept Value of extension --></valueCodeableConcept>
 </extension>
</extension>

JSON Template

{ // animal
    "extension" : [ //  sliced by value:url  in the specified order, Open 
      { // The animal species.  E.g. Dog, Cow. // R! 
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "url" : "species", // R! 
        "valueCodeableConcept" : [ //  sliced by type:$this  in the specified order, Closed ]
        "valueCodeableConcept" : { CodeableConcept } //Value of extension
      },
      { // The animal breed.  E.g. Poodle, Angus. //
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "url" : "breed", // R! 
        "valueCodeableConcept" : [ //  sliced by type:$this  in the specified order, Closed ]
        "valueCodeableConcept" : { CodeableConcept } //Value of extension
      },
      { // The status of the animal's reproductive parts.  E.g. Neutered, Intact. //
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "url" : "genderStatus", // R! 
        "valueCodeableConcept" : [ //  sliced by type:$this  in the specified order, Closed ]
        "valueCodeableConcept" : { CodeableConcept } //Value of extension
      }
    ],
    "url" : "http://hl7.org/fhir/StructureDefinition/patient-animal", // R! 
// value[x]: Value of extension. One of these 50:
  }

 

Constraints

  • ele-1: All FHIR elements must have a @value or children (xpath: @value|f:*|h:div)
  • ext-1: Must have either extensions or value[x], not both (xpath: exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')]))