FLUTE Cross-border Prostate Cancer Data Standard Guide
0.1.0 - ci-build
Funded by the European Union

FLUTE Cross-border Prostate Cancer Data Standard Guide, published by Flute Project. 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/hl7-eu/flute/ and changes regularly. See the Directory of published versions

Resource Profile: FamilyMemberHistory: prostate cancer family history

Official URL: http://hl7.eu/fhir/ig/flute/StructureDefinition/PR-ProstateCancerFamilyHistory Version: 0.1.0
Draft as of 2024-09-25 Computable Name: PR_ProstateCancerFamilyHistory

A record detailing a patient's family history of prostate cancer.

Usage:

Formal Views of Profile Content

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

This structure is derived from FamilyMemberHistory

NameFlagsCard.TypeDescription & Constraintsdoco
.. FamilyMemberHistory 0..* FamilyMemberHistory Information about patient's relatives, relevant for patient
... relationship
.... coding 0..* Coding Code defined by a terminology system
Binding: FamilyMember (required)
... condition 1..* BackboneElement Condition that the related person had
.... code
..... coding 0..* Coding Code defined by a terminology system
Binding: Malignant tumor of prostate Value Set (required)

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
FamilyMemberHistory.relationship.codingrequiredFamilyMember
http://terminology.hl7.org/ValueSet/v3-FamilyMember
FamilyMemberHistory.condition.code.codingrequiredVS_PCa
http://hl7.eu/fhir/ig/flute/ValueSet/VS-PCa
from this IG
NameFlagsCard.TypeDescription & Constraintsdoco
.. FamilyMemberHistory C 0..* FamilyMemberHistory Information about patient's relatives, relevant for patient
fhs-1: Can have age[x] or born[x], but not both
fhs-2: Can only have estimatedAge if age[x] is present
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!Σ 1..1 code partial | completed | entered-in-error | health-unknown
Binding: FamilyHistoryStatus (required): A code that identifies the status of the family history record.

... relationship Σ 1..1 CodeableConcept Relationship to the subject
Binding: FamilyMember (example): The nature of the relationship between the patient and the related person being described in the family member history.

.... coding Σ 0..* Coding Code defined by a terminology system
Binding: FamilyMember (required)
... condition 1..* BackboneElement Condition that the related person had
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... code 1..1 CodeableConcept Condition suffered by relation
Binding: Condition/Problem/DiagnosisCodes (example): Identification of the Condition or diagnosis.

..... coding Σ 0..* Coding Code defined by a terminology system
Binding: Malignant tumor of prostate Value Set (required)

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
FamilyMemberHistory.statusrequiredFamilyHistoryStatus
http://hl7.org/fhir/ValueSet/history-status|4.0.1
from the FHIR Standard
FamilyMemberHistory.relationshipexampleFamilyMember
http://terminology.hl7.org/ValueSet/v3-FamilyMember
FamilyMemberHistory.relationship.codingrequiredFamilyMember
http://terminology.hl7.org/ValueSet/v3-FamilyMember
FamilyMemberHistory.condition.codeexampleCondition/Problem/DiagnosisCodes
http://hl7.org/fhir/ValueSet/condition-code
from the FHIR Standard
FamilyMemberHistory.condition.code.codingrequiredVS_PCa
http://hl7.eu/fhir/ig/flute/ValueSet/VS-PCa
from this IG

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorFamilyMemberHistoryIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorFamilyMemberHistoryIf 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-4errorFamilyMemberHistoryIf 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-5errorFamilyMemberHistoryIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceFamilyMemberHistoryA 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()
fhs-1errorFamilyMemberHistoryCan have age[x] or born[x], but not both
: age.empty() or born.empty()
fhs-2errorFamilyMemberHistoryCan only have estimatedAge if age[x] is present
: age.exists() or estimatedAge.empty()
NameFlagsCard.TypeDescription & Constraintsdoco
.. FamilyMemberHistory C 0..* FamilyMemberHistory Information about patient's relatives, relevant for patient
fhs-1: Can have age[x] or born[x], but not both
fhs-2: Can only have estimatedAge if age[x] is present
... 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 Σ 0..* Identifier External Id(s) for this record
... instantiatesCanonical Σ 0..* canonical(PlanDefinition | Questionnaire | ActivityDefinition | Measure | OperationDefinition) Instantiates FHIR protocol or definition
... instantiatesUri Σ 0..* uri Instantiates external protocol or definition
... status ?!Σ 1..1 code partial | completed | entered-in-error | health-unknown
Binding: FamilyHistoryStatus (required): A code that identifies the status of the family history record.

