HL7 FHIR Implementation Guide: Example IG Release 1 - US Realm | STU1
1.0.0 - STU1 International flag

HL7 FHIR Implementation Guide: Example IG Release 1 - US Realm | STU1, published by My Organization. This guide is not an authorized publication; it is the continuous build for version 1.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/rmrlangford/OpenMRS-FHIR-Training/ and changes regularly. See the Directory of published versions

Resource Profile: OpenMRS Patient Related Person

Official URL: http://openmrs-fhir-training/fhir/StructureDefinition/openmrs-patient-relationship Version: 1.0.0
Active as of 2024-09-13 Computable Name: OpenMRSPatientRelation

OpenMRS test patient relation

Usage:

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

This structure is derived from RelatedPerson

NameFlagsCard.TypeDescription & Constraintsdoco
.. RelatedPerson 0..* RelatedPerson A person that is related to a patient, but who is not a direct target of care
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... MaritalStatusAndEffectiveDate S 0..* (Complex) Patient Marital Status and Effective Date
URL: http://openmrs-fhir-training/fhir/StructureDefinition/marital-status-and-effective-date
... relationship 1..1 CodeableConcept The relationship of the related person to the patient
... name 1..* HumanName A name associated with the person
.... given 1..* string Given names (not always 'first'). Includes middle names

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. 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
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... MaritalStatusAndEffectiveDate SΣ 0..* (Complex) Patient Marital Status and Effective Date
URL: http://openmrs-fhir-training/fhir/StructureDefinition/marital-status-and-effective-date
... 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 relationship of the related person to the patient
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.

.... given Σ 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

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
RelatedPerson.relationshippreferredPatientRelationshipType
http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype
from the FHIR Standard
RelatedPerson.name.userequiredNameUse
http://hl7.org/fhir/ValueSet/name-use|5.0.0
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorRelatedPersonIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorRelatedPersonIf 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorRelatedPersonIf 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-5errorRelatedPersonIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceRelatedPersonA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. 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
... 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
.... MaritalStatusAndEffectiveDate SΣ 0..* (Complex) Patient Marital Status and Effective Date
URL: http://openmrs-fhir-training/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 relationship of the related person to the patient
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 id 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')
.... given Σ 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
.... 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 the related person 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 related person about the patient's health
Binding: AllLanguages (required): IETF language tag for a human language

Additional BindingsPurpose
CommonLanguages Starter Set
.... preferred 0..1 boolean Language preference indicator

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
RelatedPerson.languagerequiredAllLanguages
http://hl7.org/fhir/ValueSet/all-languages|5.0.0
from the FHIR Standard
RelatedPerson.relationshippreferredPatientRelationshipType
http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype
from the FHIR Standard
RelatedPerson.name.userequiredNameUse
http://hl7.org/fhir/ValueSet/name-use|5.0.0
from the FHIR Standard
RelatedPerson.genderrequiredAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender|5.0.0
from the FHIR Standard
RelatedPerson.communication.languagerequiredAllLanguages
http://hl7.org/fhir/ValueSet/all-languages|5.0.0
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorRelatedPersonIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorRelatedPersonIf 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorRelatedPersonIf 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-5errorRelatedPersonIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceRelatedPersonA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from RelatedPerson

Summary

Mandatory: 3 elements
Must-Support: 1 element

Extensions

This structure refers to these extensions:

Differential View

This structure is derived from RelatedPerson

NameFlagsCard.TypeDescription & Constraintsdoco
.. RelatedPerson 0..* RelatedPerson A person that is related to a patient, but who is not a direct target of care
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... MaritalStatusAndEffectiveDate S 0..* (Complex) Patient Marital Status and Effective Date
URL: http://openmrs-fhir-training/fhir/StructureDefinition/marital-status-and-effective-date
... relationship 1..1 CodeableConcept The relationship of the related person to the patient
... name 1..* HumanName A name associated with the person
.... given 1..* string Given names (not always 'first'). Includes middle names

doco Documentation for this format

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. 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
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... MaritalStatusAndEffectiveDate SΣ 0..* (Complex) Patient Marital Status and Effective Date
URL: http://openmrs-fhir-training/fhir/StructureDefinition/marital-status-and-effective-date
... 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 relationship of the related person to the patient
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.

.... given Σ 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

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
RelatedPerson.relationshippreferredPatientRelationshipType
http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype
from the FHIR Standard
RelatedPerson.name.userequiredNameUse
http://hl7.org/fhir/ValueSet/name-use|5.0.0
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorRelatedPersonIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorRelatedPersonIf 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorRelatedPersonIf 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-5errorRelatedPersonIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceRelatedPersonA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. 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
... 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
.... MaritalStatusAndEffectiveDate SΣ 0..* (Complex) Patient Marital Status and Effective Date
URL: http://openmrs-fhir-training/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 relationship of the related person to the patient
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 id 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')
.... given Σ 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
.... 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 the related person 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 related person about the patient's health
Binding: AllLanguages (required): IETF language tag for a human language

Additional BindingsPurpose
CommonLanguages Starter Set
.... preferred 0..1 boolean Language preference indicator

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
RelatedPerson.languagerequiredAllLanguages
http://hl7.org/fhir/ValueSet/all-languages|5.0.0
from the FHIR Standard
RelatedPerson.relationshippreferredPatientRelationshipType
http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype
from the FHIR Standard
RelatedPerson.name.userequiredNameUse
http://hl7.org/fhir/ValueSet/name-use|5.0.0
from the FHIR Standard
RelatedPerson.genderrequiredAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender|5.0.0
from the FHIR Standard
RelatedPerson.communication.languagerequiredAllLanguages
http://hl7.org/fhir/ValueSet/all-languages|5.0.0
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorRelatedPersonIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorRelatedPersonIf 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorRelatedPersonIf 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-5errorRelatedPersonIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceRelatedPersonA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from RelatedPerson

Summary

Mandatory: 3 elements
Must-Support: 1 element

Extensions

This structure refers to these extensions:

 

Other representations of profile: CSV, Excel, Schematron