FHIR Release 3 (STU) 4

This page is part of the FHIR Specification (v3.0.2: (v4.0.1: R4 - Mixed Normative and STU 3). ) in it's permanent home (it will always be available at this URL). 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: R4B R4 R3 R4 R3

Extension: Geolocation

FHIR Infrastructure Work Group   Maturity Level : 1 Informative Use Context : Any

URL for this extension:


http://hl7.org/fhir/StructureDefinition/geolocation

Status: draft. Extension maintained by: Health Level Seven International (FHIR Infrastructure)

The absolute geographic location of the Location, expressed using the WGS84 datum (This is the same co-ordinate system used in KML).

Comment :

The extension can be further extended to include unique geolocation identifiers, confidence, altitude, etc.

Context of Use: Use on data type: Element ID Address

usage info: insert a list of places where this extension is used

Extension Content

Summary

Name Flags Card. Type Description & Constraints doco
. . extension Geolocation 0..1 Extension URL = http://hl7.org/fhir/StructureDefinition/geolocation
Geolocation: The absolute geographic location of the Location, expressed using the WGS84 datum (This is the same co-ordinate system used in KML).


Use on data type: Element ID Address
. . . latitude 1..1 decimal Latitude. The value domain and the interpretation are the same as for the text of the latitude element in KML (see notes below).

. . . longitude 1..1 decimal Longitude. The value domain and the interpretation are the same as for the text of the longitude element in KML (see notes below).


doco Documentation for this format

Full Structure

Name Flags Card. Type Description & Constraints doco
. . extension 0..1 Extension URL = http://hl7.org/fhir/StructureDefinition/geolocation
Geolocation: The absolute geographic location of the Location, expressed using the WGS84 datum (This is the same co-ordinate system used in KML).


Use on data type: Element ID Address
. . . extension I 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
. . . extension extension:latitude I 1..1 Extension Latitude with WGS84 datum
. . . . extension I 0..0
. . . . url 1..1 uri "latitude" "latitude"
. . . valueDecimal . value[x] I 0..1 1..1 decimal Value of extension
. . . extension extension:longitude I 1..1 Extension Longitude with WGS84 datum
. . . . extension I 0..0
. . . . url 1..1 uri "longitude" "longitude"
. . . valueDecimal . value[x] I 0..1 1..1 decimal Value of extension
. . . url 1..1 uri "http://hl7.org/fhir/StructureDefinition/geolocation" "http://hl7.org/fhir/StructureDefinition/geolocation"
. . . value[x] I 0 .. 0
. . . . valueBase64Binary base64Binary
.... valueBoolean boolean
.... valueCanonical canonical ()
.... valueCode code
.... valueDate date
.... valueDateTime dateTime
.... valueDecimal decimal
.... valueId id
.... valueInstant instant
.... valueInteger integer
.... valueMarkdown markdown
.... valueOid oid
.... valuePositiveInt positiveInt
.... valueString string
.... valueTime time
.... valueUnsignedInt unsignedInt
.... valueUri uri
.... valueUrl url
.... valueUuid uuid
.... valueAddress Address
.... valueAge Age
.... valueAnnotation Annotation
.... valueAttachment Attachment
.... valueCodeableConcept CodeableConcept
.... valueCoding Coding
.... valueContactPoint ContactPoint
.... valueCount Count
.... valueDistance Distance
.... valueDuration Duration
.... valueHumanName HumanName
.... valueIdentifier Identifier
.... valueMoney Money
.... valuePeriod Period
.... valueQuantity Quantity
.... valueRange Range
.... valueRatio Ratio
.... valueReference Reference ()
.... valueSampledData SampledData
.... valueSignature Signature
.... valueTiming Timing
.... valueContactDetail ContactDetail
.... valueContributor Contributor
.... valueDataRequirement DataRequirement
.... valueExpression Expression
.... valueParameterDefinition ParameterDefinition
.... valueRelatedArtifact RelatedArtifact
.... valueTriggerDefinition TriggerDefinition
.... valueUsageContext UsageContext
.... valueDosage Dosage
.... valueMeta Meta

doco Documentation for this format

XML Template