... dataAbsentReason Σ 0..1 CodeableConcept subject-unknown | withheld | unable-to-obtain | deferred
Binding: FamilyHistoryAbsentReason (example): Codes describing the reason why a family member's history is not available.

... patient Σ 1..1 Reference(Patient) Patient history is about
... date Σ 0..1 dateTime When history was recorded or last updated
... name Σ 0..1 string The family member described
... relationship Σ 1..1 CodeableConcept Relationship to the subject
Binding: FamilyMember (example): The nature of the relationship between the patient and the related person being described in the family member history.

.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... coding Σ 0..* Coding Code defined by a terminology system
Binding: FamilyMember (required)
.... text Σ 0..1 string Plain text representation of the concept
... sex Σ 0..1 CodeableConcept male | female | other | unknown
Binding: AdministrativeGender (extensible): Codes describing the sex assigned at birth as documented on the birth registration.

... born[x] C 0..1 (approximate) date of birth
.... bornPeriod Period
.... bornDate date
.... bornString string
... age[x] ΣC 0..1 (approximate) age
.... ageAge Age
.... ageRange Range
.... ageString string
... estimatedAge ΣC 0..1 boolean Age is estimated?
... deceased[x] Σ 0..1 Dead? How old/when?
.... deceasedBoolean boolean
.... deceasedAge Age
.... deceasedRange Range
.... deceasedDate date
.... deceasedString string
... reasonCode Σ 0..* CodeableConcept Why was family member history performed?
Binding: SNOMEDCTClinicalFindings (example): Codes indicating why the family member history was done.


... reasonReference Σ 0..* Reference(Condition | Observation | AllergyIntolerance | QuestionnaireResponse | DiagnosticReport | DocumentReference) Why was family member history performed?
... note 0..* Annotation General note about related person
... condition 1..* BackboneElement Condition that the related person had
.... 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
.... code 1..1 CodeableConcept Condition suffered by relation
Binding: Condition/Problem/DiagnosisCodes (example): Identification of the Condition or diagnosis.

..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... coding Σ 0..* Coding Code defined by a terminology system
Binding: Malignant tumor of prostate Value Set (required)
..... text Σ 0..1 string Plain text representation of the concept
.... outcome 0..1 CodeableConcept deceased | permanent disability | etc.
Binding: ConditionOutcomeCodes (example): The result of the condition for the patient; e.g. death, permanent disability, temporary disability, etc.

.... contributedToDeath 0..1 boolean Whether the condition contributed to the cause of death
.... onset[x] 0..1 When condition first manifested
..... onsetAge Age
..... onsetRange Range
..... onsetPeriod Period
..... onsetString string
.... note 0..* Annotation Extra information about condition

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
FamilyMemberHistory.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
FamilyMemberHistory.statusrequiredFamilyHistoryStatus
http://hl7.org/fhir/ValueSet/history-status|4.0.1
from the FHIR Standard
FamilyMemberHistory.dataAbsentReasonexampleFamilyHistoryAbsentReason
http://hl7.org/fhir/ValueSet/history-absent-reason
from the FHIR Standard
FamilyMemberHistory.relationshipexampleFamilyMember
http://terminology.hl7.org/ValueSet/v3-FamilyMember
FamilyMemberHistory.relationship.codingrequiredFamilyMember
http://terminology.hl7.org/ValueSet/v3-FamilyMember
FamilyMemberHistory.sexextensibleAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender
from the FHIR Standard
FamilyMemberHistory.reasonCodeexampleSNOMEDCTClinicalFindings
http://hl7.org/fhir/ValueSet/clinical-findings
from the FHIR Standard
FamilyMemberHistory.condition.codeexampleCondition/Problem/DiagnosisCodes
http://hl7.org/fhir/ValueSet/condition-code
from the FHIR Standard
FamilyMemberHistory.condition.code.codingrequiredVS_PCa
http://hl7.eu/fhir/ig/flute/ValueSet/VS-PCa
from this IG
FamilyMemberHistory.condition.outcomeexampleConditionOutcomeCodes
http://hl7.org/fhir/ValueSet/condition-outcome
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorFamilyMemberHistoryIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorFamilyMemberHistoryIf 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-4errorFamilyMemberHistoryIf 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-5errorFamilyMemberHistoryIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceFamilyMemberHistoryA 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()
fhs-1errorFamilyMemberHistoryCan have age[x] or born[x], but not both
: age.empty() or born.empty()
fhs-2errorFamilyMemberHistoryCan only have estimatedAge if age[x] is present
: age.exists() or estimatedAge.empty()

