PREFIX fhir:
PREFIX fhirvs:
PREFIX xsd:
PREFIX rdf:
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
start=@ AND {fhir:nodeRole [fhir:treeRoot]}
# A list is a curated collection of resources
EXTENDS @ CLOSED {
a [fhir:List]?;
fhir:nodeRole [fhir:treeRoot]?;
fhir:identifier @?; # Business identifier
fhir:status @ AND
{fhir:v @fhirvs:list-status}; # current | retired |
# entered-in-error
fhir:mode @ AND
{fhir:v @fhirvs:list-mode}; # working | snapshot | changes
fhir:title @?; # Descriptive name for the list
fhir:code @?; # What the purpose of this list is
fhir:subject @?; # If all resources have the same
# subject(s)
fhir:encounter @ AND {fhir:link
@ ? }?; # Context in which list created
fhir:date @?; # When the list was prepared
fhir:source @ AND {fhir:link
@ OR
@ OR
@ OR
@ OR
@ OR
@ OR
@ ? }?; # Who and/or what defined the list
# contents (aka Author)
fhir:orderedBy @?; # What order the list has
fhir:note @?; # Comments about the list
fhir:entry @?; # Entries in the list
fhir:emptyReason @?; # Why list is empty
}
# Entries in the list
EXTENDS @ CLOSED {
fhir:flag @?; # Status/Workflow information about
# this item
fhir:deleted @?; # If this item is actually marked as
# deleted
fhir:date @?; # When item added to list
fhir:item @ AND {fhir:link
@ ? }; # Actual entry
}
#---------------------- Cardinality Types (OneOrMore) -------------------
CLOSED {
rdf:first @ ;
rdf:rest [rdf:nil] OR @
}
CLOSED {
rdf:first @ AND {fhir:link
@ } ;
rdf:rest [rdf:nil] OR @
}
CLOSED {
rdf:first @ ;
rdf:rest [rdf:nil] OR @
}
CLOSED {
rdf:first @ ;
rdf:rest [rdf:nil] OR @
}
#---------------------- Value Sets ------------------------
# The processing mode that applies to this list.
fhirvs:list-mode ["working" "snapshot" "changes"]
# The current state of the list.
fhirvs:list-status ["current" "retired" "entered-in-error"]