Profiles

Viktor's Test Patient

Tree
valueAddress
system1..Fixed Value
value1..
system1..Fixed Value
value1..
family1..
given1..
gender1..
birthDate1..
useC
periodC
valueCode1..Binding

Textual representation
Patient.extension
Slicing

Unordered, Open, by url(Value)

Patient.extension:birthPlace
TypeExtension
Patient.extension:birthPlace.valueAddress:valueAddress
Patient.identifier
Cardinality1
Slicing

Unordered, Open, by system(Value)

Patient.identifier:nationalPersonIdentifier
Cardinality1..1
Patient.identifier:nationalPersonIdentifier.system
Definition

Swedish national OID for person identifiers

Cardinality1
Fixed Value
urn:oid:1.2.752.129.2.1.3.1
Patient.identifier:nationalPersonIdentifier.value
Cardinality1
Patient.identifier:hospitalPatientIdentifier
Cardinality..1
Patient.identifier:hospitalPatientIdentifier.system
Definition

Swedish National OID for local system IDs

Cardinality1
Fixed Value
urn:oid:1.2.752.129.2.1.2.1
Patient.identifier:hospitalPatientIdentifier.value
Cardinality1
Patient.name
Cardinality1..1
Patient.name.family
Cardinality1
Patient.name.given
Cardinality1
Patient.gender
Cardinality1
Patient.birthDate
Cardinality1
Patient.address
Constraints
  • VJ-1: If the patient has a temporary address, the period this address is in use should be filled in
    (use='temp') implies period.exists()
Patient.address.use
ConditionsThe cardinality or value of this element may be affected by these constraints: VJ-1
Patient.address.period
ConditionsThe cardinality or value of this element may be affected by these constraints: VJ-1
Patient.communication.extension
Slicing

Unordered, Open, by url(Value)

Patient.communication.extension:communicationMethod
Cardinality..1
TypeExtension(code)
Patient.communication.extension:communicationMethod.valueCode:valueCode
Cardinality1
Binding

WrittenSpokenBoth (required)

Table
Patient..
Patient.extension..
Patient.extension:birthPlaceExtension..
Patient.extension:birthPlace.valueAddress:valueAddress..
Patient.identifier1..
Patient.identifier:nationalPersonIdentifier1..1
Patient.identifier:nationalPersonIdentifier.system1..
Patient.identifier:nationalPersonIdentifier.value1..
Patient.identifier:hospitalPatientIdentifier..1
Patient.identifier:hospitalPatientIdentifier.system1..
Patient.identifier:hospitalPatientIdentifier.value1..
Patient.name1..1
Patient.name.family1..
Patient.name.given1..
Patient.gender1..
Patient.birthDate1..
Patient.address..
Patient.address.use..
Patient.address.period..
Patient.communication..
Patient.communication.extension..
Patient.communication.extension:communicationMethodExtension..1
Patient.communication.extension:communicationMethod.valueCode:valueCode1..

