|
Definition
|
ShEx
statement
Base
definition
for
structuredefinition
the
few
data
types
that
are
allowed
to
carry
modifier
extensions.
PREFIX fhir: <http://hl7.org/fhir/>
PREFIX fhirvs: <http://hl7.org/fhir/ValueSet/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
BASE <http://hl7.org/fhir/shape/>
start=@<StructureDefinition> AND {fhir:nodeRole [fhir:treeRoot]}
# Structural Definition
<StructureDefinition> CLOSED {
a [fhir:StructureDefinition];
fhir:nodeRole [fhir:treeRoot]?;
fhir:Resource.id @<http://hl7.org/fhirpath/System.String>?; # Logical id of this artifact
fhir:Resource.meta @<Meta>?; # Metadata about the resource
fhir:Resource.implicitRules @<uri>?; # A set of rules under which this
# content was created
fhir:Resource.language @<code>?; # Language of the resource content
fhir:DomainResource.text @<Narrative>?; # Text summary of the resource, for
# human interpretation
fhir:DomainResource.contained @<Resource>*; # Contained, inline Resources
fhir:DomainResource.extension @<Extension>*; # Additional content defined by
# implementations
fhir:DomainResource.modifierExtension @<Extension>*; # Extensions that cannot be ignored
fhir:StructureDefinition.url @<uri>; # Canonical identifier for this
# structure definition, represented
# as a URI (globally unique)
fhir:StructureDefinition.identifier @<Identifier>*; # Additional identifier for the
# structure definition
fhir:StructureDefinition.version @<string>?; # Business version of the structure
# definition
fhir:StructureDefinition.name @<string>; # Name for this structure definition
# (computer friendly)
fhir:StructureDefinition.title @<string>?; # Name for this structure definition
# (human friendly)
fhir:StructureDefinition.status @<code> AND
{fhir:value @fhirvs:publication-status}; # draft | active | retired | unknown
fhir:StructureDefinition.experimental @<boolean>?; # For testing purposes, not real
# usage
fhir:StructureDefinition.date @<dateTime>?; # Date last changed
fhir:StructureDefinition.publisher @<string>?; # Name of the publisher
# (organization or individual)
fhir:StructureDefinition.contact @<ContactDetail>*; # Contact details for the publisher
fhir:StructureDefinition.description @<markdown>?; # Natural language description of
# the structure definition
fhir:StructureDefinition.useContext @<UsageContext>*; # The context that the content is
# intended to support
fhir:StructureDefinition.jurisdiction @<CodeableConcept>*; # Intended jurisdiction for
# structure definition (if
# applicable)
fhir:StructureDefinition.purpose @<markdown>?; # Why this structure definition is
# defined
fhir:StructureDefinition.copyright @<markdown>?; # Use and/or publishing restrictions
fhir:StructureDefinition.keyword @<Coding>*; # Assist with indexing and finding
fhir:StructureDefinition.fhirVersion @<code> AND
{fhir:value @fhirvs:FHIR-version}?; # FHIR Version this
# StructureDefinition targets
fhir:StructureDefinition.mapping @<StructureDefinition.mapping>*; # External specification that the
# content is mapped to
fhir:StructureDefinition.kind @<code> AND
{fhir:value @fhirvs:structure-definition-kind}; # primitive-type | complex-type |
# resource | logical
fhir:StructureDefinition.abstract @<boolean>; # Whether the structure is abstract
fhir:StructureDefinition.context @<StructureDefinition.context>*; # If an extension, where it can be
# used in instances
fhir:StructureDefinition.contextInvariant @<string>*; # FHIRPath invariants - when the
# extension can be used
fhir:StructureDefinition.type @<uri>; # Type defined or constrained by
# this structure
fhir:StructureDefinition.baseDefinition @<canonical>?; # Definition that this type is
# constrained/specialized from
fhir:StructureDefinition.derivation @<code> AND
{fhir:value @fhirvs:type-derivation-rule}?; # specialization | constraint - How
# relates to base definition
fhir:StructureDefinition.snapshot @<StructureDefinition.snapshot>?; # Snapshot view of the structure
fhir:StructureDefinition.differential @<StructureDefinition.differential>?; # Differential view of the structure
fhir:index xsd:integer? # Relative position in a list
}
# External specification that the content is mapped to
<StructureDefinition.mapping> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:BackboneElement.modifierExtension @<Extension>*; # Extensions that cannot be ignored
# even if unrecognized
fhir:StructureDefinition.mapping.identity @<id>; # Internal id when this mapping is
# used
fhir:StructureDefinition.mapping.uri @<uri>?; # Identifies what this mapping
# refers to
fhir:StructureDefinition.mapping.name @<string>?; # Names what this mapping refers to
fhir:StructureDefinition.mapping.comment @<string>?; # Versions, Issues, Scope
# limitations etc.
fhir:index xsd:integer? # Relative position in a list
}
# Snapshot view of the structure
<StructureDefinition.snapshot> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:BackboneElement.modifierExtension @<Extension>*; # Extensions that cannot be ignored
# even if unrecognized
fhir:StructureDefinition.snapshot.element @<ElementDefinition>+; # Definition of elements in the
# resource (if no
# StructureDefinition)
fhir:index xsd:integer? # Relative position in a list
}
# Differential view of the structure
<StructureDefinition.differential> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:BackboneElement.modifierExtension @<Extension>*; # Extensions that cannot be ignored
# even if unrecognized
fhir:StructureDefinition.differential.element @<ElementDefinition>+; # Definition of elements in the
# resource (if no
# StructureDefinition)
fhir:index xsd:integer? # Relative position in a list
}
# If an extension, where it can be used in instances
<StructureDefinition.context> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:BackboneElement.modifierExtension @<Extension>*; # Extensions that cannot be ignored
# even if unrecognized
fhir:StructureDefinition.context.type @<code> AND
{fhir:value @fhirvs:extension-context-type}; # fhirpath | element | extension
fhir:StructureDefinition.context.expression @<string>; # Where the extension can be used in
# instances
fhir:index xsd:integer? # Relative position in a list
}
#---------------------- Data Types -------------------
# Primitive Type dateTime
<dateTime> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # xml:id (or equivalent in JSON)
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:value @<http://hl7.org/fhirpath/System.DateTime>?; # Primitive value for dateTime
fhir:index xsd:integer? # Relative position in a list
}
# Metadata about a resource
<Meta> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:Meta.versionId @<id>?; # Version specific identifier
fhir:Meta.lastUpdated @<instant>?; # When the resource version last
# changed
fhir:Meta.source @<uri>?; # Identifies where the resource
# comes from
fhir:Meta.profile @<canonical>*; # Profiles this resource claims to
# conform to
fhir:Meta.security @<Coding>*; # Security Labels applied to this
# resource
fhir:Meta.tag @<Coding>*; # Tags applied to this resource
fhir:index xsd:integer? # Relative position in a list
}
# Primitive Type code
<code> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # xml:id (or equivalent in JSON)
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:value @<http://hl7.org/fhirpath/System.String>?; # Primitive value for code
fhir:index xsd:integer? # Relative position in a list
}
# Primitive Type string
<string> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # xml:id (or equivalent in JSON)
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:value @<http://hl7.org/fhirpath/System.String>?; # Primitive value for string
fhir:index xsd:integer? # Relative position in a list
}
# Base Resource
<Resource> {a .+;
fhir:Resource.id @<http://hl7.org/fhirpath/System.String>?; # Logical id of this artifact
fhir:Resource.meta @<Meta>?; # Metadata about the resource
fhir:Resource.implicitRules @<uri>?; # A set of rules under which this
# content was created
fhir:Resource.language @<code>?; # Language of the resource content
fhir:index xsd:integer?
}
# Primitive Type canonical
<canonical> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # xml:id (or equivalent in JSON)
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:value @<http://hl7.org/fhirpath/System.String>?; # Primitive value for canonical
fhir:index xsd:integer? # Relative position in a list
}
# Primitive Type uri
<uri> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # xml:id (or equivalent in JSON)
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:value @<http://hl7.org/fhirpath/System.String>?; # Primitive value for uri
fhir:index xsd:integer? # Relative position in a list
}
# Optional Extensions Element
<Extension> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?;
fhir:Element.extension @<Extension>*;
fhir:Extension.url @<http://hl7.org/fhirpath/System.String>;
(
fhir:Extension.valueBase64Binary @<base64Binary> |
fhir:Extension.valueBoolean @<boolean> |
fhir:Extension.valueCanonical @<canonical> |
fhir:Extension.valueCode @<code> |
fhir:Extension.valueDate @<date> |
fhir:Extension.valueDateTime @<dateTime> |
fhir:Extension.valueDecimal @<decimal> |
fhir:Extension.valueId @<id> |
fhir:Extension.valueInstant @<instant> |
fhir:Extension.valueInteger @<integer> |
fhir:Extension.valueMarkdown @<markdown> |
fhir:Extension.valueOid @<oid> |
fhir:Extension.valuePositiveInt @<positiveInt> |
fhir:Extension.valueString @<string> |
fhir:Extension.valueTime @<time> |
fhir:Extension.valueUnsignedInt @<unsignedInt> |
fhir:Extension.valueUri @<uri> |
fhir:Extension.valueUrl @<url> |
fhir:Extension.valueUuid @<uuid> |
fhir:Extension.valueAddress @<Address> |
fhir:Extension.valueAge @<Age> |
fhir:Extension.valueAnnotation @<Annotation> |
fhir:Extension.valueAttachment @<Attachment> |
fhir:Extension.valueCodeableConcept @<CodeableConcept> |
fhir:Extension.valueCoding @<Coding> |
fhir:Extension.valueContactPoint @<ContactPoint> |
fhir:Extension.valueCount @<Count> |
fhir:Extension.valueDistance @<Distance> |
fhir:Extension.valueDuration @<Duration> |
fhir:Extension.valueHumanName @<HumanName> |
fhir:Extension.valueIdentifier @<Identifier> |
fhir:Extension.valueMoney @<Money> |
fhir:Extension.valuePeriod @<Period> |
fhir:Extension.valueQuantity @<Quantity> |
fhir:Extension.valueRange @<Range> |
fhir:Extension.valueRatio @<Ratio> |
fhir:Extension.valueReference @<Reference> |
fhir:Extension.valueSampledData @<SampledData> |
fhir:Extension.valueSignature @<Signature> |
fhir:Extension.valueTiming @<Timing> |
fhir:Extension.valueContactDetail @<ContactDetail> |
fhir:Extension.valueContributor @<Contributor> |
fhir:Extension.valueDataRequirement @<DataRequirement> |
fhir:Extension.valueExpression @<Expression> |
fhir:Extension.valueParameterDefinition @<ParameterDefinition> |
fhir:Extension.valueRelatedArtifact @<RelatedArtifact> |
fhir:Extension.valueTriggerDefinition @<TriggerDefinition> |
fhir:Extension.valueUsageContext @<UsageContext> |
fhir:Extension.valueDosage @<Dosage> |
fhir:Extension.valueMeta @<Meta>
)?;
fhir:index xsd:integer? # Relative position in a list
}
# Contact information
<ContactDetail> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:ContactDetail.name @<string>?; # Name of an individual to contact
fhir:ContactDetail.telecom @<ContactPoint>*; # Contact details for individual or
# organization
fhir:index xsd:integer? # Relative position in a list
}
# An identifier intended for computation
<Identifier> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:Identifier.use @<code> AND
{fhir:value @fhirvs:identifier-use}?; # usual | official | temp |
# secondary | old (If known)
fhir:Identifier.type @<CodeableConcept>?; # Description of identifier
fhir:Identifier.system @<uri>?; # The namespace for the identifier
# value
fhir:Identifier.value @<string>?; # The value that is unique
fhir:Identifier.period @<Period>?; # Time period when id is/was valid
# for use
fhir:Identifier.assigner @<Reference>?; # Organization that issued id (may
# be just text)
fhir:index xsd:integer? # Relative position in a list
}
# Primitive Type boolean
<boolean> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # xml:id (or equivalent in JSON)
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:value @<http://hl7.org/fhirpath/System.Boolean>?; # Primitive value for boolean
fhir:index xsd:integer? # Relative position in a list
}
# Human-readable summary of the resource (essential clinical and business information)
<Narrative> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:Narrative.status @<code> 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
}
# Describes the context of use for a conformance or knowledge resource
<UsageContext> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:UsageContext.code @<Coding>; # Type of context being specified
( # Value that defines the context
fhir:UsageContext.valueCodeableConcept @<CodeableConcept> |
fhir:UsageContext.valueQuantity @<Quantity> |
fhir:UsageContext.valueRange @<Range> |
fhir:UsageContext.valueReference @<Reference>
);
fhir:index xsd:integer? # Relative position in a list
}
# A reference to a code defined by a terminology system
<Coding> CLOSED {
a NONLITERAL?;
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:Coding.system @<uri>?; # Identity of the terminology system
fhir:Coding.version @<string>?; # Version of the system - if relevant
fhir:Coding.code @<code>?; # Symbol in syntax defined by the
# system
fhir:Coding.display @<string>?; # Representation defined by the
# system
fhir:Coding.userSelected @<boolean>?; # If this coding was chosen directly
# by the user
fhir:index xsd:integer? # Relative position in a list
}
# Primitive Type markdown
<markdown> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # xml:id (or equivalent in JSON)
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:value @<http://hl7.org/fhirpath/System.String>?; # Primitive value for markdown
fhir:index xsd:integer? # Relative position in a list
}
# Primitive Type id
<id> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # xml:id (or equivalent in JSON)
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:value @<http://hl7.org/fhirpath/System.String>?; # Primitive value for id
fhir:index xsd:integer? # Relative position in a list
}
# Definition of an element in a resource or extension
<ElementDefinition> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:BackboneElement.modifierExtension @<Extension>*; # Extensions that cannot be ignored
# even if unrecognized
fhir:ElementDefinition.path @<string>; # Path of the element in the
# hierarchy of elements
fhir:ElementDefinition.representation @<code> AND
{fhir:value @fhirvs:property-representation}*; # xmlAttr | xmlText | typeAttr |
# cdaText | xhtml
fhir:ElementDefinition.sliceName @<string>?; # Name for this particular element
# (in a set of slices)
fhir:ElementDefinition.sliceIsConstraining @<boolean>?; # If this slice definition
# constrains an inherited slice
# definition (or not)
fhir:ElementDefinition.label @<string>?; # Name for element to display with
# or prompt for element
fhir:ElementDefinition.code @<Coding>*; # Corresponding codes in
# terminologies
fhir:ElementDefinition.slicing @<ElementDefinition.slicing>?; # This element is sliced - slices
# follow
fhir:ElementDefinition.short @<string>?; # Concise definition for
# space-constrained presentation
fhir:ElementDefinition.definition @<markdown>?; # Full formal definition as
# narrative text
fhir:ElementDefinition.comment @<markdown>?; # Comments about the use of this
# element
fhir:ElementDefinition.requirements @<markdown>?; # Why this resource has been created
fhir:ElementDefinition.alias @<string>*; # Other names
fhir:ElementDefinition.min @<unsignedInt>?; # Minimum Cardinality
fhir:ElementDefinition.max @<string>?; # Maximum Cardinality (a number or *)
fhir:ElementDefinition.base @<ElementDefinition.base>?; # Base definition information for
# tools
fhir:ElementDefinition.contentReference @<uri>?; # Reference to definition of content
# for the element
fhir:ElementDefinition.type @<ElementDefinition.type>*; # Data type and Profile for this
# element
( # Specified value if missing from
# instance
fhir:ElementDefinition.defaultValueBase64Binary @<base64Binary> |
fhir:ElementDefinition.defaultValueBoolean @<boolean> |
fhir:ElementDefinition.defaultValueCanonical @<canonical> |
fhir:ElementDefinition.defaultValueCode @<code> |
fhir:ElementDefinition.defaultValueDate @<date> |
fhir:ElementDefinition.defaultValueDateTime @<dateTime> |
fhir:ElementDefinition.defaultValueDecimal @<decimal> |
fhir:ElementDefinition.defaultValueId @<id> |
fhir:ElementDefinition.defaultValueInstant @<instant> |
fhir:ElementDefinition.defaultValueInteger @<integer> |
fhir:ElementDefinition.defaultValueMarkdown @<markdown> |
fhir:ElementDefinition.defaultValueOid @<oid> |
fhir:ElementDefinition.defaultValuePositiveInt @<positiveInt> |
fhir:ElementDefinition.defaultValueString @<string> |
fhir:ElementDefinition.defaultValueTime @<time> |
fhir:ElementDefinition.defaultValueUnsignedInt @<unsignedInt> |
fhir:ElementDefinition.defaultValueUri @<uri> |
fhir:ElementDefinition.defaultValueUrl @<url> |
fhir:ElementDefinition.defaultValueUuid @<uuid> |
fhir:ElementDefinition.defaultValueAddress @<Address> |
fhir:ElementDefinition.defaultValueAge @<Age> |
fhir:ElementDefinition.defaultValueAnnotation @<Annotation> |
fhir:ElementDefinition.defaultValueAttachment @<Attachment> |
fhir:ElementDefinition.defaultValueCodeableConcept @<CodeableConcept> |
fhir:ElementDefinition.defaultValueCoding @<Coding> |
fhir:ElementDefinition.defaultValueContactPoint @<ContactPoint> |
fhir:ElementDefinition.defaultValueCount @<Count> |
fhir:ElementDefinition.defaultValueDistance @<Distance> |
fhir:ElementDefinition.defaultValueDuration @<Duration> |
fhir:ElementDefinition.defaultValueHumanName @<HumanName> |
fhir:ElementDefinition.defaultValueIdentifier @<Identifier> |
fhir:ElementDefinition.defaultValueMoney @<Money> |
fhir:ElementDefinition.defaultValuePeriod @<Period> |
fhir:ElementDefinition.defaultValueQuantity @<Quantity> |
fhir:ElementDefinition.defaultValueRange @<Range> |
fhir:ElementDefinition.defaultValueRatio @<Ratio> |
fhir:ElementDefinition.defaultValueReference @<Reference> |
fhir:ElementDefinition.defaultValueSampledData @<SampledData> |
fhir:ElementDefinition.defaultValueSignature @<Signature> |
fhir:ElementDefinition.defaultValueTiming @<Timing> |
fhir:ElementDefinition.defaultValueContactDetail @<ContactDetail> |
fhir:ElementDefinition.defaultValueContributor @<Contributor> |
fhir:ElementDefinition.defaultValueDataRequirement @<DataRequirement> |
fhir:ElementDefinition.defaultValueExpression @<Expression> |
fhir:ElementDefinition.defaultValueParameterDefinition @<ParameterDefinition> |
fhir:ElementDefinition.defaultValueRelatedArtifact @<RelatedArtifact> |
fhir:ElementDefinition.defaultValueTriggerDefinition @<TriggerDefinition> |
fhir:ElementDefinition.defaultValueUsageContext @<UsageContext> |
fhir:ElementDefinition.defaultValueDosage @<Dosage> |
fhir:ElementDefinition.defaultValueMeta @<Meta>
)?;
fhir:ElementDefinition.meaningWhenMissing @<markdown>?; # Implicit meaning when this element
# is missing
fhir:ElementDefinition.orderMeaning @<string>?; # What the order of the elements
# means
( # Value must be exactly this
fhir:ElementDefinition.fixedBase64Binary @<base64Binary> |
fhir:ElementDefinition.fixedBoolean @<boolean> |
fhir:ElementDefinition.fixedCanonical @<canonical> |
fhir:ElementDefinition.fixedCode @<code> |
fhir:ElementDefinition.fixedDate @<date> |
fhir:ElementDefinition.fixedDateTime @<dateTime> |
fhir:ElementDefinition.fixedDecimal @<decimal> |
fhir:ElementDefinition.fixedId @<id> |
fhir:ElementDefinition.fixedInstant @<instant> |
fhir:ElementDefinition.fixedInteger @<integer> |
fhir:ElementDefinition.fixedMarkdown @<markdown> |
fhir:ElementDefinition.fixedOid @<oid> |
fhir:ElementDefinition.fixedPositiveInt @<positiveInt> |
fhir:ElementDefinition.fixedString @<string> |
fhir:ElementDefinition.fixedTime @<time> |
fhir:ElementDefinition.fixedUnsignedInt @<unsignedInt> |
fhir:ElementDefinition.fixedUri @<uri> |
fhir:ElementDefinition.fixedUrl @<url> |
fhir:ElementDefinition.fixedUuid @<uuid> |
fhir:ElementDefinition.fixedAddress @<Address> |
fhir:ElementDefinition.fixedAge @<Age> |
fhir:ElementDefinition.fixedAnnotation @<Annotation> |
fhir:ElementDefinition.fixedAttachment @<Attachment> |
fhir:ElementDefinition.fixedCodeableConcept @<CodeableConcept> |
fhir:ElementDefinition.fixedCoding @<Coding> |
fhir:ElementDefinition.fixedContactPoint @<ContactPoint> |
fhir:ElementDefinition.fixedCount @<Count> |
fhir:ElementDefinition.fixedDistance @<Distance> |
fhir:ElementDefinition.fixedDuration @<Duration> |
fhir:ElementDefinition.fixedHumanName @<HumanName> |
fhir:ElementDefinition.fixedIdentifier @<Identifier> |
fhir:ElementDefinition.fixedMoney @<Money> |
fhir:ElementDefinition.fixedPeriod @<Period> |
fhir:ElementDefinition.fixedQuantity @<Quantity> |
fhir:ElementDefinition.fixedRange @<Range> |
fhir:ElementDefinition.fixedRatio @<Ratio> |
fhir:ElementDefinition.fixedReference @<Reference> |
fhir:ElementDefinition.fixedSampledData @<SampledData> |
fhir:ElementDefinition.fixedSignature @<Signature> |
fhir:ElementDefinition.fixedTiming @<Timing> |
fhir:ElementDefinition.fixedContactDetail @<ContactDetail> |
fhir:ElementDefinition.fixedContributor @<Contributor> |
fhir:ElementDefinition.fixedDataRequirement @<DataRequirement> |
fhir:ElementDefinition.fixedExpression @<Expression> |
fhir:ElementDefinition.fixedParameterDefinition @<ParameterDefinition> |
fhir:ElementDefinition.fixedRelatedArtifact @<RelatedArtifact> |
fhir:ElementDefinition.fixedTriggerDefinition @<TriggerDefinition> |
fhir:ElementDefinition.fixedUsageContext @<UsageContext> |
fhir:ElementDefinition.fixedDosage @<Dosage> |
fhir:ElementDefinition.fixedMeta @<Meta>
)?;
( # Value must have at least these
# property values
fhir:ElementDefinition.patternBase64Binary @<base64Binary> |
fhir:ElementDefinition.patternBoolean @<boolean> |
fhir:ElementDefinition.patternCanonical @<canonical> |
fhir:ElementDefinition.patternCode @<code> |
fhir:ElementDefinition.patternDate @<date> |
fhir:ElementDefinition.patternDateTime @<dateTime> |
fhir:ElementDefinition.patternDecimal @<decimal> |
fhir:ElementDefinition.patternId @<id> |
fhir:ElementDefinition.patternInstant @<instant> |
fhir:ElementDefinition.patternInteger @<integer> |
fhir:ElementDefinition.patternMarkdown @<markdown> |
fhir:ElementDefinition.patternOid @<oid> |
fhir:ElementDefinition.patternPositiveInt @<positiveInt> |
fhir:ElementDefinition.patternString @<string> |
fhir:ElementDefinition.patternTime @<time> |
fhir:ElementDefinition.patternUnsignedInt @<unsignedInt> |
fhir:ElementDefinition.patternUri @<uri> |
fhir:ElementDefinition.patternUrl @<url> |
fhir:ElementDefinition.patternUuid @<uuid> |
fhir:ElementDefinition.patternAddress @<Address> |
fhir:ElementDefinition.patternAge @<Age> |
fhir:ElementDefinition.patternAnnotation @<Annotation> |
fhir:ElementDefinition.patternAttachment @<Attachment> |
fhir:ElementDefinition.patternCodeableConcept @<CodeableConcept> |
fhir:ElementDefinition.patternCoding @<Coding> |
fhir:ElementDefinition.patternContactPoint @<ContactPoint> |
fhir:ElementDefinition.patternCount @<Count> |
fhir:ElementDefinition.patternDistance @<Distance> |
fhir:ElementDefinition.patternDuration @<Duration> |
fhir:ElementDefinition.patternHumanName @<HumanName> |
fhir:ElementDefinition.patternIdentifier @<Identifier> |
fhir:ElementDefinition.patternMoney @<Money> |
fhir:ElementDefinition.patternPeriod @<Period> |
fhir:ElementDefinition.patternQuantity @<Quantity> |
fhir:ElementDefinition.patternRange @<Range> |
fhir:ElementDefinition.patternRatio @<Ratio> |
fhir:ElementDefinition.patternReference @<Reference> |
fhir:ElementDefinition.patternSampledData @<SampledData> |
fhir:ElementDefinition.patternSignature @<Signature> |
fhir:ElementDefinition.patternTiming @<Timing> |
fhir:ElementDefinition.patternContactDetail @<ContactDetail> |
fhir:ElementDefinition.patternContributor @<Contributor> |
fhir:ElementDefinition.patternDataRequirement @<DataRequirement> |
fhir:ElementDefinition.patternExpression @<Expression> |
fhir:ElementDefinition.patternParameterDefinition @<ParameterDefinition> |
fhir:ElementDefinition.patternRelatedArtifact @<RelatedArtifact> |
fhir:ElementDefinition.patternTriggerDefinition @<TriggerDefinition> |
fhir:ElementDefinition.patternUsageContext @<UsageContext> |
fhir:ElementDefinition.patternDosage @<Dosage> |
fhir:ElementDefinition.patternMeta @<Meta>
)?;
fhir:ElementDefinition.example @<ElementDefinition.example>*; # Example value (as defined for type)
( # Minimum Allowed Value (for some
# types)
fhir:ElementDefinition.minValueDate @<date> |
fhir:ElementDefinition.minValueDateTime @<dateTime> |
fhir:ElementDefinition.minValueInstant @<instant> |
fhir:ElementDefinition.minValueTime @<time> |
fhir:ElementDefinition.minValueDecimal @<decimal> |
fhir:ElementDefinition.minValueInteger @<integer> |
fhir:ElementDefinition.minValuePositiveInt @<positiveInt> |
fhir:ElementDefinition.minValueUnsignedInt @<unsignedInt> |
fhir:ElementDefinition.minValueQuantity @<Quantity>
)?;
( # Maximum Allowed Value (for some
# types)
fhir:ElementDefinition.maxValueDate @<date> |
fhir:ElementDefinition.maxValueDateTime @<dateTime> |
fhir:ElementDefinition.maxValueInstant @<instant> |
fhir:ElementDefinition.maxValueTime @<time> |
fhir:ElementDefinition.maxValueDecimal @<decimal> |
fhir:ElementDefinition.maxValueInteger @<integer> |
fhir:ElementDefinition.maxValuePositiveInt @<positiveInt> |
fhir:ElementDefinition.maxValueUnsignedInt @<unsignedInt> |
fhir:ElementDefinition.maxValueQuantity @<Quantity>
)?;
fhir:ElementDefinition.maxLength @<integer>?; # Max length for strings
fhir:ElementDefinition.condition @<id>*; # Reference to invariant about
# presence
fhir:ElementDefinition.constraint @<ElementDefinition.constraint>*; # Condition that must evaluate to
# true
fhir:ElementDefinition.mustSupport @<boolean>?; # If the element must be supported
fhir:ElementDefinition.isModifier @<boolean>?; # If this modifies the meaning of
# other elements
fhir:ElementDefinition.isModifierReason @<string>?; # Reason that this element is marked
# as a modifier
fhir:ElementDefinition.isSummary @<boolean>?; # Include when _summary = true?
fhir:ElementDefinition.binding @<ElementDefinition.binding>?; # ValueSet details if this is coded
fhir:ElementDefinition.mapping @<ElementDefinition.mapping>*; # Map element to another set of
# definitions
fhir:index xsd:integer? # Relative position in a list
}
# Concept - reference to a terminology or just text
<CodeableConcept> CLOSED {
a NONLITERAL*;
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:CodeableConcept.coding @<Coding>*; # Code defined by a terminology
# system
fhir:CodeableConcept.text @<string>?; # Plain text representation of the
# concept
fhir:index xsd:integer? # Relative position in a list
}
# Primitive Type date
<date> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # xml:id (or equivalent in JSON)
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:value @<http://hl7.org/fhirpath/System.Date>?; # Primitive value for date
fhir:index xsd:integer? # Relative position in a list
}
# An address expressed using postal conventions (as opposed to GPS or other location definition formats)
<Address> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:Address.use @<code> AND
{fhir:value @fhirvs:address-use}?; # home | work | temp | old | billing
# - purpose of this address
fhir:Address.type @<code> AND
{fhir:value @fhirvs:address-type}?; # postal | physical | both
fhir:Address.text @<string>?; # Text representation of the address
fhir:Address.line @<string>*; # Street name, number, direction &
# P.O. Box etc.
fhir:Address.city @<string>?; # Name of city, town etc.
fhir:Address.district @<string>?; # District name (aka county)
fhir:Address.state @<string>?; # Sub-unit of country (abbreviations
# ok)
fhir:Address.postalCode @<string>?; # Postal code for area
fhir:Address.country @<string>?; # Country (e.g. can be ISO 3166 2 or
# 3 letter code)
fhir:Address.period @<Period>?; # Time period when address was/is in
# use
fhir:index xsd:integer? # Relative position in a list
}
# Content in a format defined elsewhere
<Attachment> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:Attachment.contentType @<code> AND
{fhir:value @fhirvs:mimetypes}?; # Mime type of the content, with
# charset etc.
fhir:Attachment.language @<code>?; # Human language of the content
# (BCP-47)
fhir:Attachment.data @<base64Binary>?; # Data inline, base64ed
fhir:Attachment.url @<url>?; # Uri where the data can be found
fhir:Attachment.size @<unsignedInt>?; # Number of bytes of content (if url
# provided)
fhir:Attachment.hash @<base64Binary>?; # Hash of the data (sha-1, base64ed)
fhir:Attachment.title @<string>?; # Label to display in place of the
# data
fhir:Attachment.creation @<dateTime>?; # Date attachment was first created
fhir:index xsd:integer? # Relative position in a list
}
# Primitive Type integer
<integer> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # xml:id (or equivalent in JSON)
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:value @<http://hl7.org/fhirpath/System.Integer>?; # Primitive value for integer
fhir:index xsd:integer? # Relative position in a list
}
# A measured or measurable amount
<Count> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:Quantity.value @<decimal>?; # Numerical value (with implicit
# precision)
fhir:Quantity.comparator @<code> AND
{fhir:value @fhirvs:quantity-comparator}?; # < | <= | >= | > - how to
# understand the value
fhir:Quantity.unit @<string>?; # Unit representation
fhir:Quantity.system @<uri>?; # System that defines coded unit form
fhir:Quantity.code @<code>?; # Coded form of the unit
fhir:index xsd:integer? # Relative position in a list
}
# Describes a required data item
<DataRequirement> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:DataRequirement.type @<code> AND
{fhir:value @fhirvs:all-types}; # The type of the required data
fhir:DataRequirement.profile @<canonical>*; # The profile of the required data
( # E.g. Patient, Practitioner,
# RelatedPerson, Organization,
# Location, Device
fhir:DataRequirement.subjectCodeableConcept @<CodeableConcept> |
fhir:DataRequirement.subjectReference @<Reference>
)?;
fhir:DataRequirement.mustSupport @<string>*; # Indicates specific structure
# elements that are referenced by
# the knowledge module
fhir:DataRequirement.codeFilter @<DataRequirement.codeFilter>*; # What codes are expected
fhir:DataRequirement.dateFilter @<DataRequirement.dateFilter>*; # What dates/date ranges are expected
fhir:DataRequirement.limit @<positiveInt>?; # Number of results
fhir:DataRequirement.sort @<DataRequirement.sort>*; # Order of the results
fhir:index xsd:integer? # Relative position in a list
}
# How the medication is/was taken or should be taken
<Dosage> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:BackboneElement.modifierExtension @<Extension>*; # Extensions that cannot be ignored
# even if unrecognized
fhir:Dosage.sequence @<integer>?; # The order of the dosage
# instructions
fhir:Dosage.text @<string>?; # Free text dosage instructions e.g.
# SIG
fhir:Dosage.additionalInstruction @<CodeableConcept>*; # Supplemental instruction or
# warnings to the patient - e.g.
# "with meals", "may cause
# drowsiness"
fhir:Dosage.patientInstruction @<string>?; # Patient or consumer oriented
# instructions
fhir:Dosage.timing @<Timing>?; # When medication should be
# administered
( # Take "as needed" (for x)
fhir:Dosage.asNeededBoolean @<boolean> |
fhir:Dosage.asNeededCodeableConcept @<CodeableConcept>
)?;
fhir:Dosage.site @<CodeableConcept>?; # Body site to administer to
fhir:Dosage.route @<CodeableConcept>?; # How drug should enter body
fhir:Dosage.method @<CodeableConcept>?; # Technique for administering
# medication
fhir:Dosage.doseAndRate @<Dosage.doseAndRate>*; # Amount of medication administered
fhir:Dosage.maxDosePerPeriod @<Ratio>?; # Upper limit on medication per unit
# of time
fhir:Dosage.maxDosePerAdministration @<SimpleQuantity>?; # Upper limit on medication per
# administration
fhir:Dosage.maxDosePerLifetime @<SimpleQuantity>?; # Upper limit on medication per
# lifetime of the patient
fhir:index xsd:integer? # Relative position in a list
}
# Primitive Type uuid
<uuid> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # xml:id (or equivalent in JSON)
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:value @<http://hl7.org/fhirpath/System.String>?; # Primitive value for uuid
fhir:index xsd:integer? # Relative position in a list
}
# A series of measurements taken by a device
<SampledData> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:SampledData.origin @<SimpleQuantity>; # Zero value and units
fhir:SampledData.period @<decimal>; # Number of milliseconds between
# samples
fhir:SampledData.factor @<decimal>?; # Multiply data by this before
# adding to origin
fhir:SampledData.lowerLimit @<decimal>?; # Lower limit of detection
fhir:SampledData.upperLimit @<decimal>?; # Upper limit of detection
fhir:SampledData.dimensions @<positiveInt>; # Number of sample points at each
# time point
fhir:SampledData.data @<string>?; # Decimal values with spaces, or "E"
# | "U" | "L"
fhir:index xsd:integer? # Relative position in a list
}
# Primitive Type positiveInt
<positiveInt> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # xml:id (or equivalent in JSON)
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:value @<http://hl7.org/fhirpath/System.String>?; # Primitive value for positiveInt
fhir:index xsd:integer? # Relative position in a list
}
# A length - a value with a unit that is a physical distance
<Distance> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:Quantity.value @<decimal>?; # Numerical value (with implicit
# precision)
fhir:Quantity.comparator @<code> AND
{fhir:value @fhirvs:quantity-comparator}?; # < | <= | >= | > - how to
# understand the value
fhir:Quantity.unit @<string>?; # Unit representation
fhir:Quantity.system @<uri>?; # System that defines coded unit form
fhir:Quantity.code @<code>?; # Coded form of the unit
fhir:index xsd:integer? # Relative position in a list
}
# Time range defined by start and end date/time
<Period> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:Period.start @<dateTime>?; # Starting time with inclusive
# boundary
fhir:Period.end @<dateTime>?; # End time with inclusive boundary,
# if not ongoing
fhir:index xsd:integer? # Relative position in a list
}
# A length of time
<Duration> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:Quantity.value @<decimal>?; # Numerical value (with implicit
# precision)
fhir:Quantity.comparator @<code> AND
{fhir:value @fhirvs:quantity-comparator}?; # < | <= | >= | > - how to
# understand the value
fhir:Quantity.unit @<string>?; # Unit representation
fhir:Quantity.system @<uri>?; # System that defines coded unit form
fhir:Quantity.code @<code>?; # Coded form of the unit
fhir:index xsd:integer? # Relative position in a list
}
# Set of values bounded by low and high
<Range> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:Range.low @<SimpleQuantity>?; # Low limit
fhir:Range.high @<SimpleQuantity>?; # High limit
fhir:index xsd:integer? # Relative position in a list
}
# Related artifacts for a knowledge resource
<RelatedArtifact> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:RelatedArtifact.type @<code> AND
{fhir:value @fhirvs:related-artifact-type}; # documentation | justification |
# citation | predecessor | successor
# | derived-from | depends-on |
# composed-of
fhir:RelatedArtifact.label @<string>?; # Short label
fhir:RelatedArtifact.display @<string>?; # Brief description of the related
# artifact
fhir:RelatedArtifact.citation @<markdown>?; # Bibliographic citation for the
# artifact
fhir:RelatedArtifact.url @<url>?; # Where the artifact can be accessed
fhir:RelatedArtifact.document @<Attachment>?; # What document is being referenced
fhir:RelatedArtifact.resource @<canonical>?; # What resource is being referenced
fhir:index xsd:integer? # Relative position in a list
}
# Primitive Type base64Binary
<base64Binary> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # xml:id (or equivalent in JSON)
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:value @<http://hl7.org/fhirpath/System.String>?; # Primitive value for base64Binary
fhir:index xsd:integer? # Relative position in a list
}
# A timing schedule that specifies an event that may occur multiple times
<Timing> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:BackboneElement.modifierExtension @<Extension>*; # Extensions that cannot be ignored
# even if unrecognized
fhir:Timing.event @<dateTime>*; # When the event occurs
fhir:Timing.repeat @<Timing.repeat>?; # When the event is to occur
fhir:Timing.code @<CodeableConcept>?; # BID | TID | QID | AM | PM | QD |
# QOD | +
fhir:index xsd:integer? # Relative position in a list
}
# Primitive Type decimal
<decimal> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # xml:id (or equivalent in JSON)
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:value @<http://hl7.org/fhirpath/System.Decimal>?; # Primitive value for decimal
fhir:index xsd:integer? # Relative position in a list
}
# Definition of a parameter to a module
<ParameterDefinition> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:ParameterDefinition.name @<code>?; # Name used to access the parameter
# value
fhir:ParameterDefinition.use @<code> AND
{fhir:value @fhirvs:operation-parameter-use}; # in | out
fhir:ParameterDefinition.min @<integer>?; # Minimum cardinality
fhir:ParameterDefinition.max @<string>?; # Maximum cardinality (a number of *)
fhir:ParameterDefinition.documentation @<string>?; # A brief description of the
# parameter
fhir:ParameterDefinition.type @<code> AND
{fhir:value @fhirvs:all-types}; # What type of value
fhir:ParameterDefinition.profile @<canonical>?; # What profile the value is expected
# to be
fhir:index xsd:integer? # Relative position in a list
}
# Contributor information
<Contributor> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:Contributor.type @<code> AND
{fhir:value @fhirvs:contributor-type}; # author | editor | reviewer |
# endorser
fhir:Contributor.name @<string>; # Who contributed the content
fhir:Contributor.contact @<ContactDetail>*; # Contact details of the contributor
fhir:index xsd:integer? # Relative position in a list
}
# Primitive Type oid
<oid> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # xml:id (or equivalent in JSON)
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:value @<http://hl7.org/fhirpath/System.String>?; # Primitive value for oid
fhir:index xsd:integer? # Relative position in a list
}
# Primitive Type instant
<instant> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # xml:id (or equivalent in JSON)
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:value @<http://hl7.org/fhirpath/System.DateTime>?; # Primitive value for instant
fhir:index xsd:integer? # Relative position in a list
}
# Details of a Technology mediated contact point (phone, fax, email, etc.)
<ContactPoint> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:ContactPoint.system @<code> AND
{fhir:value @fhirvs:contact-point-system}?; # phone | fax | email | pager | url
# | sms | other
fhir:ContactPoint.value @<string>?; # The actual contact point details
fhir:ContactPoint.use @<code> AND
{fhir:value @fhirvs:contact-point-use}?; # home | work | temp | old | mobile
# - purpose of this contact point
fhir:ContactPoint.rank @<positiveInt>?; # Specify preferred order of use (1
# = highest)
fhir:ContactPoint.period @<Period>?; # Time period when the contact point
# was/is in use
fhir:index xsd:integer? # Relative position in a list
}
# Name of a human - parts and usage
<HumanName> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:HumanName.use @<code> AND
{fhir:value @fhirvs:name-use}?; # usual | official | temp | nickname
# | anonymous | old | maiden
fhir:HumanName.text @<string>?; # Text representation of the full
# name
fhir:HumanName.family @<string>?; # Family name (often called
# 'Surname')
fhir:HumanName.given @<string>*; # Given names (not always 'first').
# Includes middle names
fhir:HumanName.prefix @<string>*; # Parts that come before the name
fhir:HumanName.suffix @<string>*; # Parts that come after the name
fhir:HumanName.period @<Period>?; # Time period when name was/is in use
fhir:index xsd:integer? # Relative position in a list
}
# An amount of economic utility in some recognized currency
<Money> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:Money.value @<decimal>?; # Numerical value (with implicit
# precision)
fhir:Money.currency @<code> AND
{fhir:value @fhirvs:currencies}?; # ISO 4217 Currency Code
fhir:index xsd:integer? # Relative position in a list
}
# A ratio of two Quantity values - a numerator and a denominator
<Ratio> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:Ratio.numerator @<Quantity>?; # Numerator value
fhir:Ratio.denominator @<Quantity>?; # Denominator value
fhir:index xsd:integer? # Relative position in a list
}
# A duration of time during which an organism (or a process) has existed
<Age> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:Quantity.value @<decimal>?; # Numerical value (with implicit
# precision)
fhir:Quantity.comparator @<code> AND
{fhir:value @fhirvs:quantity-comparator}?; # < | <= | >= | > - how to
# understand the value
fhir:Quantity.unit @<string>?; # Unit representation
fhir:Quantity.system @<uri>?; # System that defines coded unit form
fhir:Quantity.code @<code>?; # Coded form of the unit
fhir:index xsd:integer? # Relative position in a list
}
# A reference from one resource to another
<Reference> CLOSED {
fhir:link IRI?;
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:Reference.reference @<string>?; # Literal reference, Relative,
# internal or absolute URL
fhir:Reference.type @<uri>?; # Type the reference refers to (e.g.
# "Patient")
fhir:Reference.identifier @<Identifier>?; # Logical reference, when literal
# reference is not known
fhir:Reference.display @<string>?; # Text alternative for the resource
fhir:index xsd:integer? # Relative position in a list
}
# Defines an expected trigger for a module
<TriggerDefinition> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:TriggerDefinition.type @<code> AND
{fhir:value @fhirvs:trigger-type}; # named-event | periodic |
# data-changed | data-added |
# data-modified | data-removed |
# data-accessed | data-access-ended
fhir:TriggerDefinition.name @<string>?; # Name or URI that identifies the
# event
( # Timing of the event
fhir:TriggerDefinition.timingTiming @<Timing> |
fhir:TriggerDefinition.timingReference @<Reference> |
fhir:TriggerDefinition.timingDate @<date> |
fhir:TriggerDefinition.timingDateTime @<dateTime>
)?;
fhir:TriggerDefinition.data @<DataRequirement>*; # Triggering data of the event
# (multiple = 'and')
fhir:TriggerDefinition.condition @<Expression>?; # Whether the event triggers
# (boolean expression)
fhir:index xsd:integer? # Relative position in a list
}
# A measured or measurable amount
<Quantity> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:Quantity.value @<decimal>?; # Numerical value (with implicit
# precision)
fhir:Quantity.comparator @<code> AND
{fhir:value @fhirvs:quantity-comparator}?; # < | <= | >= | > - how to
# understand the value
fhir:Quantity.unit @<string>?; # Unit representation
fhir:Quantity.system @<uri>?; # System that defines coded unit form
fhir:Quantity.code @<code>?; # Coded form of the unit
fhir:index xsd:integer? # Relative position in a list
}
# Primitive Type url
<url> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # xml:id (or equivalent in JSON)
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:value @<http://hl7.org/fhirpath/System.String>?; # Primitive value for url
fhir:index xsd:integer? # Relative position in a list
}
# Text node with attribution
<Annotation> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
( # Individual responsible for the
# annotation
fhir:Annotation.authorReference @<Reference> |
fhir:Annotation.authorString @<string>
)?;
fhir:Annotation.time @<dateTime>?; # When the annotation was made
fhir:Annotation.text @<markdown>; # The annotation - text content (as
# markdown)
fhir:index xsd:integer? # Relative position in a list
}
# An expression that can be used to generate a value
<Expression> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:Expression.description @<string>?; # Natural language description of
# the condition
fhir:Expression.name @<id>?; # Short name assigned to expression
# for reuse
fhir:Expression.language @<code>; # text/cql | text/fhirpath |
# application/x-fhir-query | etc.
fhir:Expression.expression @<string>?; # Expression in specified language
fhir:Expression.reference @<uri>?; # Where the expression is found
fhir:index xsd:integer? # Relative position in a list
}
# A Signature - XML DigSig, JWS, Graphical image of signature, etc.
<Signature> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:Signature.type @<Coding>+; # Indication of the reason the
# entity signed the object(s)
fhir:Signature.when @<instant>; # When the signature was created
fhir:Signature.who @<Reference>; # Who signed
fhir:Signature.onBehalfOf @<Reference>?; # The party represented
fhir:Signature.targetFormat @<code> AND
{fhir:value @fhirvs:mimetypes}?; # The technical format of the signed
# resources
fhir:Signature.sigFormat @<code> AND
{fhir:value @fhirvs:mimetypes}?; # The technical format of the
# signature
fhir:Signature.data @<base64Binary>?; # The actual signature content (XML
# DigSig. JWS, picture, etc.)
fhir:index xsd:integer? # Relative position in a list
}
# Primitive Type unsignedInt
<unsignedInt> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # xml:id (or equivalent in JSON)
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:value @<http://hl7.org/fhirpath/System.String>?; # Primitive value for unsignedInt
fhir:index xsd:integer? # Relative position in a list
}
# Primitive Type time
<time> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # xml:id (or equivalent in JSON)
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:value @<http://hl7.org/fhirpath/System.Time>?; # Primitive value for time
fhir:index xsd:integer? # Relative position in a list
}
# A fixed quantity (no comparator)
<SimpleQuantity> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:Quantity.value @<decimal>?; # Numerical value (with implicit
# precision)
fhir:Quantity.unit @<string>?; # Unit representation
fhir:Quantity.system @<uri>?; # System that defines coded unit form
fhir:Quantity.code @<code>?; # Coded form of the unit
fhir:index xsd:integer? # Relative position in a list
}
# Base definition information for tools
<ElementDefinition.base> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:ElementDefinition.base.path @<string>; # Path that identifies the base
# element
fhir:ElementDefinition.base.min @<unsignedInt>; # Min cardinality of the base element
fhir:ElementDefinition.base.max @<string>; # Max cardinality of the base element
fhir:index xsd:integer? # Relative position in a list
}
# What dates/date ranges are expected
<DataRequirement.dateFilter> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:DataRequirement.dateFilter.path @<string>?; # A date-valued attribute to filter
# on
fhir:DataRequirement.dateFilter.searchParam @<string>?; # A date valued parameter to search
# on
( # The value of the filter, as a
# Period, DateTime, or Duration
# value
fhir:DataRequirement.dateFilter.valueDateTime @<dateTime> |
fhir:DataRequirement.dateFilter.valuePeriod @<Period> |
fhir:DataRequirement.dateFilter.valueDuration @<Duration>
)?;
fhir:index xsd:integer? # Relative position in a list
}
# ValueSet details if this is coded
<ElementDefinition.binding> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:ElementDefinition.binding.strength @<code> AND
{fhir:value @fhirvs:binding-strength}; # required | extensible | preferred
# | example
fhir:ElementDefinition.binding.description @<string>?; # Human explanation of the value set
fhir:ElementDefinition.binding.valueSet @<canonical>?; # Source of value set
fhir:index xsd:integer? # Relative position in a list
}
# Map element to another set of definitions
<ElementDefinition.mapping> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:ElementDefinition.mapping.identity @<id>; # Reference to mapping declaration
fhir:ElementDefinition.mapping.language @<code> AND
{fhir:value @fhirvs:mimetypes}?; # Computable language of mapping
fhir:ElementDefinition.mapping.map @<string>; # Details of the mapping
fhir:ElementDefinition.mapping.comment @<string>?; # Comments about the mapping or its
# use
fhir:index xsd:integer? # Relative position in a list
}
# When the event is to occur
<Timing.repeat> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
( # Length/Range of lengths, or (Start
# and/or end) limits
fhir:Timing.repeat.boundsDuration @<Duration> |
fhir:Timing.repeat.boundsRange @<Range> |
fhir:Timing.repeat.boundsPeriod @<Period>
)?;
fhir:Timing.repeat.count @<positiveInt>?; # Number of times to repeat
fhir:Timing.repeat.countMax @<positiveInt>?; # Maximum number of times to repeat
fhir:Timing.repeat.duration @<decimal>?; # How long when it happens
fhir:Timing.repeat.durationMax @<decimal>?; # How long when it happens (Max)
fhir:Timing.repeat.durationUnit @<code> AND
{fhir:value @fhirvs:units-of-time}?; # s | min | h | d | wk | mo | a -
# unit of time (UCUM)
fhir:Timing.repeat.frequency @<positiveInt>?; # Event occurs frequency times per
# period
fhir:Timing.repeat.frequencyMax @<positiveInt>?; # Event occurs up to frequencyMax
# times per period
fhir:Timing.repeat.period @<decimal>?; # Event occurs frequency times per
# period
fhir:Timing.repeat.periodMax @<decimal>?; # Upper limit of period (3-4 hours)
fhir:Timing.repeat.periodUnit @<code> AND
{fhir:value @fhirvs:units-of-time}?; # s | min | h | d | wk | mo | a -
# unit of time (UCUM)
fhir:Timing.repeat.dayOfWeek @<code> AND
{fhir:value @fhirvs:days-of-week}*; # mon | tue | wed | thu | fri | sat
# | sun
fhir:Timing.repeat.timeOfDay @<time>*; # Time of day for action
fhir:Timing.repeat.when @<code> AND
{fhir:value @fhirvs:event-timing}*; # Code for time period of occurrence
fhir:Timing.repeat.offset @<unsignedInt>?; # Minutes from event (before or
# after)
fhir:index xsd:integer? # Relative position in a list
}
# Order of the results
<DataRequirement.sort> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:DataRequirement.sort.path @<string>; # The name of the attribute to
# perform the sort
fhir:DataRequirement.sort.direction @<code> AND
{fhir:value @fhirvs:sort-direction}; # ascending | descending
fhir:index xsd:integer? # Relative position in a list
}
# Amount of medication administered
<Dosage.doseAndRate> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:Dosage.doseAndRate.type @<CodeableConcept>?; # The kind of dose or rate specified
( # Amount of medication per dose
fhir:Dosage.doseAndRate.doseRange @<Range> |
fhir:Dosage.doseAndRate.doseQuantity @<SimpleQuantity>
)?;
( # Amount of medication per unit of
# time
fhir:Dosage.doseAndRate.rateRatio @<Ratio> |
fhir:Dosage.doseAndRate.rateRange @<Range> |
fhir:Dosage.doseAndRate.rateQuantity @<SimpleQuantity>
)?;
fhir:index xsd:integer? # Relative position in a list
}
# This element is sliced - slices follow
<ElementDefinition.slicing> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:ElementDefinition.slicing.discriminator @<ElementDefinition.slicing.discriminator>*; # Element values that are used to
# distinguish the slices
fhir:ElementDefinition.slicing.description @<string>?; # Text description of how slicing
# works (or not)
fhir:ElementDefinition.slicing.ordered @<boolean>?; # If elements must be in same order
# as slices
fhir:ElementDefinition.slicing.rules @<code> AND
{fhir:value @fhirvs:resource-slicing-rules}; # closed | open | openAtEnd
fhir:index xsd:integer? # Relative position in a list
}
# Data type and Profile for this element
<ElementDefinition.type> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:ElementDefinition.type.code @<uri>; # Data type or Resource (reference
# to definition)
fhir:ElementDefinition.type.profile @<canonical>*; # Profiles (StructureDefinition or
# IG) - one must apply
fhir:ElementDefinition.type.targetProfile @<canonical>*; # Profile (StructureDefinition or
# IG) on the Reference/canonical
# target - one must apply
fhir:ElementDefinition.type.aggregation @<code> AND
{fhir:value @fhirvs:resource-aggregation-mode}*; # contained | referenced | bundled -
# how aggregated
fhir:ElementDefinition.type.versioning @<code> AND
{fhir:value @fhirvs:reference-version-rules}?; # either | independent | specific
fhir:index xsd:integer? # Relative position in a list
}
# What codes are expected
<DataRequirement.codeFilter> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:DataRequirement.codeFilter.path @<string>?; # A code-valued attribute to filter
# on
fhir:DataRequirement.codeFilter.searchParam @<string>?; # A coded (token) parameter to
# search on
fhir:DataRequirement.codeFilter.valueSet @<canonical>?; # Valueset for the filter
fhir:DataRequirement.codeFilter.code @<Coding>*; # What code is expected
fhir:index xsd:integer? # Relative position in a list
}
# Condition that must evaluate to true
<ElementDefinition.constraint> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:ElementDefinition.constraint.key @<id>; # Target of 'condition' reference
# above
fhir:ElementDefinition.constraint.requirements @<string>?; # Why this constraint is necessary
# or appropriate
fhir:ElementDefinition.constraint.severity @<code> AND
{fhir:value @fhirvs:constraint-severity}; # error | warning
fhir:ElementDefinition.constraint.human @<string>; # Human description of constraint
fhir:ElementDefinition.constraint.expression @<string>?; # FHIRPath expression of constraint
fhir:ElementDefinition.constraint.xpath @<string>?; # XPath expression of constraint
fhir:ElementDefinition.constraint.source @<canonical>?; # Reference to original source of
# constraint
fhir:index xsd:integer? # Relative position in a list
}
# Example value (as defined for type)
<ElementDefinition.example> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:ElementDefinition.example.label @<string>; # Describes the purpose of this
# example
( # Value of Example (one of allowed
# types)
fhir:ElementDefinition.example.valueBase64Binary @<base64Binary> |
fhir:ElementDefinition.example.valueBoolean @<boolean> |
fhir:ElementDefinition.example.valueCanonical @<canonical> |
fhir:ElementDefinition.example.valueCode @<code> |
fhir:ElementDefinition.example.valueDate @<date> |
fhir:ElementDefinition.example.valueDateTime @<dateTime> |
fhir:ElementDefinition.example.valueDecimal @<decimal> |
fhir:ElementDefinition.example.valueId @<id> |
fhir:ElementDefinition.example.valueInstant @<instant> |
fhir:ElementDefinition.example.valueInteger @<integer> |
fhir:ElementDefinition.example.valueMarkdown @<markdown> |
fhir:ElementDefinition.example.valueOid @<oid> |
fhir:ElementDefinition.example.valuePositiveInt @<positiveInt> |
fhir:ElementDefinition.example.valueString @<string> |
fhir:ElementDefinition.example.valueTime @<time> |
fhir:ElementDefinition.example.valueUnsignedInt @<unsignedInt> |
fhir:ElementDefinition.example.valueUri @<uri> |
fhir:ElementDefinition.example.valueUrl @<url> |
fhir:ElementDefinition.example.valueUuid @<uuid> |
fhir:ElementDefinition.example.valueAddress @<Address> |
fhir:ElementDefinition.example.valueAge @<Age> |
fhir:ElementDefinition.example.valueAnnotation @<Annotation> |
fhir:ElementDefinition.example.valueAttachment @<Attachment> |
fhir:ElementDefinition.example.valueCodeableConcept @<CodeableConcept> |
fhir:ElementDefinition.example.valueCoding @<Coding> |
fhir:ElementDefinition.example.valueContactPoint @<ContactPoint> |
fhir:ElementDefinition.example.valueCount @<Count> |
fhir:ElementDefinition.example.valueDistance @<Distance> |
fhir:ElementDefinition.example.valueDuration @<Duration> |
fhir:ElementDefinition.example.valueHumanName @<HumanName> |
fhir:ElementDefinition.example.valueIdentifier @<Identifier> |
fhir:ElementDefinition.example.valueMoney @<Money> |
fhir:ElementDefinition.example.valuePeriod @<Period> |
fhir:ElementDefinition.example.valueQuantity @<Quantity> |
fhir:ElementDefinition.example.valueRange @<Range> |
fhir:ElementDefinition.example.valueRatio @<Ratio> |
fhir:ElementDefinition.example.valueReference @<Reference> |
fhir:ElementDefinition.example.valueSampledData @<SampledData> |
fhir:ElementDefinition.example.valueSignature @<Signature> |
fhir:ElementDefinition.example.valueTiming @<Timing> |
fhir:ElementDefinition.example.valueContactDetail @<ContactDetail> |
fhir:ElementDefinition.example.valueContributor @<Contributor> |
fhir:ElementDefinition.example.valueDataRequirement @<DataRequirement> |
fhir:ElementDefinition.example.valueExpression @<Expression> |
fhir:ElementDefinition.example.valueParameterDefinition @<ParameterDefinition> |
fhir:ElementDefinition.example.valueRelatedArtifact @<RelatedArtifact> |
fhir:ElementDefinition.example.valueTriggerDefinition @<TriggerDefinition> |
fhir:ElementDefinition.example.valueUsageContext @<UsageContext> |
fhir:ElementDefinition.example.valueDosage @<Dosage> |
fhir:ElementDefinition.example.valueMeta @<Meta>
);
fhir:index xsd:integer? # Relative position in a list
}
# Element values that are used to distinguish the slices
<ElementDefinition.slicing.discriminator> CLOSED {
fhir:Element.id @<http://hl7.org/fhirpath/System.String>?; # Unique id for inter-element
# referencing
fhir:Element.extension @<Extension>*; # Additional content defined by
# implementations
fhir:ElementDefinition.slicing.discriminator.type @<code> AND
{fhir:value @fhirvs:discriminator-type}; # value | exists | pattern | type |
# profile
fhir:ElementDefinition.slicing.discriminator.path @<string>; # Path to element value
fhir:index xsd:integer? # Relative position in a list
}
#---------------------- Reference Types -------------------
#---------------------- Value Sets ------------------------
# Whether a reference needs to be version specific or version independent, or whether either can be used.
fhirvs:reference-version-rules ["either" "independent" "specific"]
# This value set includes all possible codes from BCP-13 (http://tools.ietf.org/html/bcp13)
fhirvs:mimetypes EXTERNAL
# The use of an address.
fhirvs:address-use ["home" "work" "temp" "old" "billing"]
# How slices are interpreted when evaluating an instance.
fhirvs:resource-slicing-rules ["closed" "open" "openAtEnd"]
# How an element value is interpreted when discrimination is evaluated.
fhirvs:discriminator-type ["value" "exists" "pattern" "type" "profile"]
# The lifecycle status of an artifact.
fhirvs:publication-status ["draft" "active" "retired" "unknown"]
# The type of contributor.
fhirvs:contributor-type ["author" "editor" "reviewer" "endorser"]
# The type of trigger.
fhirvs:trigger-type ["named-event" "periodic" "data-changed" "data-added" "data-modified" "data-removed" "data-accessed" "data-access-ended"]
# Defines the type of structure that a definition is describing.
fhirvs:structure-definition-kind ["primitive-type" "complex-type" "resource" "logical"]
# Identifies the purpose for this identifier, if known .
fhirvs:identifier-use ["usual" "official" "temp" "secondary" "old"]
# How a type relates to its baseDefinition.
fhirvs:type-derivation-rule ["specialization" "constraint"]
# All published FHIR Versions.
fhirvs:FHIR-version ["0.01" "0.05" "0.06" "0.11" "0.0.80" "0.0.81" "0.0.82" "0.4.0" "0.5.0" "1.0.0" "1.0.1" "1.0.2" "1.1.0" "1.4.0" "1.6.0" "1.8.0" "3.0.0" "3.0.1" "3.3.0" "3.5.0" "4.0.0" "4.0.1"]
# Telecommunications form for contact point.
fhirvs:contact-point-system ["phone" "fax" "email" "pager" "url" "sms" "other"]
# How resource references can be aggregated.
fhirvs:resource-aggregation-mode ["contained" "referenced" "bundled"]
# The status of a resource narrative.
fhirvs:narrative-status ["generated" "extensions" "additional" "empty"]
# Whether an operation parameter is an input or an output parameter.
fhirvs:operation-parameter-use ["in" "out"]
# The possible sort directions, ascending or descending.
fhirvs:sort-direction ["ascending" "descending"]
# Currency codes from ISO 4217 (see https://www.iso.org/iso-4217-currency-codes.html)
fhirvs:currencies ["AED" "AFN" "ALL" "AMD" "ANG" "AOA" "ARS" "AUD" "AWG" "AZN" "BAM" "BBD" "BDT" "BGN" "BHD" "BIF" "BMD" "BND" "BOB" "BOV" "BRL" "BSD" "BTN" "BWP" "BYN" "BZD" "CAD" "CDF" "CHE" "CHF" "CHW" "CLF" "CLP" "CNY" "COP" "COU" "CRC" "CUC" "CUP" "CVE" "CZK" "DJF" "DKK" "DOP" "DZD" "EGP" "ERN" "ETB" "EUR" "FJD" "FKP" "GBP" "GEL" "GGP" "GHS" "GIP" "GMD" "GNF" "GTQ" "GYD" "HKD" "HNL" "HRK" "HTG" "HUF" "IDR" "ILS" "IMP" "INR" "IQD" "IRR" "ISK" "JEP" "JMD" "JOD" "JPY" "KES" "KGS" "KHR" "KMF" "KPW" "KRW" "KWD" "KYD" "KZT" "LAK" "LBP" "LKR" "LRD" "LSL" "LYD" "MAD" "MDL" "MGA" "MKD" "MMK" "MNT" "MOP" "MRU" "MUR" "MVR" "MWK" "MXN" "MXV" "MYR" "MZN" "NAD" "NGN" "NIO" "NOK" "NPR" "NZD" "OMR" "PAB" "PEN" "PGK" "PHP" "PKR" "PLN" "PYG" "QAR" "RON" "RSD" "RUB" "RWF" "SAR" "SBD" "SCR" "SDG" "SEK" "SGD" "SHP" "SLL" "SOS" "SRD" "SSP" "STN" "SVC" "SYP" "SZL" "THB" "TJS" "TMT" "TND" "TOP" "TRY" "TTD" "TVD" "TWD" "TZS" "UAH" "UGX" "USD" "USN" "UYI" "UYU" "UZS" "VEF" "VND" "VUV" "WST" "XAF" "XAG" "XAU" "XBA" "XBB" "XBC" "XBD" "XCD" "XDR" "XOF" "XPD" "XPF" "XPT" "XSU" "XTS" "XUA" "XXX" "YER" "ZAR" "ZMW" "ZWL"]
# The type of relationship to the related artifact.
fhirvs:related-artifact-type ["documentation" "justification" "citation" "predecessor" "successor" "derived-from" "depends-on" "composed-of"]
# SHALL applications comply with this constraint?
fhirvs:constraint-severity ["error" "warning"]
# Indication of the degree of conformance expectations associated with a binding.
fhirvs:binding-strength ["required" "extensible" "preferred" "example"]
# The days of the week.
fhirvs:days-of-week ["mon" "tue" "wed" "thu" "fri" "sat" "sun"]
# How an extension context is interpreted.
fhirvs:extension-context-type ["fhirpath" "element" "extension"]
# The type of an address (physical / postal).
fhirvs:address-type ["postal" "physical" "both"]
# Use of contact point.
fhirvs:contact-point-use ["home" "work" "temp" "old" "mobile"]
# The use of a human name.
fhirvs:name-use ["usual" "official" "temp" "nickname" "anonymous" "old" "maiden"]
# Real world event relating to the schedule.
fhirvs:event-timing ["MORN" "MORN.early" "MORN.late" "NOON" "AFT" "AFT.early" "AFT.late" "EVE" "EVE.early" "EVE.late" "NIGHT" "PHS" "HS" "WAKE" "C" "CM" "CD" "CV" "AC" "ACM" "ACD" "ACV" "PC" "PCM" "PCD" "PCV"]
# How the Quantity should be understood and represented.
fhirvs:quantity-comparator ["<" "<=" ">=" ">"]
# A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types.
fhirvs:all-types ["Address" "Age" "Annotation" "Attachment" "BackboneElement" "CodeableConcept" "Coding" "ContactDetail" "ContactPoint" "Contributor" "Count" "DataRequirement" "Distance" "Dosage" "Duration" "Element" "ElementDefinition" "Expression" "Extension" "HumanName" "Identifier" "MarketingStatus" "Meta" "Money" "MoneyQuantity" "Narrative" "ParameterDefinition" "Period" "Population" "ProdCharacteristic" "ProductShelfLife" "Quantity" "Range" "Ratio" "Reference" "RelatedArtifact" "SampledData" "Signature" "SimpleQuantity" "SubstanceAmount" "Timing" "TriggerDefinition" "UsageContext" "base64Binary" "boolean" "canonical" "code" "date" "dateTime" "decimal" "id" "instant" "integer" "markdown" "oid" "positiveInt" "string" "time" "unsignedInt" "uri" "url" "uuid" "xhtml" "Account" "ActivityDefinition" "AdverseEvent" "AllergyIntolerance" "Appointment" "AppointmentResponse" "AuditEvent" "Basic" "Binary" "BiologicallyDerivedProduct" "BodyStructure" "Bundle" "CapabilityStatement" "CarePlan" "CareTeam" "CatalogEntry" "ChargeItem" "ChargeItemDefinition" "Claim" "ClaimResponse" "ClinicalImpression" "CodeSystem" "Communication" "CommunicationRequest" "CompartmentDefinition" "Composition" "ConceptMap" "Condition" "Consent" "Contract" "Coverage" "CoverageEligibilityRequest" "CoverageEligibilityResponse" "DetectedIssue" "Device" "DeviceDefinition" "DeviceMetric" "DeviceRequest" "DeviceUseStatement" "DiagnosticReport" "DocumentManifest" "DocumentReference" "DomainResource" "EffectEvidenceSynthesis" "Encounter" "Endpoint" "EnrollmentRequest" "EnrollmentResponse" "EpisodeOfCare" "EventDefinition" "Evidence" "EvidenceVariable" "ExampleScenario" "ExplanationOfBenefit" "FamilyMemberHistory" "Flag" "Goal" "GraphDefinition" "Group" "GuidanceResponse" "HealthcareService" "ImagingStudy" "Immunization" "ImmunizationEvaluation" "ImmunizationRecommendation" "ImplementationGuide" "InsurancePlan" "Invoice" "Library" "Linkage" "List" "Location" "Measure" "MeasureReport" "Media" "Medication" "MedicationAdministration" "MedicationDispense" "MedicationKnowledge" "MedicationRequest" "MedicationStatement" "MedicinalProduct" "MedicinalProductAuthorization" "MedicinalProductContraindication" "MedicinalProductIndication" "MedicinalProductIngredient" "MedicinalProductInteraction" "MedicinalProductManufactured" "MedicinalProductPackaged" "MedicinalProductPharmaceutical" "MedicinalProductUndesirableEffect" "MessageDefinition" "MessageHeader" "MolecularSequence" "NamingSystem" "NutritionOrder" "Observation" "ObservationDefinition" "OperationDefinition" "OperationOutcome" "Organization" "OrganizationAffiliation" "Parameters" "Patient" "PaymentNotice" "PaymentReconciliation" "Person" "PlanDefinition" "Practitioner" "PractitionerRole" "Procedure" "Provenance" "Questionnaire" "QuestionnaireResponse" "RelatedPerson" "RequestGroup" "ResearchDefinition" "ResearchElementDefinition" "ResearchStudy" "ResearchSubject" "Resource" "RiskAssessment" "RiskEvidenceSynthesis" "Schedule" "SearchParameter" "ServiceRequest" "Slot" "Specimen" "SpecimenDefinition" "StructureDefinition" "StructureMap" "Subscription" "Substance" "SubstanceNucleicAcid" "SubstancePolymer" "SubstanceProtein" "SubstanceReferenceInformation" "SubstanceSourceMaterial" "SubstanceSpecification" "SupplyDelivery" "SupplyRequest" "Task" "TerminologyCapabilities" "TestReport" "TestScript" "ValueSet" "VerificationResult" "VisionPrescription" "Type" "Any"]
# How a property is represented when serialized.
fhirvs:property-representation ["xmlAttr" "xmlText" "typeAttr" "cdaText" "xhtml"]
# A unit of time (units from UCUM).
fhirvs:units-of-time ["s" "min" "h" "d" "wk" "mo" "a"]
|
|
Definition
|
Usage
note:
every
effort
has
been
made
May
be
used
to
ensure
represent
additional
information
that
is
not
part
of
the
basic
definition
of
the
element
and
that
modifies
the
ShEx
files
are
correct
understanding
of
the
element
in
which
it
is
contained
and/or
the
understanding
of
the
containing
element's
descendants.
Usually
modifier
elements
provide
negation
or
qualification.
To
make
the
use
of
extensions
safe
and
useful,
but
they
are
not
managable,
there
is
a
normative
strict
set
of
governance
applied
to
the
definition
and
use
of
extensions.
Though
any
implementer
can
define
an
extension,
there
is
a
set
of
requirements
that
SHALL
be
met
as
part
of
the
specification.
definition
of
the
extension.
Applications
processing
a
resource
are
required
to
check
for
modifier
extensions.
Modifier
extensions
SHALL
NOT
change
the
meaning
of
any
elements
on
Resource
or
DomainResource
(including
cannot
change
the
meaning
of
modifierExtension
itself).
|
|
Comments
|
There
can
be
no
stigma
associated
with
the
use
of
extensions
by
any
application,
project,
or
standard
-
regardless
of
the
institution
or
jurisdiction
that
uses
or
defines
the
extensions.
The
use
of
extensions
is
what
allows
the
FHIR
specification
to
retain
a
core
level
of
simplicity
for
everyone.
|