<?xml version="1.0" encoding="UTF-8"?>

<OperationDefinition xmlns="http://hl7.org/fhir">
  <id value="Resource-validate"/>
  <text>
    <status value="extensions"/><div xmlns="http://www.w3.org/1999/xhtml"><p>URL: [base]/Resource/$validate</p><p>URL: [base]/Resource/[id]/$validate</p><p>Parameters</p><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>resource</td><td/><td>1..1</td><td><a href="http://hl7.org/fhir/R4/resource.html">Resource</a></td><td/><td><div><p>Must be present for validation.</p>
</div></td></tr><tr><td>IN</td><td>mode</td><td/><td>0..0</td><td><a href="http://hl7.org/fhir/R4/datatypes.html#code">code</a></td><td><a href="http://hl7.org/fhir/R4/valueset-resource-validation-mode.html">ResourceValidationMode</a> (Required)</td><td><div><p>Default is 'no action'; (e.g. general validation)</p>
</div></td></tr><tr><td>IN</td><td>profile</td><td/><td>0..1</td><td><a href="http://hl7.org/fhir/R4/datatypes.html#uri">uri</a></td><td/><td><div><p>If a profile name is provided, then the resource is validated against this specific profile, overriding any profile specified in the resource parameter. This can be omitted if a profile has been specified in the resource itself. If the server cannot validate against profile, i.e. it is not a known profile, it SHALL return an error.</p>
</div></td></tr><tr><td>OUT</td><td>return</td><td/><td>1..1</td><td><a href="http://hl7.org/fhir/R4/operationoutcome.html">OperationOutcome</a></td><td/><td><div><p>If the operation outcome does not list any errors, then this is an indication that either a create or update operation on the resource instance specified would be expected to succeed.</p>
</div></td></tr></table></div>
  </text>
  <url value="http://resmed.com/fhir/core/OperationDefinition/Resource-validate"/>
  <version value="0.37.0"/>
  <name value="Validate"/>
  <title value="Validate a resource"/>
  <status value="draft"/>
  <kind value="operation"/>
  <date value="2024-01-11T18:32:48+00:00"/>
  <publisher value="ResMed Corp"/>
  <contact>
    <name value="ResMed Corp"/>
    <telecom>
      <system value="url"/>
      <value value="https://www.resmed.com"/>
    </telecom>
    <telecom>
      <system value="email"/>
      <value value="atomteam-halifax@resmed.com"/>
    </telecom>
  </contact>
  <description value="The validate operation checks whether the attached content would be acceptable. The return from this operation is an [OperationOutcome](http://hl7.org/fhir/operationoutcome.html)&#xA;&#xA;Note that this operation is not the only way to validate resources - see [Validating Resources](http://hl7.org/fhir/validation.html) for further information."/>
  <jurisdiction>
    <coding>
      <system value="http://unstats.un.org/unsd/methods/m49/m49.htm"/>
      <code value="001"/>
    </coding>
  </jurisdiction>
  <code value="validate"/>
  <resource value="Resource"/>
  <system value="false"/>
  <type value="true"/>
  <instance value="true"/>
  <parameter>
    <name value="resource"/>
    <use value="in"/>
    <min value="1"/>
    <max value="1"/>
    <documentation value="Must be present for validation."/>
    <type value="Resource"/>
  </parameter>
  <parameter>
    <name value="mode"/>
    <use value="in"/>
    <min value="0"/>
    <max value="0"/>
    <documentation value="Default is 'no action'; (e.g. general validation)"/>
    <type value="code"/>
    <binding>
      <strength value="required"/>
      <valueSet value="http://hl7.org/fhir/ValueSet/resource-validation-mode"/>
    </binding>
  </parameter>
  <parameter>
    <name value="profile"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <documentation value="If a profile name is provided, then the resource is validated against this specific profile, overriding any profile specified in the resource parameter. This can be omitted if a profile has been specified in the resource itself. If the server cannot validate against profile, i.e. it is not a known profile, it SHALL return an error."/>
    <type value="uri"/>
  </parameter>
  <parameter>
    <name value="return"/>
    <use value="out"/>
    <min value="1"/>
    <max value="1"/>
    <documentation value="If the operation outcome does not list any errors, then this is an indication that either a create or update operation on the resource instance specified would be expected to succeed."/>
    <type value="OperationOutcome"/>
  </parameter>
</OperationDefinition>