JSON
{
"resourceType": "StructureDefinition",
"id": "cba34a83-f0e8-4647-84ea-4dccdb85af8c",
"meta": {
"lastUpdated": "2018-10-25T13:12:53.525+00:00"
},
"url": "http://inera.se/fhir/dstu3/StructureDefinition/ViktorTestPatient",
"name": "ViktorTestPatient",
"status": "draft",
"date": "2018-10-25T13:12:51.4859148+00:00",
"description": "Test resource used as part of the FHIR Profiling training course",
"fhirVersion": "3.0.1",
"kind": "resource",
"abstract": false,
"type": "Patient",
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/Patient",
"derivation": "constraint",
"differential": {
"element": [
{
"id": "Patient.extension",
"path": "Patient.extension",
"slicing": {
"discriminator": [
{
"type": "value",
"path": "url"
}
],
"rules": "open"
}
},
{
"id": "Patient.extension:birthPlace",
"path": "Patient.extension",
"sliceName": "birthPlace",
"type": [
{
"code": "Extension",
"profile": "http://hl7.org/fhir/StructureDefinition/birthPlace"
}
]
},
{
"id": "Patient.extension:birthPlace.valueAddress:valueAddress",
"path": "Patient.extension.valueAddress",
"sliceName": "valueAddress"
},
{
"id": "Patient.identifier",
"path": "Patient.identifier",
"slicing": {
"discriminator": [
{
"type": "value",
"path": "system"
}
],
"rules": "open"
},
"min": 1
},
{
"id": "Patient.identifier:nationalPersonIdentifier",
"path": "Patient.identifier",
"sliceName": "nationalPersonIdentifier",
"min": 1,
"max": "1"
},
{
"id": "Patient.identifier:nationalPersonIdentifier.system",
"path": "Patient.identifier.system",
"definition": "Swedish national OID for person identifiers",
"min": 1,
"fixedUri": "urn:oid:1.2.752.129.2.1.3.1"
},
{
"id": "Patient.identifier:nationalPersonIdentifier.value",
"path": "Patient.identifier.value",
"min": 1
},
{
"id": "Patient.identifier:hospitalPatientIdentifier",
"path": "Patient.identifier",
"sliceName": "hospitalPatientIdentifier",
"max": "1"
},
{
"id": "Patient.identifier:hospitalPatientIdentifier.system",
"path": "Patient.identifier.system",
"definition": "Swedish National OID for local system IDs",
"min": 1,
"fixedUri": "urn:oid:1.2.752.129.2.1.2.1"
},
{
"id": "Patient.identifier:hospitalPatientIdentifier.value",
"path": "Patient.identifier.value",
"min": 1
},
{
"id": "Patient.name",
"path": "Patient.name",
"min": 1,
"max": "1"
},
{
"id": "Patient.name.family",
"path": "Patient.name.family",
"min": 1
},
{
"id": "Patient.name.given",
"path": "Patient.name.given",
"min": 1
},
{
"id": "Patient.gender",
"path": "Patient.gender",
"min": 1
},
{
"id": "Patient.birthDate",
"path": "Patient.birthDate",
"min": 1
},
{
"id": "Patient.address",
"path": "Patient.address",
"constraint": [
{
"key": "VJ-1",
"severity": "warning",
"human": "If the patient has a temporary address, the period this address is in use should be filled in",
"expression": "(use='temp') implies period.exists()"
}
]
},
{
"id": "Patient.address.use",
"path": "Patient.address.use",
"condition": [
"VJ-1"
]
},
{
"id": "Patient.address.period",
"path": "Patient.address.period",
"condition": [
"VJ-1"
]
},
{
"id": "Patient.communication.extension",
"path": "Patient.communication.extension",
"slicing": {
"discriminator": [
{
"type": "value",
"path": "url"
}
],
"rules": "open"
}
},
{
"id": "Patient.communication.extension:communicationMethod",
"path": "Patient.communication.extension",
"sliceName": "communicationMethod",
"max": "1",
"type": [
{
"code": "Extension",
"profile": "http://inera.se/fhir/dstu3/StructureDefinition/CommunicationMedium"
}
]
},
{
"id": "Patient.communication.extension:communicationMethod.valueCode:valueCode",
"path": "Patient.communication.extension.valueCode",
"sliceName": "valueCode",
"min": 1,
"binding": {
"strength": "required",
"valueSetReference": {
"reference": "http://inera.se/fhir/dstu3/valueSet/human-communication-methods"
}
}
}
]
}
}

