Canonical Resource Management Infrastructure Implementation Guide
1.1.0-cibuild - cibuild 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.1.0-cibuild 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

: CRMI Release Operation - XML Representation

Active as of 2024-08-29

Raw xml | Download



<OperationDefinition xmlns="http://hl7.org/fhir">
  <id value="crmi-release"/>
  <text>
    <status value="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Generated Narrative: OperationDefinition crmi-release</b></p><a name="crmi-release"> </a><a name="hccrmi-release"> </a><a name="crmi-release-en-US"> </a><p>URL: [base]/ActivityDefinition/$release</p><p>URL: [base]/ActivityDefinition/[id]/$release</p><p>URL: [base]/CapabilityStatement/$release</p><p>URL: [base]/CapabilityStatement/[id]/$release</p><p>URL: [base]/CodeSystem/$release</p><p>URL: [base]/CodeSystem/[id]/$release</p><p>URL: [base]/CompartmentDefinition/$release</p><p>URL: [base]/CompartmentDefinition/[id]/$release</p><p>URL: [base]/ConceptMap/$release</p><p>URL: [base]/ConceptMap/[id]/$release</p><p>URL: [base]/ExampleScenario/$release</p><p>URL: [base]/ExampleScenario/[id]/$release</p><p>URL: [base]/GraphDefinition/$release</p><p>URL: [base]/GraphDefinition/[id]/$release</p><p>URL: [base]/ImplementationGuide/$release</p><p>URL: [base]/ImplementationGuide/[id]/$release</p><p>URL: [base]/Library/$release</p><p>URL: [base]/Library/[id]/$release</p><p>URL: [base]/Measure/$release</p><p>URL: [base]/Measure/[id]/$release</p><p>URL: [base]/Medication/$release</p><p>URL: [base]/Medication/[id]/$release</p><p>URL: [base]/MedicationKnowledge/$release</p><p>URL: [base]/MedicationKnowledge/[id]/$release</p><p>URL: [base]/MessageDefinition/$release</p><p>URL: [base]/MessageDefinition/[id]/$release</p><p>URL: [base]/NamingSystem/$release</p><p>URL: [base]/NamingSystem/[id]/$release</p><p>URL: [base]/OperationDefinition/$release</p><p>URL: [base]/OperationDefinition/[id]/$release</p><p>URL: [base]/PlanDefinition/$release</p><p>URL: [base]/PlanDefinition/[id]/$release</p><p>URL: [base]/Questionnaire/$release</p><p>URL: [base]/Questionnaire/[id]/$release</p><p>URL: [base]/SearchParameter/$release</p><p>URL: [base]/SearchParameter/[id]/$release</p><p>URL: [base]/StructureDefinition/$release</p><p>URL: [base]/StructureDefinition/[id]/$release</p><p>URL: [base]/StructureMap/$release</p><p>URL: [base]/StructureMap/[id]/$release</p><p>URL: [base]/Substance/$release</p><p>URL: [base]/Substance/[id]/$release</p><p>URL: [base]/TerminologyCapabilities/$release</p><p>URL: [base]/TerminologyCapabilities/[id]/$release</p><p>URL: [base]/TestScript/$release</p><p>URL: [base]/TestScript/[id]/$release</p><p>URL: [base]/ValueSet/$release</p><p>URL: [base]/ValueSet/[id]/$release</p><h3>Parameters</h3><table class="grid"><tr><td><b>Use</b></td><td><b>Name</b></td><td><b>Scope</b></td><td><b>Cardinality</b></td><td><b>Type</b></td><td><b>Binding</b></td><td><b>Documentation</b></td></tr><tr><td>IN</td><td>id</td><td/><td>1..1</td><td><a href="http://hl7.org/fhir/R4/datatypes.html#string">string</a></td><td/><td><div><p>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)</p>
