Release 5 Ballot

This page is part of the FHIR Specification (v5.0.0-ballot: FHIR R5 Ballot Preview). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4

Vocabulary Work GroupMaturity Level: 1 Trial UseSecurity Category: Anonymous Compartments: Not linked to any defined compartments

Detailed Descriptions for the elements in the TerminologyCapabilities resource.

TerminologyCapabilities
Element IdTerminologyCapabilities
Definition

A TerminologyCapabilities resource documents a set of capabilities (behaviors) of a FHIR Terminology Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation.

Short DisplayA statement of system capabilities
Cardinality0..*
TypeCanonicalResource
Summaryfalse
Invariants
Defined on this element
cnl-0Warning Name should be usable as an identifier for the module by machine processing applications such as code generationname.exists() implies name.matches('[A-Z]([A-Za-z0-9_]){1,254}')
tcp-2Rule A Terminology Capability statement SHALL have at least one of description, software, or implementation element(description.count() + software.count() + implementation.count()) > 0
tcp-3Rule If kind = instance, implementation must be present and software may be present(kind != 'instance') or implementation.exists()
tcp-4Rule If kind = capability, implementation must be absent, software must be present(kind != 'capability') or (implementation.exists().not() and software.exists())
tcp-5Rule If kind = requirements, implementation and software must be absent(kind!='requirements') or (implementation.exists().not() and software.exists().not())
tcp-6Rule Each instance of the codeSystem element must represent a distinct code system.codeSystem.uri.isDistinct()
TerminologyCapabilities.url
Element IdTerminologyCapabilities.url
Definition

An absolute URI that is used to identify this terminology capabilities when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which an authoritative instance of this terminology capabilities is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the terminology capabilities is stored on different servers.

Short DisplayCanonical identifier for this terminology capabilities, represented as a URI (globally unique)
Cardinality0..1
Typeuri
Requirements

Allows the terminology capabilities to be referenced by a single globally unique identifier.

Summarytrue
Comments

Can be a urn:uuid: or a urn:oid: but real http: addresses are preferred. Multiple instances may share the same URL if they have a distinct version.

The determination of when to create a new version of a resource (same url, new version) vs. defining a new artifact is up to the author. Considerations for making this decision are found in Technical and Business Versions.

In some cases, the resource can no longer be found at the stated url, but the url itself cannot change. Implementations can use the meta.source element to indicate where the current master source of the resource can be found.

Invariants
Defined on this element
cnl-1Warning URL should not contain | or # - these characters make processing canonical references problematicurl.matches('([^|#])*')
TerminologyCapabilities.identifier
Element IdTerminologyCapabilities.identifier
Definition

A formal identifier that is used to identify this terminology capabilities when it is represented in other formats, or referenced in a specification, model, design or an instance.

Short DisplayAdditional identifier for the terminology capabilities
NoteThis is a business identifier, not a resource identifier (see discussion)
Cardinality0..*
TypeIdentifier
Requirements

Allows externally provided and/or usable business identifiers to be easily associated with the module.

Summarytrue
Comments

Typically, this is used for identifiers that can go in an HL7 V3 II (instance identifier) data type, and can then identify this terminology capabilities outside of FHIR, where it is not possible to use the logical URI.

TerminologyCapabilities.version
Element IdTerminologyCapabilities.version
Definition

The identifier that is used to identify this version of the terminology capabilities when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the terminology capabilities author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.

Short DisplayBusiness version of the terminology capabilities
NoteThis is a business versionId, not a resource version id (see discussion)
Cardinality0..1
Typestring
Summarytrue
Comments

There may be different terminology capabilities instances that have the same identifier but different versions. The version can be appended to the url in a reference to allow a reference to a particular business version of the terminology capabilities with the format [url]|[version]. The version SHOULD NOT contain a '#' - see Business Version.

TerminologyCapabilities.name
Element IdTerminologyCapabilities.name
Definition

A natural language name identifying the terminology capabilities. This name should be usable as an identifier for the module by machine processing applications such as code generation.

Short DisplayName for this terminology capabilities (computer friendly)
Cardinality0..1
Typestring
Requirements

Support human navigation and code generation.

Summarytrue
Comments

The name is not expected to be globally unique. The name should be a simple alphanumeric type name to ensure that it is machine-processing friendly.

