Implementation Guide
TI Common
Version 1.3.1 - release

## Extension: HTTP Header

Official URL: https://gematik.de/fhir/ti/StructureDefinition/extension-http-header | Version: 1.1.1
Active as of 2025-09-12 | Computable Name: HTTPHeader
Copyright/Legal: gematik GmbH / Dieses Artefakt ist lizenziert unter Apache License, Version 2.0.

Ermöglicht die Angabe global oder spezifisch geforderter HTTP Header in einem CapabilityStatement oder einer Resource-Interaktion.

Context of Use

This extension may be used on the following element(s):

- Element ID CapabilityStatement
- Element ID CapabilityStatement.rest.resource.interaction
- Element ID CapabilityStatement.rest.operation
- Element ID CapabilityStatement.rest.resource.operation

Usage info

Usages:

- Use this Extension: Capability Statement Profil für TI FHIR Data Service

You can also check for usages in the FHIR IG Statistics

### Formal Views of Extension Content

Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.

- Text Summary
- Differential Table
- Snapshot Table
- All

This structure is derived from Extension

Summary

Complex Extension: Ermöglicht die Angabe global oder spezifisch geforderter HTTP Header in einem CapabilityStatement oder einer Resource-Interaktion.

- name: string: An Extension
- type: string: An Extension
- description: string: An Extension
- pattern: string: An Extension
- format: string: An Extension
- required: boolean: An Extension