XML
<StructureDefinition xmlns="http://hl7.org/fhir">
<id value="cba34a83-f0e8-4647-84ea-4dccdb85af8c" />
<meta>
<lastUpdated value="2018-10-25T13:12:53.525+00:00" />
</meta>
<url value="http://inera.se/fhir/dstu3/StructureDefinition/ViktorTestPatient" />
<name value="ViktorTestPatient" />
<status value="draft" />
<date value="2018-10-25T13:12:51.4859148+00:00" />
<description value="Test resource used as part of the FHIR Profiling training course" />
<fhirVersion value="3.0.1" />
<kind value="resource" />
<abstract value="false" />
<type value="Patient" />
<baseDefinition value="http://hl7.org/fhir/StructureDefinition/Patient" />
<derivation value="constraint" />
<differential>
<element id="Patient.extension">
<path value="Patient.extension" />
<slicing>
<discriminator>
<type value="value" />
<path value="url" />
</discriminator>
<rules value="open" />
</slicing>
</element>
<element id="Patient.extension:birthPlace">
<path value="Patient.extension" />
<sliceName value="birthPlace" />
<type>
<code value="Extension" />
<profile value="http://hl7.org/fhir/StructureDefinition/birthPlace" />
</type>
</element>
<element id="Patient.extension:birthPlace.valueAddress:valueAddress">
<path value="Patient.extension.valueAddress" />
<sliceName value="valueAddress" />
</element>
<element id="Patient.identifier">
<path value="Patient.identifier" />
<slicing>
<discriminator>
<type value="value" />
<path value="system" />
</discriminator>
<rules value="open" />
</slicing>
<min value="1" />
</element>
<element id="Patient.identifier:nationalPersonIdentifier">
<path value="Patient.identifier" />
<sliceName value="nationalPersonIdentifier" />
<min value="1" />
<max value="1" />
</element>
<element id="Patient.identifier:nationalPersonIdentifier.system">
<path value="Patient.identifier.system" />
<definition value="Swedish national OID for person identifiers" />
<min value="1" />
<fixedUri value="urn:oid:1.2.752.129.2.1.3.1" />
</element>
<element id="Patient.identifier:nationalPersonIdentifier.value">
<path value="Patient.identifier.value" />
<min value="1" />
</element>
<element id="Patient.identifier:hospitalPatientIdentifier">
<path value="Patient.identifier" />
<sliceName value="hospitalPatientIdentifier" />
<max value="1" />
</element>
<element id="Patient.identifier:hospitalPatientIdentifier.system">
<path value="Patient.identifier.system" />
<definition value="Swedish National OID for local system IDs" />
<min value="1" />
<fixedUri value="urn:oid:1.2.752.129.2.1.2.1" />
</element>
<element id="Patient.identifier:hospitalPatientIdentifier.value">
<path value="Patient.identifier.value" />
<min value="1" />
</element>
<element id="Patient.name">
<path value="Patient.name" />
<min value="1" />
<max value="1" />
</element>
<element id="Patient.name.family">
<path value="Patient.name.family" />
<min value="1" />
</element>
<element id="Patient.name.given">
<path value="Patient.name.given" />
<min value="1" />
</element>
<element id="Patient.gender">
<path value="Patient.gender" />
<min value="1" />
</element>
<element id="Patient.birthDate">
<path value="Patient.birthDate" />
<min value="1" />
</element>
<element id="Patient.address">
<path value="Patient.address" />
<constraint>
<key value="VJ-1" />
<severity value="warning" />
<human value="If the patient has a temporary address, the period this address is in use should be filled in" />
<expression value="(use='temp') implies period.exists()" />
</constraint>
</element>
<element id="Patient.address.use">
<path value="Patient.address.use" />
<condition value="VJ-1" />
</element>
<element id="Patient.address.period">
<path value="Patient.address.period" />
<condition value="VJ-1" />
</element>
<element id="Patient.communication.extension">
<path value="Patient.communication.extension" />
<slicing>
<discriminator>
<type value="value" />
<path value="url" />
</discriminator>
<rules value="open" />
</slicing>
</element>
<element id="Patient.communication.extension:communicationMethod">
<path value="Patient.communication.extension" />
<sliceName value="communicationMethod" />
<max value="1" />
<type>
<code value="Extension" />
<profile value="http://inera.se/fhir/dstu3/StructureDefinition/CommunicationMedium" />
</type>
</element>
<element id="Patient.communication.extension:communicationMethod.valueCode:valueCode">
<path value="Patient.communication.extension.valueCode" />
<sliceName value="valueCode" />
<min value="1" />
<binding>
<strength value="required" />
<valueSetReference>
<reference value="http://inera.se/fhir/dstu3/valueSet/human-communication-methods" />
</valueSetReference>
</binding>
</element>
</differential>
</StructureDefinition>