FoundationThis page is part of the FHIR Specification (v5.0.0: R5 - STU). This is the current published version in it's permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions
. Page versions: R5 R4B R4 R3
| Modeling and Methodology Work Group | Maturity Level: N/A | Standards Status: Informative |
ShEx statement for DataRequirement
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 <Group.shex>
IMPORT <string.shex>
IMPORT <Coding.shex>
IMPORT <Period.shex>
IMPORT <Element.shex>
IMPORT <DataType.shex>
IMPORT <dateTime.shex>
IMPORT <Duration.shex>
IMPORT <canonical.shex>
IMPORT <Reference.shex>
IMPORT <positiveInt.shex>
IMPORT <CodeableConcept.shex>
# Describes a required data item
<DataRequirement> EXTENDS @<DataType> CLOSED {
a [fhir:DataRequirement]?;
fhir:type @<code> AND
{fhir:v @fhirvs:fhir-types}; # The type of the required data
fhir:profile @<OneOrMore_canonical>?; # The profile of the required data
fhir:subject @<CodeableConcept> OR
(@<Reference> AND {fhir:link @<Group> }) ?; # E.g. Patient, Practitioner,
# RelatedPerson, Organization,
# Location, Device
fhir:mustSupport @<OneOrMore_string>?; # Indicates specific structure
# elements that are referenced by
# the knowledge module
fhir:codeFilter @<OneOrMore_Element>?; # What codes are expected
fhir:dateFilter @<OneOrMore_Element>?; # What dates/date ranges are expected
fhir:valueFilter @<OneOrMore_Element>?; # What values are expected
fhir:limit @<positiveInt>?; # Number of results
fhir:sort @<OneOrMore_Element>?; # Order of the results
}
# What codes are expected
<DataRequirement.codeFilter> EXTENDS @<Element> CLOSED {
fhir:path @<string>?; # A code-valued attribute to filter
# on
fhir:searchParam @<string>?; # A coded (token) parameter to
# search on
fhir:valueSet @<canonical>?; # ValueSet for the filter
fhir:code @<OneOrMore_Coding>?; # What code is expected
}
# What values are expected
<DataRequirement.valueFilter> EXTENDS @<Element> CLOSED {
fhir:path @<string>?; # An attribute to filter on
fhir:searchParam @<string>?; # A parameter to search on
fhir:comparator @<code> AND
{fhir:v @fhirvs:value-filter-comparator}?; # eq | gt | lt | ge | le | sa | eb
fhir:value @<dateTime> OR
@<Period> OR
@<Duration> ?; # The value of the filter, as a
# Period, DateTime, or Duration
# value
}
# Order of the results
<DataRequirement.sort> EXTENDS @<Element> CLOSED {
fhir:path @<string>; # The name of the attribute to
# perform the sort
fhir:direction @<code> AND
{fhir:v @fhirvs:sort-direction}; # ascending | descending
}
# What dates/date ranges are expected
<DataRequirement.dateFilter> EXTENDS @<Element> CLOSED {
fhir:path @<string>?; # A date-valued attribute to filter
# on
fhir:searchParam @<string>?; # A date valued parameter to search
# on
fhir:value @<dateTime> OR
@<Period> OR
@<Duration> ?; # The value of the filter, as a
# Period, DateTime, or Duration
# value
}
#---------------------- Cardinality Types (OneOrMore) -------------------
<OneOrMore_canonical> CLOSED {
rdf:first @<canonical> ;
rdf:rest [rdf:nil] OR @<OneOrMore_canonical>
}
<OneOrMore_string> CLOSED {
rdf:first @<string> ;
rdf:rest [rdf:nil] OR @<OneOrMore_string>
}
<OneOrMore_Element> CLOSED {
rdf:first @<Element> ;
rdf:rest [rdf:nil] OR @<OneOrMore_Element>
}
<OneOrMore_Coding> CLOSED {
rdf:first @<Coding> ;
rdf:rest [rdf:nil] OR @<OneOrMore_Coding>
}
#---------------------- Value Sets ------------------------
# All FHIR types
fhirvs:fhir-types ["Base" "Element" "BackboneElement" "DataType" "Address" "Annotation" "Attachment" "Availability" "BackboneType" "Dosage" "ElementDefinition" "MarketingStatus" "ProductShelfLife" "Timing" "CodeableConcept" "CodeableReference" "Coding" "ContactDetail" "ContactPoint" "Contributor" "DataRequirement" "Expression" "ExtendedContactDetail" "Extension" "HumanName" "Identifier" "Meta" "MonetaryComponent" "Money" "Narrative" "ParameterDefinition" "Period" "PrimitiveType" "base64Binary" "boolean" "date" "dateTime" "decimal" "instant" "integer" "positiveInt" "unsignedInt" "integer64" "string" "code" "id" "markdown" "time" "uri" "canonical" "oid" "url" "uuid" "Quantity" "Age" "Count" "Distance" "Duration" "Range" "Ratio" "RatioRange" "Reference" "RelatedArtifact" "SampledData" "Signature" "TriggerDefinition" "UsageContext" "VirtualServiceDetail" "xhtml" "Resource" "Binary" "Bundle" "DomainResource" "Account" "ActivityDefinition" "ActorDefinition" "AdministrableProductDefinition" "AdverseEvent" "AllergyIntolerance" "Appointment" "AppointmentResponse" "ArtifactAssessment" "AuditEvent" "Basic" "BiologicallyDerivedProduct" "BiologicallyDerivedProductDispense" "BodyStructure" "CanonicalResource" "CapabilityStatement" "CarePlan" "CareTeam" "ChargeItem" "ChargeItemDefinition" "Citation" "Claim" "ClaimResponse" "ClinicalImpression" "ClinicalUseDefinition" "CodeSystem" "Communication" "CommunicationRequest" "CompartmentDefinition" "Composition" "ConceptMap" "Condition" "ConditionDefinition" "Consent" "Contract" "Coverage" "CoverageEligibilityRequest" "CoverageEligibilityResponse" "DetectedIssue" "Device" "DeviceAssociation" "DeviceDefinition" "DeviceDispense" "DeviceMetric" "DeviceRequest" "DeviceUsage" "DiagnosticReport" "DocumentReference" "Encounter" "EncounterHistory" "Endpoint" "EnrollmentRequest" "EnrollmentResponse" "EpisodeOfCare" "EventDefinition" "Evidence" "EvidenceReport" "EvidenceVariable" "ExampleScenario" "ExplanationOfBenefit" "FamilyMemberHistory" "Flag" "FormularyItem" "GenomicStudy" "Goal" "GraphDefinition" "Group" "GuidanceResponse" "HealthcareService" "ImagingSelection" "ImagingStudy" "Immunization" "ImmunizationEvaluation" "ImmunizationRecommendation" "ImplementationGuide" "Ingredient" "InsurancePlan" "InventoryItem" "InventoryReport" "Invoice" "Library" "Linkage" "List" "Location" "ManufacturedItemDefinition" "Measure" "MeasureReport" "Medication" "MedicationAdministration" "MedicationDispense" "MedicationKnowledge" "MedicationRequest" "MedicationStatement" "MedicinalProductDefinition" "MessageDefinition" "MessageHeader" "MetadataResource" "MolecularSequence" "NamingSystem" "NutritionIntake" "NutritionOrder" "NutritionProduct" "Observation" "ObservationDefinition" "OperationDefinition" "OperationOutcome" "Organization" "OrganizationAffiliation" "PackagedProductDefinition" "Patient" "PaymentNotice" "PaymentReconciliation" "Permission" "Person" "PlanDefinition" "Practitioner" "PractitionerRole" "Procedure" "Provenance" "Questionnaire" "QuestionnaireResponse" "RegulatedAuthorization" "RelatedPerson" "RequestOrchestration" "Requirements" "ResearchStudy" "ResearchSubject" "RiskAssessment" "Schedule" "SearchParameter" "ServiceRequest" "Slot" "Specimen" "SpecimenDefinition" "StructureDefinition" "StructureMap" "Subscription" "SubscriptionStatus" "SubscriptionTopic" "Substance" "SubstanceDefinition" "SubstanceNucleicAcid" "SubstancePolymer" "SubstanceProtein" "SubstanceReferenceInformation" "SubstanceSourceMaterial" "SupplyDelivery" "SupplyRequest" "Task" "TerminologyCapabilities" "TestPlan" "TestReport" "TestScript" "Transport" "ValueSet" "VerificationResult" "VisionPrescription" "Parameters"]
# The possible sort directions, ascending or descending.
fhirvs:sort-direction ["ascending" "descending"]
# The type of comparator operator to use
fhirvs:value-filter-comparator ["eq" "gt" "lt" "ge" "le" "sa" "eb"]
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.
FHIR ®© HL7.org 2011+. FHIR R5 hl7.fhir.core#5.0.0 generated on Sun, Mar 26, 2023 15:23+1100.
Links: Search |
Version History |
Contents |
Glossary |
QA |
Compare to R4 |
Compare to R4B |
|
Propose a change