{
  "resourceType": "StructureDefinition",
  "id": "ca-qc-akinox-profile-Patient",
  "url": "http://fhir.akinox.com/r5/StructureDefinition/Patient",
  "version": "1.0.0",
  "name": "QuebecPatient",
  "title": "Patient",
  "status": "draft",
  "description": "The Patient resources contain demographics and other administrative information about the individual.",
  "fhirVersion": "5.0.0",
  "mapping": [
    {
      "identity": "w5",
      "uri": "http://hl7.org/fhir/fivews",
      "name": "FiveWs Pattern Mapping"
    },
    {
      "identity": "rim",
      "uri": "http://hl7.org/v3",
      "name": "RIM Mapping"
    },
    {
      "identity": "interface",
      "uri": "http://hl7.org/fhir/interface",
      "name": "Interface Pattern"
    },
    {
      "identity": "cda",
      "uri": "http://hl7.org/v3/cda",
      "name": "CDA (R2)"
    },
    {
      "identity": "v2",
      "uri": "http://hl7.org/v2",
      "name": "HL7 V2 Mapping"
    },
    {
      "identity": "loinc",
      "uri": "http://loinc.org",
      "name": "LOINC code for the element"
    }
  ],
  "kind": "resource",
  "abstract": false,
  "type": "Patient",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Patient",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Patient.meta",
        "path": "Patient.meta",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Patient.meta.profile",
        "path": "Patient.meta.profile",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Patient.identifier",
        "path": "Patient.identifier",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "type.coding.code"
            }
          ],
          "rules": "open"
        },
        "comment": "Includes Patient identifiers.",
        "min": 2,
        "max": "2",
        "mustSupport": true
      },
      {
        "id": "Patient.identifier:jhn",
        "path": "Patient.identifier",
        "sliceName": "jhn",
        "min": 1,
        "max": "1"
      },
      {
        "id": "Patient.identifier:jhn.type",
        "path": "Patient.identifier.type",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Patient.identifier:jhn.type.coding",
        "path": "Patient.identifier.type.coding",
        "min": 1,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Patient.identifier:jhn.type.coding.system",
        "path": "Patient.identifier.type.coding.system",
        "fixedUri": "http://terminology.hl7.org/CodeSystem/v2-0203",
        "mustSupport": true
      },
      {
        "id": "Patient.identifier:jhn.type.coding.code",
        "path": "Patient.identifier.type.coding.code",
        "min": 1,
        "fixedCode": "JHN",
        "mustSupport": true,
        "binding": {
          "strength": "required",
          "valueSet": "http://terminology.hl7.org/ValueSet/v2-0203"
        }
      },
      {
        "id": "Patient.identifier:jhn.system",
        "path": "Patient.identifier.system",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Patient.identifier:jhn.value",
        "path": "Patient.identifier.value",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Patient.identifier:jhn.period",
        "path": "Patient.identifier.period",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Patient.identifier:pci",
        "path": "Patient.identifier",
        "sliceName": "pci",
        "min": 1,
        "max": "1"
      },
      {
        "id": "Patient.identifier:pci.type",
        "path": "Patient.identifier.type",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Patient.identifier:pci.type.coding",
        "path": "Patient.identifier.type.coding",
        "min": 1,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Patient.identifier:pci.type.coding.system",
        "path": "Patient.identifier.type.coding.system",
        "fixedUri": "http://akinox.com/fhir/ValueSet/akinox-identifier-type",
        "mustSupport": true
      },
      {
        "id": "Patient.identifier:pci.type.coding.code",
        "path": "Patient.identifier.type.coding.code",
        "min": 1,
        "fixedCode": "PCI",
        "mustSupport": true,
        "binding": {
          "strength": "required",
          "valueSet": "http://akinox.com/fhir/ValueSet/akinox-identifier-type"
        }
      },
      {
        "id": "Patient.identifier:pci.value",
        "path": "Patient.identifier.value",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Patient.active",
        "path": "Patient.active",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Patient.name",
        "path": "Patient.name",
        "comment": "name.family and name.given will only be used.",
        "min": 1,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Patient.name.family",
        "path": "Patient.name.family",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Patient.name.given",
        "path": "Patient.name.given",
        "min": 1,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Patient.telecom",
        "path": "Patient.telecom",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "system"
            },
            {
              "type": "value",
              "path": "use"
            }
          ],
          "rules": "open"
        },
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Patient.telecom:phone",
        "path": "Patient.telecom",
        "sliceName": "phone",
        "min": 0,
        "max": "1"
      },
      {
        "id": "Patient.telecom:phone.system",
        "path": "Patient.telecom.system",
        "min": 1,
        "fixedCode": "phone"
      },
      {
        "id": "Patient.telecom:phone.value",
        "path": "Patient.telecom.value",
        "min": 1
      },
      {
        "id": "Patient.telecom:phone.use",
        "path": "Patient.telecom.use",
        "min": 1,
        "fixedCode": "home"
      },
      {
        "id": "Patient.telecom:mobile",
        "path": "Patient.telecom",
        "sliceName": "mobile",
        "min": 0,
        "max": "1"
      },
      {
        "id": "Patient.telecom:mobile.system",
        "path": "Patient.telecom.system",
        "min": 1,
        "fixedCode": "phone"
      },
      {
        "id": "Patient.telecom:mobile.value",
        "path": "Patient.telecom.value",
        "min": 1
      },
      {
        "id": "Patient.telecom:mobile.use",
        "path": "Patient.telecom.use",
        "min": 1,
        "fixedCode": "mobile"
      },
      {
        "id": "Patient.telecom:work",
        "path": "Patient.telecom",
        "sliceName": "work",
        "min": 0,
        "max": "1"
      },
      {
        "id": "Patient.telecom:work.system",
        "path": "Patient.telecom.system",
        "min": 1,
        "fixedCode": "phone"
      },
      {
        "id": "Patient.telecom:work.value",
        "path": "Patient.telecom.value",
        "min": 1
      },
      {
        "id": "Patient.telecom:work.use",
        "path": "Patient.telecom.use",
        "min": 1,
        "fixedCode": "work"
      },
      {
        "id": "Patient.telecom:pager",
        "path": "Patient.telecom",
        "sliceName": "pager",
        "min": 0,
        "max": "1"
      },
      {
        "id": "Patient.telecom:pager.system",
        "path": "Patient.telecom.system",
        "min": 1,
        "fixedCode": "pager"
      },
      {
        "id": "Patient.telecom:pager.value",
        "path": "Patient.telecom.value",
        "min": 1
      },
      {
        "id": "Patient.telecom:pager.use",
        "path": "Patient.telecom.use",
        "min": 1
      },
      {
        "id": "Patient.telecom:other",
        "path": "Patient.telecom",
        "sliceName": "other",
        "min": 0,
        "max": "1"
      },
      {
        "id": "Patient.telecom:other.system",
        "path": "Patient.telecom.system",
        "min": 1,
        "fixedCode": "other"
      },
      {
        "id": "Patient.telecom:other.value",
        "path": "Patient.telecom.value",
        "min": 1
      },
      {
        "id": "Patient.telecom:other.use",
        "path": "Patient.telecom.use",
        "min": 1
      },
      {
        "id": "Patient.telecom:email",
        "path": "Patient.telecom",
        "sliceName": "email",
        "min": 0,
        "max": "1"
      },
      {
        "id": "Patient.telecom:email.system",
        "path": "Patient.telecom.system",
        "min": 1,
        "fixedCode": "email"
      },
      {
        "id": "Patient.telecom:email.value",
        "path": "Patient.telecom.value",
        "min": 1
      },
      {
        "id": "Patient.telecom:email.use",
        "path": "Patient.telecom.use",
        "min": 1
      },
      {
        "id": "Patient.gender",
        "path": "Patient.gender",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Patient.birthDate",
        "path": "Patient.birthDate",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Patient.address",
        "path": "Patient.address",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Patient.address.extension",
        "path": "Patient.address.extension",
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://fhir.akinox.com/r5/StructureDefinition/ext-address-quebec-msss-rts"
            ]
          }
        ]
      },
      {
        "id": "Patient.address.line",
        "path": "Patient.address.line",
        "min": 1,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Patient.address.city",
        "path": "Patient.address.city",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Patient.address.state",
        "path": "Patient.address.state",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Patient.address.postalCode",
        "path": "Patient.address.postalCode",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Patient.address.country",
        "path": "Patient.address.country",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Patient.managingOrganization",
        "path": "Patient.managingOrganization",
        "min": 1,
        "mustSupport": true
      }
    ]
  }
}