</div></td></tr><tr><td>IN</td><td>version</td><td/><td>1..1</td><td><a href="http://hl7.org/fhir/R4/datatypes.html#string">string</a></td><td/><td><div><p>Specifies the version to be applied—based on the version behavior specified—to the artifact being released and any referenced owned components.</p>
</div></td></tr><tr><td>IN</td><td>versionBehavior</td><td/><td>1..1</td><td><a href="http://hl7.org/fhir/R4/datatypes.html#code">code</a></td><td><a href="ValueSet-crmi-release-version-behavior.html">CRMI Release Version Behavior</a> (Required)</td><td><div><p>Indicates the behavior with which the 'version' parameter should applied to the artifact being released and its components.</p>
</div></td></tr><tr><td>IN</td><td>requireVersionSpecificReferences</td><td/><td>0..1</td><td><a href="http://hl7.org/fhir/R4/datatypes.html#boolean">boolean</a></td><td/><td><div><p>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)</p>
</div></td></tr><tr><td>IN</td><td>requireActiveReferences</td><td/><td>0..1</td><td><a href="http://hl7.org/fhir/R4/datatypes.html#boolean">boolean</a></td><td/><td><div><p>Indicates that the release operation will throw an error if any 'draft' or 'retired' dependencies are found. (default = false)</p>
</div></td></tr><tr><td>IN</td><td>latestFromTxServer</td><td/><td>0..1</td><td><a href="http://hl7.org/fhir/R4/datatypes.html#boolean">boolean</a></td><td/><td><div><p>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)</p>
</div></td></tr><tr><td>IN</td><td>experimentalBehavior</td><td/><td>0..1</td><td><a href="http://hl7.org/fhir/R4/datatypes.html#code">code</a></td><td><a href="ValueSet-crmi-release-experimental-behavior.html">CRMI Release Experimental Behavior</a> (Required)</td><td><div><p>Indicates whether the repository should throw an error, log a warning or not validate if a specification which is not Experimental references Experimental components</p>
</div></td></tr><tr><td>IN</td><td>releaseLabel</td><td/><td>0..1</td><td><a href="http://hl7.org/fhir/R4/datatypes.html#string">string</a></td><td/><td><div><p>Specifies a release label to be applied to the artifact(s) being released</p>
</div></td></tr><tr><td>OUT</td><td>return</td><td/><td>1..1</td><td><a href="http://hl7.org/fhir/R4/bundle.html">Bundle</a></td><td/><td><div><p>The Bundle result containing the released resource(s)</p>
</div></td></tr></table><div><p>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.</p>
</div></div>
  </text>
  <extension
             url="http://hl7.org/fhir/StructureDefinition/structuredefinition-wg">
    <valueCode value="cds"/>
  </extension>
  <url value="http://hl7.org/fhir/uv/crmi/OperationDefinition/crmi-release"/>
  <version value="1.1.0-cibuild"/>
  <name value="CRMIRelease"/>
  <title value="CRMI Release"/>
  <status value="active"/>
  <kind value="operation"/>
  <date value="2024-08-29T03:38:40+00:00"/>
  <publisher value="HL7 International / Clinical Decision Support"/>
  <contact>
    <telecom>
      <system value="url"/>
      <value value="http://www.hl7.org/Special/committees/dss"/>
    </telecom>
  </contact>
  <description
               value="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."/>
  <jurisdiction>
    <coding>
      <system value="http://unstats.un.org/unsd/methods/m49/m49.htm"/>
      <code value="001"/>
      <display value="World"/>
    </coding>
  </jurisdiction>
  <code value="release"/>
  <comment
           value="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."/>
  <resource value="ActivityDefinition"/>
  <resource value="CapabilityStatement"/>
  <resource value="CodeSystem"/>
  <resource value="CompartmentDefinition"/>
  <resource value="ConceptMap"/>
  <resource value="ExampleScenario"/>
  <resource value="GraphDefinition"/>
  <resource value="ImplementationGuide"/>
  <resource value="Library"/>
  <resource value="Measure"/>
  <resource value="Medication"/>
  <resource value="MedicationKnowledge"/>
  <resource value="MessageDefinition"/>
  <resource value="NamingSystem"/>
  <resource value="OperationDefinition"/>
  <resource value="PlanDefinition"/>
  <resource value="Questionnaire"/>
  <resource value="SearchParameter"/>
  <resource value="StructureDefinition"/>
  <resource value="StructureMap"/>
  <resource value="Substance"/>
  <resource value="TerminologyCapabilities"/>
  <resource value="TestScript"/>
  <resource value="ValueSet"/>
  <system value="false"/>
  <type value="true"/>
  <instance value="true"/>
  <parameter>
    <name value="id"/>
    <use value="in"/>
    <min value="1"/>
    <max value="1"/>
    <documentation
                   value="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)"/>
    <type value="string"/>
  </parameter>
  <parameter>
    <name value="version"/>
    <use value="in"/>
    <min value="1"/>
    <max value="1"/>
    <documentation
                   value="Specifies the version to be applied—based on the version behavior specified—to the artifact being released and any referenced owned components."/>
    <type value="string"/>
  </parameter>
  <parameter>
    <name value="versionBehavior"/>
    <use value="in"/>
    <min value="1"/>
    <max value="1"/>
    <documentation
                   value="Indicates the behavior with which the 'version' parameter should applied to the artifact being released and its components."/>
    <type value="code"/>
    <binding>
      <strength value="required"/>
      <valueSet
                value="http://hl7.org/fhir/uv/crmi/ValueSet/crmi-release-version-behavior"/>
    </binding>
  </parameter>
  <parameter>
    <name value="requireVersionSpecificReferences"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <documentation
                   value="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)"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="requireActiveReferences"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <documentation
                   value="Indicates that the release operation will throw an error if any 'draft' or 'retired' dependencies are found. (default = false)"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="latestFromTxServer"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <documentation
                   value="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)"/>
    <type value="boolean"/>
  </parameter>
  <parameter>
    <name value="experimentalBehavior"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <documentation
                   value="Indicates whether the repository should throw an error, log a warning or not validate if a specification which is not Experimental references Experimental components"/>
    <type value="code"/>
    <binding>
      <strength value="required"/>
      <valueSet
                value="http://hl7.org/fhir/uv/crmi/ValueSet/crmi-release-experimental-behavior"/>
    </binding>
  </parameter>
  <parameter>
    <name value="releaseLabel"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <documentation
                   value="Specifies a release label to be applied to the artifact(s) being released"/>
    <type value="string"/>
  </parameter>
  <parameter>
    <name value="return"/>
    <use value="out"/>
    <min value="1"/>
    <max value="1"/>
    <documentation
                   value="The Bundle result containing the released resource(s)"/>
    <type value="Bundle"/>
  </parameter>
</OperationDefinition>