US Core Implementation Guide
6.0.0-ballot - STU6 Ballot United States of America flag

US Core Implementation Guide, published by HL7 International - Cross-Group Projects. This is not an authorized publication; it is the continuous build for version 6.0.0-ballot). This version is based on the current content of https://github.com/HL7/US-Core/ and changes regularly. See the Directory of published versions

Resource Profile: US Core RelatedPerson Profile

Official URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-relatedperson Version: 6.0.0-ballot
Active as of 2022-04-20 Computable Name: USCoreRelatedPersonProfile

Copyright/Legal: Used by permission of HL7 International, all rights reserved Creative Commons License

This profile sets minimum expectations for the RelatedPerson resource to record, search, and fetch basic administrative information about persons with a legal or familial relationship to a patient. It identifies which core elements, extensions, vocabularies, and value sets SHALL be present in the resource when using this profile. It provides the floor for standards development for specific use cases.

Example Usage Scenarios:

The following are example usage scenarios for this profile:

  • Query for clinical tests or diagnostic imaging results for a patient.
  • Record or update clinical tests or diagnostic imaging results belonging to a Patient

Mandatory and Must Support Data Elements

The following data elements must always be present (Mandatory definition) or must be supported if the data is present in the sending system (Must Support definition). They are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The Formal Views below provides the formal summary, definitions, and terminology requirements.

Each Observation must have:

  1. a status
  2. a category code
  3. a LOINC code, if available, which tells you what is being measured
  4. a patient

Each Observation must support:

  1. a time indicating when the measurement was taken
  2. a result value
    • if the result value is a numeric quantity, a standard UCUM unit
  3. a reason why the data is absent*

* see guidance below

Profile specific implementation guidance:

  • Servers SHOULD use the base FHIR Observation Category Codes. The Observation.category element provides an efficient way of restricting search on observations to a given context such as procedure, exam or laboratory observations. Example searches are shown in the Quick Start section below. However, clients need to understand that data categorization is somewhat subjective. The categorization applied by the source may not align with the client’s expectations. Clients may find it more useful to use queries based on a specific code or set of codes or to perform additional client side filtering of query results.
  • Additional codes that translate or map to the Observation code or category codes are allowed. For example:
    • providing both a local code and LOINC code
    • providing a more specific code , a SNOMED CT concept, or a system specific code.
  • Systems SHOULD support Observation.effectivePeriod to accurately represent procedure tests that are collected over a period of time .
  • *An Observation without a value, SHALL include a reason why the data is absent unless there are 1) component observations, or 2) reporting panel observations using Observation.hasMember.
    • For further guidance see the Observation Grouping section in FHIR Specification.
    • Systems that never provide an observation without a value are not required to support Observation.dataAbsentReason.
  • *An Observation.component without a value, SHALL include a reason why the data is absent.
    • Systems that never provide a component observation without a component value are not required to support Observation.component.dataAbsentReason.
  • See the General Guidance page for further guidance on using SNOMED and UCUM.
  • See the LOINC scale type to FHIR data type mapping for guidance on which Observation.value[x] data type to use based on the LOINC Type of Scale.

Usage:

  • Refer to this Resource Profile:

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 C0..*RelatedPersonA person that is related to a patient, but who is not a direct target of care
us-core-14: Either a name or a relationship SHALL be provided (or both)
... active S1..1booleanWhether this related person's record is in active use
... patient S1..1Reference(US Core Patient Profile)The patient this person is related to
... relationship SC0..*CodeableConceptThe nature of the relationship
... name SC0..*HumanNameA name associated with the person
... telecom S0..*ContactPointA contact detail for the person
... address S0..*AddressAddress where the related person can be contacted or visited

doco Documentation for this format

Constraints

IdGradePath(s)DetailsRequirements
us-core-14errorRelatedPersonEither a name or a relationship SHALL be provided (or both)
: name.exists() or relationship.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. RelatedPerson C0..*RelatedPersonA person that is related to a patient, but who is not a direct target of care
us-core-14: Either a name or a relationship SHALL be provided (or both)
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... active ?!SΣ1..1booleanWhether this related person's record is in active use
... patient SΣ1..1Reference(US Core Patient Profile)The patient this person is related to
... relationship SΣC0..*CodeableConceptThe nature of the relationship
Binding: PatientRelationshipType (preferred): The nature of the relationship between a patient and the related person.


... name SΣC0..*HumanNameA name associated with the person
... telecom SΣ0..*ContactPointA contact detail for the person
... address SΣ0..*AddressAddress where the related person can be contacted or visited

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
RelatedPerson.relationshippreferredPatientRelationshipType

Constraints

IdGradePath(s)DetailsRequirements
us-core-14errorRelatedPersonEither a name or a relationship SHALL be provided (or both)
: name.exists() or relationship.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. RelatedPerson C0..*RelatedPersonA person that is related to a patient, but who is not a direct target of care
us-core-14: Either a name or a relationship SHALL be provided (or both)
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierA human identifier for this person
... active ?!SΣ1..1booleanWhether this related person's record is in active use
... patient SΣ1..1Reference(US Core Patient Profile)The patient this person is related to
... relationship SΣC0..*CodeableConceptThe nature of the relationship
Binding: PatientRelationshipType (preferred): The nature of the relationship between a patient and the related person.


... name SΣC0..*HumanNameA name associated with the person
... telecom SΣ0..*ContactPointA contact detail for the person
... gender Σ0..1codemale | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.

