EU Health Data API
1.0.0-ballot - ballot 150

EU Health Data API, published by HL7 Europe. This guide is not an authorized publication; it is the continuous build for version 1.0.0-ballot built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/euridice-org/eu-health-data-api/ and changes regularly. See the Directory of published versions

Resource Profile: EU Health Data API Deployment CapabilityStatement

Official URL: http://hl7.eu/fhir/health-data-api/StructureDefinition/eu-api-deployment-capabilitystatement Version: 1.0.0-ballot
Draft as of 2026-11-05 Computable Name: EuApiDeploymentCapabilityStatement

Copyright/Legal: Copyright HL7 Europe. Licensed under Creative Commons public domain (CC0 1.0).

A concrete EU Health Data API deployment CapabilityStatement declaring one selected authorization security service.

Usages:

  • This Profile is not used by any profiles in this Specification

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

Description Differentials, Snapshots, and other representations.

NameFlagsCard.TypeDescription & Constraints    Filter: doco
CapabilityStatement C 0..* CapabilityStatement A statement of system capabilities
Constraints: cpb-0, cpb-1, cpb-2, cpb-3, cpb-7, cpb-14, cpb-15, cpb-16
CapabilityStatement.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
CapabilityStatement.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
CapabilityStatement.status This element is a modifier element. This element is included in summaries. 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.
CapabilityStatement.date This element is included in summaries. 1..1 dateTime Date last changed
CapabilityStatement.kind This element is included in summaries. C 1..1 code instance | capability | requirements
Binding: CapabilityStatementKind (required): How a capability statement is intended to be used.
Required Pattern: instance (extensions allowed)
CapabilityStatement.implementation This element is included in summaries. C 0..1 BackboneElement If this describes a specific instance
CapabilityStatement.implementation.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.implementation.description This element is included in summaries. 1..1 string Describes this specific instance
CapabilityStatement.fhirVersion This element is included in summaries. 1..1 code FHIR Version the system supports
Binding: FHIRVersion (required): All published FHIR Versions.
CapabilityStatement.format This element is included in summaries. 1..* code formats supported (xml | json | ttl | mime type)
Binding: Mime Types (required): The mime type of an attachment. Any valid mime type is allowed.

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
CapabilityStatement.​status Base required PublicationStatus 📍4.0.1 FHIR Std.
CapabilityStatement.​kind Base required CapabilityStatementKind 📍4.0.1 FHIR Std.
CapabilityStatement.​fhirVersion Base required FHIRVersion 📍4.0.1 FHIR Std.
CapabilityStatement.​format Base required MimeType 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
cpb-0 warning CapabilityStatement Name should be usable as an identifier for the module by machine processing applications such as code generation name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
cpb-1 error CapabilityStatement A Capability Statement SHALL have at least one of REST, messaging or document element. rest.exists() or messaging.exists() or document.exists()
cpb-2 error CapabilityStatement A Capability Statement SHALL have at least one of description, software, or implementation element. (description.count() + software.count() + implementation.count()) > 0
cpb-3 error CapabilityStatement Messaging end-point is required (and is only permitted) when a statement is for an implementation. messaging.endpoint.empty() or kind = 'instance'
cpb-7 error CapabilityStatement The set of documents must be unique by the combination of profile and mode. document.select(profile&mode).isDistinct()
cpb-14 error CapabilityStatement If kind = instance, implementation must be present and software may be present (kind != 'instance') or implementation.exists()
cpb-15 error CapabilityStatement If kind = capability, implementation must be absent, software must be present (kind != 'capability') or (implementation.exists().not() and software.exists())
cpb-16 error CapabilityStatement If kind = requirements, implementation and software must be absent (kind!='requirements') or (implementation.exists().not() and software.exists().not())
dom-2 error CapabilityStatement If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error CapabilityStatement If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error CapabilityStatement If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error CapabilityStatement If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice CapabilityStatement A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

This structure is derived from CapabilityStatement

