Guidance for FHIR IG Creation
0.1.0 - CI Build International flag

Guidance for FHIR IG Creation, published by HL7 International - FHIR Management Group. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/FHIR/ig-guidance/ and changes regularly. See the Directory of published versions

Resource Profile: TestPatientProfile

Official URL: http://hl7.org/fhir/uv/howto/StructureDefinition/test-patient-profile Version: 0.1.0
Active as of 2019-11-01 Computable Name: TestPatientProfile

Testing Profile based Generation

Usages:

  • This Profile is not used by any profiles in this Implementation Guide

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Patient 0..* Patient Information about an individual or animal receiving health care services
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... contained 0..* Resource Contained, inline Resources
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... active ?!Σ 1..1 boolean Whether this patient's record is in active use
Fixed Value: true
... name Σ 1..1 HumanName A name associated with the patient
... gender Σ 1..1 code male | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.
... birthDate Σ 1..1 date The date of birth for the individual
... deceased[x] ?!Σ 0..1 dateTime Indicates if the individual is deceased or not
... communication 1..1 BackboneElement A language which may be used to communicate with the patient about his or her health
.... 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 (required)
Additional BindingsPurpose
CommonLanguages Starter
... managingOrganization Σ 0..1 Reference(Organization) Organization that is the custodian of the patient record
Fixed Value: As shown
.... id 0..0 string Unique id for inter-element referencing
.... extension 0..0 Extension Additional content defined by implementations
.... reference 1..1 string Literal reference, Relative, internal or absolute URL
Fixed Value: Organization/1
.... type 0..0 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
.... identifier 0..0 Identifier Logical reference, when literal reference is not known
.... display 0..0 string Text alternative for the resource

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Patient.genderrequiredAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender|5.0.0
From the FHIR Standard
Patient.communication.languagerequiredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Patient.link.typerequiredLinkType
http://hl7.org/fhir/ValueSet/link-type|5.0.0
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorPatientIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPatientIf 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-4errorPatientIf 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-5errorPatientIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePatientA 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 Patient

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Patient 0..* Patient Information about an individual or animal receiving health care services
... identifier 1..1 Identifier An identifier for this patient
... active 1..1 boolean Whether this patient's record is in active use
Fixed Value: true
... name 1..1 HumanName A name associated with the patient
... birthDate 1..1 date The date of birth for the individual
... deceased[x] 0..1 dateTime Indicates if the individual is deceased or not
... address 0..0
... maritalStatus 0..0
... multipleBirth[x] 0..0
... photo 0..0
... contact 0..0
... communication 1..1 BackboneElement A language which may be used to communicate with the patient about his or her health
.... language 1..1 CodeableConcept The language which can be used to communicate with the patient about his or her health
Binding: CommonLanguages (required)
... generalPractitioner 0..0
... managingOrganization 0..1 Reference(Organization) Organization that is the custodian of the patient record
Fixed Value: As shown
.... reference 1..1 string Literal reference, Relative, internal or absolute URL
Fixed Value: Organization/1
... link 0..0

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Patient.communication.languagerequiredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Patient 0..* Patient Information about an individual or animal receiving health care services
... 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
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... identifier Σ 1..1 Identifier An identifier for this patient
... active ?!Σ 1..1 boolean Whether this patient's record is in active use
Fixed Value: true
... name Σ 1..1 HumanName A name associated with the patient
... telecom Σ 0..* ContactPoint A contact detail for the individual
... gender Σ 1..1 code male | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.
... birthDate Σ 1..1 date The date of birth for the individual
... deceased[x] ?!Σ 0..1 dateTime Indicates if the individual is deceased or not
... communication 1..1 BackboneElement A language which may be used to communicate with the patient about his or her 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 (required)
Additional BindingsPurpose
CommonLanguages Starter
.... preferred 0..1 boolean Language preference indicator
... managingOrganization Σ 0..1 Reference(Organization) Organization that is the custodian of the patient record
Fixed Value: As shown
.... id 0..0 string Unique id for inter-element referencing
.... extension 0..0 Extension Additional content defined by implementations
.... reference 1..1 string Literal reference, Relative, internal or absolute URL
Fixed Value: Organization/1
.... type 0..0 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
.... identifier 0..0 Identifier Logical reference, when literal reference is not known
.... display 0..0 string Text alternative for the resource

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Patient.languagerequiredAllLanguages
http://hl7.org/fhir/ValueSet/all-languages|5.0.0
From the FHIR Standard
Patient.genderrequiredAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender|5.0.0
From the FHIR Standard
Patient.contact.relationshipextensiblePatientContactRelationship
http://hl7.org/fhir/ValueSet/patient-contactrelationship
From the FHIR Standard
Patient.contact.genderrequiredAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender|5.0.0
From the FHIR Standard
Patient.communication.languagerequiredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Patient.link.typerequiredLinkType
http://hl7.org/fhir/ValueSet/link-type|5.0.0
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorPatientIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPatientIf 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-4errorPatientIf 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-5errorPatientIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePatientA 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 Patient