This structure is derived from FamilyMemberHistory

Summary

Mandatory: 1 element

Differential View

This structure is derived from FamilyMemberHistory

NameFlagsCard.TypeDescription & Constraintsdoco
.. FamilyMemberHistory 0..* FamilyMemberHistory Information about patient's relatives, relevant for patient
... relationship
.... coding 0..* Coding Code defined by a terminology system
Binding: FamilyMember (required)
... condition 1..* BackboneElement Condition that the related person had
.... code
..... coding 0..* Coding Code defined by a terminology system
Binding: Malignant tumor of prostate Value Set (required)

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
FamilyMemberHistory.relationship.codingrequiredFamilyMember
http://terminology.hl7.org/ValueSet/v3-FamilyMember
FamilyMemberHistory.condition.code.codingrequiredVS_PCa
http://hl7.eu/fhir/ig/flute/ValueSet/VS-PCa
from this IG

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. FamilyMemberHistory C 0..* FamilyMemberHistory Information about patient's relatives, relevant for patient
fhs-1: Can have age[x] or born[x], but not both
fhs-2: Can only have estimatedAge if age[x] is present
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!Σ 1..1 code partial | completed | entered-in-error | health-unknown
Binding: FamilyHistoryStatus (required): A code that identifies the status of the family history record.

... relationship Σ 1..1 CodeableConcept Relationship to the subject
Binding: FamilyMember (example): The nature of the relationship between the patient and the related person being described in the family member history.

.... coding Σ 0..* Coding Code defined by a terminology system
Binding: FamilyMember (required)
... condition 1..* BackboneElement Condition that the related person had
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... code 1..1 CodeableConcept Condition suffered by relation
Binding: Condition/Problem/DiagnosisCodes (example): Identification of the Condition or diagnosis.

..... coding Σ 0..* Coding Code defined by a terminology system
Binding: Malignant tumor of prostate Value Set (required)

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
FamilyMemberHistory.statusrequiredFamilyHistoryStatus
http://hl7.org/fhir/ValueSet/history-status|4.0.1
from the FHIR Standard
FamilyMemberHistory.relationshipexampleFamilyMember
http://terminology.hl7.org/ValueSet/v3-FamilyMember
FamilyMemberHistory.relationship.codingrequiredFamilyMember
http://terminology.hl7.org/ValueSet/v3-FamilyMember
FamilyMemberHistory.condition.codeexampleCondition/Problem/DiagnosisCodes
http://hl7.org/fhir/ValueSet/condition-code
from the FHIR Standard
FamilyMemberHistory.condition.code.codingrequiredVS_PCa
http://hl7.eu/fhir/ig/flute/ValueSet/VS-PCa
from this IG

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorFamilyMemberHistoryIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorFamilyMemberHistoryIf 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-4errorFamilyMemberHistoryIf 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-5errorFamilyMemberHistoryIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceFamilyMemberHistoryA 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()
fhs-1errorFamilyMemberHistoryCan have age[x] or born[x], but not both
: age.empty() or born.empty()
fhs-2errorFamilyMemberHistoryCan only have estimatedAge if age[x] is present
: age.exists() or estimatedAge.empty()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. FamilyMemberHistory C 0..* FamilyMemberHistory Information about patient's relatives, relevant for patient
fhs-1: Can have age[x] or born[x], but not both
fhs-2: Can only have estimatedAge if age[x] is present
... 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 Σ 0..* Identifier External Id(s) for this record
... instantiatesCanonical Σ 0..* canonical(PlanDefinition | Questionnaire | ActivityDefinition | Measure | OperationDefinition) Instantiates FHIR protocol or definition
... instantiatesUri Σ 0..* uri Instantiates external protocol or definition
... status ?!Σ 1..1 code partial | completed | entered-in-error | health-unknown
Binding: FamilyHistoryStatus (required): A code that identifies the status of the family history record.

... dataAbsentReason Σ 0..1 CodeableConcept subject-unknown | withheld | unable-to-obtain | deferred
Binding: FamilyHistoryAbsentReason (example): Codes describing the reason why a family member's history is not available.

