Canonical Resource Management Infrastructure Implementation Guide
1.0.0-snapshot - Snapshot International flag

Canonical Resource Management Infrastructure Implementation Guide, published by HL7 International / Clinical Decision Support. This guide is not an authorized publication; it is the continuous build for version 1.0.0-snapshot built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/crmi-ig/ and changes regularly. See the Directory of published versions

OperationDefinition: CRMI Release

Official URL: http://hl7.org/fhir/uv/crmi/OperationDefinition/crmi-release Version: 1.0.0-snapshot
Draft as of 2023-01-27 Computable Name: CRMIRelease
Other Identifiers: OID:2.16.840.1.113883.4.642.40.38.33.7

The release operation supports updating the status of an existing draft artifact to active. The operation sets the date element of the resource and pins versions of all direct and transitive references and records them in the program’s manifest. Child artifacts (i.e. artifacts of which the existing artifact is composed) are also released, recursively.

URL: [base]/Resource/$release

URL: [base]/Resource/[id]/$release

Parameters

UseNameScopeCardinalityTypeBindingDocumentation
INid1..1string

The logical id of the artifact to release. The server must know the artifact (e.g. it is defined explicitly in the server's artifacts)

INreleaseVersion1..1string

Specifies the version to be applied—based on the version behavior specified—to the artifact being released and any referenced owned components.

INversionBehavior1..1codeCRMI Release Version Behavior (Required)

Indicates the behavior with which the 'version' parameter should applied to the artifact being released and its components.

INrequireVersionSpecificReferences0..1boolean

Indicates that the release operation will throw an error if any version-independent references, for which there is no corresponding entry in the version manifest, are found in the artifact. (default = false)

INrequireActiveReferences0..1boolean

Indicates that the release operation will throw an error if any 'draft' or 'retired' dependencies are found. (default = false)

INlatestFromTxServer0..1boolean

Indicates whether or not the terminology server from which a value set was originally downloaded should be checked for the latest version. The terminolgy server of origin is tracked via the authoritativeSource extension (https://hl7.org/fhir/extension-valueset-authoritativesource.html) on the value set. If this flag is set to false or the value set does not have an authoritativeSource specified, then the check should be constrained to the local system/cache. (default = false)

INexperimentalBehavior0..1codeCRMI Release Experimental Behavior (Required)

Indicates whether the repository should throw an error, log a warning or not validate if a specification which is not Experimental references Experimental components

The release operation supports the ability of an authoring repository to transition an artifact and, transitively, any referenced and owned (as indicated by the 'crmiOwned' extension on the RelatedArtifact reference) component artifacts to a released state. The operation SHALL update the status of all owned components to 'active' and update their date to the current date. The operation SHALL ensure that all references for which a version is determined are recorded in the version manifest. For both components and dependencies, if versions are not specified in the relevant reference, the operation will lookup the version to be used in the version manifest.\n\nWhen 'requireVersionSpecificReferences' is true then all references SHALL either be version-specific or, if they are not, an entry SHALL exist in the version manifest to specify which version of the referenced resource should be used. If, 'requireVersionSpecificReferences' is true and there exists a reference that is not version-specific and no entry exists in the version manifest for the referenced resource, the program is considered to be in an invalid state and not eligible for release. If 'requireVersionSpecificReferences' is false (the default), then unversioned references are valid and the artifact can be released in that state - deferring the version determination to the consumer.\n\nWhen 'requireActiveReferences' is true then the operation SHALL throw an error if any 'draft' or 'retired' dependencies are found.