This structure is derived from Extension

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Extension |  | 0..* | Extension | HTTP Header
extension |  | 3..* | Extension | Extension
Slices for extension |  |  |  | Content/Rules for all slices
extension:name |  | 1..1 | Extension | Name des HTTP-Headers, z.B. X-Request-ID
extension |  | 0..0 |  | Extension
url |  | 1..1 | uri | "name"
value[x] |  | 0..1 | string | Value of extension
extension:type |  | 1..1 | Extension | Datentyp des Header-Werts, z.B. string, boolean
extension |  | 0..0 |  | Extension
url |  | 1..1 | uri | "type"
value[x] |  | 0..1 | string | Value of extension
extension:description |  | 0..1 | Extension | Beschreibung und Zweck des Headers
extension |  | 0..0 |  | Extension
url |  | 1..1 | uri | "description"
value[x] |  | 0..1 | string | Value of extension
extension:pattern |  | 0..1 | Extension | Erwartetes Format als regulärer Ausdruck (Regex)
extension |  | 0..0 |  | Extension
url |  | 1..1 | uri | "pattern"
value[x] |  | 0..1 | string | Value of extension
extension:format |  | 0..1 | Extension | Formatbeschreibung für Anzeige oder Validierung, z.B. uuid
extension |  | 0..0 |  | Extension
url |  | 1..1 | uri | "format"
value[x] |  | 0..1 | string | Value of extension
extension:required |  | 1..1 | Extension | Gibt an, ob der Header verpflichtend ist (true/false)
extension |  | 0..0 |  | Extension
url |  | 1..1 | uri | "required"
value[x] |  | 0..1 | boolean | Value of extension
url |  | 1..1 | uri | "https://gematik.de/fhir/ti/StructureDefinition/extension-http-header"
value[x] |  | 0..0 |  | Value of extension
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Extension |  | 0..* | Extension | HTTP Header
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 3..* | Extension | Extension Slice: Unordered, Open by value:url
extension:name |  | 1..1 | Extension | Name des HTTP-Headers, z.B. X-Request-ID
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "name"
value[x] |  | 0..1 | string | Value of extension
extension:type |  | 1..1 | Extension | Datentyp des Header-Werts, z.B. string, boolean
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "type"
value[x] |  | 0..1 | string | Value of extension
extension:description |  | 0..1 | Extension | Beschreibung und Zweck des Headers
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "description"
value[x] |  | 0..1 | string | Value of extension
extension:pattern |  | 0..1 | Extension | Erwartetes Format als regulärer Ausdruck (Regex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "pattern"
value[x] |  | 0..1 | string | Value of extension
extension:format |  | 0..1 | Extension | Formatbeschreibung für Anzeige oder Validierung, z.B. uuid
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "format"
value[x] |  | 0..1 | string | Value of extension
extension:required |  | 1..1 | Extension | Gibt an, ob der Header verpflichtend ist (true/false)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "required"
value[x] |  | 0..1 | boolean | Value of extension
url |  | 1..1 | uri | "https://gematik.de/fhir/ti/StructureDefinition/extension-http-header"
Documentation for this format

This structure is derived from Extension

Summary

Complex Extension: Ermöglicht die Angabe global oder spezifisch geforderter HTTP Header in einem CapabilityStatement oder einer Resource-Interaktion.

- name: string: An Extension
- type: string: An Extension
- description: string: An Extension
- pattern: string: An Extension
- format: string: An Extension
- required: boolean: An Extension

Differential View

This structure is derived from Extension

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Extension |  | 0..* | Extension | HTTP Header
extension |  | 3..* | Extension | Extension
Slices for extension |  |  |  | Content/Rules for all slices
extension:name |  | 1..1 | Extension | Name des HTTP-Headers, z.B. X-Request-ID
extension |  | 0..0 |  | Extension
url |  | 1..1 | uri | "name"
value[x] |  | 0..1 | string | Value of extension
extension:type |  | 1..1 | Extension | Datentyp des Header-Werts, z.B. string, boolean
extension |  | 0..0 |  | Extension
url |  | 1..1 | uri | "type"
value[x] |  | 0..1 | string | Value of extension
extension:description |  | 0..1 | Extension | Beschreibung und Zweck des Headers
extension |  | 0..0 |  | Extension
url |  | 1..1 | uri | "description"
value[x] |  | 0..1 | string | Value of extension
extension:pattern |  | 0..1 | Extension | Erwartetes Format als regulärer Ausdruck (Regex)
extension |  | 0..0 |  | Extension
url |  | 1..1 | uri | "pattern"
value[x] |  | 0..1 | string | Value of extension
extension:format |  | 0..1 | Extension | Formatbeschreibung für Anzeige oder Validierung, z.B. uuid
extension |  | 0..0 |  | Extension
url |  | 1..1 | uri | "format"
value[x] |  | 0..1 | string | Value of extension
extension:required |  | 1..1 | Extension | Gibt an, ob der Header verpflichtend ist (true/false)
extension |  | 0..0 |  | Extension
url |  | 1..1 | uri | "required"
value[x] |  | 0..1 | boolean | Value of extension
url |  | 1..1 | uri | "https://gematik.de/fhir/ti/StructureDefinition/extension-http-header"
value[x] |  | 0..0 |  | Value of extension
Documentation for this format

Snapshot View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Extension |  | 0..* | Extension | HTTP Header
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 3..* | Extension | Extension Slice: Unordered, Open by value:url
extension:name |  | 1..1 | Extension | Name des HTTP-Headers, z.B. X-Request-ID
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "name"
value[x] |  | 0..1 | string | Value of extension
extension:type |  | 1..1 | Extension | Datentyp des Header-Werts, z.B. string, boolean
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "type"
value[x] |  | 0..1 | string | Value of extension
extension:description |  | 0..1 | Extension | Beschreibung und Zweck des Headers
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "description"
value[x] |  | 0..1 | string | Value of extension
extension:pattern |  | 0..1 | Extension | Erwartetes Format als regulärer Ausdruck (Regex)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "pattern"
value[x] |  | 0..1 | string | Value of extension
extension:format |  | 0..1 | Extension | Formatbeschreibung für Anzeige oder Validierung, z.B. uuid
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "format"
value[x] |  | 0..1 | string | Value of extension
extension:required |  | 1..1 | Extension | Gibt an, ob der Header verpflichtend ist (true/false)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "required"
value[x] |  | 0..1 | boolean | Value of extension
url |  | 1..1 | uri | "https://gematik.de/fhir/ti/StructureDefinition/extension-http-header"
Documentation for this format

Other representations of profile: CSV, Excel, Schematron

#### Constraints

Id | Grade | Path(s) | Description | Expression
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()`