Invariants
Affect this element
cnl-0Warning Name should be usable as an identifier for the module by machine processing applications such as code generationname.exists() implies name.matches('[A-Z]([A-Za-z0-9_]){1,254}')
TerminologyCapabilities.title
Element IdTerminologyCapabilities.title
Definition

A short, descriptive, user-friendly title for the terminology capabilities.

Short DisplayName for this terminology capabilities (human friendly)
Cardinality0..1
Typestring
Summarytrue
Comments

This name does not need to be machine-processing friendly and may contain punctuation, white-space, etc.

TerminologyCapabilities.status
Element IdTerminologyCapabilities.status
Definition

The status of this terminology capabilities. Enables tracking the life-cycle of the content.

Short Displaydraft | active | retired | unknown
Cardinality1..1
Terminology BindingPublicationStatus (Required)
Typecode
Is Modifiertrue (Reason: This is labeled as "Is Modifier" because applications should not use a retired {{title}} without due consideration)
Summarytrue
Comments

Allows filtering of terminology capabilitiess that are appropriate for use versus not.This is not intended for use with actual capability statements, but where capability statements are used to describe possible or desired systems.

TerminologyCapabilities.experimental
Element IdTerminologyCapabilities.experimental
Definition

A Boolean value to indicate that this terminology capabilities is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.

Short DisplayFor testing purposes, not real usage
Cardinality0..1
Typeboolean
Meaning if MissingIf absent, this resource is treated as though it is not experimental.
Requirements

Enables experimental content to be developed following the same lifecycle that would be used for a production-level terminology capabilities.

Summarytrue
Comments

Allows filtering of terminology capabilitiess that are appropriate for use versus not.

TerminologyCapabilities.date
Element IdTerminologyCapabilities.date
Definition

The date (and optionally time) when the terminology capabilities was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the terminology capabilities changes.

Short DisplayDate last changed
Cardinality1..1
TypedateTime
Alternate NamesRevision Date
Summarytrue
Comments

Note that this is not the same as the resource last-modified-date, since the resource may be a secondary representation of the terminology capabilities. Additional specific dates may be added as extensions or be found by consulting Provenances associated with past versions of the resource.

TerminologyCapabilities.publisher
Element IdTerminologyCapabilities.publisher
Definition

The name of the organization or individual responsible for the release and ongoing maintenance of the terminology capabilities.

Short DisplayName of the publisher/steward (organization or individual)
Cardinality0..1
Typestring
Requirements

Helps establish the "authority/credibility" of the terminology capabilities. May also allow for contact.

Summarytrue
Comments

Usually an organization but may be an individual. The publisher (or steward) of the terminology capabilities is the organization or individual primarily responsible for the maintenance and upkeep of the terminology capabilities. This is not necessarily the same individual or organization that developed and initially authored the content. The publisher is the primary point of contact for questions or issues with the terminology capabilities. This item SHOULD be populated unless the information is available from context.

TerminologyCapabilities.contact
Element IdTerminologyCapabilities.contact
Definition

Contact details to assist a user in finding and communicating with the publisher.

Short DisplayContact details for the publisher
Cardinality0..*
TypeContactDetail
Summarytrue
Comments

May be a web site, an email address, a telephone number, etc.

TerminologyCapabilities.description
Element IdTerminologyCapabilities.description
Definition

A free text natural language description of the terminology capabilities from a consumer's perspective. Typically, this is used when the capability statement describes a desired rather than an actual solution, for example as a formal expression of requirements as part of an RFP.

Short DisplayNatural language description of the terminology capabilities
Cardinality0..1
Typemarkdown
Summaryfalse
Comments

This description can be used to capture details such as comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the terminology capabilities as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context (e.g. the language of the terminology capabilities is presumed to be the predominant language in the place the terminology capabilities was created).This does not need to be populated if the description is adequately implied by the software or implementation details.

TerminologyCapabilities.useContext
Element IdTerminologyCapabilities.useContext
Definition

The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate terminology capabilities instances.

Short DisplayThe context that the content is intended to support
Cardinality0..*
TypeUsageContext
Requirements

Assist in searching for appropriate content.

Summarytrue
Comments

When multiple useContexts are specified, there is no expectation that all or any of the contexts apply.

TerminologyCapabilities.jurisdiction
Element IdTerminologyCapabilities.jurisdiction
Definition

A legal or geographic region in which the terminology capabilities is intended to be used.