<!-- Geolocation -->doco

<extension xmlns="http://hl7.org/fhir"
     url="http://hl7.org/fhir/StructureDefinition/geolocation" >
 <-- extension sliced by value:url  in the specified orderOpen-->
 <
  <

 <extension url="latitude"> ?? 1..1 Extension  <!-- ?? 1..1 Latitude with WGS84 datum -->
  <valueDecimal value="[decimal]"/><!-- ?? 1..1 Value of extension -->

 </extension>
 <
  <

 <extension url="longitude"> ?? 1..1 Extension  <!-- ?? 1..1 Longitude with WGS84 datum -->
  <valueDecimal value="[decimal]"/><!-- ?? 1..1 Value of extension -->

 </extension>
</extension>

JSON Template

{ // Geolocation
    "
      { //  

    "extension" : [ //  sliced by value:url  in the specified order, Open 
      { // Latitude with WGS84 datum // C? R! 

        // from Element: extension
        "
        ],

        "extension" : [ //  sliced by value:url  in the specified order, Open ]

        "url" : "latitude", // R! 
        "

        "valueDecimal" : <decimal> // C? R! Value of extension

      },
      { //  

      { // Longitude with WGS84 datum // C? R! 

        // from Element: extension
        "
        ],

        "extension" : [ //  sliced by value:url  in the specified order, Open ]

        "url" : "longitude", // R! 
        "

        "valueDecimal" : <decimal> // C? R! Value of extension

      }
    ],
    "url" : "http://hl7.org/fhir/StructureDefinition/geolocation", // R! 


// value[x]: Value of extension. One of these 50:
  }

Summary

Name Flags Card. Type Description & Constraints doco
. . extension Geolocation 0..1 Extension URL = http://hl7.org/fhir/StructureDefinition/geolocation
Geolocation: The absolute geographic location of the Location, expressed using the WGS84 datum (This is the same co-ordinate system used in KML).


Use on data type: Element ID Address
. . . latitude 1..1 decimal Latitude. The value domain and the interpretation are the same as for the text of the latitude element in KML (see notes below).

. . . longitude 1..1 decimal Longitude. The value domain and the interpretation are the same as for the text of the longitude element in KML (see notes below).


doco Documentation for this format

Full Structure

Name Flags Card. Type Description & Constraints doco
. . extension 0..1 Extension URL = http://hl7.org/fhir/StructureDefinition/geolocation
Geolocation: The absolute geographic location of the Location, expressed using the WGS84 datum (This is the same co-ordinate system used in KML).


Use on data type: Element ID Address
. . . extension I 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
. . . extension extension:latitude I 1..1 Extension Latitude with WGS84 datum
. . . . extension I 0..0
. . . . url 1..1 uri "latitude" "latitude"
. . . valueDecimal . value[x] I 0..1 1..1 decimal Value of extension
. . . extension extension:longitude I 1..1 Extension Longitude with WGS84 datum
. . . . extension I 0..0
. . . . url 1..1 uri "longitude" "longitude"
. . . valueDecimal . value[x] I 0..1 1..1 decimal Value of extension
. . . url 1..1 uri "http://hl7.org/fhir/StructureDefinition/geolocation" "http://hl7.org/fhir/StructureDefinition/geolocation"
. . . value[x] I 0 .. 0
. . . . valueBase64Binary base64Binary
.... valueBoolean boolean
.... valueCanonical canonical ()
.... valueCode code
.... valueDate date
.... valueDateTime dateTime
.... valueDecimal decimal
.... valueId id
.... valueInstant instant
.... valueInteger integer
.... valueMarkdown markdown
.... valueOid oid
.... valuePositiveInt positiveInt
.... valueString string
.... valueTime time
.... valueUnsignedInt unsignedInt
.... valueUri uri
.... valueUrl url
.... valueUuid uuid
.... valueAddress Address
.... valueAge Age
.... valueAnnotation Annotation
.... valueAttachment Attachment
.... valueCodeableConcept CodeableConcept
.... valueCoding Coding
.... valueContactPoint ContactPoint
.... valueCount Count
.... valueDistance Distance
.... valueDuration Duration
.... valueHumanName HumanName
.... valueIdentifier Identifier
.... valueMoney Money
.... valuePeriod Period
.... valueQuantity Quantity
.... valueRange Range
.... valueRatio Ratio
.... valueReference Reference ()
.... valueSampledData SampledData
.... valueSignature Signature
.... valueTiming Timing
.... valueContactDetail ContactDetail
.... valueContributor Contributor
.... valueDataRequirement DataRequirement
.... valueExpression Expression
.... valueParameterDefinition ParameterDefinition
.... valueRelatedArtifact RelatedArtifact
.... valueTriggerDefinition TriggerDefinition
.... valueUsageContext UsageContext
.... valueDosage Dosage
.... valueMeta Meta

doco Documentation for this format

XML Template

<!-- Geolocation -->doco

<extension xmlns="http://hl7.org/fhir"
     url="http://hl7.org/fhir/StructureDefinition/geolocation" >
 <-- extension sliced by value:url  in the specified orderOpen-->
 <
  <

 <extension url="latitude"> ?? 1..1 Extension  <!-- ?? 1..1 Latitude with WGS84 datum -->
  <valueDecimal value="[decimal]"/><!-- ?? 1..1 Value of extension -->

 </extension>
 <
  <

 <extension url="longitude"> ?? 1..1 Extension  <!-- ?? 1..1 Longitude with WGS84 datum -->
  <valueDecimal value="[decimal]"/><!-- ?? 1..1 Value of extension -->

 </extension>
</extension>

JSON Template

{ // Geolocation
    "
      { //  

    "extension" : [ //  sliced by value:url  in the specified order, Open 
      { // Latitude with WGS84 datum // C? R! 

        // from Element: extension
        "
        ],

        "extension" : [ //  sliced by value:url  in the specified order, Open ]

        "url" : "latitude", // R! 
        "

        "valueDecimal" : <decimal> // C? R! Value of extension

      },
      { //  

      { // Longitude with WGS84 datum // C? R! 

        // from Element: extension
        "
        ],

        "extension" : [ //  sliced by value:url  in the specified order, Open ]

        "url" : "longitude", // R! 
        "

        "valueDecimal" : <decimal> // C? R! Value of extension

      }
    ],
    "url" : "http://hl7.org/fhir/StructureDefinition/geolocation", // 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')]) )
  • ele-1 : On Extension.extension: All FHIR elements must have a @value or children (xpath on Extension.extension: @value|f:*|h:div )
  • ext-1 : On Extension.extension: Must have either extensions or value[x], not both (xpath on Extension.extension: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")]) )
  • ele-1 : On Extension.extension: All FHIR elements must have a @value or children (xpath on Extension.extension: @value|f:*|h:div )
  • ext-1 : On Extension.extension: Must have either extensions or value[x], not both (xpath on Extension.extension: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")]) )
  • ele-1 : On Extension.extension.extension: All FHIR elements must have a @value or children (xpath on Extension.extension.extension: @value|f:*|h:div )
  • ext-1 : On Extension.extension.extension: Must have either extensions or value[x], not both (xpath on Extension.extension.extension: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")]) )
  • ele-1 : On Extension.extension.value[x]: All FHIR elements must have a @value or children (xpath on Extension.extension.value[x]: @value|f:*|h:div )
  • ele-1 : On Extension.extension: All FHIR elements must have a @value or children (xpath on Extension.extension: @value|f:*|h:div )
  • ext-1 : On Extension.extension: Must have either extensions or value[x], not both (xpath on Extension.extension: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")]) )
  • ele-1 : On Extension.extension.extension: All FHIR elements must have a @value or children (xpath on Extension.extension.extension: @value|f:*|h:div )
  • ext-1 : On Extension.extension.extension: Must have either extensions or value[x], not both (xpath on Extension.extension.extension: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")]) )
  • ele-1 : On Extension.extension.value[x]: All FHIR elements must have a @value or children (xpath on Extension.extension.value[x]: @value|f:*|h:div )
  • ele-1 : On Extension.value[x]: All FHIR elements must have a @value or children (xpath on Extension.value[x]: @value|f:*|h:div )