Soigneur FHIR Implementation Guide
0.1.0 - ci-build Germany flag

Soigneur FHIR Implementation Guide - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Extension: Per-channel data source

Official URL: https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-data-source Version: 0.1.0
Draft as of 2026-09-08 Computable Name: CcExtDataSource

Copyright/Legal: Copyright (c) Soigneur. Licensed under CC0-1.0 (public domain dedication). FHIR(R) is the registered trademark of HL7 and is used with permission.

Binds one data-sync channel to the ecosystem that serves it; repeats once per active channel (ADR 0041). channel is an inbound data type (completed workouts, wellness, sleep) or the outbound plan push; source is the ecosystem serving it. So a future Garmin-workouts / Fitbit-sleep mix is representable, and 'push my plan out' is simply a plan binding — no platform-named push flag. 'No connected platform' is the absence of any binding. Sub-values are spec-driven (cc-data-channel / cc-data-source), mirrored by agent.data_sources, so no dialog hardcodes a platform or data type.

Context of Use

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

Usage info

Usages:

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.

This structure is derived from Extension

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Extension 0..* Extension Extension
... extension 2..* Extension Extension
... Slices for extension Content/Rules for all slices
.... extension:channel 1..1 Extension Extension
..... extension 0..0 Extension
..... url 1..1 uri "channel"
..... value[x] 1..1 code Value of extension
Binding: Data-sync channel (required)
.... extension:source 1..1 Extension Extension
..... extension 0..0 Extension
..... url 1..1 uri "source"
..... value[x] 1..1 code Value of extension
Binding: Supported data-source ecosystem (required)
... url 1..1 uri "https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-data-source"

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Extension 0..* Extension Extension
... id 0..1 string Unique id for inter-element referencing
... Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:channel 1..1 Extension Extension
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "channel"
..... value[x] 1..1 code Value of extension
Binding: Data-sync channel (required)
.... extension:source 1..1 Extension Extension
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "source"
..... value[x] 1..1 code Value of extension
Binding: Supported data-source ecosystem (required)
... url 1..1 uri "https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-data-source"

doco Documentation for this format

This structure is derived from Extension

Summary

Complex Extension: Binds one data-sync channel to the ecosystem that serves it; repeats once per active channel (ADR 0041). channel is an inbound data type (completed workouts, wellness, sleep) or the outbound plan push; source is the ecosystem serving it. So a future Garmin-workouts / Fitbit-sleep mix is representable, and 'push my plan out' is simply a plan binding — no platform-named push flag. 'No connected platform' is the absence of any binding. Sub-values are spec-driven (cc-data-channel / cc-data-source), mirrored by agent.data_sources, so no dialog hardcodes a platform or data type.

  • channel: code: An Extension
  • source: code: An Extension

Differential View

This structure is derived from Extension

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Extension 0..* Extension Extension
... extension 2..* Extension Extension
... Slices for extension Content/Rules for all slices
.... extension:channel 1..1 Extension Extension
..... extension 0..0 Extension
..... url 1..1 uri "channel"
..... value[x] 1..1 code Value of extension
Binding: Data-sync channel (required)
.... extension:source 1..1 Extension Extension
..... extension 0..0 Extension
..... url 1..1 uri "source"
..... value[x] 1..1 code Value of extension
Binding: Supported data-source ecosystem (required)
... url 1..1 uri "https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-data-source"

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Extension 0..* Extension Extension
... id 0..1 string Unique id for inter-element referencing
... Slices for extension 2..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:channel 1..1 Extension Extension
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "channel"
..... value[x] 1..1 code Value of extension
Binding: Data-sync channel (required)
.... extension:source 1..1 Extension Extension
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..0 Extension
Slice: Unordered, Open by value:url
..... url 1..1 uri "source"
..... value[x] 1..1 code Value of extension
Binding: Supported data-source ecosystem (required)
... url 1..1 uri "https://fhir.soigneur.coach/fhir/StructureDefinition/cc-ext-data-source"

doco Documentation for this format

This structure is derived from Extension

Summary

Complex Extension: Binds one data-sync channel to the ecosystem that serves it; repeats once per active channel (ADR 0041). channel is an inbound data type (completed workouts, wellness, sleep) or the outbound plan push; source is the ecosystem serving it. So a future Garmin-workouts / Fitbit-sleep mix is representable, and 'push my plan out' is simply a plan binding — no platform-named push flag. 'No connected platform' is the absence of any binding. Sub-values are spec-driven (cc-data-channel / cc-data-source), mirrored by agent.data_sources, so no dialog hardcodes a platform or data type.

  • channel: code: An Extension
  • source: code: An Extension

 

Other representations of profile: CSV, Excel, Schematron

Terminology Bindings

Path Status Usage ValueSet Version Source
Extension.extension:channel.​value[x] Base required Data-sync channel 📦0.1.0 This IG
Extension.extension:source.​value[x] Base required Supported data-source ecosystem 📦0.1.0 This IG

Constraints

Id Grade Path(s) Description Expression