PREFIX fhir:
PREFIX fhirvs:
PREFIX xsd:
PREFIX rdf:
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
IMPORT
start=@ AND {fhir:nodeRole [fhir:treeRoot]}
# Search parameter for a resource
EXTENDS @ CLOSED {
a [fhir:SearchParameter]?;
fhir:nodeRole [fhir:treeRoot]?;
fhir:url @; # Canonical identifier for this
# search parameter, represented as a
# URI (globally unique)
fhir:identifier @?; # Additional identifier for the
# search parameter (business
# identifier)
fhir:version @?; # Business version of the search
# parameter
fhir:versionAlgorithm @ OR
@ ?; # How to compare versions
fhir:name @; # Name for this search parameter
# (computer friendly)
fhir:title @?; # Name for this search parameter
# (human friendly)
fhir:derivedFrom @?; # Original definition for the search
# parameter
fhir:status @ AND
{fhir:v @fhirvs:publication-status}; # draft | active | retired | unknown
fhir:experimental @?; # For testing purposes, not real
# usage
fhir:date @?; # Date last changed
fhir:publisher @?; # Name of the publisher/steward
# (organization or individual)
fhir:contact @?; # Contact details for the publisher
fhir:description @; # Natural language description of
# the search parameter
fhir:useContext @?; # The context that the content is
# intended to support
fhir:jurisdiction @?; # Intended jurisdiction for search
# parameter (if applicable)
fhir:purpose @?; # Why this search parameter is
# defined
fhir:copyright @?; # Use and/or publishing restrictions
fhir:copyrightLabel @?; # Copyright holder and year(s)
fhir:code @; # Recommended name for parameter in
# search url
fhir:base @ AND
{fhir:v @fhirvs:version-independent-all-resource-types}; # The resource type(s) this search
# parameter applies to
fhir:type @ AND
{fhir:v @fhirvs:search-param-type}; # number | date | string | token |
# reference | composite | quantity |
# uri | special
fhir:expression @?; # FHIRPath expression that extracts
# the values
fhir:processingMode @ AND
{fhir:v @fhirvs:search-processingmode}?; # normal | phonetic | other
fhir:constraint @?; # FHIRPath expression that
# constraints the usage of this
# SearchParamete
fhir:target @ AND
{fhir:v @fhirvs:version-independent-all-resource-types}?; # Types of resource (if a resource
# reference)
fhir:multipleOr @?; # Allow multiple values per
# parameter (or)
fhir:multipleAnd @?; # Allow multiple parameters (and)
fhir:comparator @ AND
{fhir:v @fhirvs:search-comparator}?; # eq | ne | gt | lt | ge | le | sa |
# eb | ap
fhir:modifier @ AND
{fhir:v @fhirvs:search-modifier-code}?; # missing | exact | contains | not |
# text | in | not-in | below | above
# | type | identifier | of-type |
# code-text | text-advanced |
# iterate
fhir:chain @?; # Chained names supported
fhir:component @?; # For Composite resources to define
# the parts
}
# For Composite resources to define the parts
EXTENDS @ CLOSED {
fhir:definition @; # Defines how the part works
fhir:expression @; # Subexpression relative to main
# expression
}
#---------------------- Cardinality Types (OneOrMore) -------------------
CLOSED {
rdf:first @ ;
rdf:rest [rdf:nil] OR @
}
CLOSED {
rdf:first @ ;
rdf:rest [rdf:nil] OR @
}
CLOSED {
rdf:first @ ;
rdf:rest [rdf:nil] OR @
}
CLOSED {
rdf:first @ ;
rdf:rest [rdf:nil] OR @
}
CLOSED {
rdf:first @ ;
rdf:rest [rdf:nil] OR @
}
CLOSED {
rdf:first @ ;
rdf:rest [rdf:nil] OR @
}
CLOSED {
rdf:first @ ;
rdf:rest [rdf:nil] OR @
}
#---------------------- Value Sets ------------------------
# The lifecycle status of an artifact.
fhirvs:publication-status ["draft" "active" "retired" "unknown"]
# What Search Comparator Codes are supported in search.
fhirvs:search-comparator ["eq" "ne" "gt" "lt" "ge" "le" "sa" "eb" "ap"]
# A supported modifier for a search parameter.
fhirvs:search-modifier-code ["missing" "exact" "contains" "not" "text" "in" "not-in" "below" "above" "type" "identifier" "of-type" "code-text" "text-advanced" "iterate"]
# Data types allowed to be used for search parameters.
fhirvs:search-param-type ["number" "date" "string" "token" "reference" "composite" "quantity" "uri" "special"]
# How a search parameter relates to the set of elements returned by evaluating its expression query.
fhirvs:search-processingmode ["normal" "phonetic" "other"]
# Current and past FHIR resource types (deleted or renamed), including abstract types
fhirvs:version-independent-all-resource-types ["Account" "ActivityDefinition" "ActorDefinition" "AdministrableProductDefinition" "AdverseEvent" "AllergyIntolerance" "Appointment" "AppointmentResponse" "ArtifactAssessment" "AuditEvent" "Basic" "Binary" "BiologicallyDerivedProduct" "BiologicallyDerivedProductDispense" "BodyStructure" "Bundle" "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" "DomainResource" "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" "InsuranceProduct" "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" "Parameters" "Patient" "PaymentNotice" "PaymentReconciliation" "Permission" "Person" "PlanDefinition" "Practitioner" "PractitionerRole" "Procedure" "Provenance" "Questionnaire" "QuestionnaireResponse" "RegulatedAuthorization" "RelatedPerson" "RequestOrchestration" "Requirements" "ResearchStudy" "ResearchSubject" "Resource" "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" "BodySite" "CatalogEntry" "Conformance" "DataElement" "DeviceComponent" "DeviceUseRequest" "DeviceUseStatement" "DiagnosticOrder" "DocumentManifest" "EffectEvidenceSynthesis" "EligibilityRequest" "EligibilityResponse" "ExpansionProfile" "ImagingManifest" "ImagingObjectSelection" "Media" "MedicationOrder" "MedicationUsage" "MedicinalProduct" "MedicinalProductAuthorization" "MedicinalProductContraindication" "MedicinalProductIndication" "MedicinalProductIngredient" "MedicinalProductInteraction" "MedicinalProductManufactured" "MedicinalProductPackaged" "MedicinalProductPharmaceutical" "MedicinalProductUndesirableEffect" "Order" "OrderResponse" "ProcedureRequest" "ProcessRequest" "ProcessResponse" "ReferralRequest" "RequestGroup" "ResearchDefinition" "ResearchElementDefinition" "RiskEvidenceSynthesis" "Sequence" "ServiceDefinition" "SubstanceSpecification" "InsuranceProduct"]