International Birth And Child Model Implementation Guide
1.0.0-ballot - ballot International flag

This page is part of the International Birth And Child Model Implementation Guide (v1.0.0-ballot: Releases Ballot 1) based on FHIR v5.0.0. . For a full list of available versions, see the Directory of published versions

Resource Profile: IBCM Fetal Record Profile

Official URL: http://hl7.org/fhir/uv/ibcm/StructureDefinition/ibcm-fetal-record Version: 1.0.0-ballot
Standards status: Draft Maturity Level: 0 Computable Name: IBCMFetalPatient

Profile to represent a fetal record which will be used to collect data around the unborn child/fetus (e.g. headcircumference, fetal heart rate and position of the fetus)

Usage:

Formal Views of Profile Content

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

This structure is derived from Patient

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient C0..*PatientInformation about an individual or animal receiving health care services
ibcm-pat-1: Patient.birthdate can be present only when the value of extension 'patient-bornStatus' is not present or if present then the value is set to 'born'
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... bornStatus S0..1codeborn | unborn | fetal-demise | unknown
URL: http://hl7.org/fhir/StructureDefinition/patient-bornStatus
Binding: BornStatus (required)
... identifier S0..*IdentifierAn identifier for this patient
.... system S0..1uriThe namespace for the identifier value
.... value S0..1stringThe value that is unique

doco Documentation for this format

Constraints

IdGradePath(s)DetailsRequirements
ibcm-pat-1errorPatientPatient.birthdate can be present only when the value of extension 'patient-bornStatus' is not present or if present then the value is set to 'born'
: Patient.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/patient-bornStatus' and value != 'born').exists() implies Patient.birthDate.exists().not()
NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient C0..*PatientInformation about an individual or animal receiving health care services
ibcm-pat-1: Patient.birthdate can be present only when the value of extension 'patient-bornStatus' is not present or if present then the value is set to 'born'
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... contained 0..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
... identifier SΣ0..*IdentifierAn identifier for this patient
.... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... system SΣ0..1uriThe namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value SΣC0..1stringThe value that is unique
Example General: 123456
... active ?!Σ0..1booleanWhether this patient's record is in active use
... gender SΣ0..1codemale | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.

... deceased[x] ?!Σ0..1Indicates if the individual is deceased or not
.... deceasedBooleanboolean
.... deceasedDateTimedateTime
... link ?!Σ0..*BackboneElementLink to a Patient or RelatedPerson resource that concerns the same actual individual
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... other Σ1..1Reference(Patient | RelatedPerson)The other patient or related person resource that the link refers to
.... type Σ1..1codereplaced-by | replaces | refer | seealso
Binding: LinkType (required): The type of link between this patient resource and another Patient resource, or Patient/RelatedPerson when using the seealso code


doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Patient.identifier.userequiredIdentifierUse
Patient.genderrequiredAdministrativeGender
Patient.link.typerequiredLinkType

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()
ibcm-pat-1errorPatientPatient.birthdate can be present only when the value of extension 'patient-bornStatus' is not present or if present then the value is set to 'born'
: Patient.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/patient-bornStatus' and value != 'born').exists() implies Patient.birthDate.exists().not()
NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient C0..*PatientInformation about an individual or animal receiving health care services
ibcm-pat-1: Patient.birthdate can be present only when the value of extension 'patient-bornStatus' is not present or if present then the value is set to 'born'
... 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
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... bornStatus S0..1codeborn | unborn | fetal-demise | unknown
URL: http://hl7.org/fhir/StructureDefinition/patient-bornStatus
Binding: BornStatus (required)
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
... identifier SΣ0..*IdentifierAn identifier for this patient
.... id 0..1idUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ0..1CodeableConceptDescription of identifier
Binding: IdentifierTypeCodes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

.... system SΣ0..1uriThe namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value SΣC0..1stringThe value that is unique
Example General: 123456
.... period Σ0..1PeriodTime period when id is/was valid for use
.... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... active ?!Σ0..1booleanWhether this patient's record is in active use
... name Σ0..*HumanNameA name associated with the patient
... telecom Σ0..*ContactPointA contact detail for the individual
... gender SΣ0..1codemale | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.

... birthDate Σ0..1dateThe date of birth for the individual
... deceased[x] ?!Σ0..1Indicates if the individual is deceased or not
.... deceasedBooleanboolean
.... deceasedDateTimedateTime
... address Σ0..*AddressAn address for the individual
... maritalStatus 0..1CodeableConceptMarital (civil) status of a patient
Binding: MaritalStatusCodes (extensible): The domestic partnership status of a person.

