R4 Draft for Comment

This page is part of the FHIR Specification (v3.2.0: R4 Ballot 1). 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: 0 Draft Compartments: Not linked to any defined compartments

Detailed Descriptions for the elements in the TerminologyCapabilities resource.

TerminologyCapabilities
Definition

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

Control1..1
TerminologyCapabilities.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. This SHOULD be globally unique, and SHOULD be a literal address at which this terminology capabilities is (or will be) published.

Control0..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 URL SHOULD include the major version of the terminology capabilities. For more information see Technical and Business Versions.

TerminologyCapabilities.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.

NoteThis is a business versionId, not a resource version id (see discussion)
Control0..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].

TerminologyCapabilities.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.

Control0..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 alpha-numeric type name to ensure that it is computable friendly.

TerminologyCapabilities.title
Definition

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

Control0..1
Typestring
Summarytrue
Comments

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

TerminologyCapabilities.status
Definition

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

Control1..1
Terminology BindingPublicationStatus (Required)
Typecode
Is Modifiertrue
Summarytrue
Comments

Allows filtering of terminology capabilitiess that are appropriate for use vs. not.
This is labeled as "Is Modifier" because applications should not use a retired terminology capabilities without due consideration. This is not intended for use with actual capability statements, but where capability statements are used to describe possible or desired systems.

TerminologyCapabilities.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.

Control0..1
Typeboolean
Is Modifiertrue
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 capabilities that are appropriate for use vs. not. This is labeled as "Is Modifier" because applications should not use an experimental terminology capabilities in production.

TerminologyCapabilities.date
Definition

The date (and optionally time) when the terminology capabilities was published. The date must change if and 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.

Control1..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
Definition

The name of the individual or organization that published the terminology capabilities.

Control0..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
Definition

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

Control0..*
TypeContactDetail
Summarytrue
Comments

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

TerminologyCapabilities.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.

Control0..1
Typemarkdown
Comments

This description can be used to capture details such as why the terminology capabilities was built, 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 profile is presumed to be the predominant language in the place the profile was created). This does not need to be populated if the description is adequately implied by the software or implementation details.

TerminologyCapabilities.useContext
Definition

The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching for appropriate terminology capabilities instances.

Control0..*
TypeUsageContext
Requirements

Assist in searching for appropriate content.

Summarytrue
Comments

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

TerminologyCapabilities.jurisdiction
Definition

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

Control0..*
Terminology BindingJurisdiction ValueSet (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
Definition

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

Control0..1
Typemarkdown
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
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.

Control0..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.lockedDate
Definition

Whether the server supports lockedDate.

Control0..1
Typeboolean
Summarytrue
TerminologyCapabilities.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.

Control0..*
Alternate Names1
Comments

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

InvariantsDefined on this element
tcp-1: If there is more than one version, a version code must be defined (expression : version.count() > 1 implies version.all(code.exists()), xpath: (count(f:version) <= 1) or not exists(f:version[not(f:code)]))
TerminologyCapabilities.codeSystem.uri
Definition

URI for the Code System.

Control0..1
Typeuri
TerminologyCapabilities.codeSystem.version
Definition

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

NoteThis is a business versionId, not a resource version id (see discussion)
Control0..*
Comments

Language translations might not be available for all codes.

TerminologyCapabilities.codeSystem.version.code
Definition

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

Control0..1
Typestring
Summarytrue
InvariantsAffect this element
tcp-1: If there is more than one version, a version code must be defined (expression : version.count() > 1 implies version.all(code.exists()), xpath: (count(f:version) <= 1) or not exists(f:version[not(f:code)]))
TerminologyCapabilities.codeSystem.version.isDefault
Definition

If this is the default version for this code system.

Control0..1
Typeboolean
Summarytrue
TerminologyCapabilities.codeSystem.version.compositional
Definition

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

Control0..1
Typeboolean
TerminologyCapabilities.codeSystem.version.language
Definition

Language Displays supported.

Control0..*
Typecode
TerminologyCapabilities.codeSystem.version.filter
Definition

Filter Properties supported.

Control0..*
TerminologyCapabilities.codeSystem.version.filter.code
Definition

Code of the property supported.

Control1..1
Typecode
TerminologyCapabilities.codeSystem.version.filter.op
Definition

Operations supported for the property.

Control1..*
Typecode
TerminologyCapabilities.codeSystem.version.property
Definition

Properties supported for $lookup.

Control0..*
Typecode
TerminologyCapabilities.expansion
Definition

Information about the $expansion operation.

Control0..1
TerminologyCapabilities.expansion.hierarchical
Definition

Whether the server can return nested value sets.

Control0..1
Typeboolean
TerminologyCapabilities.expansion.paging
Definition

Whether the server supports paging on expansion.

Control0..1
Typeboolean
TerminologyCapabilities.expansion.incomplete
Definition

Allow request for incomplete expansions?

Control0..1
Typeboolean
TerminologyCapabilities.expansion.definition
Definition

Supported fields on ExpansionProfile.

Control0..1
TypeReference(StructureDefinition)
TerminologyCapabilities.expansion.profile
Definition

Supported expansion profiles.

Control0..*
TypeReference(ExpansionProfile)
TerminologyCapabilities.expansion.textFilter
Definition

Documentation about text searching works.

Control0..1
Typemarkdown
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
Definition

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

Control0..1
Terminology BindingCodeSearchSupport (Required)
Typecode
Comments

See notes on the ValueSet resource.

TerminologyCapabilities.validateCode
Definition

Information about the $validation operation.

Control0..1
TerminologyCapabilities.validateCode.translations
Definition

Whether translations are validated.

Control1..1
Typeboolean
TerminologyCapabilities.translation
Definition

Information about the $translation operation.

Control0..1
TerminologyCapabilities.translation.needsMap
Definition

Whether the client must identify the map.

Control1..1
Typeboolean
TerminologyCapabilities.closure
Definition

Whether the $closure operation is supported.

Control0..1
TerminologyCapabilities.closure.translation
Definition

If cross-system closure is supported.

Control0..1
Typeboolean