Summary

Mandatory: 7 elements
Fixed: 2 elements
Prohibited: 7 elements

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Patient 0..* Patient Information about an individual or animal receiving health care services
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... contained 0..* Resource Contained, inline Resources
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... active ?!Σ 1..1 boolean Whether this patient's record is in active use
Fixed Value: true
... name Σ 1..1 HumanName A name associated with the patient
... gender Σ 1..1 code male | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.
... birthDate Σ 1..1 date The date of birth for the individual
... deceased[x] ?!Σ 0..1 dateTime Indicates if the individual is deceased or not
... communication 1..1 BackboneElement A language which may be used to communicate with the patient about his or her health
.... 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 (required)
Additional BindingsPurpose
CommonLanguages Starter
... managingOrganization Σ 0..1 Reference(Organization) Organization that is the custodian of the patient record
Fixed Value: As shown
.... id 0..0 string Unique id for inter-element referencing
.... extension 0..0 Extension Additional content defined by implementations
.... reference 1..1 string Literal reference, Relative, internal or absolute URL
Fixed Value: Organization/1
.... type 0..0 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
.... identifier 0..0 Identifier Logical reference, when literal reference is not known
.... display 0..0 string Text alternative for the resource

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Patient.genderrequiredAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender|5.0.0
From the FHIR Standard
Patient.communication.languagerequiredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Patient.link.typerequiredLinkType
http://hl7.org/fhir/ValueSet/link-type|5.0.0
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorPatientIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPatientIf 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-4errorPatientIf 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-5errorPatientIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePatientA 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()

Differential View

This structure is derived from Patient

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Patient 0..* Patient Information about an individual or animal receiving health care services
... identifier 1..1 Identifier An identifier for this patient
... active 1..1 boolean Whether this patient's record is in active use
Fixed Value: true
... name 1..1 HumanName A name associated with the patient
... birthDate 1..1 date The date of birth for the individual
... deceased[x] 0..1 dateTime Indicates if the individual is deceased or not
... address 0..0
... maritalStatus 0..0
... multipleBirth[x] 0..0
... photo 0..0
... contact 0..0
... communication 1..1 BackboneElement A language which may be used to communicate with the patient about his or her health
.... language 1..1 CodeableConcept The language which can be used to communicate with the patient about his or her health
Binding: CommonLanguages (required)
... generalPractitioner 0..0
... managingOrganization 0..1 Reference(Organization) Organization that is the custodian of the patient record
Fixed Value: As shown
.... reference 1..1 string Literal reference, Relative, internal or absolute URL
Fixed Value: Organization/1
... link 0..0

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
Patient.communication.languagerequiredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Patient 0..* Patient Information about an individual or animal receiving health care services
... 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
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... identifier Σ 1..1 Identifier An identifier for this patient
... active ?!Σ 1..1 boolean Whether this patient's record is in active use
Fixed Value: true
... name Σ 1..1 HumanName A name associated with the patient
... telecom Σ 0..* ContactPoint A contact detail for the individual
... gender Σ 1..1 code male | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.
... birthDate Σ 1..1 date The date of birth for the individual
... deceased[x] ?!Σ 0..1 dateTime Indicates if the individual is deceased or not
... communication 1..1 BackboneElement A language which may be used to communicate with the patient about his or her 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 (required)
Additional BindingsPurpose
CommonLanguages Starter
.... preferred 0..1 boolean Language preference indicator
... managingOrganization Σ 0..1 Reference(Organization) Organization that is the custodian of the patient record
Fixed Value: As shown
.... id 0..0 string Unique id for inter-element referencing
.... extension 0..0 Extension Additional content defined by implementations
.... reference 1..1 string Literal reference, Relative, internal or absolute URL
Fixed Value: Organization/1
.... type 0..0 uri Type the reference refers to (e.g. "Patient") - must be a resource in resources
.... identifier 0..0 Identifier Logical reference, when literal reference is not known
.... display 0..0 string Text alternative for the resource

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Patient.languagerequiredAllLanguages
http://hl7.org/fhir/ValueSet/all-languages|5.0.0
From the FHIR Standard
Patient.genderrequiredAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender|5.0.0
From the FHIR Standard
Patient.contact.relationshipextensiblePatientContactRelationship
http://hl7.org/fhir/ValueSet/patient-contactrelationship
From the FHIR Standard
Patient.contact.genderrequiredAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender|5.0.0
From the FHIR Standard
Patient.communication.languagerequiredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Patient.link.typerequiredLinkType
http://hl7.org/fhir/ValueSet/link-type|5.0.0
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorPatientIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPatientIf 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-4errorPatientIf 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-5errorPatientIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePatientA 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 Patient

Summary

Mandatory: 7 elements
Fixed: 2 elements
Prohibited: 7 elements

 

Other representations of profile: CSV, Excel, Schematron