... multipleBirth[x] 0..1Whether patient is part of a multiple birth
.... multipleBirthBooleanboolean
.... multipleBirthIntegerinteger
... photo 0..*AttachmentImage of the patient
... contact C0..*BackboneElementA contact party (e.g. guardian, partner, friend) for the patient
.... 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
.... relationship 0..*CodeableConceptThe kind of relationship
Binding: PatientContactRelationship (extensible): The nature of the relationship between a patient and a contact person for that patient.


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

.... organization C0..1Reference(Organization)Organization that is associated with the contact
.... period 0..1PeriodThe period during which this contact person or organization is valid to be contacted relating to this patient
... communication 0..*BackboneElementA language which may be used to communicate with the patient about his or her 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: AllLanguages (required): IETF language tag for a human language

.... preferred 0..1booleanLanguage preference indicator
... generalPractitioner 0..*Reference(Organization | Practitioner | PractitionerRole)Patient's nominated primary care provider
... managingOrganization Σ0..1Reference(Organization)Organization that is the custodian of the patient record
... link ?!Σ0..*BackboneElementLink to a Patient or RelatedPerson resource that concerns the same actual individual
.... 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
.... other Σ1..1Reference(Patient | RelatedPerson)The other patient or related person resource that the link refers to
.... type Σ1..1codereplaced-by | replaces | refer | seealso
Binding: LinkType (required): The type of link between this patient resource and another Patient resource, or Patient/RelatedPerson when using the seealso code


doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Patient.languagerequiredAllLanguages
Patient.identifier.userequiredIdentifierUse
Patient.identifier.typeextensibleIdentifierTypeCodes
Patient.genderrequiredAdministrativeGender
Patient.maritalStatusextensibleMaritalStatusCodes
Patient.contact.relationshipextensiblePatientContactRelationship
Patient.contact.genderrequiredAdministrativeGender
Patient.communication.languagerequiredAllLanguages
Patient.link.typerequiredLinkType

Constraints

IdGradePath(s)DetailsRequirements
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()
pat-1errorPatient.contactSHALL at least contain a contact's details or a reference to an organization
: name.exists() or telecom.exists() or address.exists() or organization.exists()

This structure is derived from Patient

Summary

Must-Support: 5 elements

Extensions

This structure refers to these extensions:

Maturity: 0

Differential View

This structure is derived from Patient

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient C0..*PatientInformation about an individual or animal receiving health care services
ibcm-pat-1: Patient.birthdate can be present only when the value of extension 'patient-bornStatus' is not present or if present then the value is set to 'born'
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... bornStatus S0..1codeborn | unborn | fetal-demise | unknown
URL: http://hl7.org/fhir/StructureDefinition/patient-bornStatus
Binding: BornStatus (required)
... identifier S0..*IdentifierAn identifier for this patient
.... system S0..1uriThe namespace for the identifier value
.... value S0..1stringThe value that is unique

doco Documentation for this format

Constraints

IdGradePath(s)DetailsRequirements
ibcm-pat-1errorPatientPatient.birthdate can be present only when the value of extension 'patient-bornStatus' is not present or if present then the value is set to 'born'
: Patient.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/patient-bornStatus' and value != 'born').exists() implies Patient.birthDate.exists().not()

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient C0..*PatientInformation about an individual or animal receiving health care services
ibcm-pat-1: Patient.birthdate can be present only when the value of extension 'patient-bornStatus' is not present or if present then the value is set to 'born'
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... contained 0..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
... identifier SΣ0..*IdentifierAn identifier for this patient
.... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... system SΣ0..1uriThe namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value SΣC0..1stringThe value that is unique
Example General: 123456
... active ?!Σ0..1booleanWhether this patient's record is in active use
... gender SΣ0..1codemale | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.

... deceased[x] ?!Σ0..1Indicates if the individual is deceased or not
.... deceasedBooleanboolean
.... deceasedDateTimedateTime
... link ?!Σ0..*BackboneElementLink to a Patient or RelatedPerson resource that concerns the same actual individual
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... other Σ1..1Reference(Patient | RelatedPerson)The other patient or related person resource that the link refers to
.... type Σ1..1codereplaced-by | replaces | refer | seealso
Binding: LinkType (required): The type of link between this patient resource and another Patient resource, or Patient/RelatedPerson when using the seealso code


doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Patient.identifier.userequiredIdentifierUse
Patient.genderrequiredAdministrativeGender
Patient.link.typerequiredLinkType

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()
ibcm-pat-1errorPatientPatient.birthdate can be present only when the value of extension 'patient-bornStatus' is not present or if present then the value is set to 'born'
: Patient.extension.where(url = 'http://hl7.org/fhir/StructureDefinition/patient-bornStatus' and value != 'born').exists() implies Patient.birthDate.exists().not()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient C0..*PatientInformation about an individual or animal receiving health care services
ibcm-pat-1: Patient.birthdate can be present only when the value of extension 'patient-bornStatus' is not present or if present then the value is set to 'born'
... 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
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... bornStatus S0..1codeborn | unborn | fetal-demise | unknown
URL: http://hl7.org/fhir/StructureDefinition/patient-bornStatus
Binding: BornStatus (required)
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
... identifier SΣ0..*IdentifierAn identifier for this patient
.... id 0..1idUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ0..1CodeableConceptDescription of identifier
Binding: IdentifierTypeCodes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

.... system SΣ0..1uriThe namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value SΣC0..1stringThe value that is unique
Example General: 123456
.... period Σ0..1PeriodTime period when id is/was valid for use
.... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... active ?!Σ0..1booleanWhether this patient's record is in active use
... name Σ0..*HumanNameA name associated with the patient
... telecom Σ0..*ContactPointA contact detail for the individual
... gender SΣ0..1codemale | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.

... birthDate Σ0..1dateThe date of birth for the individual
... deceased[x] ?!Σ0..1Indicates if the individual is deceased or not
.... deceasedBooleanboolean
.... deceasedDateTimedateTime
... address Σ0..*AddressAn address for the individual
... maritalStatus 0..1CodeableConceptMarital (civil) status of a patient
Binding: MaritalStatusCodes (extensible): The domestic partnership status of a person.

... multipleBirth[x] 0..1Whether patient is part of a multiple birth
.... multipleBirthBooleanboolean
.... multipleBirthIntegerinteger
... photo 0..*AttachmentImage of the patient
... contact C0..*BackboneElementA contact party (e.g. guardian, partner, friend) for the patient
.... 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
.... relationship 0..*CodeableConceptThe kind of relationship
Binding: PatientContactRelationship (extensible): The nature of the relationship between a patient and a contact person for that patient.


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

.... organization C0..1Reference(Organization)Organization that is associated with the contact
.... period 0..1PeriodThe period during which this contact person or organization is valid to be contacted relating to this patient
... communication 0..*BackboneElementA language which may be used to communicate with the patient about his or her 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: AllLanguages (required): IETF language tag for a human language

.... preferred 0..1booleanLanguage preference indicator
... generalPractitioner 0..*Reference(Organization | Practitioner | PractitionerRole)Patient's nominated primary care provider
... managingOrganization Σ0..1Reference(Organization)Organization that is the custodian of the patient record
... link ?!Σ0..*BackboneElementLink to a Patient or RelatedPerson resource that concerns the same actual individual
.... 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
.... other Σ1..1Reference(Patient | RelatedPerson)The other patient or related person resource that the link refers to
.... type Σ1..1codereplaced-by | replaces | refer | seealso
Binding: LinkType (required): The type of link between this patient resource and another Patient resource, or Patient/RelatedPerson when using the seealso code


doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Patient.languagerequiredAllLanguages
Patient.identifier.userequiredIdentifierUse
Patient.identifier.typeextensibleIdentifierTypeCodes
Patient.genderrequiredAdministrativeGender
Patient.maritalStatusextensibleMaritalStatusCodes
Patient.contact.relationshipextensiblePatientContactRelationship
Patient.contact.genderrequiredAdministrativeGender
Patient.communication.languagerequiredAllLanguages
Patient.link.typerequiredLinkType

Constraints

IdGradePath(s)DetailsRequirements
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()
pat-1errorPatient.contactSHALL at least contain a contact's details or a reference to an organization
: name.exists() or telecom.exists() or address.exists() or organization.exists()

This structure is derived from Patient

Summary

Must-Support: 5 elements

Extensions

This structure refers to these extensions:

Maturity: 0

 

Other representations of profile: CSV, Excel, Schematron