<?xml version="1.0" encoding="UTF-8"?>
<resourceDefinitions xmlns="http://www.hl7.org/fhir" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.hl7.org/fhir definitions.xsd">
  <author>HL7</author>
  <resourceDefinition>
    <name>Conformance</name>
    <elementDefinitions>
      <elementDefinition>
        <name>Conformance</name>
        <cardinality>
          <minOccurs>1</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Mandatory</conformance>
        <condition></condition>
        <mustUnderstand>false</mustUnderstand>
        <definition>A conformance statement returned by request in an RESTful framework</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.id</name>
        <cardinality>
          <minOccurs>1</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Mandatory</conformance>
        <condition></condition>
        <types>
          <type>id</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>Globally unique Conformance Statement Id (Must be a UUID)</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.date</name>
        <cardinality>
          <minOccurs>1</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Mandatory</conformance>
        <condition></condition>
        <types>
          <type>dateTime</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>Date that the conformance statement is published</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.publisher</name>
        <cardinality>
          <minOccurs>1</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Mandatory</conformance>
        <condition></condition>
        <mustUnderstand>false</mustUnderstand>
        <definition>The organization that publishes this conformance statement</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.publisher.name</name>
        <cardinality>
          <minOccurs>1</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Mandatory</conformance>
        <condition></condition>
        <types>
          <type>string</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>Name of Organization</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.publisher.address</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>unbounded</maxOccurs>
        </cardinality>
        <conformance>Optional</conformance>
        <condition></condition>
        <types>
          <type>Address</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>Address of Organization</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.publisher.contact</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>unbounded</maxOccurs>
        </cardinality>
        <conformance>Optional</conformance>
        <condition></condition>
        <types>
          <type>Contact</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>Contacts for Organization</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.software</name>
        <cardinality>
          <minOccurs>1</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Mandatory</conformance>
        <condition></condition>
        <mustUnderstand>false</mustUnderstand>
        <definition>The software that is covered by this conformance statement</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.software.name</name>
        <cardinality>
          <minOccurs>1</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Mandatory</conformance>
        <condition></condition>
        <types>
          <type>string</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>Name software is known by</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.software.version</name>
        <cardinality>
          <minOccurs>1</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Mandatory</conformance>
        <condition></condition>
        <types>
          <type>string</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>Version covered by this statement</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.software.releaseDate</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Optional</conformance>
        <condition></condition>
        <types>
          <type>dateTime</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>Date this version released</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.mode</name>
        <cardinality>
          <minOccurs>1</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Mandatory</conformance>
        <condition></condition>
        <types>
          <type>code</type>
        </types>
        <conceptDomain>RestfulConformanceMode</conceptDomain>
        <mustUnderstand>false</mustUnderstand>
        <definition>client | server</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.profile</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>unbounded</maxOccurs>
        </cardinality>
        <conformance>Optional</conformance>
        <condition></condition>
        <types>
          <type>uri</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>Additional other profiles that apply to this conformance statement.</definition>
        <requirements></requirements>
        <comments> Generally these profiles make  constraints on the bindings of concept domains / value sets</comments>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.resource</name>
        <cardinality>
          <minOccurs>1</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Mandatory</conformance>
        <condition></condition>
        <types>
          <type>Constraint</type>
        </types>
        <conceptDomain>ResourceType</conceptDomain>
        <mustUnderstand>false</mustUnderstand>
        <definition>Resource Type with constraints</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.operation</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Conditional</conformance>
        <condition>A resource type is required if the event declaration has multiple focal resources</condition>
        <mustUnderstand>false</mustUnderstand>
        <definition></definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.operation.read</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Optional</conformance>
        <condition></condition>
        <types>
          <type>boolean</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>if supported</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.operation.vread</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Optional</conformance>
        <condition></condition>
        <types>
          <type>boolean</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>if supported</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.operation.update</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Optional</conformance>
        <condition></condition>
        <types>
          <type>boolean</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>if supported</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.operation.delete</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Optional</conformance>
        <condition></condition>
        <types>
          <type>boolean</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>if supported</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.operation.validate</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Optional</conformance>
        <condition></condition>
        <types>
          <type>boolean</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>if supported</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.operation.history</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Optional</conformance>
        <condition></condition>
        <types>
          <type>boolean</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>if supported</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.operation.transaction</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Optional</conformance>
        <condition></condition>
        <mustUnderstand>false</mustUnderstand>
        <definition>only if supported</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.operation.transaction.name</name>
        <cardinality>
          <minOccurs>1</minOccurs>
          <maxOccurs>unbounded</maxOccurs>
        </cardinality>
        <conformance>Mandatory</conformance>
        <condition></condition>
        <types>
          <type>code</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>transaction names supported</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.operation.search</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Optional</conformance>
        <condition></condition>
        <mustUnderstand>false</mustUnderstand>
        <definition>only if supported</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.operation.search.param</name>
        <cardinality>
          <minOccurs>1</minOccurs>
          <maxOccurs>unbounded</maxOccurs>
        </cardinality>
        <conformance>Mandatory</conformance>
        <condition></condition>
        <types>
          <type>string</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>search params supported</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.operation.create</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Optional</conformance>
        <condition></condition>
        <mustUnderstand>false</mustUnderstand>
        <definition>if supported</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.operation.create.id</name>
        <cardinality>
          <minOccurs>1</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Mandatory</conformance>
        <condition></condition>
        <types>
          <type>code</type>
        </types>
        <conceptDomain>ResourceIdSource</conceptDomain>
        <mustUnderstand>false</mustUnderstand>
        <definition>source of id: client | server | either</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.operation.updates</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Optional</conformance>
        <condition></condition>
        <types>
          <type>boolean</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>if supported</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.operation.updates.param</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>unbounded</maxOccurs>
        </cardinality>
        <conformance>Mandatory</conformance>
        <condition></condition>
        <types>
          <type>string</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>update filter params supported</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.operation.schema</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Optional</conformance>
        <condition></condition>
        <types>
          <type>boolean</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>if supported</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.extensions</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Optional</conformance>
        <condition></condition>
        <mustUnderstand>false</mustUnderstand>
        <definition>See Extensions</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Conformance.text</name>
        <cardinality>
          <minOccurs>1</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Mandatory</conformance>
        <condition></condition>
        <types>
          <type>Narrative</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>Text summary of conformance profile for human interpretation</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
    </elementDefinitions>
  </resourceDefinition>
</resourceDefinitions>

