ShEx statement for relatedperson
PREFIX fhir: <http://hl7.org/fhir/>
PREFIX fhirvs: <http://hl7.org/fhir/ValueSet/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
IMPORT <code.shex>
IMPORT <date.shex>
IMPORT <Period.shex>
IMPORT <boolean.shex>
IMPORT <Patient.shex>
IMPORT <Address.shex>
IMPORT <Reference.shex>
IMPORT <HumanName.shex>
IMPORT <Identifier.shex>
IMPORT <Attachment.shex>
IMPORT <ContactPoint.shex>
IMPORT <DomainResource.shex>
IMPORT <CodeableConcept.shex>
IMPORT <BackboneElement.shex>
start=@<RelatedPerson> AND {fhir:nodeRole [fhir:treeRoot]}
# A person that is related to a patient, but who is not a direct target of care
<RelatedPerson> EXTENDS @<DomainResource> CLOSED {
a [fhir:RelatedPerson]?;
fhir:nodeRole [fhir:treeRoot]?;
fhir:identifier @<OneOrMore_Identifier>?; # A human identifier for this person
fhir:active @<boolean>?; # Whether this related person's
# record is in active use
fhir:patient @<Reference> AND {fhir:link
@<Patient> ? }; # The patient this person is related
# to
fhir:relationship @<OneOrMore_CodeableConcept>?; # The relationship of the related
# person to the patient
fhir:name @<OneOrMore_HumanName>?; # A name associated with the person
fhir:telecom @<OneOrMore_ContactPoint>?; # A contact detail for the person
fhir:gender @<code> AND
{fhir:v @fhirvs:administrative-gender}?; # male | female | other | unknown
fhir:birthDate @<date>?; # The date on which the related
# person was born
fhir:address @<OneOrMore_Address>?; # Address where the related person
# can be contacted or visited
fhir:photo @<OneOrMore_Attachment>?; # Image of the person
fhir:period @<Period>?; # Period of time that this
# relationship is considered valid
fhir:communication @<OneOrMore_RelatedPerson.communication>?; # A language which may be used to
# communicate with the related
# person about the patient's health
}
# A language which may be used to communicate with the related person about the patient's health
<RelatedPerson.communication> EXTENDS @<BackboneElement> CLOSED {
fhir:language @<CodeableConcept>; # The language which can be used to
# communicate with the related
# person about the patient's health
fhir:preferred @<boolean>?; # Language preference indicator
}
#---------------------- Cardinality Types (OneOrMore) -------------------
<OneOrMore_Identifier> CLOSED {
rdf:first @<Identifier> ;
rdf:rest [rdf:nil] OR @<OneOrMore_Identifier>
}
<OneOrMore_CodeableConcept> CLOSED {
rdf:first @<CodeableConcept> ;
rdf:rest [rdf:nil] OR @<OneOrMore_CodeableConcept>
}
<OneOrMore_HumanName> CLOSED {
rdf:first @<HumanName> ;
rdf:rest [rdf:nil] OR @<OneOrMore_HumanName>
}
<OneOrMore_ContactPoint> CLOSED {
rdf:first @<ContactPoint> ;
rdf:rest [rdf:nil] OR @<OneOrMore_ContactPoint>
}
<OneOrMore_Address> CLOSED {
rdf:first @<Address> ;
rdf:rest [rdf:nil] OR @<OneOrMore_Address>
}
<OneOrMore_Attachment> CLOSED {
rdf:first @<Attachment> ;
rdf:rest [rdf:nil] OR @<OneOrMore_Attachment>
}
<OneOrMore_RelatedPerson.communication> CLOSED {
rdf:first @<RelatedPerson.communication> ;
rdf:rest [rdf:nil] OR @<OneOrMore_RelatedPerson.communication>
}
#---------------------- Value Sets ------------------------
# The gender of a person used for administrative purposes.
fhirvs:administrative-gender ["male" "female" "other" "unknown"]
Usage note: every effort has been made to ensure that the
ShEx files are correct and useful, but they are not a normative part
of the specification.