PREFIX fhir: PREFIX fhirvs: PREFIX xsd: BASE start=@ AND {fhir:nodeRole [fhir:treeRoot]} # The definition of a specific activity to be taken, independent of any particular patient or context CLOSED { a [fhir:ActivityDefinition]; fhir:nodeRole [fhir:treeRoot]?; fhir:Resource.id 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:ActivityDefinition.url @?; # Canonical identifier for this # activity definition, represented # as a URI (globally unique) fhir:ActivityDefinition.identifier @*; # Additional identifier for the # activity definition fhir:ActivityDefinition.version @?; # Business version of the activity # definition fhir:ActivityDefinition.name @?; # Name for this activity definition # (computer friendly) fhir:ActivityDefinition.title @?; # Name for this activity definition # (human friendly) fhir:ActivityDefinition.subtitle @?; # Subordinate title of the activity # definition fhir:ActivityDefinition.status @ AND {fhir:value @fhirvs:publication-status}; # draft | active | retired | unknown fhir:ActivityDefinition.experimental @?; # For testing purposes, not real # usage ( # Type of individual the activity # definition is intended for fhir:ActivityDefinition.subjectCodeableConcept @ | fhir:ActivityDefinition.subjectReference @ | fhir:ActivityDefinition.subjectCanonical @ )?; fhir:ActivityDefinition.date @?; # Date last changed fhir:ActivityDefinition.publisher @?; # Name of the publisher # (organization or individual) fhir:ActivityDefinition.contact @*; # Contact details for the publisher fhir:ActivityDefinition.description @?; # Natural language description of # the activity definition fhir:ActivityDefinition.useContext @*; # The context that the content is # intended to support fhir:ActivityDefinition.jurisdiction @*; # Intended jurisdiction for activity # definition (if applicable) fhir:ActivityDefinition.purpose @?; # Why this activity definition is # defined fhir:ActivityDefinition.usage @?; # Describes the clinical usage of # the activity definition fhir:ActivityDefinition.copyright @?; # Use and/or publishing restrictions fhir:ActivityDefinition.approvalDate @?; # When the activity definition was # approved by publisher fhir:ActivityDefinition.lastReviewDate @?; # When the activity definition was # last reviewed fhir:ActivityDefinition.effectivePeriod @?; # When the activity definition is # expected to be used fhir:ActivityDefinition.topic @*; # E.g. Education, Treatment, # Assessment, etc. fhir:ActivityDefinition.author @*; # Who authored the content fhir:ActivityDefinition.editor @*; # Who edited the content fhir:ActivityDefinition.reviewer @*; # Who reviewed the content fhir:ActivityDefinition.endorser @*; # Who endorsed the content fhir:ActivityDefinition.relatedArtifact @*; # Additional documentation, # citations, etc. fhir:ActivityDefinition.library @*; # Logic used by the activity # definition fhir:ActivityDefinition.kind @ AND {fhir:value @fhirvs:request-resource-types}?; # Kind of resource fhir:ActivityDefinition.profile @?; # What profile the resource needs to # conform to fhir:ActivityDefinition.code @?; # Detail type of activity fhir:ActivityDefinition.intent @ AND {fhir:value @fhirvs:request-intent}?; # proposal | plan | directive | # order | original-order | # reflex-order | filler-order | # instance-order | option fhir:ActivityDefinition.priority @ AND {fhir:value @fhirvs:request-priority}?; # routine | urgent | asap | stat fhir:ActivityDefinition.doNotPerform @?; # True if the activity should not be # performed ( # When activity is to occur fhir:ActivityDefinition.timingTiming @ | fhir:ActivityDefinition.timingDateTime @ | fhir:ActivityDefinition.timingAge @ | fhir:ActivityDefinition.timingPeriod @ | fhir:ActivityDefinition.timingRange @ | fhir:ActivityDefinition.timingDuration @ )?; fhir:ActivityDefinition.location @?; # Where it should happen fhir:ActivityDefinition.participant @*; # Who should participate in the # action ( # What's administered/supplied fhir:ActivityDefinition.productReference @ | fhir:ActivityDefinition.productCodeableConcept @ )?; fhir:ActivityDefinition.quantity @?; # How much is # administered/consumed/supplied fhir:ActivityDefinition.dosage @*; # Detailed dosage instructions fhir:ActivityDefinition.bodySite @*; # What part of body to perform on fhir:ActivityDefinition.specimenRequirement @*; # What specimens are required to # perform this action fhir:ActivityDefinition.observationRequirement @*; # What observations are required to # perform this action fhir:ActivityDefinition.observationResultRequirement @*; # What observations must be produced # by this action fhir:ActivityDefinition.transform @?; # Transform to apply the template fhir:ActivityDefinition.dynamicValue @*; # Dynamic aspects of the definition fhir:index xsd:integer? # Relative position in a list } # Who should participate in the action CLOSED { fhir:Element.id string?; # 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:ActivityDefinition.participant.type @ AND {fhir:value @fhirvs:action-participant-type}; # patient | practitioner | # related-person | device fhir:ActivityDefinition.participant.role @?; # E.g. Nurse, Surgeon, Parent, etc. fhir:index xsd:integer? # Relative position in a list } # Dynamic aspects of the definition CLOSED { fhir:Element.id string?; # 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:ActivityDefinition.dynamicValue.path @; # The path to the element to be set # dynamically fhir:ActivityDefinition.dynamicValue.expression @; # An expression that provides the # dynamic value for the # customization fhir:index xsd:integer? # Relative position in a list } #---------------------- Data Types ------------------- # Primitive Type dateTime CLOSED { fhir:Element.id string?; # xml:id (or equivalent in JSON) fhir:Element.extension @*; # Additional content defined by # implementations fhir:value dateTime?; # Primitive value for dateTime fhir:index xsd:integer? # Relative position in a list } # Primitive Type date CLOSED { fhir:Element.id string?; # xml:id (or equivalent in JSON) fhir:Element.extension @*; # Additional content defined by # implementations fhir:value date?; # Primitive value for date fhir:index xsd:integer? # Relative position in a list } # Metadata about a resource CLOSED { fhir:Element.id 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 string?; # xml:id (or equivalent in JSON) fhir:Element.extension @*; # Additional content defined by # implementations fhir:value code?; # Primitive value for code fhir:index xsd:integer? # Relative position in a list } # Primitive Type string CLOSED { fhir:Element.id string?; # xml:id (or equivalent in JSON) fhir:Element.extension @*; # Additional content defined by # implementations fhir:value string MAXLENGTH 1048576?; # Primitive value for string fhir:index xsd:integer? # Relative position in a list } # How the medication is/was taken or should be taken CLOSED { fhir:Element.id 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:Dosage.sequence @?; # The order of the dosage # instructions fhir:Dosage.text @?; # Free text dosage instructions e.g. # SIG fhir:Dosage.additionalInstruction @*; # Supplemental instruction or # warnings to the patient - e.g. # "with meals", "may cause # drowsiness" fhir:Dosage.patientInstruction @?; # Patient or consumer oriented # instructions fhir:Dosage.timing @?; # When medication should be # administered ( # Take "as needed" (for x) fhir:Dosage.asNeededBoolean @ | fhir:Dosage.asNeededCodeableConcept @ )?; fhir:Dosage.site @?; # Body site to administer to fhir:Dosage.route @?; # How drug should enter body fhir:Dosage.method @?; # Technique for administering # medication fhir:Dosage.doseAndRate @*; # Amount of medication administered fhir:Dosage.maxDosePerPeriod @?; # Upper limit on medication per unit # of time fhir:Dosage.maxDosePerAdministration @?; # Upper limit on medication per # administration fhir:Dosage.maxDosePerLifetime @?; # Upper limit on medication per # lifetime of the patient fhir:index xsd:integer? # Relative position in a list } # An identifier intended for computation CLOSED { fhir:Element.id id?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:Identifier.use @ AND {fhir:value @fhirvs:identifier-use}?; # usual | official | temp | # secondary | old (If known) fhir:Identifier.type @?; # Description of identifier fhir:Identifier.system @?; # The namespace for the identifier # value fhir:Identifier.value @?; # The value that is unique fhir:Identifier.period @?; # Time period when id is/was valid # for use fhir:Identifier.assigner @?; # Organization that issued id (may # be just text) fhir:index xsd:integer? # Relative position in a list } # Human-readable summary of the resource (essential clinical and business information) CLOSED { fhir:Element.id id?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:Narrative.status @ AND {fhir:value @fhirvs:narrative-status}; # generated | extensions | # additional | empty fhir:Narrative.div xsd:string; # Limited xhtml content fhir:index xsd:integer? # Relative position in a list } # Primitive Type markdown CLOSED { fhir:Element.id string?; # xml:id (or equivalent in JSON) fhir:Element.extension @*; # Additional content defined by # implementations fhir:value markdown?; # Primitive value for markdown fhir:index xsd:integer? # Relative position in a list } # A duration of time during which an organism (or a process) has existed CLOSED { fhir:Element.id 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 } # A reference from one resource to another CLOSED { fhir:link IRI?; fhir:Element.id 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 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? } # A fixed quantity (no comparator) CLOSED { fhir:Element.id 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.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 } # Time range defined by start and end date/time CLOSED { fhir:Element.id 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 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 canonical CLOSED { fhir:Element.id string?; # xml:id (or equivalent in JSON) fhir:Element.extension @*; # Additional content defined by # implementations fhir:value canonical?; # Primitive value for canonical fhir:index xsd:integer? # Relative position in a list } # Related artifacts for a knowledge resource CLOSED { fhir:Element.id id?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:RelatedArtifact.type @ AND {fhir:value @fhirvs:related-artifact-type}; # documentation | justification | # citation | predecessor | successor # | derived-from | depends-on | # composed-of fhir:RelatedArtifact.label @?; # Short label fhir:RelatedArtifact.display @?; # Brief description of the related # artifact fhir:RelatedArtifact.citation @?; # Bibliographic citation for the # artifact fhir:RelatedArtifact.url @?; # Where the artifact can be accessed fhir:RelatedArtifact.document @?; # What document is being referenced fhir:RelatedArtifact.resource @?; # What resource is being referenced fhir:index xsd:integer? # Relative position in a list } # Set of values bounded by low and high CLOSED { fhir:Element.id id?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:Range.low @?; # Low limit fhir:Range.high @?; # High limit fhir:index xsd:integer? # Relative position in a list } # Primitive Type uri CLOSED { fhir:Element.id string?; # xml:id (or equivalent in JSON) fhir:Element.extension @*; # Additional content defined by # implementations fhir:value uri?; # Primitive value for uri fhir:index xsd:integer? # Relative position in a list } # Optional Extensions Element CLOSED { fhir:Element.id id?; fhir:Element.extension @*; fhir:Extension.url uri; ( 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 @