{
  "resourceType": "StructureDefinition",
  "meta": {
    "lastUpdated": "2020-02-17T08:33:17.091+00:00"
  },
  "url": "http://example.org/fhir/StructureDefinition/VitalisQuestionnaireRequest",
  "name": "VitalisQuestionnaireRequest",
  "status": "draft",
  "fhirVersion": "4.0.0",
  "mapping": [
    {
      "identity": "workflow",
      "uri": "http://hl7.org/fhir/workflow",
      "name": "Workflow Pattern"
    },
    {
      "identity": "v2",
      "uri": "http://hl7.org/v2",
      "name": "HL7 v2 Mapping"
    },
    {
      "identity": "rim",
      "uri": "http://hl7.org/v3",
      "name": "RIM Mapping"
    },
    {
      "identity": "w5",
      "uri": "http://hl7.org/fhir/fivews",
      "name": "FiveWs Pattern Mapping"
    },
    {
      "identity": "quick",
      "uri": "http://siframework.org/cqf",
      "name": "Quality Improvement and Clinical Knowledge (QUICK)"
    }
  ],
  "kind": "resource",
  "abstract": false,
  "type": "ServiceRequest",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/ServiceRequest",
  "derivation": "constraint",
  "snapshot": {},
  "differential": {
    "element": [
      {
        "id": "ServiceRequest.extension",
        "path": "ServiceRequest.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "ServiceRequest.extension:Questionnaire",
        "path": "ServiceRequest.extension",
        "sliceName": "Questionnaire",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://hl7.org/fhir/StructureDefinition/servicerequest-questionnaireRequest"
            ]
          }
        ]
      },
      {
        "id": "ServiceRequest.extension:Questionnaire.value[x]",
        "path": "ServiceRequest.extension.value[x]",
        "slicing": {
          "rules": "open"
        }
      },
      {
        "id": "ServiceRequest.identifier.use",
        "path": "ServiceRequest.identifier.use",
        "max": "0"
      },
      {
        "id": "ServiceRequest.identifier.type",
        "path": "ServiceRequest.identifier.type",
        "max": "0"
      },
      {
        "id": "ServiceRequest.identifier.period",
        "path": "ServiceRequest.identifier.period",
        "max": "0"
      },
      {
        "id": "ServiceRequest.identifier.assigner",
        "path": "ServiceRequest.identifier.assigner",
        "max": "0"
      },
      {
        "id": "ServiceRequest.instantiatesCanonical",
        "path": "ServiceRequest.instantiatesCanonical",
        "max": "0"
      },
      {
        "id": "ServiceRequest.instantiatesUri",
        "path": "ServiceRequest.instantiatesUri",
        "max": "0"
      },
      {
        "id": "ServiceRequest.basedOn",
        "path": "ServiceRequest.basedOn",
        "max": "0"
      },
      {
        "id": "ServiceRequest.replaces",
        "path": "ServiceRequest.replaces",
        "max": "0"
      },
      {
        "id": "ServiceRequest.requisition",
        "path": "ServiceRequest.requisition",
        "max": "0"
      },
      {
        "id": "ServiceRequest.status",
        "path": "ServiceRequest.status",
        "comment": "Supported statuses:\r\nactive, completed, entered-in-error"
      },
      {
        "id": "ServiceRequest.intent",
        "path": "ServiceRequest.intent",
        "fixedCode": "order"
      },
      {
        "id": "ServiceRequest.priority",
        "path": "ServiceRequest.priority",
        "max": "0"
      },
      {
        "id": "ServiceRequest.doNotPerform",
        "path": "ServiceRequest.doNotPerform",
        "max": "0"
      },
      {
        "id": "ServiceRequest.quantity[x]",
        "path": "ServiceRequest.quantity[x]",
        "max": "0"
      },
      {
        "id": "ServiceRequest.subject.type",
        "path": "ServiceRequest.subject.type",
        "min": 1,
        "fixedUri": "Patient"
      },
      {
        "id": "ServiceRequest.subject.identifier",
        "path": "ServiceRequest.subject.identifier",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "type.coding.system"
            }
          ],
          "rules": "open"
        },
        "min": 1
      },
      {
        "id": "ServiceRequest.subject.identifier:personnummer",
        "path": "ServiceRequest.subject.identifier",
        "sliceName": "personnummer",
        "min": 1
      },
      {
        "id": "ServiceRequest.subject.identifier:personnummer.use",
        "path": "ServiceRequest.subject.identifier.use",
        "max": "0"
      },
      {
        "id": "ServiceRequest.subject.identifier:personnummer.type",
        "path": "ServiceRequest.subject.identifier.type",
        "max": "0"
      },
      {
        "id": "ServiceRequest.subject.identifier:personnummer.system",
        "path": "ServiceRequest.subject.identifier.system",
        "min": 1,
        "fixedUri": "urn:oid:1.2.752.129.2.1.3.1"
      },
      {
        "id": "ServiceRequest.subject.identifier:personnummer.value",
        "path": "ServiceRequest.subject.identifier.value",
        "min": 1
      },
      {
        "id": "ServiceRequest.subject.identifier:personnummer.period",
        "path": "ServiceRequest.subject.identifier.period",
        "max": "0"
      },
      {
        "id": "ServiceRequest.subject.identifier:personnummer.assigner",
        "path": "ServiceRequest.subject.identifier.assigner",
        "max": "0"
      },
      {
        "id": "ServiceRequest.occurrence[x]",
        "path": "ServiceRequest.occurrence[x]",
        "max": "0"
      },
      {
        "id": "ServiceRequest.asNeeded[x]",
        "path": "ServiceRequest.asNeeded[x]",
        "max": "0"
      },
      {
        "id": "ServiceRequest.requester",
        "path": "ServiceRequest.requester",
        "min": 1
      },
      {
        "id": "ServiceRequest.performerType",
        "path": "ServiceRequest.performerType",
        "max": "0"
      },
      {
        "id": "ServiceRequest.performer",
        "path": "ServiceRequest.performer",
        "min": 1,
        "max": "1"
      },
      {
        "id": "ServiceRequest.performer.type",
        "path": "ServiceRequest.performer.type",
        "min": 1,
        "fixedUri": "Patient"
      },
      {
        "id": "ServiceRequest.performer.identifier",
        "path": "ServiceRequest.performer.identifier",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "type.coding.system"
            }
          ],
          "rules": "open"
        },
        "min": 1
      },
      {
        "id": "ServiceRequest.performer.identifier.use",
        "path": "ServiceRequest.performer.identifier.use",
        "max": "0"
      },
      {
        "id": "ServiceRequest.performer.identifier.type",
        "path": "ServiceRequest.performer.identifier.type",
        "max": "0"
      },
      {
        "id": "ServiceRequest.performer.identifier.period",
        "path": "ServiceRequest.performer.identifier.period",
        "max": "0"
      },
      {
        "id": "ServiceRequest.performer.identifier.assigner",
        "path": "ServiceRequest.performer.identifier.assigner",
        "max": "0"
      },
      {
        "id": "ServiceRequest.performer.identifier:personnummer",
        "path": "ServiceRequest.performer.identifier",
        "sliceName": "personnummer",
        "min": 1
      },
      {
        "id": "ServiceRequest.performer.identifier:personnummer.use",
        "path": "ServiceRequest.performer.identifier.use",
        "max": "0"
      },
      {
        "id": "ServiceRequest.performer.identifier:personnummer.type",
        "path": "ServiceRequest.performer.identifier.type",
        "max": "0"
      },
      {
        "id": "ServiceRequest.performer.identifier:personnummer.system",
        "path": "ServiceRequest.performer.identifier.system",
        "min": 1,
        "fixedUri": "urn:oid:1.2.752.129.2.1.3.1"
      },
      {
        "id": "ServiceRequest.performer.identifier:personnummer.value",
        "path": "ServiceRequest.performer.identifier.value",
        "min": 1
      },
      {
        "id": "ServiceRequest.performer.identifier:personnummer.period",
        "path": "ServiceRequest.performer.identifier.period",
        "max": "0"
      },
      {
        "id": "ServiceRequest.performer.identifier:personnummer.assigner",
        "path": "ServiceRequest.performer.identifier.assigner",
        "max": "0"
      },
      {
        "id": "ServiceRequest.locationCode",
        "path": "ServiceRequest.locationCode",
        "max": "0"
      },
      {
        "id": "ServiceRequest.locationReference",
        "path": "ServiceRequest.locationReference",
        "max": "0"
      },
      {
        "id": "ServiceRequest.reasonReference",
        "path": "ServiceRequest.reasonReference",
        "max": "0"
      },
      {
        "id": "ServiceRequest.insurance",
        "path": "ServiceRequest.insurance",
        "max": "0"
      },
      {
        "id": "ServiceRequest.supportingInfo",
        "path": "ServiceRequest.supportingInfo",
        "max": "0"
      },
      {
        "id": "ServiceRequest.specimen",
        "path": "ServiceRequest.specimen",
        "max": "0"
      },
      {
        "id": "ServiceRequest.bodySite",
        "path": "ServiceRequest.bodySite",
        "max": "0"
      },
      {
        "id": "ServiceRequest.relevantHistory",
        "path": "ServiceRequest.relevantHistory",
        "max": "0"
      }
    ]
  }
}