... patient Σ 1..1 Reference(Patient) Patient history is about
... date Σ 0..1 dateTime When history was recorded or last updated
... name Σ 0..1 string The family member described
... relationship Σ 1..1 CodeableConcept Relationship to the subject
Binding: FamilyMember (example): The nature of the relationship between the patient and the related person being described in the family member history.

.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... coding Σ 0..* Coding Code defined by a terminology system
Binding: FamilyMember (required)
.... text Σ 0..1 string Plain text representation of the concept
... sex Σ 0..1 CodeableConcept male | female | other | unknown
Binding: AdministrativeGender (extensible): Codes describing the sex assigned at birth as documented on the birth registration.

... born[x] C 0..1 (approximate) date of birth
.... bornPeriod Period
.... bornDate date
.... bornString string
... age[x] ΣC 0..1 (approximate) age
.... ageAge Age
.... ageRange Range
.... ageString string
... estimatedAge ΣC 0..1 boolean Age is estimated?
... deceased[x] Σ 0..1 Dead? How old/when?
.... deceasedBoolean boolean
.... deceasedAge Age
.... deceasedRange Range
.... deceasedDate date
.... deceasedString string
... reasonCode Σ 0..* CodeableConcept Why was family member history performed?
Binding: SNOMEDCTClinicalFindings (example): Codes indicating why the family member history was done.


... reasonReference Σ 0..* Reference(Condition | Observation | AllergyIntolerance | QuestionnaireResponse | DiagnosticReport | DocumentReference) Why was family member history performed?
... note 0..* Annotation General note about related person
... condition 1..* BackboneElement Condition that the related person had
.... 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
.... code 1..1 CodeableConcept Condition suffered by relation
Binding: Condition/Problem/DiagnosisCodes (example): Identification of the Condition or diagnosis.

..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... coding Σ 0..* Coding Code defined by a terminology system
Binding: Malignant tumor of prostate Value Set (required)
..... text Σ 0..1 string Plain text representation of the concept
.... outcome 0..1 CodeableConcept deceased | permanent disability | etc.
Binding: ConditionOutcomeCodes (example): The result of the condition for the patient; e.g. death, permanent disability, temporary disability, etc.

.... contributedToDeath 0..1 boolean Whether the condition contributed to the cause of death
.... onset[x] 0..1 When condition first manifested
..... onsetAge Age
..... onsetRange Range
..... onsetPeriod Period
..... onsetString string
.... note 0..* Annotation Extra information about condition

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
FamilyMemberHistory.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
FamilyMemberHistory.statusrequiredFamilyHistoryStatus
http://hl7.org/fhir/ValueSet/history-status|4.0.1
from the FHIR Standard
FamilyMemberHistory.dataAbsentReasonexampleFamilyHistoryAbsentReason
http://hl7.org/fhir/ValueSet/history-absent-reason
from the FHIR Standard
FamilyMemberHistory.relationshipexampleFamilyMember
http://terminology.hl7.org/ValueSet/v3-FamilyMember
FamilyMemberHistory.relationship.codingrequiredFamilyMember
http://terminology.hl7.org/ValueSet/v3-FamilyMember
FamilyMemberHistory.sexextensibleAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender
from the FHIR Standard
FamilyMemberHistory.reasonCodeexampleSNOMEDCTClinicalFindings
http://hl7.org/fhir/ValueSet/clinical-findings
from the FHIR Standard
FamilyMemberHistory.condition.codeexampleCondition/Problem/DiagnosisCodes
http://hl7.org/fhir/ValueSet/condition-code
from the FHIR Standard
FamilyMemberHistory.condition.code.codingrequiredVS_PCa
http://hl7.eu/fhir/ig/flute/ValueSet/VS-PCa
from this IG
FamilyMemberHistory.condition.outcomeexampleConditionOutcomeCodes
http://hl7.org/fhir/ValueSet/condition-outcome
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorFamilyMemberHistoryIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorFamilyMemberHistoryIf 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-4errorFamilyMemberHistoryIf 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-5errorFamilyMemberHistoryIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceFamilyMemberHistoryA 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()
fhs-1errorFamilyMemberHistoryCan have age[x] or born[x], but not both
: age.empty() or born.empty()
fhs-2errorFamilyMemberHistoryCan only have estimatedAge if age[x] is present
: age.exists() or estimatedAge.empty()

This structure is derived from FamilyMemberHistory

Summary

Mandatory: 1 element

 

Other representations of profile: CSV, Excel, Schematron