STU 2 Ballot

This page is part of the Data Access Framework (v1.6.0: STU 2 Ballot 1) based on FHIR v1.6.0. . For a full list of available versions, see the Directory of published versions

D.4.1 StructureDefinition: DAF-operationdefinition

The official URL for this profile is:

http://hl7.org/fhir/us/daf/StructureDefinition/daf-operationdefinition

This profile was published on Fri Aug 12 00:00:00 AEST 2016 as a draft by Health Level Seven International (FHIR Infrastructure WG - Data Access Framework).

D.4.1.1 Formal Views of Profile Content

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

This structure is derived from OperationDefinition

Summary

Mandatory: 6 elements (+4 nested mandatory elements)
Must-Support: 19 elements

Extensions

This structure refers to these extensions:

NameFlagsCard.TypeDescription & Constraintsdoco
.. OperationDefinition I0..*Definition of an operation or a named query
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-1: If the resource is contained in another resource, it SHALL NOT contain any narrative
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource
... id 0..1idLogical id of this artifact
... meta 0..1MetaMetadata about the resource
... implicitRules ?!0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (extensible)
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... daf-data-models SI0..1CodeableConceptExtension
URL: http://hl7.org/fhir/us/daf/StructureDefinition/daf-data-models
Binding: DAF Research Data Models (extensible)
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... daf-query-formats SI0..1CodeableConceptExtension
URL: http://hl7.org/fhir/us/daf/StructureDefinition/daf-query-formats
Binding: DAF Research Query Formats (extensible)
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... url S0..1uriLogical URL to reference this operation definition
... version 0..1stringLogical id for this version of the operation definition
... name S1..1stringInformal name for this operation
... status ?!S1..1codedraft | active | retired
Binding: ConformanceResourceStatus (required)
... kind S1..1codeoperation | query
Binding: OperationKind (required)
... experimental 0..1booleanIf for testing purposes, not real usage
... date 0..1dateTimeDate for this version of the operation definition
... publisher 0..1stringName of the publisher (Organization or individual)
... contact 0..*BackboneElementContact details of the publisher
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... name 0..1stringName of an individual to contact
.... telecom 0..*ContactPointContact details for individual or publisher
... description S0..1markdownNatural language description of the operation
... useContext 0..*CodeableConceptContent intends to support these contexts
Binding: Context of Use ValueSet (extensible)
... requirements 0..1markdownWhy this resource has been created
... idempotent 0..1booleanWhether content is unchanged by the operation
... code S1..1codeName used to invoke the operation
... comment S0..1stringAdditional information about use
... base S0..1Reference(OperationDefinition)Marks this as a profile of the base
... system S1..1booleanInvoke at the system level?
... type 0..*codeInvoke at resource level for these type
Binding: ResourceType (required)
... instance S1..1booleanInvoke on an instance?
... parameter SI0..*BackboneElementParameters for the operation/query
opd-1: Either a type must be provided, or parts
opd-2: A search type can only be specified for parameters of type string
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... name S1..1codeName in Parameters.parameter.name or in URL
.... use S1..1codein | out
Binding: OperationParameterUse (required)
.... min S1..1integerMinimum Cardinality
.... max S1..1stringMaximum Cardinality (a number or *)
.... documentation S0..1stringDescription of meaning/use
.... type SI0..1codeWhat type this parameter has
Binding: FHIRAllTypes (required)
.... searchType I0..1codenumber | date | string | token | reference | composite | quantity | uri
Binding: SearchParamType (required)
.... profile 0..1Reference(StructureDefinition)Profile on the type
.... binding 0..1BackboneElementValueSet details if this is coded
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
..... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
..... strength 1..1coderequired | extensible | preferred | example
Binding: BindingStrength (required)
..... valueSet[x] 1..1uri, Reference(ValueSet)Source of value set
.... part I0..*Unknown reference to #OperationDefinition:dafoperationdefinition.parameter
Parts of a nested Parameter

doco Documentation for this format

yet to be done: Xml template

yet to be done: Json template

This structure is derived from OperationDefinition.

Summary

Mandatory: 6 elements (+4 nested mandatory elements)
Must-Support: 19 elements

Extensions

