{
"description": null,
"_filename": "OntarioBackportSubscription.json",
"package_name": "ca.on.pubsub.r4",
"date": null,
"derivation": "constraint",
"publisher": null,
"fhirVersion": "4.0.1",
"name": "OntarioBackportSubscription",
"abstract": false,
"type": "Subscription",
"experimental": null,
"resourceType": "StructureDefinition",
"title": null,
"package_version": "1.0.0-BallotedDraft",
"status": "draft",
"id": "95480265-e939-4643-83e1-b4a246011607",
"kind": "resource",
"url": "http://ontariohealth.ca/fhir/pubsub/StructureDefinition/profile-Subscription",
"version": null,
"differential": {
"element": [ {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "ext-1",
"human": "Must have either extensions or value[x], not both",
"xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])",
"source": "http://hl7.org/fhir/StructureDefinition/Extension",
"severity": "error",
"expression": "extension.exists() != value.exists()"
} ],
"path": "Subscription.extension",
"min": 0,
"definition": "An Extension",
"isModifier": false,
"short": "Extension",
"slicing": {
"rules": "open",
"ordered": false,
"discriminator": [ {
"path": "url",
"type": "value"
} ]
},
"type": [ {
"code": "Extension"
} ],
"mustSupport": true,
"max": "*",
"id": "Subscription.extension",
"base": {
"max": "*",
"min": 0,
"path": "DomainResource.extension"
},
"isSummary": false
}, {
"path": "Subscription.extension",
"min": 1,
"definition": "The Device (e.g., EMR system) responsible for managing the subscription, referenced by its logical identifier. Backported from R5 Subscription.managingEntity.",
"isModifier": false,
"short": "Entity managing the subscription (Device by identifier)",
"type": [ {
"code": "Extension",
"profile": [ "http://ontariohealth.ca/fhir/pubsub/StructureDefinition/ext-subscriptionManagingEntity" ]
} ],
"mustSupport": true,
"sliceName": "managingEntity",
"max": "1",
"id": "Subscription.extension:managingEntity"
}, {
"id": "Subscription.criteria",
"path": "Subscription.criteria",
"mustSupport": true
}, {
"id": "Subscription.criteria.extension:filterCriteria",
"path": "Subscription.criteria.extension",
"type": [ {
"code": "Extension",
"profile": [ "http://hl7.org/fhir/uv/subscriptions-backport/StructureDefinition/backport-filter-criteria" ]
} ],
"sliceName": "filterCriteria",
"isModifier": false,
"mustSupport": true
}, {
"id": "Subscription.channel.extension:notificationRetryPeriod",
"path": "Subscription.channel.extension",
"type": [ {
"code": "Extension",
"profile": [ "http://ontariohealth.ca/fhir/pubsub/StructureDefinition/ext-SubscriptionNotificationRetryPeriod" ]
} ],
"sliceName": "notificationRetryPeriod",
"isModifier": false
}, {
"id": "Subscription.channel.extension:heartbeatPeriod",
"path": "Subscription.channel.extension",
"type": [ {
"code": "Extension",
"profile": [ "http://hl7.org/fhir/uv/subscriptions-backport/StructureDefinition/backport-heartbeat-period" ]
} ],
"sliceName": "heartbeatPeriod",
"isModifier": false
}, {
"id": "Subscription.channel.extension:timeout",
"path": "Subscription.channel.extension",
"type": [ {
"code": "Extension",
"profile": [ "http://hl7.org/fhir/uv/subscriptions-backport/StructureDefinition/backport-timeout" ]
} ],
"sliceName": "timeout",
"isModifier": false
}, {
"id": "Subscription.channel.extension:maxCount",
"path": "Subscription.channel.extension",
"type": [ {
"code": "Extension",
"profile": [ "http://hl7.org/fhir/uv/subscriptions-backport/StructureDefinition/backport-max-count" ]
} ],
"sliceName": "maxCount",
"isModifier": false
}, {
"path": "Subscription.channel.type.extension",
"min": 0,
"definition": "The type of channel to send notifications on.",
"short": "Extended channel type for notifications",
"type": [ {
"code": "Extension",
"profile": [ "http://hl7.org/fhir/uv/subscriptions-backport/StructureDefinition/backport-channel-type" ]
} ],
"mustSupport": true,
"sliceName": "customChannelType",
"max": "1",
"id": "Subscription.channel.type.extension:customChannelType",
"comment": "This extension allows for the use of additional channel types that were not defined in the FHIR R4 subscription definition.",
"isSummary": true
}, {
"id": "Subscription.channel.payload",
"min": 1,
"path": "Subscription.channel.payload"
}, {
"id": "Subscription.channel.payload.extension",
"min": 1,
"path": "Subscription.channel.payload.extension",
"slicing": {
"rules": "open",
"ordered": false,
"discriminator": [ {
"path": "url",
"type": "value"
} ]
}
}, {
"path": "Subscription.channel.payload.extension",
"min": 1,
"definition": "How much of the resource content to deliver in the notification payload. The choices are an empty payload, only the resource id, or the full resource content.",
"short": "Notification content level",
"type": [ {
"code": "Extension",
"profile": [ "http://hl7.org/fhir/uv/subscriptions-backport/StructureDefinition/backport-payload-content" ]
} ],
"mustSupport": true,
"sliceName": "content",
"max": "1",
"id": "Subscription.channel.payload.extension:content",
"comment": "Sending the payload has obvious security implications. The server is responsible for ensuring that the content is appropriately secured.",
"isSummary": true
}, {
"id": "Subscription.channel.header",
"path": "Subscription.channel.header",
"comment": "This can convey additional information to the recipient and/or meet security requirements; for example, support of multiple headers in the outgoing notifications for rest-hook type subscriptions.",
"definition": "Use to specify additional information that will be included inside the notification payload when the notification is sent. Each entry consists of a key-value pair. This should support sending client certificates and client keys with validation to determine if it is the certificate itself or just the name."
} ]
},
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/Subscription"
}