NameFlagsCard.TypeDescription & Constraints    Filter: doco
CapabilityStatement 0..* CapabilityStatement A statement of system capabilities
CapabilityStatement.kind 1..1 code instance | capability | requirements
Required Pattern: instance (extensions allowed)
CapabilityStatement.rest
CapabilityStatement.rest.security 1..1 BackboneElement Information about security of implementation
CapabilityStatement.rest.security.service 1..1 CodeableConcept OAuth | SMART-on-FHIR | NTLM | Basic | Kerberos | Certificates
Binding: EU Health Data API Authorization Security Service ValueSet (required)
CapabilityStatement.rest.security.service.coding 1..1 Coding Code defined by a terminology system

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
CapabilityStatement.​rest.security.service Base required EU Health Data API Authorization Security Service ValueSet 📦1.0.0-ballot This IG
NameFlagsCard.TypeDescription & Constraints    Filter: doco
CapabilityStatement C 0..* CapabilityStatement A statement of system capabilities
Constraints: cpb-0, cpb-1, cpb-2, cpb-3, cpb-7, cpb-14, cpb-15, cpb-16
CapabilityStatement.id This element is included in summaries. 0..1 id Logical id of this artifact
CapabilityStatement.meta This element is included in summaries. 0..1 Meta Metadata about the resource
CapabilityStatement.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
CapabilityStatement.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
CapabilityStatement.text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
CapabilityStatement.contained 0..* Resource Contained, inline Resources
CapabilityStatement.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
CapabilityStatement.url This element is included in summaries. 0..1 uri Canonical identifier for this capability statement, represented as a URI (globally unique)
CapabilityStatement.version This element is included in summaries. 0..1 string Business version of the capability statement
CapabilityStatement.name This element is included in summaries. C 0..1 string Name for this capability statement (computer friendly)
CapabilityStatement.title This element is included in summaries. 0..1 string Name for this capability statement (human friendly)
CapabilityStatement.status This element is a modifier element. This element is included in summaries. 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.
CapabilityStatement.experimental This element is included in summaries. 0..1 boolean For testing purposes, not real usage
CapabilityStatement.date This element is included in summaries. 1..1 dateTime Date last changed
CapabilityStatement.publisher This element is included in summaries. 0..1 string Name of the publisher (organization or individual)
CapabilityStatement.contact This element is included in summaries. 0..* ContactDetail Contact details for the publisher
CapabilityStatement.description C 0..1 markdown Natural language description of the capability statement
CapabilityStatement.useContext This element is included in summaries. 0..* UsageContext The context that the content is intended to support
CapabilityStatement.jurisdiction This element is included in summaries. 0..* CodeableConcept Intended jurisdiction for capability statement (if applicable)
Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use.
CapabilityStatement.purpose 0..1 markdown Why this capability statement is defined
CapabilityStatement.copyright 0..1 markdown Use and/or publishing restrictions
CapabilityStatement.kind This element is included in summaries. C 1..1 code instance | capability | requirements
Binding: CapabilityStatementKind (required): How a capability statement is intended to be used.
Required Pattern: instance (extensions allowed)
CapabilityStatement.instantiates This element is included in summaries. 0..* canonical(CapabilityStatement) Canonical URL of another capability statement this implements
CapabilityStatement.imports This element is included in summaries. 0..* canonical(CapabilityStatement) Canonical URL of another capability statement this adds to
CapabilityStatement.software This element is included in summaries. C 0..1 BackboneElement Software that is covered by this capability statement
CapabilityStatement.software.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.software.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.software.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.software.name This element is included in summaries. 1..1 string A name the software is known by
CapabilityStatement.software.version This element is included in summaries. 0..1 string Version covered by this statement
CapabilityStatement.software.releaseDate This element is included in summaries. 0..1 dateTime Date this version was released
CapabilityStatement.implementation This element is included in summaries. C 0..1 BackboneElement If this describes a specific instance
CapabilityStatement.implementation.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.implementation.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.implementation.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.implementation.description This element is included in summaries. 1..1 string Describes this specific instance
CapabilityStatement.implementation.url This element is included in summaries. 0..1 url Base URL for the installation
CapabilityStatement.implementation.custodian This element is included in summaries. 0..1 Reference(Organization) Organization that manages the data
CapabilityStatement.fhirVersion This element is included in summaries. 1..1 code FHIR Version the system supports
Binding: FHIRVersion (required): All published FHIR Versions.
CapabilityStatement.format This element is included in summaries. 1..* code formats supported (xml | json | ttl | mime type)
Binding: Mime Types (required): The mime type of an attachment. Any valid mime type is allowed.
CapabilityStatement.patchFormat This element is included in summaries. 0..* code Patch formats supported
Binding: Mime Types (required): The mime type of an attachment. Any valid mime type is allowed.
CapabilityStatement.implementationGuide This element is included in summaries. 0..* canonical(ImplementationGuide) Implementation guides supported
CapabilityStatement.rest This element is included in summaries. C 0..* BackboneElement If the endpoint is a RESTful one
Constraints: cpb-9
CapabilityStatement.rest.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.rest.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.rest.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.rest.mode This element is included in summaries. 1..1 code client | server
Binding: RestfulCapabilityMode (required): The mode of a RESTful capability statement.
CapabilityStatement.rest.documentation 0..1 markdown General description of implementation
CapabilityStatement.rest.security This element is included in summaries. 1..1 BackboneElement Information about security of implementation
CapabilityStatement.rest.security.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.rest.security.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.rest.security.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.rest.security.cors This element is included in summaries. 0..1 boolean Adds CORS Headers (http://enable-cors.org/)
CapabilityStatement.rest.security.service This element is included in summaries. 1..1 CodeableConcept OAuth | SMART-on-FHIR | NTLM | Basic | Kerberos | Certificates
Binding: EU Health Data API Authorization Security Service ValueSet (required)
CapabilityStatement.rest.security.service.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.rest.security.service.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
CapabilityStatement.rest.security.service.coding This element is included in summaries. 1..1 Coding Code defined by a terminology system
CapabilityStatement.rest.security.service.text This element is included in summaries. 0..1 string Plain text representation of the concept
CapabilityStatement.rest.security.description 0..1 markdown General description of how security works
CapabilityStatement.rest.resource This element is included in summaries. C 0..* BackboneElement Resource served on the REST interface
Constraints: cpb-12
CapabilityStatement.rest.resource.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.rest.resource.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.rest.resource.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.rest.resource.type This element is included in summaries. 1..1 code A resource type that is supported
Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.
CapabilityStatement.rest.resource.profile This element is included in summaries. 0..1 canonical(StructureDefinition) Base System profile for all uses of resource
CapabilityStatement.rest.resource.supportedProfile This element is included in summaries. 0..* canonical(StructureDefinition) Profiles for use cases supported
CapabilityStatement.rest.resource.documentation 0..1 markdown Additional information about the use of the resource type
CapabilityStatement.rest.resource.interaction 0..* BackboneElement What operations are supported?
CapabilityStatement.rest.resource.interaction.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.rest.resource.interaction.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.rest.resource.interaction.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.rest.resource.interaction.code 1..1 code read | vread | update | patch | delete | history-instance | history-type | create | search-type
Binding: TypeRestfulInteraction (required): Operations supported by REST at the type or instance level.
CapabilityStatement.rest.resource.interaction.documentation 0..1 markdown Anything special about operation behavior
CapabilityStatement.rest.resource.versioning 0..1 code no-version | versioned | versioned-update
Binding: ResourceVersionPolicy (required): How the system supports versioning for a resource.
CapabilityStatement.rest.resource.readHistory 0..1 boolean Whether vRead can return past versions
CapabilityStatement.rest.resource.updateCreate 0..1 boolean If update can commit to a new identity
CapabilityStatement.rest.resource.conditionalCreate 0..1 boolean If allows/uses conditional create
CapabilityStatement.rest.resource.conditionalRead 0..1 code not-supported | modified-since | not-match | full-support
Binding: ConditionalReadStatus (required): A code that indicates how the server supports conditional read.
CapabilityStatement.rest.resource.conditionalUpdate 0..1 boolean If allows/uses conditional update
CapabilityStatement.rest.resource.conditionalDelete 0..1 code not-supported | single | multiple - how conditional delete is supported
Binding: ConditionalDeleteStatus (required): A code that indicates how the server supports conditional delete.
CapabilityStatement.rest.resource.referencePolicy 0..* code literal | logical | resolves | enforced | local
Binding: ReferenceHandlingPolicy (required): A set of flags that defines how references are supported.
CapabilityStatement.rest.resource.searchInclude 0..* string _include values supported by the server
CapabilityStatement.rest.resource.searchRevInclude 0..* string _revinclude values supported by the server
CapabilityStatement.rest.resource.searchParam 0..* BackboneElement Search parameters supported by implementation
CapabilityStatement.rest.resource.searchParam.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.rest.resource.searchParam.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.rest.resource.searchParam.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.rest.resource.searchParam.name 1..1 string Name of search parameter
CapabilityStatement.rest.resource.searchParam.definition 0..1 canonical(SearchParameter) Source of definition for parameter
CapabilityStatement.rest.resource.searchParam.type 1..1 code number | date | string | token | reference | composite | quantity | uri | special
Binding: SearchParamType (required): Data types allowed to be used for search parameters.
CapabilityStatement.rest.resource.searchParam.documentation 0..1 markdown Server-specific usage
CapabilityStatement.rest.resource.operation This element is included in summaries. 0..* BackboneElement Definition of a resource operation
CapabilityStatement.rest.resource.operation.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.rest.resource.operation.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.rest.resource.operation.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.rest.resource.operation.name This element is included in summaries. 1..1 string Name by which the operation/query is invoked
CapabilityStatement.rest.resource.operation.definition This element is included in summaries. 1..1 canonical(OperationDefinition) The defined operation/query
CapabilityStatement.rest.resource.operation.documentation 0..1 markdown Specific details about operation behavior
CapabilityStatement.rest.interaction 0..* BackboneElement What operations are supported?
CapabilityStatement.rest.interaction.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.rest.interaction.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.rest.interaction.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.rest.interaction.code 1..1 code transaction | batch | search-system | history-system
Binding: SystemRestfulInteraction (required): Operations supported by REST at the system level.
CapabilityStatement.rest.interaction.documentation 0..1 markdown Anything special about operation behavior
CapabilityStatement.rest.searchParam 0..* See searchParam (CapabilityStatement) Search parameters for searching all resources
CapabilityStatement.rest.operation This element is included in summaries. 0..* See operation (CapabilityStatement) Definition of a system level operation
CapabilityStatement.rest.compartment 0..* canonical(CompartmentDefinition) Compartments served/used by system
CapabilityStatement.messaging This element is included in summaries. C 0..* BackboneElement If messaging is supported
CapabilityStatement.messaging.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.messaging.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.messaging.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.messaging.endpoint 0..* BackboneElement Where messages should be sent
CapabilityStatement.messaging.endpoint.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.messaging.endpoint.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.messaging.endpoint.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.messaging.endpoint.protocol 1..1 Coding http | ftp | mllp +
Binding: MessageTransport (extensible): The protocol used for message transport.
CapabilityStatement.messaging.endpoint.address 1..1 url Network address or identifier of the end-point
CapabilityStatement.messaging.reliableCache 0..1 unsignedInt Reliable Message Cache Length (min)
CapabilityStatement.messaging.documentation 0..1 markdown Messaging interface behavior details
CapabilityStatement.messaging.supportedMessage This element is included in summaries. 0..* BackboneElement Messages supported by this system
CapabilityStatement.messaging.supportedMessage.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.messaging.supportedMessage.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.messaging.supportedMessage.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.messaging.supportedMessage.mode This element is included in summaries. 1..1 code sender | receiver
Binding: EventCapabilityMode (required): The mode of a message capability statement.
CapabilityStatement.messaging.supportedMessage.definition This element is included in summaries. 1..1 canonical(MessageDefinition) Message supported by this system
CapabilityStatement.document This element is included in summaries. C 0..* BackboneElement Document definition
CapabilityStatement.document.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.document.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.document.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.document.mode This element is included in summaries. 1..1 code producer | consumer
Binding: DocumentMode (required): Whether the application produces or consumes documents.
CapabilityStatement.document.documentation 0..1 markdown Description of document support
CapabilityStatement.document.profile This element is included in summaries. 1..1 canonical(StructureDefinition) Constraint on the resources used in the document

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
CapabilityStatement.​language Base preferred Common Languages 📍4.0.1 FHIR Std.
CapabilityStatement.​status Base required PublicationStatus 📍4.0.1 FHIR Std.
CapabilityStatement.​jurisdiction Base extensible Jurisdiction 📍4.0.1 FHIR Std.
CapabilityStatement.​kind Base required CapabilityStatementKind 📍4.0.1 FHIR Std.
CapabilityStatement.​fhirVersion Base required FHIRVersion 📍4.0.1 FHIR Std.
CapabilityStatement.​format Base required MimeType 📍4.0.1 FHIR Std.
CapabilityStatement.​patchFormat Base required MimeType 📍4.0.1 FHIR Std.
CapabilityStatement.​rest.mode Base required RestfulCapabilityMode 📍4.0.1 FHIR Std.
CapabilityStatement.​rest.security.service Base required EU Health Data API Authorization Security Service ValueSet 📦1.0.0-ballot This IG
CapabilityStatement.​rest.resource.type Base required ResourceType 📍4.0.1 FHIR Std.
CapabilityStatement.​rest.resource.interaction.​code Base required TypeRestfulInteraction 📍4.0.1 FHIR Std.
CapabilityStatement.​rest.resource.versioning Base required ResourceVersionPolicy 📍4.0.1 FHIR Std.
CapabilityStatement.​rest.resource.conditionalRead Base required ConditionalReadStatus 📍4.0.1 FHIR Std.
CapabilityStatement.​rest.resource.conditionalDelete Base required ConditionalDeleteStatus 📍4.0.1 FHIR Std.
CapabilityStatement.​rest.resource.referencePolicy Base required ReferenceHandlingPolicy 📍4.0.1 FHIR Std.
CapabilityStatement.​rest.resource.searchParam.​type Base required SearchParamType 📍4.0.1 FHIR Std.
CapabilityStatement.​rest.interaction.code Base required SystemRestfulInteraction 📍4.0.1 FHIR Std.
CapabilityStatement.​messaging.endpoint.protocol Base extensible MessageTransport 📍4.0.1 FHIR Std.
CapabilityStatement.​messaging.supportedMessage.​mode Base required EventCapabilityMode 📍4.0.1 FHIR Std.
CapabilityStatement.​document.mode Base required DocumentMode 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
cpb-0 warning CapabilityStatement Name should be usable as an identifier for the module by machine processing applications such as code generation name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
cpb-1 error CapabilityStatement A Capability Statement SHALL have at least one of REST, messaging or document element. rest.exists() or messaging.exists() or document.exists()
cpb-2 error CapabilityStatement A Capability Statement SHALL have at least one of description, software, or implementation element. (description.count() + software.count() + implementation.count()) > 0
cpb-3 error CapabilityStatement Messaging end-point is required (and is only permitted) when a statement is for an implementation. messaging.endpoint.empty() or kind = 'instance'
cpb-7 error CapabilityStatement The set of documents must be unique by the combination of profile and mode. document.select(profile&mode).isDistinct()
cpb-9 error CapabilityStatement.rest A given resource can only be described once per RESTful mode. resource.select(type).isDistinct()
cpb-12 error CapabilityStatement.rest.resource Search parameter names must be unique in the context of a resource. searchParam.select(name).isDistinct()
cpb-14 error CapabilityStatement If kind = instance, implementation must be present and software may be present (kind != 'instance') or implementation.exists()
cpb-15 error CapabilityStatement If kind = capability, implementation must be absent, software must be present (kind != 'capability') or (implementation.exists().not() and software.exists())
cpb-16 error CapabilityStatement If kind = requirements, implementation and software must be absent (kind!='requirements') or (implementation.exists().not() and software.exists().not())
dom-2 error CapabilityStatement If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error CapabilityStatement If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error CapabilityStatement If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error CapabilityStatement If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice CapabilityStatement A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

This structure is derived from CapabilityStatement

Summary

Mandatory: 0 element(3 nested mandatory elements)

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
CapabilityStatement C 0..* CapabilityStatement A statement of system capabilities
Constraints: cpb-0, cpb-1, cpb-2, cpb-3, cpb-7, cpb-14, cpb-15, cpb-16
CapabilityStatement.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
CapabilityStatement.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
CapabilityStatement.status This element is a modifier element. This element is included in summaries. 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.
CapabilityStatement.date This element is included in summaries. 1..1 dateTime Date last changed
CapabilityStatement.kind This element is included in summaries. C 1..1 code instance | capability | requirements
Binding: CapabilityStatementKind (required): How a capability statement is intended to be used.
Required Pattern: instance (extensions allowed)
CapabilityStatement.implementation This element is included in summaries. C 0..1 BackboneElement If this describes a specific instance
CapabilityStatement.implementation.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.implementation.description This element is included in summaries. 1..1 string Describes this specific instance
CapabilityStatement.fhirVersion This element is included in summaries. 1..1 code FHIR Version the system supports
Binding: FHIRVersion (required): All published FHIR Versions.
CapabilityStatement.format This element is included in summaries. 1..* code formats supported (xml | json | ttl | mime type)
Binding: Mime Types (required): The mime type of an attachment. Any valid mime type is allowed.

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
CapabilityStatement.​status Base required PublicationStatus 📍4.0.1 FHIR Std.
CapabilityStatement.​kind Base required CapabilityStatementKind 📍4.0.1 FHIR Std.
CapabilityStatement.​fhirVersion Base required FHIRVersion 📍4.0.1 FHIR Std.
CapabilityStatement.​format Base required MimeType 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
cpb-0 warning CapabilityStatement Name should be usable as an identifier for the module by machine processing applications such as code generation name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
cpb-1 error CapabilityStatement A Capability Statement SHALL have at least one of REST, messaging or document element. rest.exists() or messaging.exists() or document.exists()
cpb-2 error CapabilityStatement A Capability Statement SHALL have at least one of description, software, or implementation element. (description.count() + software.count() + implementation.count()) > 0
cpb-3 error CapabilityStatement Messaging end-point is required (and is only permitted) when a statement is for an implementation. messaging.endpoint.empty() or kind = 'instance'
cpb-7 error CapabilityStatement The set of documents must be unique by the combination of profile and mode. document.select(profile&mode).isDistinct()
cpb-14 error CapabilityStatement If kind = instance, implementation must be present and software may be present (kind != 'instance') or implementation.exists()
cpb-15 error CapabilityStatement If kind = capability, implementation must be absent, software must be present (kind != 'capability') or (implementation.exists().not() and software.exists())
cpb-16 error CapabilityStatement If kind = requirements, implementation and software must be absent (kind!='requirements') or (implementation.exists().not() and software.exists().not())
dom-2 error CapabilityStatement If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error CapabilityStatement If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error CapabilityStatement If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error CapabilityStatement If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice CapabilityStatement A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

Differential View

This structure is derived from CapabilityStatement

NameFlagsCard.TypeDescription & Constraints    Filter: doco
CapabilityStatement 0..* CapabilityStatement A statement of system capabilities
CapabilityStatement.kind 1..1 code instance | capability | requirements
Required Pattern: instance (extensions allowed)
CapabilityStatement.rest
CapabilityStatement.rest.security 1..1 BackboneElement Information about security of implementation
CapabilityStatement.rest.security.service 1..1 CodeableConcept OAuth | SMART-on-FHIR | NTLM | Basic | Kerberos | Certificates
Binding: EU Health Data API Authorization Security Service ValueSet (required)
CapabilityStatement.rest.security.service.coding 1..1 Coding Code defined by a terminology system

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
CapabilityStatement.​rest.security.service Base required EU Health Data API Authorization Security Service ValueSet 📦1.0.0-ballot This IG

Snapshot ViewView

NameFlagsCard.TypeDescription & Constraints    Filter: doco
CapabilityStatement C 0..* CapabilityStatement A statement of system capabilities
Constraints: cpb-0, cpb-1, cpb-2, cpb-3, cpb-7, cpb-14, cpb-15, cpb-16
CapabilityStatement.id This element is included in summaries. 0..1 id Logical id of this artifact
CapabilityStatement.meta This element is included in summaries. 0..1 Meta Metadata about the resource
CapabilityStatement.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
CapabilityStatement.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
CapabilityStatement.text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
CapabilityStatement.contained 0..* Resource Contained, inline Resources
CapabilityStatement.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
CapabilityStatement.url This element is included in summaries. 0..1 uri Canonical identifier for this capability statement, represented as a URI (globally unique)
CapabilityStatement.version This element is included in summaries. 0..1 string Business version of the capability statement
CapabilityStatement.name This element is included in summaries. C 0..1 string Name for this capability statement (computer friendly)
CapabilityStatement.title This element is included in summaries. 0..1 string Name for this capability statement (human friendly)
CapabilityStatement.status This element is a modifier element. This element is included in summaries. 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.
CapabilityStatement.experimental This element is included in summaries. 0..1 boolean For testing purposes, not real usage
CapabilityStatement.date This element is included in summaries. 1..1 dateTime Date last changed
CapabilityStatement.publisher This element is included in summaries. 0..1 string Name of the publisher (organization or individual)
CapabilityStatement.contact This element is included in summaries. 0..* ContactDetail Contact details for the publisher
CapabilityStatement.description C 0..1 markdown Natural language description of the capability statement
CapabilityStatement.useContext This element is included in summaries. 0..* UsageContext The context that the content is intended to support
CapabilityStatement.jurisdiction This element is included in summaries. 0..* CodeableConcept Intended jurisdiction for capability statement (if applicable)
Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use.
CapabilityStatement.purpose 0..1 markdown Why this capability statement is defined
CapabilityStatement.copyright 0..1 markdown Use and/or publishing restrictions
CapabilityStatement.kind This element is included in summaries. C 1..1 code instance | capability | requirements
Binding: CapabilityStatementKind (required): How a capability statement is intended to be used.
Required Pattern: instance (extensions allowed)
CapabilityStatement.instantiates This element is included in summaries. 0..* canonical(CapabilityStatement) Canonical URL of another capability statement this implements
CapabilityStatement.imports This element is included in summaries. 0..* canonical(CapabilityStatement) Canonical URL of another capability statement this adds to
CapabilityStatement.software This element is included in summaries. C 0..1 BackboneElement Software that is covered by this capability statement
CapabilityStatement.software.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.software.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.software.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.software.name This element is included in summaries. 1..1 string A name the software is known by
CapabilityStatement.software.version This element is included in summaries. 0..1 string Version covered by this statement
CapabilityStatement.software.releaseDate This element is included in summaries. 0..1 dateTime Date this version was released
CapabilityStatement.implementation This element is included in summaries. C 0..1 BackboneElement If this describes a specific instance
CapabilityStatement.implementation.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.implementation.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.implementation.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.implementation.description This element is included in summaries. 1..1 string Describes this specific instance
CapabilityStatement.implementation.url This element is included in summaries. 0..1 url Base URL for the installation
CapabilityStatement.implementation.custodian This element is included in summaries. 0..1 Reference(Organization) Organization that manages the data
CapabilityStatement.fhirVersion This element is included in summaries. 1..1 code FHIR Version the system supports
Binding: FHIRVersion (required): All published FHIR Versions.
CapabilityStatement.format This element is included in summaries. 1..* code formats supported (xml | json | ttl | mime type)
Binding: Mime Types (required): The mime type of an attachment. Any valid mime type is allowed.
CapabilityStatement.patchFormat This element is included in summaries. 0..* code Patch formats supported
Binding: Mime Types (required): The mime type of an attachment. Any valid mime type is allowed.
CapabilityStatement.implementationGuide This element is included in summaries. 0..* canonical(ImplementationGuide) Implementation guides supported
CapabilityStatement.rest This element is included in summaries. C 0..* BackboneElement If the endpoint is a RESTful one
Constraints: cpb-9
CapabilityStatement.rest.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.rest.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.rest.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.rest.mode This element is included in summaries. 1..1 code client | server
Binding: RestfulCapabilityMode (required): The mode of a RESTful capability statement.
CapabilityStatement.rest.documentation 0..1 markdown General description of implementation
CapabilityStatement.rest.security This element is included in summaries. 1..1 BackboneElement Information about security of implementation
CapabilityStatement.rest.security.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.rest.security.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.rest.security.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.rest.security.cors This element is included in summaries. 0..1 boolean Adds CORS Headers (http://enable-cors.org/)
CapabilityStatement.rest.security.service This element is included in summaries. 1..1 CodeableConcept OAuth | SMART-on-FHIR | NTLM | Basic | Kerberos | Certificates
Binding: EU Health Data API Authorization Security Service ValueSet (required)
CapabilityStatement.rest.security.service.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.rest.security.service.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
CapabilityStatement.rest.security.service.coding This element is included in summaries. 1..1 Coding Code defined by a terminology system
CapabilityStatement.rest.security.service.text This element is included in summaries. 0..1 string Plain text representation of the concept
CapabilityStatement.rest.security.description 0..1 markdown General description of how security works
CapabilityStatement.rest.resource This element is included in summaries. C 0..* BackboneElement Resource served on the REST interface
Constraints: cpb-12
CapabilityStatement.rest.resource.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.rest.resource.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.rest.resource.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.rest.resource.type This element is included in summaries. 1..1 code A resource type that is supported
Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.
CapabilityStatement.rest.resource.profile This element is included in summaries. 0..1 canonical(StructureDefinition) Base System profile for all uses of resource
CapabilityStatement.rest.resource.supportedProfile This element is included in summaries. 0..* canonical(StructureDefinition) Profiles for use cases supported
CapabilityStatement.rest.resource.documentation 0..1 markdown Additional information about the use of the resource type
CapabilityStatement.rest.resource.interaction 0..* BackboneElement What operations are supported?
CapabilityStatement.rest.resource.interaction.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.rest.resource.interaction.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.rest.resource.interaction.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.rest.resource.interaction.code 1..1 code read | vread | update | patch | delete | history-instance | history-type | create | search-type
Binding: TypeRestfulInteraction (required): Operations supported by REST at the type or instance level.
CapabilityStatement.rest.resource.interaction.documentation 0..1 markdown Anything special about operation behavior
CapabilityStatement.rest.resource.versioning 0..1 code no-version | versioned | versioned-update
Binding: ResourceVersionPolicy (required): How the system supports versioning for a resource.
CapabilityStatement.rest.resource.readHistory 0..1 boolean Whether vRead can return past versions
CapabilityStatement.rest.resource.updateCreate 0..1 boolean If update can commit to a new identity
CapabilityStatement.rest.resource.conditionalCreate 0..1 boolean If allows/uses conditional create
CapabilityStatement.rest.resource.conditionalRead 0..1 code not-supported | modified-since | not-match | full-support
Binding: ConditionalReadStatus (required): A code that indicates how the server supports conditional read.
CapabilityStatement.rest.resource.conditionalUpdate 0..1 boolean If allows/uses conditional update
CapabilityStatement.rest.resource.conditionalDelete 0..1 code not-supported | single | multiple - how conditional delete is supported
Binding: ConditionalDeleteStatus (required): A code that indicates how the server supports conditional delete.
CapabilityStatement.rest.resource.referencePolicy 0..* code literal | logical | resolves | enforced | local
Binding: ReferenceHandlingPolicy (required): A set of flags that defines how references are supported.
CapabilityStatement.rest.resource.searchInclude 0..* string _include values supported by the server
CapabilityStatement.rest.resource.searchRevInclude 0..* string _revinclude values supported by the server
CapabilityStatement.rest.resource.searchParam 0..* BackboneElement Search parameters supported by implementation
CapabilityStatement.rest.resource.searchParam.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.rest.resource.searchParam.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.rest.resource.searchParam.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.rest.resource.searchParam.name 1..1 string Name of search parameter
CapabilityStatement.rest.resource.searchParam.definition 0..1 canonical(SearchParameter) Source of definition for parameter
CapabilityStatement.rest.resource.searchParam.type 1..1 code number | date | string | token | reference | composite | quantity | uri | special
Binding: SearchParamType (required): Data types allowed to be used for search parameters.
CapabilityStatement.rest.resource.searchParam.documentation 0..1 markdown Server-specific usage
CapabilityStatement.rest.resource.operation This element is included in summaries. 0..* BackboneElement Definition of a resource operation
CapabilityStatement.rest.resource.operation.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.rest.resource.operation.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.rest.resource.operation.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.rest.resource.operation.name This element is included in summaries. 1..1 string Name by which the operation/query is invoked
CapabilityStatement.rest.resource.operation.definition This element is included in summaries. 1..1 canonical(OperationDefinition) The defined operation/query
CapabilityStatement.rest.resource.operation.documentation 0..1 markdown Specific details about operation behavior
CapabilityStatement.rest.interaction 0..* BackboneElement What operations are supported?
CapabilityStatement.rest.interaction.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.rest.interaction.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.rest.interaction.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.rest.interaction.code 1..1 code transaction | batch | search-system | history-system
Binding: SystemRestfulInteraction (required): Operations supported by REST at the system level.
CapabilityStatement.rest.interaction.documentation 0..1 markdown Anything special about operation behavior
CapabilityStatement.rest.searchParam 0..* See searchParam (CapabilityStatement) Search parameters for searching all resources
CapabilityStatement.rest.operation This element is included in summaries. 0..* See operation (CapabilityStatement) Definition of a system level operation
CapabilityStatement.rest.compartment 0..* canonical(CompartmentDefinition) Compartments served/used by system
CapabilityStatement.messaging This element is included in summaries. C 0..* BackboneElement If messaging is supported
CapabilityStatement.messaging.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.messaging.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.messaging.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.messaging.endpoint 0..* BackboneElement Where messages should be sent
CapabilityStatement.messaging.endpoint.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.messaging.endpoint.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.messaging.endpoint.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.messaging.endpoint.protocol 1..1 Coding http | ftp | mllp +
Binding: MessageTransport (extensible): The protocol used for message transport.
CapabilityStatement.messaging.endpoint.address 1..1 url Network address or identifier of the end-point
CapabilityStatement.messaging.reliableCache 0..1 unsignedInt Reliable Message Cache Length (min)
CapabilityStatement.messaging.documentation 0..1 markdown Messaging interface behavior details
CapabilityStatement.messaging.supportedMessage This element is included in summaries. 0..* BackboneElement Messages supported by this system
CapabilityStatement.messaging.supportedMessage.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.messaging.supportedMessage.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.messaging.supportedMessage.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.messaging.supportedMessage.mode This element is included in summaries. 1..1 code sender | receiver
Binding: EventCapabilityMode (required): The mode of a message capability statement.
CapabilityStatement.messaging.supportedMessage.definition This element is included in summaries. 1..1 canonical(MessageDefinition) Message supported by this system
CapabilityStatement.document This element is included in summaries. C 0..* BackboneElement Document definition
CapabilityStatement.document.id 0..1 string Unique id for inter-element referencing
CapabilityStatement.document.extension 0..* Extension Additional content defined by implementations
CapabilityStatement.document.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CapabilityStatement.document.mode This element is included in summaries. 1..1 code producer | consumer
Binding: DocumentMode (required): Whether the application produces or consumes documents.
CapabilityStatement.document.documentation 0..1 markdown Description of document support
CapabilityStatement.document.profile This element is included in summaries. 1..1 canonical(StructureDefinition) Constraint on the resources used in the document

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
CapabilityStatement.​language Base preferred Common Languages 📍4.0.1 FHIR Std.
CapabilityStatement.​status Base required PublicationStatus 📍4.0.1 FHIR Std.
CapabilityStatement.​jurisdiction Base extensible Jurisdiction 📍4.0.1 FHIR Std.
CapabilityStatement.​kind Base required CapabilityStatementKind 📍4.0.1 FHIR Std.
CapabilityStatement.​fhirVersion Base required FHIRVersion 📍4.0.1 FHIR Std.
CapabilityStatement.​format Base required MimeType 📍4.0.1 FHIR Std.
CapabilityStatement.​patchFormat Base required MimeType 📍4.0.1 FHIR Std.
CapabilityStatement.​rest.mode Base required RestfulCapabilityMode 📍4.0.1 FHIR Std.
CapabilityStatement.​rest.security.service Base required EU Health Data API Authorization Security Service ValueSet 📦1.0.0-ballot This IG
CapabilityStatement.​rest.resource.type Base required ResourceType 📍4.0.1 FHIR Std.
CapabilityStatement.​rest.resource.interaction.​code Base required TypeRestfulInteraction 📍4.0.1 FHIR Std.
CapabilityStatement.​rest.resource.versioning Base required ResourceVersionPolicy 📍4.0.1 FHIR Std.
CapabilityStatement.​rest.resource.conditionalRead Base required ConditionalReadStatus 📍4.0.1 FHIR Std.
CapabilityStatement.​rest.resource.conditionalDelete Base required ConditionalDeleteStatus 📍4.0.1 FHIR Std.
CapabilityStatement.​rest.resource.referencePolicy Base required ReferenceHandlingPolicy 📍4.0.1 FHIR Std.
CapabilityStatement.​rest.resource.searchParam.​type Base required SearchParamType 📍4.0.1 FHIR Std.
CapabilityStatement.​rest.interaction.code Base required SystemRestfulInteraction 📍4.0.1 FHIR Std.
CapabilityStatement.​messaging.endpoint.protocol Base extensible MessageTransport 📍4.0.1 FHIR Std.
CapabilityStatement.​messaging.supportedMessage.​mode Base required EventCapabilityMode 📍4.0.1 FHIR Std.
CapabilityStatement.​document.mode Base required DocumentMode 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
cpb-0 warning CapabilityStatement Name should be usable as an identifier for the module by machine processing applications such as code generation name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
cpb-1 error CapabilityStatement A Capability Statement SHALL have at least one of REST, messaging or document element. rest.exists() or messaging.exists() or document.exists()
cpb-2 error CapabilityStatement A Capability Statement SHALL have at least one of description, software, or implementation element. (description.count() + software.count() + implementation.count()) > 0
cpb-3 error CapabilityStatement Messaging end-point is required (and is only permitted) when a statement is for an implementation. messaging.endpoint.empty() or kind = 'instance'
cpb-7 error CapabilityStatement The set of documents must be unique by the combination of profile and mode. document.select(profile&mode).isDistinct()
cpb-9 error CapabilityStatement.rest A given resource can only be described once per RESTful mode. resource.select(type).isDistinct()
cpb-12 error CapabilityStatement.rest.resource Search parameter names must be unique in the context of a resource. searchParam.select(name).isDistinct()
cpb-14 error CapabilityStatement If kind = instance, implementation must be present and software may be present (kind != 'instance') or implementation.exists()
cpb-15 error CapabilityStatement If kind = capability, implementation must be absent, software must be present (kind != 'capability') or (implementation.exists().not() and software.exists())
cpb-16 error CapabilityStatement If kind = requirements, implementation and software must be absent (kind!='requirements') or (implementation.exists().not() and software.exists().not())
dom-2 error CapabilityStatement If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error CapabilityStatement If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error CapabilityStatement If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error CapabilityStatement If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice CapabilityStatement A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

This structure is derived from CapabilityStatement

Summary

Mandatory: 0 element(3 nested mandatory elements)

 

Other representations of profile: CSV, Excel, Schematron