PREFIX fhir: PREFIX fhirvs: PREFIX xsd: BASE start=@ AND {fhir:nodeRole [fhir:treeRoot]} # Healthcare plan for patient or group CLOSED { a [fhir:CarePlan]; 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:CarePlan.identifier @*; # External Ids for this plan fhir:CarePlan.instantiatesCanonical @*; # Instantiates FHIR protocol or # definition fhir:CarePlan.instantiatesUri @*; # Instantiates external protocol or # definition fhir:CarePlan.basedOn @*; # Fulfills CarePlan fhir:CarePlan.replaces @*; # CarePlan replaced by this CarePlan fhir:CarePlan.partOf @*; # Part of referenced CarePlan fhir:CarePlan.status @ AND {fhir:value @fhirvs:request-status}; # draft | active | on-hold | revoked # | completed | entered-in-error | # unknown fhir:CarePlan.intent @ AND {fhir:value @fhirvs:care-plan-intent}; # proposal | plan | order | option fhir:CarePlan.category @*; # Type of plan fhir:CarePlan.title @?; # Human-friendly name for the care # plan fhir:CarePlan.description @?; # Summary of nature of plan fhir:CarePlan.subject @; # Who the care plan is for fhir:CarePlan.encounter @?; # Encounter created as part of fhir:CarePlan.period @?; # Time period plan covers fhir:CarePlan.created @?; # Date record was first recorded fhir:CarePlan.author @?; # Who is the designated responsible # party fhir:CarePlan.contributor @*; # Who provided the content of the # care plan fhir:CarePlan.careTeam @*; # Who's involved in plan? fhir:CarePlan.addresses @*; # Health issues this plan addresses fhir:CarePlan.supportingInfo @*; # Information considered as part of # plan fhir:CarePlan.goal @*; # Desired outcome of plan fhir:CarePlan.activity @*; # Action to occur as part of plan fhir:CarePlan.note @*; # Comments about the plan fhir:index xsd:integer? # Relative position in a list } # Action to occur as part of plan 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:CarePlan.activity.outcomeCodeableConcept @*; # Results of the activity fhir:CarePlan.activity.outcomeReference @*; # Appointment, Encounter, Procedure, # etc. fhir:CarePlan.activity.progress @*; # Comments about the activity # status/progress fhir:CarePlan.activity.reference @?; # Activity details defined in # specific resource fhir:CarePlan.activity.detail @?; # In-line definition of activity fhir:index xsd:integer? # Relative position in a list } # In-line definition of activity 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:CarePlan.activity.detail.kind @ AND {fhir:value @fhirvs:care-plan-activity-kind}?; # Appointment | CommunicationRequest # | DeviceRequest | # MedicationRequest | NutritionOrder # | Task | ServiceRequest | # VisionPrescription fhir:CarePlan.activity.detail.instantiatesCanonical @*; # Instantiates FHIR protocol or # definition fhir:CarePlan.activity.detail.instantiatesUri @*; # Instantiates external protocol or # definition fhir:CarePlan.activity.detail.code @?; # Detail type of activity fhir:CarePlan.activity.detail.reasonCode @*; # Why activity should be done or why # activity was prohibited fhir:CarePlan.activity.detail.reasonReference @*; # Why activity is needed fhir:CarePlan.activity.detail.goal @*; # Goals this activity relates to fhir:CarePlan.activity.detail.status @ AND {fhir:value @fhirvs:care-plan-activity-status}; # not-started | scheduled | # in-progress | on-hold | completed # | cancelled | stopped | unknown | # entered-in-error fhir:CarePlan.activity.detail.statusReason @?; # Reason for current status fhir:CarePlan.activity.detail.doNotPerform @?; # If true, activity is prohibiting # action ( # When activity is to occur fhir:CarePlan.activity.detail.scheduledTiming @ | fhir:CarePlan.activity.detail.scheduledPeriod @ | fhir:CarePlan.activity.detail.scheduledString @ )?; fhir:CarePlan.activity.detail.location @?; # Where it should happen fhir:CarePlan.activity.detail.performer @*; # Who will be responsible? ( # What is to be administered/supplied fhir:CarePlan.activity.detail.productCodeableConcept @ | fhir:CarePlan.activity.detail.productReference @ )?; fhir:CarePlan.activity.detail.dailyAmount @?; # How to consume/day? fhir:CarePlan.activity.detail.quantity @?; # How much to # administer/supply/consume fhir:CarePlan.activity.detail.description @?; # Extra info describing activity to # perform 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 } # 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 } # 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 } # 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 } # 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 } # Text node with attribution CLOSED { fhir:Element.id id?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations ( # Individual responsible for the # annotation fhir:Annotation.authorReference @ | fhir:Annotation.authorString @ )?; fhir:Annotation.time @?; # When the annotation was made fhir:Annotation.text @; # The annotation - text content (as # markdown) 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 @