... birthDate Σ0..1dateThe date on which the related person was born
... address SΣ0..*AddressAddress where the related person can be contacted or visited
... photo 0..*AttachmentImage of the person
... period 0..1PeriodPeriod of time that this relationship is considered valid
... communication 0..*BackboneElementA language which may be used to communicate with about the patient's health
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... language 1..1CodeableConceptThe language which can be used to communicate with the patient about his or her health
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
.... preferred 0..1booleanLanguage preference indicator

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
RelatedPerson.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
RelatedPerson.relationshippreferredPatientRelationshipType
RelatedPerson.genderrequiredAdministrativeGender
RelatedPerson.communication.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding

This structure is derived from RelatedPerson

Summary

Mandatory: 1 element
Must-Support: 6 elements

Structures

This structure refers to these other structures:

Differential View

This structure is derived from RelatedPerson

NameFlagsCard.TypeDescription & Constraintsdoco
.. RelatedPerson C0..*RelatedPersonA person that is related to a patient, but who is not a direct target of care
us-core-14: Either a name or a relationship SHALL be provided (or both)
... active S1..1booleanWhether this related person's record is in active use
... patient S1..1Reference(US Core Patient Profile)The patient this person is related to
... relationship SC0..*CodeableConceptThe nature of the relationship
... name SC0..*HumanNameA name associated with the person
... telecom S0..*ContactPointA contact detail for the person
... address S0..*AddressAddress where the related person can be contacted or visited

doco Documentation for this format

Constraints

IdGradePath(s)DetailsRequirements
us-core-14errorRelatedPersonEither a name or a relationship SHALL be provided (or both)
: name.exists() or relationship.exists()

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. RelatedPerson C0..*RelatedPersonA person that is related to a patient, but who is not a direct target of care
us-core-14: Either a name or a relationship SHALL be provided (or both)
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... active ?!SΣ1..1booleanWhether this related person's record is in active use
... patient SΣ1..1Reference(US Core Patient Profile)The patient this person is related to
... relationship SΣC0..*CodeableConceptThe nature of the relationship
Binding: PatientRelationshipType (preferred): The nature of the relationship between a patient and the related person.


... name SΣC0..*HumanNameA name associated with the person
... telecom SΣ0..*ContactPointA contact detail for the person
... address SΣ0..*AddressAddress where the related person can be contacted or visited

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
RelatedPerson.relationshippreferredPatientRelationshipType

Constraints

IdGradePath(s)DetailsRequirements
us-core-14errorRelatedPersonEither a name or a relationship SHALL be provided (or both)
: name.exists() or relationship.exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. RelatedPerson C0..*RelatedPersonA person that is related to a patient, but who is not a direct target of care
us-core-14: Either a name or a relationship SHALL be provided (or both)
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierA human identifier for this person
... active ?!SΣ1..1booleanWhether this related person's record is in active use
... patient SΣ1..1Reference(US Core Patient Profile)The patient this person is related to
... relationship SΣC0..*CodeableConceptThe nature of the relationship
Binding: PatientRelationshipType (preferred): The nature of the relationship between a patient and the related person.


... name SΣC0..*HumanNameA name associated with the person
... telecom SΣ0..*ContactPointA contact detail for the person
... gender Σ0..1codemale | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.

... birthDate Σ0..1dateThe date on which the related person was born
... address SΣ0..*AddressAddress where the related person can be contacted or visited
... photo 0..*AttachmentImage of the person
... period 0..1PeriodPeriod of time that this relationship is considered valid
... communication 0..*BackboneElementA language which may be used to communicate with about the patient's health
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... language 1..1CodeableConceptThe language which can be used to communicate with the patient about his or her health
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
.... preferred 0..1booleanLanguage preference indicator

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
RelatedPerson.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
RelatedPerson.relationshippreferredPatientRelationshipType
RelatedPerson.genderrequiredAdministrativeGender
RelatedPerson.communication.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding

This structure is derived from RelatedPerson

Summary

Mandatory: 1 element
Must-Support: 6 elements

Structures

This structure refers to these other structures:

 

Other representations of profile: CSV, Excel, Schematron

Notes:


Quick Start


Below is an overview of the required Server RESTful FHIR interactions for this profile - for example, search and read operations - when supporting the US Core interactions to access this profile’s information (Profile Support + Interaction Support). Note that systems that support only US Core Profiles (Profile Only Support) are not required to support these interactions. See the US Core Server CapabilityStatement for a complete list of supported RESTful interactions for this IG.

  • The syntax used to describe the interactions is described here.
  • See the General Requirements section for additional rules and expectations when a server requires status parameters.
  • See the General Guidance section for additional guidance on searching for multiple patients.
  1. SHALL support fetching a RelatedPerson using the _id search parameter:

    GET [base]/RelatedPerson/[id] or GET [base]/RelatedPerson?_id=[id]

    Example:

    1. GET [base]/RelatedPerson/shaw-niece
    2. GET [base]/RelatedPerson?_id=shaw-niece

    Implementation Notes: (how to search by the logical id of the resource)

Optional Search Parameters:

The following search parameter combinations SHOULD be supported:

  1. SHOULD support searching using the patient search parameter:

    GET [base]/RelatedPerson?patient={Type/}[id]

    Example:

    1. GET [base]/RelatedPerson?patient=1032702

    Implementation Notes: Fetches a bundle of all RelatedPerson resources for the specified patient (how to search by reference)

  2. SHOULD support searching using the name search parameter:

    GET [base]/RelatedPerson?name=[string]

    Example:

    1. GET [base]/RelatedPerson?name=Mary Shaw

    Implementation Notes: Fetches a bundle of all RelatedPerson resources matching the name (how to search by string)