PackagesCanonicalsLogsProblems
    Packages
    se.electronichealth.fhir.hvo.r5@0.1.1-alpha
    http://electronichealth.se/fhir/hvo/StructureDefinition/HVOLocation
description: Location profile for HVO
package_name: se.electronichealth.fhir.hvo.r5
derivation: constraint
name: HVOLocation
type: Location
elements:
  description: {mustSupport: true, index: 20}
  address:
    mustSupport: true
    index: 25
    elements:
      type:
        pattern: {type: Code, value: physical}
        mustSupport: true
        index: 26
      line:
        short: "A line in an address, according to Swedish standard SS 637003:2015.\r\n For example: \r\nBacken Norrgården 1B, \r\nHedesunda, Gävle.\r\nThis repeating element order: The order in which lines should appear in an address label"
        constraint:
          hvo-address-line-1: {human: A line in an address should have max length of 128 characters, source: 'http://electronichealth.se/fhir/hvo/StructureDefinition/HVOLocation', severity: error, expression: $this.length() <= 128}
        mustSupport: true
        index: 27
    required: [line, type]
  name: {mustSupport: true, index: 19}
  type:
    short: Code for functionality of location.
    binding: {strength: required, valueSet: 'http://electronichealth.se/hvo/ValueSet/hvo-location-functionality'}
    mustSupport: true
    index: 21
    elements:
      coding:
        mustSupport: true
        index: 22
        elements:
          system: {mustSupport: true, index: 23}
          code: {mustSupport: true, index: 24}
        required: [system, code]
    required: [coding]
  extension:
    index: 1
    slicing:
      rules: open
      ordered: false
      discriminator:
      - {path: url, type: value}
      min: 1
      slices:
        period:
          match: {url: null}
          schema:
            type: Extension
            mustSupport: true
            url: http://electronichealth.se/fhir/hvo/StructureDefinition/HVOLocationPeriodExtension
            index: 2
            elements:
              url: {mustSupport: true, index: 3}
              value:
                mustSupport: true
                choices: []
                index: 5
              value[x]:
                elements:
                  start:
                    constraint:
                      hvo-dateTime-2: {human: DateTime should be submitted without timestamp, source: 'http://electronichealth.se/fhir/hvo/StructureDefinition/HVOLocation', severity: error, expression: $this.toString().contains('T') = false}
                    mustSupport: true
                    index: 6
                  end:
                    constraint:
                      hvo-dateTime-2: {human: DateTime should be submitted without timestamp, source: 'http://electronichealth.se/fhir/hvo/StructureDefinition/HVOLocation', severity: error, expression: $this.toString().contains('T') = false}
                    mustSupport: true
                    index: 7
                required: [start]
            required: [value]
        positionSweref:
          match: {url: null}
          schema:
            type: Extension
            mustSupport: true
            url: http://electronichealth.se/fhir/hvo/StructureDefinition/HVOSweref99PositionExtension
            index: 8
            extensions:
              longitude: {url: null, mustSupport: true, index: 9}
              latitude: {url: null, mustSupport: true, index: 10}
            elements:
              extension:
                mustSupport: true
                index: 9
                slicing:
                  slices:
                    longitude:
                      match: {}
                      schema: {mustSupport: true, index: 9}
                    latitude:
                      match: {}
                      schema: {mustSupport: true, index: 10}
  status:
    binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/location-status'}
    mustSupport: true
    index: 18
  id: {mustSupport: true, index: 0}
  identifier:
    mustSupport: true
    index: 11
    slicing:
      rules: open
      ordered: false
      description: Slice on value based on the type code value
      discriminator:
      - {path: system, type: value}
      min: null
      max: 1
      slices:
        municipality:
          match: {system: dummy.se/identifier/hvo-municipalities-scb}
          schema:
            short: 'Identifier when Location is a municipality (sv: kommun)'
            mustSupport: true
            index: 12
            elements:
              system:
                pattern: {type: Uri, value: dummy.se/identifier/hvo-municipalities-scb}
                mustSupport: true
                index: 13
              value:
                binding: {strength: required, valueSet: 'http://electronichealth.se/hvo/ValueSet/hvo-municipalities-scb'}
                mustSupport: true
                index: 14
            required: [value, system]
        county:
          match: {system: dummy.se/identifier/hvo-counties-scb}
          schema:
            short: 'Identifier when Location is a county (sv: län)'
            mustSupport: true
            index: 15
            elements:
              system:
                pattern: {type: Uri, value: dummy.se/identifier/hvo-counties-scb}
                mustSupport: true
                index: 16
              value:
                binding: {strength: required, valueSet: 'http://electronichealth.se/hvo/ValueSet/hvo-counties-scb'}
                mustSupport: true
                index: 17
            required: [value, system]
  position:
    mustSupport: true
    index: 32
    elements:
      longitude: {mustSupport: true, index: 33}
      latitude: {mustSupport: true, index: 34}
  form:
    binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/location-physical-type'}
    mustSupport: true
    index: 28
    elements:
      coding:
        mustSupport: true
        index: 29
        elements:
          system: {mustSupport: true, index: 30}
          code: {mustSupport: true, index: 31}
        required: [system, code]
    required: [coding]
  partOf:
    type: Reference
    mustSupport: true
    refers: ['http://electronichealth.se/fhir/hvo/StructureDefinition/HVOLocation']
    index: 35
package_version: 0.1.1-alpha
extensions:
  period:
    url: http://electronichealth.se/fhir/hvo/StructureDefinition/HVOLocationPeriodExtension
    type: Extension
    mustSupport: true
    index: 2
    elements:
      url: {mustSupport: true, index: 3}
      value:
        mustSupport: true
        choices: []
        index: 5
      value[x]:
        elements:
          start:
            constraint:
              hvo-dateTime-2: {human: DateTime should be submitted without timestamp, source: 'http://electronichealth.se/fhir/hvo/StructureDefinition/HVOLocation', severity: error, expression: $this.toString().contains('T') = false}
            mustSupport: true
            index: 6
          end:
            constraint:
              hvo-dateTime-2: {human: DateTime should be submitted without timestamp, source: 'http://electronichealth.se/fhir/hvo/StructureDefinition/HVOLocation', severity: error, expression: $this.toString().contains('T') = false}
            mustSupport: true
            index: 7
        required: [start]
    required: [value]
  positionSweref:
    url: http://electronichealth.se/fhir/hvo/StructureDefinition/HVOSweref99PositionExtension
    type: Extension
    mustSupport: true
    index: 8
    extensions:
      longitude: {url: null, mustSupport: true, index: 9}
      latitude: {url: null, mustSupport: true, index: 10}
    elements:
      extension:
        mustSupport: true
        index: 9
        slicing:
          slices:
            longitude:
              match: {}
              schema: {mustSupport: true, index: 9}
            latitude:
              match: {}
              schema: {mustSupport: true, index: 10}
class: profile
kind: resource
url: http://electronichealth.se/fhir/hvo/StructureDefinition/HVOLocation
base: http://hl7.org/fhir/StructureDefinition/Location
version: 0.1.0
required: [extension, status]