This structure refers to these extensions:

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. OperationDefinition I0..*Definition of an operation or a named query
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-1: If the resource is contained in another resource, it SHALL NOT contain any narrative
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource
... id 0..1idLogical id of this artifact
... meta 0..1MetaMetadata about the resource
... implicitRules ?!0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (extensible)
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... daf-data-models SI0..1CodeableConceptExtension
URL: http://hl7.org/fhir/us/daf/StructureDefinition/daf-data-models
Binding: DAF Research Data Models (extensible)
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... daf-query-formats SI0..1CodeableConceptExtension
URL: http://hl7.org/fhir/us/daf/StructureDefinition/daf-query-formats
Binding: DAF Research Query Formats (extensible)
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... url S0..1uriLogical URL to reference this operation definition
... version 0..1stringLogical id for this version of the operation definition
... name S1..1stringInformal name for this operation
... status ?!S1..1codedraft | active | retired
Binding: ConformanceResourceStatus (required)
... kind S1..1codeoperation | query
Binding: OperationKind (required)
... experimental 0..1booleanIf for testing purposes, not real usage
... date 0..1dateTimeDate for this version of the operation definition
... publisher 0..1stringName of the publisher (Organization or individual)
... contact 0..*BackboneElementContact details of the publisher
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... name 0..1stringName of an individual to contact
.... telecom 0..*ContactPointContact details for individual or publisher
... description S0..1markdownNatural language description of the operation
... useContext 0..*CodeableConceptContent intends to support these contexts
Binding: Context of Use ValueSet (extensible)
... requirements 0..1markdownWhy this resource has been created
... idempotent 0..1booleanWhether content is unchanged by the operation
... code S1..1codeName used to invoke the operation
... comment S0..1stringAdditional information about use
... base S0..1Reference(OperationDefinition)Marks this as a profile of the base
... system S1..1booleanInvoke at the system level?
... type 0..*codeInvoke at resource level for these type
Binding: ResourceType (required)
... instance S1..1booleanInvoke on an instance?
... parameter SI0..*BackboneElementParameters for the operation/query
opd-1: Either a type must be provided, or parts
opd-2: A search type can only be specified for parameters of type string
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... name S1..1codeName in Parameters.parameter.name or in URL
.... use S1..1codein | out
Binding: OperationParameterUse (required)
.... min S1..1integerMinimum Cardinality
.... max S1..1stringMaximum Cardinality (a number or *)
.... documentation S0..1stringDescription of meaning/use
.... type SI0..1codeWhat type this parameter has
Binding: FHIRAllTypes (required)
.... searchType I0..1codenumber | date | string | token | reference | composite | quantity | uri
Binding: SearchParamType (required)
.... profile 0..1Reference(StructureDefinition)Profile on the type
.... binding 0..1BackboneElementValueSet details if this is coded
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
..... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
..... strength 1..1coderequired | extensible | preferred | example
Binding: BindingStrength (required)
..... valueSet[x] 1..1uri, Reference(ValueSet)Source of value set
.... part I0..*Unknown reference to #OperationDefinition:dafoperationdefinition.parameter
Parts of a nested Parameter

doco Documentation for this format

XML Template

yet to be done: Xml template

JSON Template

yet to be done: Json template

 

D.4.1.2 Terminology Bindings

Terminology Bindings

PathNameConformanceValueSet
OperationDefinition.languageCommon LanguagesextensibleCommon Languages
OperationDefinition.statusConformanceResourceStatusrequiredConformanceResourceStatus
OperationDefinition.kindOperationKindrequiredOperationKind
OperationDefinition.useContextContext of Use ValueSetextensibleContext of Use ValueSet
OperationDefinition.typeResourceTyperequiredResourceType
OperationDefinition.parameter.useOperationParameterUserequiredOperationParameterUse
OperationDefinition.parameter.typeFHIRAllTypesrequiredFHIRAllTypes
OperationDefinition.parameter.searchTypeSearchParamTyperequiredSearchParamType
OperationDefinition.parameter.binding.strengthBindingStrengthrequiredBindingStrength

D.4.1.3 Constraints

Constraints

IdPathDetailsRequirements
dom-2OperationDefinitionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
XPath: not(parent::f:contained and f:contained)
dom-1OperationDefinitionIf the resource is contained in another resource, it SHALL NOT contain any narrative
XPath: not(parent::f:contained and f:text)
dom-4OperationDefinitionIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
XPath: not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))
dom-3OperationDefinitionIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource
XPath: not(exists(for $id in f:contained/*/@id return $id[not(ancestor::f:contained/parent::*/descendant::f:reference/@value=concat('#', $id))]))
ele-1OperationDefinition.extensionAll FHIR elements must have a @value or children
XPath: @value|f:*|h:div
ext-1OperationDefinition.extensionMust have either extensions or value[x], not both
XPath: exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])
ele-1OperationDefinition.extensionAll FHIR elements must have a @value or children
XPath: @value|f:*|h:div
ext-1OperationDefinition.extensionMust have either extensions or value[x], not both
XPath: exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])
ele-1OperationDefinition.extensionAll FHIR elements must have a @value or children
XPath: @value|f:*|h:div
ext-1OperationDefinition.extensionMust have either extensions or value[x], not both
XPath: exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])
opd-1OperationDefinition.parameterEither a type must be provided, or parts
XPath: exists(f:type) or exists(f:part)
opd-2OperationDefinition.parameterA search type can only be specified for parameters of type string
XPath: not(exists(f:searchType)) or (f:type/@value = 'string')
.