PackagesCanonicalsLogsProblems
    Packages
    rs/ch.fhir.ig.ch@elm-1.0.0-trialuse
    http://fhir.ch/ig/ch-elm/StructureDefinition/ch-elm-patient
description: This CH ELM base profile constrains the Patient resource for the purpose of laboratory orders and test reports.
package_name: rs/ch.fhir.ig.ch
derivation: constraint
name: ChElmPatient
type: Patient
elements:
  identifier:
    mustSupport: true
    index: 0
    slicing:
      slices:
        AHVN13:
          match: {}
          schema: {short: OASI Number Switzerland, mustSupport: true, index: 1}
        OASI-LI:
          match: {}
          schema:
            short: OASI Number Principality of Liechtenstein
            type: Identifier
            mustSupport: true
            array: true
            pattern:
              type: Identifier
              value: {system: 'http://ahv.li/identifier/oasi'}
            index: 2
          min: 0
  name:
    short: "Whether the personal data is transmitted by using initials, full name or a special combination can be seen from the table on p.66 of this document: \nhttps://www.bag.admin.ch/dam/bag/de/dokumente/mt/msys/leitfaden-zur-meldepflicht-2023.pdf.download.pdf/meldepflicht-leitfaden-2023-de.pdf"
    index: 3
    elements:
      text: {short: For usage in the case of HIV/AIDS see IG guidance, index: 4}
      family: {short: In the case of HIV/AIDS masked and provide a specific value (see IG guidance), index: 5}
      given: {short: In the case of HIV/AIDS masked and provide a specific value (see IG guidance), index: 6}
    required: [family, given]
  telecom:
    index: 7
    slicing:
      slices:
        phone:
          match: {}
          schema:
            index: 7
            elements:
              value: {index: 8}
  birthDate:
    constraint:
      ch-elm-dateTime: {human: At least the format YYYY-MM-DD is required., source: 'http://fhir.ch/ig/ch-elm/StructureDefinition/ch-elm-patient', severity: error, expression: $this.toString().length() >= 10}
    index: 9
  address:
    index: 10
    slicing:
      rules: open
      discriminator:
      - {path: use, type: value}
      min: 1
      slices:
        home:
          match: {use: home}
          schema:
            short: Residential address
            _required: true
            index: 11
            elements:
              use:
                pattern: {type: code, value: home}
                type: code
                index: 12
              city: {mustSupport: true, index: 13}
              state: {mustSupport: true, index: 14}
              postalCode: {mustSupport: true, index: 15}
              country:
                extensions:
                  countrycode: {url: null, mustSupport: true, index: 16}
                elements:
                  extension:
                    mustSupport: true
                    index: 16
                    slicing:
                      slices:
                        countrycode:
                          match: {}
                          schema: {mustSupport: true, index: 16}
            required: [use]
package_version: elm-1.0.0-trialuse
class: profile
kind: resource
url: http://fhir.ch/ig/ch-elm/StructureDefinition/ch-elm-patient
base: http://fhir.ch/ig/ch-lab-report/StructureDefinition/ch-lab-patient
version: 1.0.0-trialuse
required: [address, birthDate, name]