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 Group | Maturity Level: 0 | Draft | Compartments: Not linked to any defined compartments |
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.
The capability statement is a key part of the overall conformance framework in FHIR. It is used as a statement of the features of actual software, or of a set of rules for an application to provide. This statement connects to all the detailed statements of functionality, such as StructureDefinitions and ValueSets. This composite statement of application capability may be used for system compatibility testing, code generation, or as either the basis for a conformance assessment. For further information about Conformance testing, see Conformance Rules and Profiling FHIR.
Specifically, capability statements are used in one of three ways:
In this scenario, the capability statement describes the capabilities of a deployed and configured solution available at a particular access point or set of access points. The statement describes exactly how to interface with that deployed solution and thus provides for a degree of self-configuration of software solutions.
This is the type of profile that FHIR restful solutions are expected to make available on invocation of the capabilities operation. It is also the type of statement that forms a basis for the testing, certification or commissioning of specific software installations.
In this scenario, the capability statement describes generic capabilities of a software application or component solution. The solution might be available for purchase or other acquisition and might be deployed and configured at any number of independent sites. Because it is not dependent on any particular implementation, the profile cannot provide specific details such as endpoint addresses. It may also need to document various configurations in which the application can be set up or describe the degree of customizability associated with the solution.
This type of statement may be used as a marketing tool by software and system developers to formally describe their capabilities. It can also be used as the basis for conformance testing of software solutions independent of a particular installation.
In this scenario, the capability statement describes the capabilities of a desired system. It might be used as part of an architectural design process to document needed system capabilities, or might be used as part of an RFP process to formally document the requirements of a requested solution and to document the criteria by which proposals will be evaluated.
These three types of profiles can be used together. A requirements statement can be compared against the solution statements proffered by respondents to an RFP. A solution statement for a software package forms the starting point for the implementation statement associated with a particular installation of that software package.
Capability Statements provide for a degree of automatic configuration and adaptation. However, capturing absolutely every variation that could impact the interoperability of two systems, let alone keeping that detailed information up-to-date as systems evolve through maintenance and upgrades is rarely practical. Therefore, capability statements should be seen as an interim step. They provide a degree of automation. However, they also provide a great deal of human-readable content that can minimize the need for direct communication between the operators of the systems being configured to interoperate.
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
TerminologyCapabilities | D | DomainResource | A statement of system capabilities Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
url | Σ | 0..1 | uri | Logical URI to reference this terminology capabilities (globally unique) |
version | Σ | 0..1 | string | Business version of the terminology capabilities |
name | Σ | 0..1 | string | Name for this terminology capabilities (computer friendly) |
title | Σ | 0..1 | string | Name for this terminology capabilities (human friendly) |
status | ?!Σ | 1..1 | code | draft | active | retired | unknown PublicationStatus (Required) |
experimental | ?!Σ | 0..1 | boolean | For testing purposes, not real usage |
date | Σ | 1..1 | dateTime | Date this was last changed |
publisher | Σ | 0..1 | string | Name of the publisher (organization or individual) |
contact | Σ | 0..* | ContactDetail | Contact details for the publisher |
description | 0..1 | markdown | Natural language description of the terminology capabilities | |
useContext | Σ | 0..* | UsageContext | Context the content is intended to support |
jurisdiction | Σ | 0..* | CodeableConcept | Intended jurisdiction for terminology capabilities (if applicable) Jurisdiction ValueSet (Extensible) |
purpose | 0..1 | markdown | Why this terminology capabilities is defined | |
copyright | Σ | 0..1 | markdown | Use and/or publishing restrictions |
lockedDate | Σ | 0..1 | boolean | Whether lockedDate is supported |
codeSystem | I | 0..* | BackboneElement | A code system supported by the server + If there is more than one version, a version code must be defined |
uri | 0..1 | uri | URI for the Code System | |
version | 0..* | BackboneElement | Version of Code System supported | |
code | ΣI | 0..1 | string | Version identifier for this version |
isDefault | Σ | 0..1 | boolean | If this is the default version for this code system |
compositional | 0..1 | boolean | If compositional grammar is supported | |
language | 0..* | code | Language Displays supported | |
filter | 0..* | BackboneElement | Filter Properties supported | |
code | 1..1 | code | Code of the property supported | |
op | 1..* | code | Operations supported for the property | |
property | 0..* | code | Properties supported for $lookup | |
expansion | 0..1 | BackboneElement | Information about the $expansion operation | |
hierarchical | 0..1 | boolean | Whether the server can return nested value sets | |
paging | 0..1 | boolean | Whether the server supports paging on expansion | |
incomplete | 0..1 | boolean | Allow request for incomplete expansions? | |
definition | 0..1 | Reference(StructureDefinition) | Supported fields on ExpansionProfile | |
profile | 0..* | Reference(ExpansionProfile) | Supported expansion profiles | |
textFilter | 0..1 | markdown | Documentation about text searching works | |
codeSearch | 0..1 | code | explicit | all CodeSearchSupport (Required) | |
validateCode | 0..1 | BackboneElement | Information about the $validation operation | |
translations | 1..1 | boolean | Whether translations are validated | |
translation | 0..1 | BackboneElement | Information about the $translation operation | |
needsMap | 1..1 | boolean | Whether the client must identify the map | |
closure | 0..1 | BackboneElement | Information about the $closure operation | |
translation | 0..1 | boolean | If cross-system closure is supported | |
Documentation for this format |
UML Diagram (Legend)
XML Template
<TerminologyCapabilities xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <url value="[uri]"/><!-- 0..1 Logical URI to reference this terminology capabilities (globally unique) --> <version value="[string]"/><!-- 0..1 Business version of the terminology capabilities --> <name value="[string]"/><!-- 0..1 Name for this terminology capabilities (computer friendly) --> <title value="[string]"/><!-- 0..1 Name for this terminology capabilities (human friendly) --> <status value="[code]"/><!-- 1..1 draft | active | retired | unknown --> <experimental value="[boolean]"/><!-- 0..1 For testing purposes, not real usage --> <date value="[dateTime]"/><!-- 1..1 Date this was last changed --> <publisher value="[string]"/><!-- 0..1 Name of the publisher (organization or individual) --> <contact><!-- 0..* ContactDetail Contact details for the publisher --></contact> <description value="[markdown]"/><!-- 0..1 Natural language description of the terminology capabilities --> <useContext><!-- 0..* UsageContext Context the content is intended to support --></useContext> <jurisdiction><!-- 0..* CodeableConcept Intended jurisdiction for terminology capabilities (if applicable) --></jurisdiction> <purpose value="[markdown]"/><!-- 0..1 Why this terminology capabilities is defined --> <copyright value="[markdown]"/><!-- 0..1 Use and/or publishing restrictions --> <lockedDate value="[boolean]"/><!-- 0..1 Whether lockedDate is supported --> <codeSystem> <!-- 0..* A code system supported by the server --> <uri value="[uri]"/><!-- 0..1 URI for the Code System --> <version> <!-- 0..* Version of Code System supported --> <code value="[string]"/><!-- 0..1 Version identifier for this version --> <isDefault value="[boolean]"/><!-- 0..1 If this is the default version for this code system --> <compositional value="[boolean]"/><!-- 0..1 If compositional grammar is supported --> <language value="[code]"/><!-- 0..* Language Displays supported --> <filter> <!-- 0..* Filter Properties supported --> <code value="[code]"/><!-- 1..1 Code of the property supported --> <op value="[code]"/><!-- 1..* Operations supported for the property --> </filter> <property value="[code]"/><!-- 0..* Properties supported for $lookup --> </version> </codeSystem> <expansion> <!-- 0..1 Information about the $expansion operation --> <hierarchical value="[boolean]"/><!-- 0..1 Whether the server can return nested value sets --> <paging value="[boolean]"/><!-- 0..1 Whether the server supports paging on expansion --> <incomplete value="[boolean]"/><!-- 0..1 Allow request for incomplete expansions? --> <definition><!-- 0..1 Reference(StructureDefinition) Supported fields on ExpansionProfile --></definition> <profile><!-- 0..* Reference(ExpansionProfile) Supported expansion profiles --></profile> <textFilter value="[markdown]"/><!-- 0..1 Documentation about text searching works --> </expansion> <codeSearch value="[code]"/><!-- 0..1 explicit | all --> <validateCode> <!-- 0..1 Information about the $validation operation --> <translations value="[boolean]"/><!-- 1..1 Whether translations are validated --> </validateCode> <translation> <!-- 0..1 Information about the $translation operation --> <needsMap value="[boolean]"/><!-- 1..1 Whether the client must identify the map --> </translation> <closure> <!-- 0..1 Information about the $closure operation --> <translation value="[boolean]"/><!-- 0..1 If cross-system closure is supported --> </closure> </TerminologyCapabilities>
JSON Template
{ "resourceType" : "TerminologyCapabilities", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "url" : "<uri>", // Logical URI to reference this terminology capabilities (globally unique) "version" : "<string>", // Business version of the terminology capabilities "name" : "<string>", // Name for this terminology capabilities (computer friendly) "title" : "<string>", // Name for this terminology capabilities (human friendly) "status" : "<code>", // R! draft | active | retired | unknown "experimental" : <boolean>, // For testing purposes, not real usage "date" : "<dateTime>", // R! Date this was last changed "publisher" : "<string>", // Name of the publisher (organization or individual) "contact" : [{ ContactDetail }], // Contact details for the publisher "description" : "<markdown>", // Natural language description of the terminology capabilities "useContext" : [{ UsageContext }], // Context the content is intended to support "jurisdiction" : [{ CodeableConcept }], // Intended jurisdiction for terminology capabilities (if applicable) "purpose" : "<markdown>", // Why this terminology capabilities is defined "copyright" : "<markdown>", // Use and/or publishing restrictions "lockedDate" : <boolean>, // Whether lockedDate is supported "codeSystem" : [{ // A code system supported by the server "uri" : "<uri>", // URI for the Code System "version" : [{ // Version of Code System supported "code" : "<string>", // C? Version identifier for this version "isDefault" : <boolean>, // If this is the default version for this code system "compositional" : <boolean>, // If compositional grammar is supported "language" : ["<code>"], // Language Displays supported "filter" : [{ // Filter Properties supported "code" : "<code>", // R! Code of the property supported "op" : ["<code>"] // R! Operations supported for the property }], "property" : ["<code>"] // Properties supported for $lookup }] }], "expansion" : { // Information about the $expansion operation "hierarchical" : <boolean>, // Whether the server can return nested value sets "paging" : <boolean>, // Whether the server supports paging on expansion "incomplete" : <boolean>, // Allow request for incomplete expansions? "definition" : { Reference(StructureDefinition) }, // Supported fields on ExpansionProfile "profile" : [{ Reference(ExpansionProfile) }], // Supported expansion profiles "textFilter" : "<markdown>" // Documentation about text searching works }, "codeSearch" : "<code>", // explicit | all "validateCode" : { // Information about the $validation operation "translations" : <boolean> // R! Whether translations are validated }, "translation" : { // Information about the $translation operation "needsMap" : <boolean> // R! Whether the client must identify the map }, "closure" : { // Information about the $closure operation "translation" : <boolean> // If cross-system closure is supported } }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:TerminologyCapabilities; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:TerminologyCapabilities.url [ uri ]; # 0..1 Logical URI to reference this terminology capabilities (globally unique) fhir:TerminologyCapabilities.version [ string ]; # 0..1 Business version of the terminology capabilities fhir:TerminologyCapabilities.name [ string ]; # 0..1 Name for this terminology capabilities (computer friendly) fhir:TerminologyCapabilities.title [ string ]; # 0..1 Name for this terminology capabilities (human friendly) fhir:TerminologyCapabilities.status [ code ]; # 1..1 draft | active | retired | unknown fhir:TerminologyCapabilities.experimental [ boolean ]; # 0..1 For testing purposes, not real usage fhir:TerminologyCapabilities.date [ dateTime ]; # 1..1 Date this was last changed fhir:TerminologyCapabilities.publisher [ string ]; # 0..1 Name of the publisher (organization or individual) fhir:TerminologyCapabilities.contact [ ContactDetail ], ... ; # 0..* Contact details for the publisher fhir:TerminologyCapabilities.description [ markdown ]; # 0..1 Natural language description of the terminology capabilities fhir:TerminologyCapabilities.useContext [ UsageContext ], ... ; # 0..* Context the content is intended to support fhir:TerminologyCapabilities.jurisdiction [ CodeableConcept ], ... ; # 0..* Intended jurisdiction for terminology capabilities (if applicable) fhir:TerminologyCapabilities.purpose [ markdown ]; # 0..1 Why this terminology capabilities is defined fhir:TerminologyCapabilities.copyright [ markdown ]; # 0..1 Use and/or publishing restrictions fhir:TerminologyCapabilities.lockedDate [ boolean ]; # 0..1 Whether lockedDate is supported fhir:TerminologyCapabilities.codeSystem [ # 0..* A code system supported by the server fhir:TerminologyCapabilities.codeSystem.uri [ uri ]; # 0..1 URI for the Code System fhir:TerminologyCapabilities.codeSystem.version [ # 0..* Version of Code System supported fhir:TerminologyCapabilities.codeSystem.version.code [ string ]; # 0..1 Version identifier for this version fhir:TerminologyCapabilities.codeSystem.version.isDefault [ boolean ]; # 0..1 If this is the default version for this code system fhir:TerminologyCapabilities.codeSystem.version.compositional [ boolean ]; # 0..1 If compositional grammar is supported fhir:TerminologyCapabilities.codeSystem.version.language [ code ], ... ; # 0..* Language Displays supported fhir:TerminologyCapabilities.codeSystem.version.filter [ # 0..* Filter Properties supported fhir:TerminologyCapabilities.codeSystem.version.filter.code [ code ]; # 1..1 Code of the property supported fhir:TerminologyCapabilities.codeSystem.version.filter.op [ code ], ... ; # 1..* Operations supported for the property ], ...; fhir:TerminologyCapabilities.codeSystem.version.property [ code ], ... ; # 0..* Properties supported for $lookup ], ...; ], ...; fhir:TerminologyCapabilities.expansion [ # 0..1 Information about the $expansion operation fhir:TerminologyCapabilities.expansion.hierarchical [ boolean ]; # 0..1 Whether the server can return nested value sets fhir:TerminologyCapabilities.expansion.paging [ boolean ]; # 0..1 Whether the server supports paging on expansion fhir:TerminologyCapabilities.expansion.incomplete [ boolean ]; # 0..1 Allow request for incomplete expansions? fhir:TerminologyCapabilities.expansion.definition [ Reference(StructureDefinition) ]; # 0..1 Supported fields on ExpansionProfile fhir:TerminologyCapabilities.expansion.profile [ Reference(ExpansionProfile) ], ... ; # 0..* Supported expansion profiles fhir:TerminologyCapabilities.expansion.textFilter [ markdown ]; # 0..1 Documentation about text searching works ]; fhir:TerminologyCapabilities.codeSearch [ code ]; # 0..1 explicit | all fhir:TerminologyCapabilities.validateCode [ # 0..1 Information about the $validation operation fhir:TerminologyCapabilities.validateCode.translations [ boolean ]; # 1..1 Whether translations are validated ]; fhir:TerminologyCapabilities.translation [ # 0..1 Information about the $translation operation fhir:TerminologyCapabilities.translation.needsMap [ boolean ]; # 1..1 Whether the client must identify the map ]; fhir:TerminologyCapabilities.closure [ # 0..1 Information about the $closure operation fhir:TerminologyCapabilities.closure.translation [ boolean ]; # 0..1 If cross-system closure is supported ]; ]
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
TerminologyCapabilities | D | DomainResource | A statement of system capabilities Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
url | Σ | 0..1 | uri | Logical URI to reference this terminology capabilities (globally unique) |
version | Σ | 0..1 | string | Business version of the terminology capabilities |
name | Σ | 0..1 | string | Name for this terminology capabilities (computer friendly) |
title | Σ | 0..1 | string | Name for this terminology capabilities (human friendly) |
status | ?!Σ | 1..1 | code | draft | active | retired | unknown PublicationStatus (Required) |
experimental | ?!Σ | 0..1 | boolean | For testing purposes, not real usage |
date | Σ | 1..1 | dateTime | Date this was last changed |
publisher | Σ | 0..1 | string | Name of the publisher (organization or individual) |
contact | Σ | 0..* | ContactDetail | Contact details for the publisher |
description | 0..1 | markdown | Natural language description of the terminology capabilities | |
useContext | Σ | 0..* | UsageContext | Context the content is intended to support |
jurisdiction | Σ | 0..* | CodeableConcept | Intended jurisdiction for terminology capabilities (if applicable) Jurisdiction ValueSet (Extensible) |
purpose | 0..1 | markdown | Why this terminology capabilities is defined | |
copyright | Σ | 0..1 | markdown | Use and/or publishing restrictions |
lockedDate | Σ | 0..1 | boolean | Whether lockedDate is supported |
codeSystem | I | 0..* | BackboneElement | A code system supported by the server + If there is more than one version, a version code must be defined |
uri | 0..1 | uri | URI for the Code System | |
version | 0..* | BackboneElement | Version of Code System supported | |
code | ΣI | 0..1 | string | Version identifier for this version |
isDefault | Σ | 0..1 | boolean | If this is the default version for this code system |
compositional | 0..1 | boolean | If compositional grammar is supported | |
language | 0..* | code | Language Displays supported | |
filter | 0..* | BackboneElement | Filter Properties supported | |
code | 1..1 | code | Code of the property supported | |
op | 1..* | code | Operations supported for the property | |
property | 0..* | code | Properties supported for $lookup | |
expansion | 0..1 | BackboneElement | Information about the $expansion operation | |
hierarchical | 0..1 | boolean | Whether the server can return nested value sets | |
paging | 0..1 | boolean | Whether the server supports paging on expansion | |
incomplete | 0..1 | boolean | Allow request for incomplete expansions? | |
definition | 0..1 | Reference(StructureDefinition) | Supported fields on ExpansionProfile | |
profile | 0..* | Reference(ExpansionProfile) | Supported expansion profiles | |
textFilter | 0..1 | markdown | Documentation about text searching works | |
codeSearch | 0..1 | code | explicit | all CodeSearchSupport (Required) | |
validateCode | 0..1 | BackboneElement | Information about the $validation operation | |
translations | 1..1 | boolean | Whether translations are validated | |
translation | 0..1 | BackboneElement | Information about the $translation operation | |
needsMap | 1..1 | boolean | Whether the client must identify the map | |
closure | 0..1 | BackboneElement | Information about the $closure operation | |
translation | 0..1 | boolean | If cross-system closure is supported | |
Documentation for this format |
XML Template
<TerminologyCapabilities xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <url value="[uri]"/><!-- 0..1 Logical URI to reference this terminology capabilities (globally unique) --> <version value="[string]"/><!-- 0..1 Business version of the terminology capabilities --> <name value="[string]"/><!-- 0..1 Name for this terminology capabilities (computer friendly) --> <title value="[string]"/><!-- 0..1 Name for this terminology capabilities (human friendly) --> <status value="[code]"/><!-- 1..1 draft | active | retired | unknown --> <experimental value="[boolean]"/><!-- 0..1 For testing purposes, not real usage --> <date value="[dateTime]"/><!-- 1..1 Date this was last changed --> <publisher value="[string]"/><!-- 0..1 Name of the publisher (organization or individual) --> <contact><!-- 0..* ContactDetail Contact details for the publisher --></contact> <description value="[markdown]"/><!-- 0..1 Natural language description of the terminology capabilities --> <useContext><!-- 0..* UsageContext Context the content is intended to support --></useContext> <jurisdiction><!-- 0..* CodeableConcept Intended jurisdiction for terminology capabilities (if applicable) --></jurisdiction> <purpose value="[markdown]"/><!-- 0..1 Why this terminology capabilities is defined --> <copyright value="[markdown]"/><!-- 0..1 Use and/or publishing restrictions --> <lockedDate value="[boolean]"/><!-- 0..1 Whether lockedDate is supported --> <codeSystem> <!-- 0..* A code system supported by the server --> <uri value="[uri]"/><!-- 0..1 URI for the Code System --> <version> <!-- 0..* Version of Code System supported --> <code value="[string]"/><!-- 0..1 Version identifier for this version --> <isDefault value="[boolean]"/><!-- 0..1 If this is the default version for this code system --> <compositional value="[boolean]"/><!-- 0..1 If compositional grammar is supported --> <language value="[code]"/><!-- 0..* Language Displays supported --> <filter> <!-- 0..* Filter Properties supported --> <code value="[code]"/><!-- 1..1 Code of the property supported --> <op value="[code]"/><!-- 1..* Operations supported for the property --> </filter> <property value="[code]"/><!-- 0..* Properties supported for $lookup --> </version> </codeSystem> <expansion> <!-- 0..1 Information about the $expansion operation --> <hierarchical value="[boolean]"/><!-- 0..1 Whether the server can return nested value sets --> <paging value="[boolean]"/><!-- 0..1 Whether the server supports paging on expansion --> <incomplete value="[boolean]"/><!-- 0..1 Allow request for incomplete expansions? --> <definition><!-- 0..1 Reference(StructureDefinition) Supported fields on ExpansionProfile --></definition> <profile><!-- 0..* Reference(ExpansionProfile) Supported expansion profiles --></profile> <textFilter value="[markdown]"/><!-- 0..1 Documentation about text searching works --> </expansion> <codeSearch value="[code]"/><!-- 0..1 explicit | all --> <validateCode> <!-- 0..1 Information about the $validation operation --> <translations value="[boolean]"/><!-- 1..1 Whether translations are validated --> </validateCode> <translation> <!-- 0..1 Information about the $translation operation --> <needsMap value="[boolean]"/><!-- 1..1 Whether the client must identify the map --> </translation> <closure> <!-- 0..1 Information about the $closure operation --> <translation value="[boolean]"/><!-- 0..1 If cross-system closure is supported --> </closure> </TerminologyCapabilities>
JSON Template
{ "resourceType" : "TerminologyCapabilities", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "url" : "<uri>", // Logical URI to reference this terminology capabilities (globally unique) "version" : "<string>", // Business version of the terminology capabilities "name" : "<string>", // Name for this terminology capabilities (computer friendly) "title" : "<string>", // Name for this terminology capabilities (human friendly) "status" : "<code>", // R! draft | active | retired | unknown "experimental" : <boolean>, // For testing purposes, not real usage "date" : "<dateTime>", // R! Date this was last changed "publisher" : "<string>", // Name of the publisher (organization or individual) "contact" : [{ ContactDetail }], // Contact details for the publisher "description" : "<markdown>", // Natural language description of the terminology capabilities "useContext" : [{ UsageContext }], // Context the content is intended to support "jurisdiction" : [{ CodeableConcept }], // Intended jurisdiction for terminology capabilities (if applicable) "purpose" : "<markdown>", // Why this terminology capabilities is defined "copyright" : "<markdown>", // Use and/or publishing restrictions "lockedDate" : <boolean>, // Whether lockedDate is supported "codeSystem" : [{ // A code system supported by the server "uri" : "<uri>", // URI for the Code System "version" : [{ // Version of Code System supported "code" : "<string>", // C? Version identifier for this version "isDefault" : <boolean>, // If this is the default version for this code system "compositional" : <boolean>, // If compositional grammar is supported "language" : ["<code>"], // Language Displays supported "filter" : [{ // Filter Properties supported "code" : "<code>", // R! Code of the property supported "op" : ["<code>"] // R! Operations supported for the property }], "property" : ["<code>"] // Properties supported for $lookup }] }], "expansion" : { // Information about the $expansion operation "hierarchical" : <boolean>, // Whether the server can return nested value sets "paging" : <boolean>, // Whether the server supports paging on expansion "incomplete" : <boolean>, // Allow request for incomplete expansions? "definition" : { Reference(StructureDefinition) }, // Supported fields on ExpansionProfile "profile" : [{ Reference(ExpansionProfile) }], // Supported expansion profiles "textFilter" : "<markdown>" // Documentation about text searching works }, "codeSearch" : "<code>", // explicit | all "validateCode" : { // Information about the $validation operation "translations" : <boolean> // R! Whether translations are validated }, "translation" : { // Information about the $translation operation "needsMap" : <boolean> // R! Whether the client must identify the map }, "closure" : { // Information about the $closure operation "translation" : <boolean> // If cross-system closure is supported } }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:TerminologyCapabilities; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:TerminologyCapabilities.url [ uri ]; # 0..1 Logical URI to reference this terminology capabilities (globally unique) fhir:TerminologyCapabilities.version [ string ]; # 0..1 Business version of the terminology capabilities fhir:TerminologyCapabilities.name [ string ]; # 0..1 Name for this terminology capabilities (computer friendly) fhir:TerminologyCapabilities.title [ string ]; # 0..1 Name for this terminology capabilities (human friendly) fhir:TerminologyCapabilities.status [ code ]; # 1..1 draft | active | retired | unknown fhir:TerminologyCapabilities.experimental [ boolean ]; # 0..1 For testing purposes, not real usage fhir:TerminologyCapabilities.date [ dateTime ]; # 1..1 Date this was last changed fhir:TerminologyCapabilities.publisher [ string ]; # 0..1 Name of the publisher (organization or individual) fhir:TerminologyCapabilities.contact [ ContactDetail ], ... ; # 0..* Contact details for the publisher fhir:TerminologyCapabilities.description [ markdown ]; # 0..1 Natural language description of the terminology capabilities fhir:TerminologyCapabilities.useContext [ UsageContext ], ... ; # 0..* Context the content is intended to support fhir:TerminologyCapabilities.jurisdiction [ CodeableConcept ], ... ; # 0..* Intended jurisdiction for terminology capabilities (if applicable) fhir:TerminologyCapabilities.purpose [ markdown ]; # 0..1 Why this terminology capabilities is defined fhir:TerminologyCapabilities.copyright [ markdown ]; # 0..1 Use and/or publishing restrictions fhir:TerminologyCapabilities.lockedDate [ boolean ]; # 0..1 Whether lockedDate is supported fhir:TerminologyCapabilities.codeSystem [ # 0..* A code system supported by the server fhir:TerminologyCapabilities.codeSystem.uri [ uri ]; # 0..1 URI for the Code System fhir:TerminologyCapabilities.codeSystem.version [ # 0..* Version of Code System supported fhir:TerminologyCapabilities.codeSystem.version.code [ string ]; # 0..1 Version identifier for this version fhir:TerminologyCapabilities.codeSystem.version.isDefault [ boolean ]; # 0..1 If this is the default version for this code system fhir:TerminologyCapabilities.codeSystem.version.compositional [ boolean ]; # 0..1 If compositional grammar is supported fhir:TerminologyCapabilities.codeSystem.version.language [ code ], ... ; # 0..* Language Displays supported fhir:TerminologyCapabilities.codeSystem.version.filter [ # 0..* Filter Properties supported fhir:TerminologyCapabilities.codeSystem.version.filter.code [ code ]; # 1..1 Code of the property supported fhir:TerminologyCapabilities.codeSystem.version.filter.op [ code ], ... ; # 1..* Operations supported for the property ], ...; fhir:TerminologyCapabilities.codeSystem.version.property [ code ], ... ; # 0..* Properties supported for $lookup ], ...; ], ...; fhir:TerminologyCapabilities.expansion [ # 0..1 Information about the $expansion operation fhir:TerminologyCapabilities.expansion.hierarchical [ boolean ]; # 0..1 Whether the server can return nested value sets fhir:TerminologyCapabilities.expansion.paging [ boolean ]; # 0..1 Whether the server supports paging on expansion fhir:TerminologyCapabilities.expansion.incomplete [ boolean ]; # 0..1 Allow request for incomplete expansions? fhir:TerminologyCapabilities.expansion.definition [ Reference(StructureDefinition) ]; # 0..1 Supported fields on ExpansionProfile fhir:TerminologyCapabilities.expansion.profile [ Reference(ExpansionProfile) ], ... ; # 0..* Supported expansion profiles fhir:TerminologyCapabilities.expansion.textFilter [ markdown ]; # 0..1 Documentation about text searching works ]; fhir:TerminologyCapabilities.codeSearch [ code ]; # 0..1 explicit | all fhir:TerminologyCapabilities.validateCode [ # 0..1 Information about the $validation operation fhir:TerminologyCapabilities.validateCode.translations [ boolean ]; # 1..1 Whether translations are validated ]; fhir:TerminologyCapabilities.translation [ # 0..1 Information about the $translation operation fhir:TerminologyCapabilities.translation.needsMap [ boolean ]; # 1..1 Whether the client must identify the map ]; fhir:TerminologyCapabilities.closure [ # 0..1 Information about the $closure operation fhir:TerminologyCapabilities.closure.translation [ boolean ]; # 0..1 If cross-system closure is supported ]; ]
Alternate definitions: Master Definition (XML, JSON), XML Schema/Schematron + JSON Schema, ShEx (for Turtle) + see the extensions & the dependency analysis
Path | Definition | Type | Reference |
---|---|---|---|
TerminologyCapabilities.status | The lifecycle status of a Value Set or Concept Map. | Required | PublicationStatus |
TerminologyCapabilities.jurisdiction | Countries and regions within which this artifact is targeted for use | Extensible | Jurisdiction ValueSet |
TerminologyCapabilities.codeSearch | The degree to which the the server supports the code search parameter on ValueSet, if it is supported | Required | CodeSearchSupport |
supportedMessage
element can be used in place of the event
and the work group believes it may meet
implementer needs better, however because the new mechanism has not yet been reviewed by ballot, the older 'event' mechanism has
been retained. Implementers may use one or the other to define their capabilities. Feedback is welcome.CapabilityStatement
resource
does not attempt to describe service based use of resources. The various service specifications will need to describe this usage in their own way.A CapabilityStatement declares two different kinds of profiles for the functionality it describes. For a discussion of the use of these two types of resources, see two uses for profiles.
Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.
Name | Type | Description | Expression | In Common |
date | date | The terminology capabilities publication date | TerminologyCapabilities.date | |
description | string | The description of the terminology capabilities | TerminologyCapabilities.description | |
jurisdiction | token | Intended jurisdiction for the terminology capabilities | TerminologyCapabilities.jurisdiction | |
name | string | Computationally friendly name of the terminology capabilities | TerminologyCapabilities.name | |
publisher | string | Name of the publisher of the terminology capabilities | TerminologyCapabilities.publisher | |
status | token | The current status of the terminology capabilities | TerminologyCapabilities.status | |
title | string | The human-friendly name of the terminology capabilities | TerminologyCapabilities.title | |
url | uri | The uri that identifies the terminology capabilities | TerminologyCapabilities.url | |
version | token | The business version of the terminology capabilities | TerminologyCapabilities.version |