Short DisplayIntended jurisdiction for terminology capabilities (if applicable)
Cardinality0..*
Terminology BindingJurisdiction (Extensible)
TypeCodeableConcept
Summarytrue
Comments

It may be possible for the terminology capabilities to be used in jurisdictions other than those for which it was originally designed or intended.

TerminologyCapabilities.purpose
Element IdTerminologyCapabilities.purpose
Definition

Explanation of why this terminology capabilities is needed and why it has been designed as it has.

Short DisplayWhy this terminology capabilities is defined
Cardinality0..1
Typemarkdown
Summaryfalse
Comments

This element does not describe the usage of the terminology capabilities. Instead, it provides traceability of ''why'' the resource is either needed or ''why'' it is defined as it is. This may be used to point to source materials or specifications that drove the structure of this terminology capabilities.

TerminologyCapabilities.copyright
Element IdTerminologyCapabilities.copyright
Definition

A copyright statement relating to the terminology capabilities and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the terminology capabilities.

Short DisplayUse and/or publishing restrictions
Cardinality0..1
Typemarkdown
Requirements

Consumers must be able to determine any legal restrictions on the use of the terminology capabilities and/or its content.

Alternate NamesLicense; Restrictions
Summarytrue
TerminologyCapabilities.kind
Element IdTerminologyCapabilities.kind
Definition

The way that this statement is intended to be used, to describe an actual running instance of software, a particular product (kind, not instance of software) or a class of implementation (e.g. a desired purchase).

Short Displayinstance | capability | requirements
Cardinality1..1
Terminology BindingCapabilityStatementKind (Required)
Typecode
Requirements

Allow searching the 3 modes.

Summarytrue
Invariants
Affect this element
tcp-3Rule If kind = instance, implementation must be present and software may be present(kind != 'instance') or implementation.exists()
tcp-4Rule If kind = capability, implementation must be absent, software must be present(kind != 'capability') or (implementation.exists().not() and software.exists())
tcp-5Rule If kind = requirements, implementation and software must be absent(kind!='requirements') or (implementation.exists().not() and software.exists().not())
TerminologyCapabilities.software
Element IdTerminologyCapabilities.software
Definition

Software that is covered by this terminology capability statement. It is used when the statement describes the capabilities of a particular software version, independent of an installation.

Short DisplaySoftware that is covered by this terminology capability statement
Cardinality0..1
Summarytrue
Invariants
Affect this element
tcp-2Rule A Terminology Capability statement SHALL have at least one of description, software, or implementation element(description.count() + software.count() + implementation.count()) > 0
TerminologyCapabilities.software.name
Element IdTerminologyCapabilities.software.name
Definition

Name the software is known by.

Short DisplayA name the software is known by
Cardinality1..1
Typestring
Summarytrue
TerminologyCapabilities.software.version
Element IdTerminologyCapabilities.software.version
Definition

The version identifier for the software covered by this statement.

Short DisplayVersion covered by this statement
NoteThis is a business versionId, not a resource version id (see discussion)
Cardinality0..1
Typestring
Summarytrue
Comments

If possible, a version should be specified, as statements are likely to be different for different versions of software.

TerminologyCapabilities.implementation
Element IdTerminologyCapabilities.implementation
Definition

Identifies a specific implementation instance that is described by the terminology capability statement - i.e. a particular installation, rather than the capabilities of a software program.

Short DisplayIf this describes a specific instance
Cardinality0..1
Summarytrue
Invariants
Affect this element
tcp-2Rule A Terminology Capability statement SHALL have at least one of description, software, or implementation element(description.count() + software.count() + implementation.count()) > 0
tcp-5Rule If kind = requirements, implementation and software must be absent(kind!='requirements') or (implementation.exists().not() and software.exists().not())
TerminologyCapabilities.implementation.description
Element IdTerminologyCapabilities.implementation.description
Definition

Information about the specific installation that this terminology capability statement relates to.

Short DisplayDescribes this specific instance
Cardinality1..1
Typestring
Summarytrue
TerminologyCapabilities.implementation.url
Element IdTerminologyCapabilities.implementation.url
Definition

An absolute base URL for the implementation.

Short DisplayBase URL for the implementation
Cardinality0..1
Typeurl
Summarytrue
TerminologyCapabilities.lockedDate
Element IdTerminologyCapabilities.lockedDate
Definition

Whether the server supports lockedDate.

