ShEx statement for deviceassociation
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 <Group.shex>
IMPORT <Device.shex>
IMPORT <Period.shex>
IMPORT <Patient.shex>
IMPORT <Reference.shex>
IMPORT <Identifier.shex>
IMPORT <Practitioner.shex>
IMPORT <RelatedPerson.shex>
IMPORT <BodyStructure.shex>
IMPORT <DomainResource.shex>
IMPORT <CodeableConcept.shex>
IMPORT <BackboneElement.shex>
start=@<DeviceAssociation> AND {fhir:nodeRole [fhir:treeRoot]}
# A record of association or dissociation of a device with a patient
<DeviceAssociation> EXTENDS @<DomainResource> CLOSED {
a [fhir:DeviceAssociation]?;
fhir:nodeRole [fhir:treeRoot]?;
fhir:identifier @<OneOrMore_Identifier>?; # Instance identifier
fhir:device @<Reference> AND {fhir:link
@<Device> ? }; # Reference to the devices
# associated with the patient or
# group
fhir:category @<OneOrMore_CodeableConcept>?; # Describes the relationship between
# the device and subject
fhir:status @<CodeableConcept>; # implanted | explanted | attached |
# entered-in-error | unknown
fhir:statusReason @<OneOrMore_CodeableConcept>?; # The reasons given for the current
# association status
fhir:subject @<Reference> AND {fhir:link
@<Device> OR
@<Group> OR
@<Patient> OR
@<Practitioner> OR
@<RelatedPerson> ? }?; # The individual, group of
# individuals or device that the
# device is on or associated with
fhir:bodyStructure @<Reference> AND {fhir:link
@<BodyStructure> ? }?; # Current anatomical location of the
# device in/on subject
fhir:period @<Period>?; # Begin and end dates and times for
# the device association
fhir:operation @<OneOrMore_DeviceAssociation.operation>?; # The details about the device when
# it is in use to describe its
# operation
}
# The details about the device when it is in use to describe its operation
<DeviceAssociation.operation> EXTENDS @<BackboneElement> CLOSED {
fhir:status @<CodeableConcept>; # Device operational condition
fhir:operator @<OneOrMore_Reference_Patient_OR_Practitioner_OR_RelatedPerson>?; # The individual performing the
# action enabled by the device
fhir:period @<Period>?; # Begin and end dates and times for
# the device's operation
}
#---------------------- 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_DeviceAssociation.operation> CLOSED {
rdf:first @<DeviceAssociation.operation> ;
rdf:rest [rdf:nil] OR @<OneOrMore_DeviceAssociation.operation>
}
<OneOrMore_Reference_Patient_OR_Practitioner_OR_RelatedPerson> CLOSED {
rdf:first @<Reference> AND {fhir:link
@<Patient> OR
@<Practitioner> OR
@<RelatedPerson> } ;
rdf:rest [rdf:nil] OR @<OneOrMore_Reference_Patient_OR_Practitioner_OR_RelatedPerson>
}
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.