PREFIX fhir:
PREFIX fhirvs:
PREFIX xsd:
BASE
start=@ AND {fhir:nodeRole [fhir:treeRoot]}
# An interaction during which services are provided to the patient
CLOSED {
a [fhir:Encounter];
fhir:nodeRole [fhir:treeRoot]?;
fhir:Resource.id @?; # Logical id of this artifact
fhir:Resource.meta @?; # Metadata about the resource
fhir:Resource.implicitRules @?; # A set of rules under which this
# content was created
fhir:Resource.language @?; # Language of the resource content
fhir:DomainResource.text @?; # Text summary of the resource, for
# human interpretation
fhir:DomainResource.contained @*; # Contained, inline Resources
fhir:DomainResource.extension @*; # Additional content defined by
# implementations
fhir:DomainResource.modifierExtension @*; # Extensions that cannot be ignored
fhir:Encounter.identifier @*; # Identifier(s) by which this
# encounter is known
fhir:Encounter.status @ AND
{fhir:value @fhirvs:encounter-status}; # planned | arrived | triaged |
# in-progress | onleave | finished |
# cancelled +
fhir:Encounter.statusHistory @*; # List of past encounter statuses
fhir:Encounter.class @; # Classification of patient encounter
fhir:Encounter.classHistory @*; # List of past encounter classes
fhir:Encounter.type @*; # Specific type of encounter
fhir:Encounter.serviceType @?; # Specific type of service
fhir:Encounter.priority @?; # Indicates the urgency of the
# encounter
fhir:Encounter.subject @?; # The patient or group present at
# the encounter
fhir:Encounter.episodeOfCare @*; # Episode(s) of care that this
# encounter should be recorded
# against
fhir:Encounter.basedOn @*; # The ServiceRequest that initiated
# this encounter
fhir:Encounter.participant @*; # List of participants involved in
# the encounter
fhir:Encounter.appointment @*; # The appointment that scheduled
# this encounter
fhir:Encounter.period @?; # The start and end time of the
# encounter
fhir:Encounter.length @?; # Quantity of time the encounter
# lasted (less time absent)
fhir:Encounter.reasonCode @*; # Coded reason the encounter takes
# place
fhir:Encounter.reasonReference @*; # Reason the encounter takes place
# (reference)
fhir:Encounter.diagnosis @*; # The list of diagnosis relevant to
# this encounter
fhir:Encounter.account @*; # The set of accounts that may be
# used for billing for this
# Encounter
fhir:Encounter.hospitalization @?; # Details about the admission to a
# healthcare service
fhir:Encounter.location @*; # List of locations where the
# patient has been
fhir:Encounter.serviceProvider @?; # The organization (facility)
# responsible for this encounter
fhir:Encounter.partOf @?; # Another Encounter this encounter
# is part of
fhir:index xsd:integer? # Relative position in a list
}
# List of locations where the patient has been
CLOSED {
fhir:Element.id @?; # Unique id for inter-element
# referencing
fhir:Element.extension @*; # Additional content defined by
# implementations
fhir:BackboneElement.modifierExtension @*; # Extensions that cannot be ignored
# even if unrecognized
fhir:Encounter.location.location @; # Location the encounter takes place
fhir:Encounter.location.status @ AND
{fhir:value @fhirvs:encounter-location-status}?; # planned | active | reserved |
# completed
fhir:Encounter.location.physicalType @?; # The physical type of the location
# (usually the level in the location
# hierachy - bed room ward etc.)
fhir:Encounter.location.period @?; # Time period during which the
# patient was present at the
# location
fhir:index xsd:integer? # Relative position in a list
}
# List of participants involved in the encounter
CLOSED {
fhir:Element.id @?; # Unique id for inter-element
# referencing
fhir:Element.extension @*; # Additional content defined by
# implementations
fhir:BackboneElement.modifierExtension @*; # Extensions that cannot be ignored
# even if unrecognized
fhir:Encounter.participant.type @*; # Role of participant in encounter
fhir:Encounter.participant.period @?; # Period of time during the
# encounter that the participant
# participated
fhir:Encounter.participant.individual @?; # Persons involved in the encounter
# other than the patient
fhir:index xsd:integer? # Relative position in a list
}
# List of past encounter classes
CLOSED {
fhir:Element.id @?; # Unique id for inter-element
# referencing
fhir:Element.extension @*; # Additional content defined by
# implementations
fhir:BackboneElement.modifierExtension @*; # Extensions that cannot be ignored
# even if unrecognized
fhir:Encounter.classHistory.class @; # inpatient | outpatient |
# ambulatory | emergency +
fhir:Encounter.classHistory.period @; # The time that the episode was in
# the specified class
fhir:index xsd:integer? # Relative position in a list
}
# The list of diagnosis relevant to this encounter
CLOSED {
fhir:Element.id @?; # Unique id for inter-element
# referencing
fhir:Element.extension @*; # Additional content defined by
# implementations
fhir:BackboneElement.modifierExtension @*; # Extensions that cannot be ignored
# even if unrecognized
fhir:Encounter.diagnosis.condition @; # The diagnosis or procedure
# relevant to the encounter
fhir:Encounter.diagnosis.use @?; # Role that this diagnosis has
# within the encounter (e.g.
# admission, billing, discharge …)
fhir:Encounter.diagnosis.rank @?; # Ranking of the diagnosis (for each
# role type)
fhir:index xsd:integer? # Relative position in a list
}
# List of past encounter statuses
CLOSED {
fhir:Element.id @?; # Unique id for inter-element
# referencing
fhir:Element.extension @*; # Additional content defined by
# implementations
fhir:BackboneElement.modifierExtension @*; # Extensions that cannot be ignored
# even if unrecognized
fhir:Encounter.statusHistory.status @ AND
{fhir:value @fhirvs:encounter-status}; # planned | arrived | triaged |
# in-progress | onleave | finished |
# cancelled +
fhir:Encounter.statusHistory.period @; # The time that the episode was in
# the specified status
fhir:index xsd:integer? # Relative position in a list
}
# Details about the admission to a healthcare service
CLOSED {
fhir:Element.id @?; # Unique id for inter-element
# referencing
fhir:Element.extension @*; # Additional content defined by
# implementations
fhir:BackboneElement.modifierExtension @*; # Extensions that cannot be ignored
# even if unrecognized
fhir:Encounter.hospitalization.preAdmissionIdentifier @?; # Pre-admission identifier
fhir:Encounter.hospitalization.origin @?; # The location/organization from
# which the patient came before
# admission
fhir:Encounter.hospitalization.admitSource @?; # From where patient was admitted
# (physician referral, transfer)
fhir:Encounter.hospitalization.reAdmission @?; # The type of hospital re-admission
# that has occurred (if any). If the
# value is absent, then this is not
# identified as a readmission
fhir:Encounter.hospitalization.dietPreference @*; # Diet preferences reported by the
# patient
fhir:Encounter.hospitalization.specialCourtesy @*; # Special courtesies (VIP, board
# member)
fhir:Encounter.hospitalization.specialArrangement @*; # Wheelchair, translator, stretcher,
# etc.
fhir:Encounter.hospitalization.destination @?; # Location/organization to which the
# patient is discharged
fhir:Encounter.hospitalization.dischargeDisposition @?; # Category or kind of location after
# discharge
fhir:index xsd:integer? # Relative position in a list
}
#---------------------- Data Types -------------------
# Metadata about a resource
CLOSED {
fhir:Element.id @?; # Unique id for inter-element
# referencing
fhir:Element.extension @*; # Additional content defined by
# implementations
fhir:Meta.versionId @?; # Version specific identifier
fhir:Meta.lastUpdated @?; # When the resource version last
# changed
fhir:Meta.source @?; # Identifies where the resource
# comes from
fhir:Meta.profile @*; # Profiles this resource claims to
# conform to
fhir:Meta.security @*; # Security Labels applied to this
# resource
fhir:Meta.tag @*; # Tags applied to this resource
fhir:index xsd:integer? # Relative position in a list
}
# Primitive Type code
CLOSED {
fhir:Element.id @?; # xml:id (or equivalent in JSON)
fhir:Element.extension @*; # Additional content defined by
# implementations
fhir:value @?; # Primitive value for code
fhir:index xsd:integer? # Relative position in a list
}
# A reference from one resource to another
CLOSED {
fhir:link IRI?;
fhir:Element.id @?; # Unique id for inter-element
# referencing
fhir:Element.extension @*; # Additional content defined by
# implementations
fhir:Reference.reference @?; # Literal reference, Relative,
# internal or absolute URL
fhir:Reference.type @?; # Type the reference refers to (e.g.
# "Patient")
fhir:Reference.identifier @?; # Logical reference, when literal
# reference is not known
fhir:Reference.display @?; # Text alternative for the resource
fhir:index xsd:integer? # Relative position in a list
}
# Base Resource
{a .+;
fhir:Resource.id @?; # Logical id of this artifact
fhir:Resource.meta @?; # Metadata about the resource
fhir:Resource.implicitRules @?; # A set of rules under which this
# content was created
fhir:Resource.language @?; # Language of the resource content
fhir:index xsd:integer?
}
# Time range defined by start and end date/time
CLOSED {
fhir:Element.id @?; # Unique id for inter-element
# referencing
fhir:Element.extension @*; # Additional content defined by
# implementations
fhir:Period.start @?; # Starting time with inclusive
# boundary
fhir:Period.end @?; # End time with inclusive boundary,
# if not ongoing
fhir:index xsd:integer? # Relative position in a list
}
# A length of time
CLOSED {
fhir:Element.id @?; # Unique id for inter-element
# referencing
fhir:Element.extension @*; # Additional content defined by
# implementations
fhir:Quantity.value @?; # Numerical value (with implicit
# precision)
fhir:Quantity.comparator @ AND
{fhir:value @fhirvs:quantity-comparator}?; # < | <= | >= | > - how to
# understand the value
fhir:Quantity.unit @?; # Unit representation
fhir:Quantity.system @?; # System that defines coded unit form
fhir:Quantity.code @?; # Coded form of the unit
fhir:index xsd:integer? # Relative position in a list
}
# Primitive Type uri
CLOSED {
fhir:Element.id @?; # xml:id (or equivalent in JSON)
fhir:Element.extension @*; # Additional content defined by
# implementations
fhir:value @?; # Primitive value for uri
fhir:index xsd:integer? # Relative position in a list
}
# Optional Extensions Element
CLOSED {
fhir:Element.id @?;
fhir:Element.extension @*;
fhir:Extension.url @;
(
fhir:Extension.valueBase64Binary @ |
fhir:Extension.valueBoolean @ |
fhir:Extension.valueCanonical @ |
fhir:Extension.valueCode @ |
fhir:Extension.valueDate @ |
fhir:Extension.valueDateTime @ |
fhir:Extension.valueDecimal @ |
fhir:Extension.valueId @ |
fhir:Extension.valueInstant @ |
fhir:Extension.valueInteger @ |
fhir:Extension.valueMarkdown @ |
fhir:Extension.valueOid @ |
fhir:Extension.valuePositiveInt @ |
fhir:Extension.valueString @ |
fhir:Extension.valueTime @