Short DisplayWhether lockedDate is supported
Cardinality0..1
Typeboolean
Summarytrue
TerminologyCapabilities.codeSystem
Element IdTerminologyCapabilities.codeSystem
Definition

Identifies a code system that is supported by the server. If there is a no code system URL, then this declares the general assumptions a client can make about support for any CodeSystem resource.

Short DisplayA code system supported by the server
Cardinality0..*
Alternate Names1
Summaryfalse
Comments

The code system - identified by its system URL - may also be declared explicitly as a Code System Resource at /CodeSystem, but it might not be.

Invariants
Defined on this element
tcp-1Rule If there is more than one version, a version code must be definedversion.count() > 1 implies version.all(code.exists())
tcp-7Rule Each version.code element must be distinct for a particular code system.version.code.isDistinct()
tcp-8Rule A codeSystem element instance may have at most one version.isDefault element with a value of 'true'.version.where(isDefault = true).count() <= 1
TerminologyCapabilities.codeSystem.uri
Element IdTerminologyCapabilities.codeSystem.uri
Definition

Canonical identifier for the code system, represented as a URI.

Short DisplayCanonical identifier for the code system, represented as a URI
Cardinality0..1
Typecanonical(CodeSystem)
Summaryfalse
TerminologyCapabilities.codeSystem.version
Element IdTerminologyCapabilities.codeSystem.version
Definition

For the code system, a list of versions that are supported by the server.

Short DisplayVersion of Code System supported
NoteThis is a business versionId, not a resource version id (see discussion)
Cardinality0..*
Summaryfalse
Comments

Language translations might not be available for all codes.

TerminologyCapabilities.codeSystem.version.code
Element IdTerminologyCapabilities.codeSystem.version.code
Definition

For version-less code systems, there should be a single version with no identifier.

Short DisplayVersion identifier for this version
Cardinality0..1
Typestring
Summarytrue
Invariants
Affect this element
tcp-1Rule If there is more than one version, a version code must be definedversion.count() > 1 implies version.all(code.exists())
TerminologyCapabilities.codeSystem.version.isDefault
Element IdTerminologyCapabilities.codeSystem.version.isDefault
Definition

If this is the default version for this code system.

Short DisplayIf this is the default version for this code system
Cardinality0..1
Typeboolean
Summarytrue
TerminologyCapabilities.codeSystem.version.compositional
Element IdTerminologyCapabilities.codeSystem.version.compositional
Definition

If the compositional grammar defined by the code system is supported.

Short DisplayIf compositional grammar is supported
Cardinality0..1
Typeboolean
Summaryfalse
TerminologyCapabilities.codeSystem.version.language
Element IdTerminologyCapabilities.codeSystem.version.language
Definition

Language Displays supported.

Short DisplayLanguage Displays supported
Cardinality0..*
Terminology BindingCommon Languages (Required)
Typecode
Summaryfalse
TerminologyCapabilities.codeSystem.version.filter
Element IdTerminologyCapabilities.codeSystem.version.filter
Definition

Filter Properties supported.

Short DisplayFilter Properties supported
Cardinality0..*
Summaryfalse
TerminologyCapabilities.codeSystem.version.filter.code
Element IdTerminologyCapabilities.codeSystem.version.filter.code
Definition

Code of the property supported.

Short DisplayCode of the property supported
Cardinality1..1
Typecode
Summaryfalse
TerminologyCapabilities.codeSystem.version.filter.op
Element IdTerminologyCapabilities.codeSystem.version.filter.op
Definition

Operations supported for the property.

Short DisplayOperations supported for the property
Cardinality1..*
Typecode
Summaryfalse
TerminologyCapabilities.codeSystem.version.property
Element IdTerminologyCapabilities.codeSystem.version.property
Definition

Properties supported for $lookup.

Short DisplayProperties supported for $lookup
Cardinality0..*
Typecode
Summaryfalse
TerminologyCapabilities.codeSystem.content
Element IdTerminologyCapabilities.codeSystem.content
Definition

The extent of the content of the code system (the concepts and codes it defines) are represented in this resource instance.

Short Displaynot-present | example | fragment | complete | supplement
Cardinality1..1
Terminology BindingCodeSystemContentMode (Required)
Typecode
Summarytrue
TerminologyCapabilities.codeSystem.subsumption
Element IdTerminologyCapabilities.codeSystem.subsumption
Definition

