Current Build

Extension: Geolocation

FHIR Infrastructure Work Group Maturity Level: 1InformativeUse 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).

Context of Use: Use on data type: Address

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

Extension Content

Summary

NameFlagsCard.TypeDescription & Constraintsdoco
.. extension0..1ExtensionURL = 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: Address
... latitude1..1decimalLatitude. The value domain and the interpretation are the same as for the text of the latitude element in KML (see notes below).
... longitude1..1decimalLongitude. 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

NameFlagsCard.TypeDescription & Constraintsdoco
.. extension0..1ExtensionURL = 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: Address
... extension 1..1ExtensionLatitude with WGS84 datum
.... url 1..1uri"latitude"
.... valueDecimal 0..1decimalValue of extension
... extension 1..1ExtensionLongitude with WGS84 datum
.... url 1..1uri"longitude"
.... valueDecimal 0..1decimalValue of extension
... url 1..1uri"http://hl7.org/fhir/StructureDefinition/geolocation"
... value[x] 0..0

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]"/><!-- 0..1 Value of extension -->
 </extension>
 <extension url="longitude"> 1..1 Extension  <!-- 1..1 Longitude with WGS84 datum -->
  <valueDecimal value="[decimal]"/><!-- 0..1 Value of extension -->
 </extension>
</extension>

JSON Template

{ // Geolocation
    "extension" : [ //  sliced by value:url  in the specified orderOpen
      { // Latitude with WGS84 datum // R! 
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified orderOpen
        ],
        "url" : "latitude", // R! 
        "valueDecimal" : <decimal> //Value of extension
      },
      { // Longitude with WGS84 datum // R! 
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified orderOpen
        ],
        "url" : "longitude", // R! 
        "valueDecimal" : <decimal> //Value of extension
      }
    ],
    "url" : "http://hl7.org/fhir/StructureDefinition/geolocation", // R! 
// value[x]: Value of extension. One of these 38:
  }

Summary

NameFlagsCard.TypeDescription & Constraintsdoco
.. extension0..1ExtensionURL = 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: Address
... latitude1..1decimalLatitude. The value domain and the interpretation are the same as for the text of the latitude element in KML (see notes below).
... longitude1..1decimalLongitude. 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

NameFlagsCard.TypeDescription & Constraintsdoco
.. extension0..1ExtensionURL = 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: Address
... extension 1..1ExtensionLatitude with WGS84 datum
.... url 1..1uri"latitude"
.... valueDecimal 0..1decimalValue of extension
... extension 1..1ExtensionLongitude with WGS84 datum
.... url 1..1uri"longitude"
.... valueDecimal 0..1decimalValue of extension
... url 1..1uri"http://hl7.org/fhir/StructureDefinition/geolocation"
... value[x] 0..0

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]"/><!-- 0..1 Value of extension -->
 </extension>
 <extension url="longitude"> 1..1 Extension  <!-- 1..1 Longitude with WGS84 datum -->
  <valueDecimal value="[decimal]"/><!-- 0..1 Value of extension -->
 </extension>
</extension>

JSON Template

{ // Geolocation
    "extension" : [ //  sliced by value:url  in the specified orderOpen
      { // Latitude with WGS84 datum // R! 
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified orderOpen
        ],
        "url" : "latitude", // R! 
        "valueDecimal" : <decimal> //Value of extension
      },
      { // Longitude with WGS84 datum // R! 
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified orderOpen
        ],
        "url" : "longitude", // R! 
        "valueDecimal" : <decimal> //Value of extension
      }
    ],
    "url" : "http://hl7.org/fhir/StructureDefinition/geolocation", // R! 
// value[x]: Value of extension. One of these 38:
  }

 

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')]))