Starter FHIR Implementation Guide
1.0.1 - draft
Starter FHIR Implementation Guide, published by Jembi Health Systems. This guide is not an authorized publication; it is the continuous build for version 1.0.1 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/jembi/Starter-FHIR-IG/ and changes regularly. See the Directory of published versions
Official URL: http://jembi.org/fhir/StructureDefinition/test-patient-relationship | Version: 1.0.1 | |||
Draft as of 2024-11-17 | Computable Name: TestRelatedPerson |
A profile representing the RelatedPerson exchange requirements in the Logical Model "Related Person Logical Model". Refer to the Mappings tab to see the data element associations between this profile and the Logical Model.
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from RelatedPerson
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
RelatedPerson | RelatedPerson | |||
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
MaritalStatus | S | 0..1 | (Complex) | Patient Marital Status and Effective Date URL: http://jembi.org/fhir/StructureDefinition/marital-status-and-effective-date |
relationship | 1..1 | CodeableConcept | The nature of the relationship | |
name | 1..* | HumanName | A name associated with the person | |
Slices for given | 1..2 | string | Given names (not always 'first'). Includes middle names Slice: Unordered, Open by value:id | |
given:firstName | S | 1..1 | string | Given names (not always 'first'). Includes middle names |
id | 1..1 | string | xml:id (or equivalent in JSON) Required Pattern: firstName | |
given:middleName | S | 0..1 | string | Given names (not always 'first'). Includes middle names |
id | 1..1 | string | xml:id (or equivalent in JSON) Required Pattern: middleName | |
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
RelatedPerson | 0..* | RelatedPerson | A person that is related to a patient, but who is not a direct target of care | |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
MaritalStatus | SΣ | 0..1 | (Complex) | Patient Marital Status and Effective Date URL: http://jembi.org/fhir/StructureDefinition/marital-status-and-effective-date |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
active | ?!Σ | 0..1 | boolean | Whether this related person's record is in active use |
patient | Σ | 1..1 | Reference(Patient) | The patient this person is related to |
relationship | Σ | 1..1 | CodeableConcept | The nature of the relationship Binding: PatientRelationshipType (preferred): The nature of the relationship between a patient and the related person. |
name | Σ | 1..* | HumanName | A name associated with the person |
use | ?!Σ | 0..1 | code | usual | official | temp | nickname | anonymous | old | maiden Binding: NameUse (required): The use of a human name. |
Slices for given | Σ | 1..2 | string | Given names (not always 'first'). Includes middle names Slice: Unordered, Open by value:id This repeating element order: Given Names appear in the correct order for presenting the name |
given:firstName | SΣ | 1..1 | string | Given names (not always 'first'). Includes middle names This repeating element order: Given Names appear in the correct order for presenting the name |
id | 1..1 | string | xml:id (or equivalent in JSON) Required Pattern: firstName | |
given:middleName | SΣ | 0..1 | string | Given names (not always 'first'). Includes middle names This repeating element order: Given Names appear in the correct order for presenting the name |
id | 1..1 | string | xml:id (or equivalent in JSON) Required Pattern: middleName | |
Documentation for this format |
Path | Conformance | ValueSet | URI |
RelatedPerson.relationship | preferred | PatientRelationshipTypehttp://hl7.org/fhir/ValueSet/relatedperson-relationshiptype from the FHIR Standard | |
RelatedPerson.name.use | required | NameUsehttp://hl7.org/fhir/ValueSet/name-use|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | RelatedPerson | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | RelatedPerson | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | RelatedPerson | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | RelatedPerson | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | RelatedPerson | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
RelatedPerson | 0..* | RelatedPerson | A person that is related to a patient, but who is not a direct target of care | |||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
MaritalStatus | SΣ | 0..1 | (Complex) | Patient Marital Status and Effective Date URL: http://jembi.org/fhir/StructureDefinition/marital-status-and-effective-date | ||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
identifier | Σ | 0..* | Identifier | A human identifier for this person | ||||
active | ?!Σ | 0..1 | boolean | Whether this related person's record is in active use | ||||
patient | Σ | 1..1 | Reference(Patient) | The patient this person is related to | ||||
relationship | Σ | 1..1 | CodeableConcept | The nature of the relationship Binding: PatientRelationshipType (preferred): The nature of the relationship between a patient and the related person. | ||||
name | Σ | 1..* | HumanName | A name associated with the person | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
use | ?!Σ | 0..1 | code | usual | official | temp | nickname | anonymous | old | maiden Binding: NameUse (required): The use of a human name. | ||||
text | Σ | 0..1 | string | Text representation of the full name | ||||
family | Σ | 0..1 | string | Family name (often called 'Surname') | ||||
Slices for given | Σ | 1..2 | string | Given names (not always 'first'). Includes middle names Slice: Unordered, Open by value:id This repeating element order: Given Names appear in the correct order for presenting the name | ||||
given:firstName | SΣ | 1..1 | string | Given names (not always 'first'). Includes middle names This repeating element order: Given Names appear in the correct order for presenting the name | ||||
id | 1..1 | string | xml:id (or equivalent in JSON) Required Pattern: firstName | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
value | 0..1 | string | Primitive value for string Max Length:1048576 | |||||
given:middleName | SΣ | 0..1 | string | Given names (not always 'first'). Includes middle names This repeating element order: Given Names appear in the correct order for presenting the name | ||||
id | 1..1 | string | xml:id (or equivalent in JSON) Required Pattern: middleName | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
value | 0..1 | string | Primitive value for string Max Length:1048576 | |||||
prefix | Σ | 0..* | string | Parts that come before the name This repeating element order: Prefixes appear in the correct order for presenting the name | ||||
suffix | Σ | 0..* | string | Parts that come after the name This repeating element order: Suffixes appear in the correct order for presenting the name | ||||
period | Σ | 0..1 | Period | Time period when name was/is in use | ||||
telecom | Σ | 0..* | ContactPoint | A contact detail for the person | ||||
gender | Σ | 0..1 | code | male | female | other | unknown Binding: AdministrativeGender (required): The gender of a person used for administrative purposes. | ||||
birthDate | Σ | 0..1 | date | The date on which the related person was born | ||||
address | Σ | 0..* | Address | Address where the related person can be contacted or visited | ||||
photo | 0..* | Attachment | Image of the person | |||||
period | 0..1 | Period | Period of time that this relationship is considered valid | |||||
communication | 0..* | BackboneElement | A language which may be used to communicate with about the patient's health | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
language | 1..1 | CodeableConcept | The language which can be used to communicate with the patient about his or her health Binding: CommonLanguages (preferred): A human language.
| |||||
preferred | 0..1 | boolean | Language preference indicator | |||||
Documentation for this format |
Path | Conformance | ValueSet | URI | |||
RelatedPerson.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
RelatedPerson.relationship | preferred | PatientRelationshipTypehttp://hl7.org/fhir/ValueSet/relatedperson-relationshiptype from the FHIR Standard | ||||
RelatedPerson.name.use | required | NameUsehttp://hl7.org/fhir/ValueSet/name-use|4.0.1 from the FHIR Standard | ||||
RelatedPerson.gender | required | AdministrativeGenderhttp://hl7.org/fhir/ValueSet/administrative-gender|4.0.1 from the FHIR Standard | ||||
RelatedPerson.communication.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | RelatedPerson | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | RelatedPerson | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | RelatedPerson | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | RelatedPerson | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | RelatedPerson | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
This structure is derived from RelatedPerson
Summary
Mandatory: 5 elements(1 nested mandatory element)
Must-Support: 3 elements
Extensions
This structure refers to these extensions:
Slices
This structure defines the following Slices:
Differential View
This structure is derived from RelatedPerson
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
RelatedPerson | RelatedPerson | |||
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
MaritalStatus | S | 0..1 | (Complex) | Patient Marital Status and Effective Date URL: http://jembi.org/fhir/StructureDefinition/marital-status-and-effective-date |
relationship | 1..1 | CodeableConcept | The nature of the relationship | |
name | 1..* | HumanName | A name associated with the person | |
Slices for given | 1..2 | string | Given names (not always 'first'). Includes middle names Slice: Unordered, Open by value:id | |
given:firstName | S | 1..1 | string | Given names (not always 'first'). Includes middle names |
id | 1..1 | string | xml:id (or equivalent in JSON) Required Pattern: firstName | |
given:middleName | S | 0..1 | string | Given names (not always 'first'). Includes middle names |
id | 1..1 | string | xml:id (or equivalent in JSON) Required Pattern: middleName | |
Documentation for this format |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
RelatedPerson | 0..* | RelatedPerson | A person that is related to a patient, but who is not a direct target of care | |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
MaritalStatus | SΣ | 0..1 | (Complex) | Patient Marital Status and Effective Date URL: http://jembi.org/fhir/StructureDefinition/marital-status-and-effective-date |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
active | ?!Σ | 0..1 | boolean | Whether this related person's record is in active use |
patient | Σ | 1..1 | Reference(Patient) | The patient this person is related to |
relationship | Σ | 1..1 | CodeableConcept | The nature of the relationship Binding: PatientRelationshipType (preferred): The nature of the relationship between a patient and the related person. |
name | Σ | 1..* | HumanName | A name associated with the person |
use | ?!Σ | 0..1 | code | usual | official | temp | nickname | anonymous | old | maiden Binding: NameUse (required): The use of a human name. |
Slices for given | Σ | 1..2 | string | Given names (not always 'first'). Includes middle names Slice: Unordered, Open by value:id This repeating element order: Given Names appear in the correct order for presenting the name |
given:firstName | SΣ | 1..1 | string | Given names (not always 'first'). Includes middle names This repeating element order: Given Names appear in the correct order for presenting the name |
id | 1..1 | string | xml:id (or equivalent in JSON) Required Pattern: firstName | |
given:middleName | SΣ | 0..1 | string | Given names (not always 'first'). Includes middle names This repeating element order: Given Names appear in the correct order for presenting the name |
id | 1..1 | string | xml:id (or equivalent in JSON) Required Pattern: middleName | |
Documentation for this format |
Path | Conformance | ValueSet | URI |
RelatedPerson.relationship | preferred | PatientRelationshipTypehttp://hl7.org/fhir/ValueSet/relatedperson-relationshiptype from the FHIR Standard | |
RelatedPerson.name.use | required | NameUsehttp://hl7.org/fhir/ValueSet/name-use|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | RelatedPerson | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | RelatedPerson | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | RelatedPerson | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | RelatedPerson | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | RelatedPerson | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
RelatedPerson | 0..* | RelatedPerson | A person that is related to a patient, but who is not a direct target of care | |||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
MaritalStatus | SΣ | 0..1 | (Complex) | Patient Marital Status and Effective Date URL: http://jembi.org/fhir/StructureDefinition/marital-status-and-effective-date | ||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
identifier | Σ | 0..* | Identifier | A human identifier for this person | ||||
active | ?!Σ | 0..1 | boolean | Whether this related person's record is in active use | ||||
patient | Σ | 1..1 | Reference(Patient) | The patient this person is related to | ||||
relationship | Σ | 1..1 | CodeableConcept | The nature of the relationship Binding: PatientRelationshipType (preferred): The nature of the relationship between a patient and the related person. | ||||
name | Σ | 1..* | HumanName | A name associated with the person | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
use | ?!Σ | 0..1 | code | usual | official | temp | nickname | anonymous | old | maiden Binding: NameUse (required): The use of a human name. | ||||
text | Σ | 0..1 | string | Text representation of the full name | ||||
family | Σ | 0..1 | string | Family name (often called 'Surname') | ||||
Slices for given | Σ | 1..2 | string | Given names (not always 'first'). Includes middle names Slice: Unordered, Open by value:id This repeating element order: Given Names appear in the correct order for presenting the name | ||||
given:firstName | SΣ | 1..1 | string | Given names (not always 'first'). Includes middle names This repeating element order: Given Names appear in the correct order for presenting the name | ||||
id | 1..1 | string | xml:id (or equivalent in JSON) Required Pattern: firstName | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
value | 0..1 | string | Primitive value for string Max Length:1048576 | |||||
given:middleName | SΣ | 0..1 | string | Given names (not always 'first'). Includes middle names This repeating element order: Given Names appear in the correct order for presenting the name | ||||
id | 1..1 | string | xml:id (or equivalent in JSON) Required Pattern: middleName | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
value | 0..1 | string | Primitive value for string Max Length:1048576 | |||||
prefix | Σ | 0..* | string | Parts that come before the name This repeating element order: Prefixes appear in the correct order for presenting the name | ||||
suffix | Σ | 0..* | string | Parts that come after the name This repeating element order: Suffixes appear in the correct order for presenting the name | ||||
period | Σ | 0..1 | Period | Time period when name was/is in use | ||||
telecom | Σ | 0..* | ContactPoint | A contact detail for the person | ||||
gender | Σ | 0..1 | code | male | female | other | unknown Binding: AdministrativeGender (required): The gender of a person used for administrative purposes. | ||||
birthDate | Σ | 0..1 | date | The date on which the related person was born | ||||
address | Σ | 0..* | Address | Address where the related person can be contacted or visited | ||||
photo | 0..* | Attachment | Image of the person | |||||
period | 0..1 | Period | Period of time that this relationship is considered valid | |||||
communication | 0..* | BackboneElement | A language which may be used to communicate with about the patient's health | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
language | 1..1 | CodeableConcept | The language which can be used to communicate with the patient about his or her health Binding: CommonLanguages (preferred): A human language.
| |||||
preferred | 0..1 | boolean | Language preference indicator | |||||
Documentation for this format |
Path | Conformance | ValueSet | URI | |||
RelatedPerson.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
RelatedPerson.relationship | preferred | PatientRelationshipTypehttp://hl7.org/fhir/ValueSet/relatedperson-relationshiptype from the FHIR Standard | ||||
RelatedPerson.name.use | required | NameUsehttp://hl7.org/fhir/ValueSet/name-use|4.0.1 from the FHIR Standard | ||||
RelatedPerson.gender | required | AdministrativeGenderhttp://hl7.org/fhir/ValueSet/administrative-gender|4.0.1 from the FHIR Standard | ||||
RelatedPerson.communication.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | RelatedPerson | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | RelatedPerson | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | RelatedPerson | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | RelatedPerson | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | RelatedPerson | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
This structure is derived from RelatedPerson
Summary
Mandatory: 5 elements(1 nested mandatory element)
Must-Support: 3 elements
Extensions
This structure refers to these extensions:
Slices
This structure defines the following Slices:
Other representations of profile: CSV, Excel, Schematron