True if subsumption is supported for this version of the code system.

Short DisplayWhether subsumption is supported
Cardinality0..1
Typeboolean
Summaryfalse
TerminologyCapabilities.expansion
Element IdTerminologyCapabilities.expansion
Definition

Information about the ValueSet/$expand operation.

Short DisplayInformation about the [ValueSet/$expand](valueset-operation-expand.html) operation
Cardinality0..1
Summaryfalse
TerminologyCapabilities.expansion.hierarchical
Element IdTerminologyCapabilities.expansion.hierarchical
Definition

Whether the server can return nested value sets.

Short DisplayWhether the server can return nested value sets
Cardinality0..1
Typeboolean
Summaryfalse
TerminologyCapabilities.expansion.paging
Element IdTerminologyCapabilities.expansion.paging
Definition

Whether the server supports paging on expansion.

Short DisplayWhether the server supports paging on expansion
Cardinality0..1
Typeboolean
Summaryfalse
TerminologyCapabilities.expansion.incomplete
Element IdTerminologyCapabilities.expansion.incomplete
Definition

True if requests for incomplete expansions are allowed.

Short DisplayAllow request for incomplete expansions?
Cardinality0..1
Typeboolean
Summaryfalse
TerminologyCapabilities.expansion.parameter
Element IdTerminologyCapabilities.expansion.parameter
Definition

Supported expansion parameter.

Short DisplaySupported expansion parameter
Cardinality0..*
Summaryfalse
TerminologyCapabilities.expansion.parameter.name
Element IdTerminologyCapabilities.expansion.parameter.name
Definition

Name of the supported expansion parameter.

Short DisplayName of the supported expansion parameter
Cardinality1..1
Typecode
Summaryfalse
TerminologyCapabilities.expansion.parameter.documentation
Element IdTerminologyCapabilities.expansion.parameter.documentation
Definition

Description of support for parameter.

Short DisplayDescription of support for parameter
Cardinality0..1
Typestring
Summaryfalse
TerminologyCapabilities.expansion.textFilter
Element IdTerminologyCapabilities.expansion.textFilter
Definition

Documentation about text searching works.

Short DisplayDocumentation about text searching works
Cardinality0..1
Typemarkdown
Summaryfalse
Comments

This documentation should cover things like case sensitivity, use of punctuation if not ignored, what wild cards are supported (if any), whether text is starts with or contains, and whether word order matters.

TerminologyCapabilities.codeSearch
Element IdTerminologyCapabilities.codeSearch
Definition

The degree to which the server supports the code search parameter on ValueSet, if it is supported.

Short Displayin-compose | in-expansion | in-compose-or-expansion
Cardinality0..1
Terminology BindingCodeSearchSupport (Required)
Typecode
Summaryfalse
Comments

See notes on the ValueSet resource.

TerminologyCapabilities.validateCode
Element IdTerminologyCapabilities.validateCode
Definition

Information about the ValueSet/$validate-code operation.

Short DisplayInformation about the [ValueSet/$validate-code](valueset-operation-validate-code.html) operation
Cardinality0..1
Summaryfalse
TerminologyCapabilities.validateCode.translations
Element IdTerminologyCapabilities.validateCode.translations
Definition

Whether translations are validated.

Short DisplayWhether translations are validated
Cardinality1..1
Typeboolean
Summaryfalse
TerminologyCapabilities.translation
Element IdTerminologyCapabilities.translation
Definition

Information about the ConceptMap/$translate operation.

Short DisplayInformation about the [ConceptMap/$translate](conceptmap-operation-translate.html) operation
Cardinality0..1
Summaryfalse
TerminologyCapabilities.translation.needsMap
Element IdTerminologyCapabilities.translation.needsMap
Definition

Whether the client must identify the map.

Short DisplayWhether the client must identify the map
Cardinality1..1
Typeboolean
Summaryfalse
TerminologyCapabilities.closure
Element IdTerminologyCapabilities.closure
Definition

Whether the $closure operation is supported.

Short DisplayInformation about the [ConceptMap/$closure](conceptmap-operation-closure.html) operation
Cardinality0..1
Summaryfalse
TerminologyCapabilities.closure.translation
Element IdTerminologyCapabilities.closure.translation
Definition

If cross-system closure is supported.

Short DisplayIf cross-system closure is supported
Cardinality0..1
Typeboolean
Summaryfalse