Files
BD-Core-FHIR-IG/input-cache/schemas/R4/fhir-single.xsd

45069 lines
2.5 MiB
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2011+, HL7, Inc.
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
* Neither the name of HL7 nor the names of its contributors may be used to
endorse or promote products derived from this software without specific
prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
Generated on Fri, Nov 1, 2019 09:29+1100 for FHIR v4.0.1
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://hl7.org/fhir" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xml="http://www.w3.org/XML/1998/namespace" targetNamespace="http://hl7.org/fhir" elementFormDefault="qualified" version="4.0.1">
<!-- Note: When using this schema with some tools, it may also be necessary to declare xmlns:xml="http://www.w3.org/XML/1998/namespace", however this causes performance issues with other tools and thus is not in the base schemas. -->
<xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
<xs:import namespace="http://www.w3.org/1999/xhtml" schemaLocation="fhir-xhtml.xsd"/>
<xs:simpleType name="date-primitive">
<xs:restriction>
<xs:simpleType>
<xs:union memberTypes="xs:gYear xs:gYearMonth xs:date"/>
</xs:simpleType>
<xs:pattern value="([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-9]000)(-(0[1-9]|1[0-2])(-(0[0-9]|[1-2][0-9]|3[0-1]))?)?"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="date">
<xs:annotation>
<xs:documentation xml:lang="en">A date or partial date (e.g. just year or year + month). There is no time zone. The format is a union of the schema types gYear, gYearMonth and date. Dates SHALL be valid dates.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="date-primitive" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="dateTime-primitive">
<xs:restriction>
<xs:simpleType>
<xs:union memberTypes="xs:gYear xs:gYearMonth xs:date xs:dateTime"/>
</xs:simpleType>
<xs:pattern value="([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-9]000)(-(0[1-9]|1[0-2])(-(0[0-9]|[1-2][0-9]|3[0-1])(T([01][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)((0[0-9]|1[0-3]):[0-5][0-9]|14:00)))?)?)?"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">A date, date-time or partial date (e.g. just year or year + month). If hours and minutes are specified, a time zone SHALL be populated. The format is a union of the schema types gYear, gYearMonth, date and dateTime. Seconds must be provided due to schema type constraints but may be zero-filled and may be ignored. Dates SHALL be valid dates.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="dateTime-primitive" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="code-primitive">
<xs:restriction base="xs:token">
<xs:minLength value="1"/>
<xs:pattern value="[^\s]+(\s[^\s]+)*"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="code">
<xs:annotation>
<xs:documentation xml:lang="en">A string which has at least one character and no leading or trailing whitespace and where there is no whitespace other than single spaces in the contents</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="code-primitive"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="string-primitive">
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="string">
<xs:annotation>
<xs:documentation xml:lang="en">A sequence of Unicode characters</xs:documentation>
<xs:documentation xml:lang="en">Note that FHIR strings SHALL NOT exceed 1MB in size</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="string-primitive" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="integer-primitive">
<xs:restriction base="xs:int">
<xs:pattern value="-?([0]|([1-9][0-9]*))"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="integer">
<xs:annotation>
<xs:documentation xml:lang="en">A whole number</xs:documentation>
<xs:documentation xml:lang="en">32 bit number; for values larger than this, use decimal</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="integer-primitive" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="oid-primitive">
<xs:restriction base="xs:anyURI">
<xs:pattern value="urn:oid:[0-2](\.(0|[1-9][0-9]*))+"/>
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="oid">
<xs:annotation>
<xs:documentation xml:lang="en">An OID represented as a URI</xs:documentation>
<xs:documentation xml:lang="en">RFC 3001. See also ISO/IEC 8824:1990 €</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="oid-primitive"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="canonical-primitive">
<xs:restriction base="xs:anyURI">
<xs:pattern value="\S*"/>
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A URI that is a reference to a canonical URL on a FHIR resource</xs:documentation>
<xs:documentation xml:lang="en">see [Canonical References](references.html#canonical)</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="canonical-primitive"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="uri-primitive">
<xs:restriction base="xs:anyURI">
<xs:pattern value="\S*"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="uri">
<xs:annotation>
<xs:documentation xml:lang="en">String of characters used to identify a name or a resource</xs:documentation>
<xs:documentation xml:lang="en">see http://en.wikipedia.org/wiki/Uniform_resource_identifier</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="uri-primitive" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="uuid-primitive">
<xs:restriction base="xs:anyURI">
<xs:pattern value="urn:uuid:[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}"/>
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="uuid">
<xs:annotation>
<xs:documentation xml:lang="en">A UUID, represented as a URI</xs:documentation>
<xs:documentation xml:lang="en">See The Open Group, CDE 1.1 Remote Procedure Call specification, Appendix A.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="uuid-primitive"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="url-primitive">
<xs:restriction base="xs:anyURI">
<xs:pattern value="\S*"/>
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="url">
<xs:annotation>
<xs:documentation xml:lang="en">A URI that is a literal reference</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="url-primitive"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="instant-primitive">
<xs:restriction base="xs:dateTime">
<xs:pattern value="([0-9]([0-9]([0-9][1-9]|[1-9]0)|[1-9]00)|[1-9]000)-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T([01][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)((0[0-9]|1[0-3]):[0-5][0-9]|14:00))"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="instant">
<xs:annotation>
<xs:documentation xml:lang="en">An instant in time - known at least to the second</xs:documentation>
<xs:documentation xml:lang="en">Note: This is intended for where precisely observed times are required, typically system logs etc., and not human-reported times - for them, see date and dateTime (which can be as precise as instant, but is not required to be) below. Time zone is always required</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="instant-primitive" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="boolean-primitive">
<xs:restriction base="xs:boolean">
<xs:pattern value="true|false"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Value of &quot;true&quot; or &quot;false&quot;</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="boolean-primitive" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="base64Binary-primitive">
<xs:restriction base="xs:base64Binary">
<xs:pattern value="(\s*([0-9a-zA-Z\+/=]){4}\s*)+"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="base64Binary">
<xs:annotation>
<xs:documentation xml:lang="en">A stream of bytes</xs:documentation>
<xs:documentation xml:lang="en">A stream of bytes, base64 encoded</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="base64Binary-primitive" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="unsignedInt-primitive">
<xs:restriction base="xs:nonNegativeInteger">
<xs:pattern value="[0]|([1-9][0-9]*)"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="unsignedInt">
<xs:annotation>
<xs:documentation xml:lang="en">An integer with a value that is not negative (e.g. &gt;= 0)</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="unsignedInt-primitive"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="markdown-primitive">
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:pattern value="[ \r\n\t\S]+"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A string that may contain Github Flavored Markdown syntax for optional processing by a mark down presentation engine</xs:documentation>
<xs:documentation xml:lang="en">Systems are not required to have markdown support, so the text should be readable without markdown processing. The markdown syntax is GFM - see https://github.github.com/gfm/</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="markdown-primitive"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="time-primitive">
<xs:restriction base="xs:time">
<xs:pattern value="([01][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\.[0-9]+)?"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="time">
<xs:annotation>
<xs:documentation xml:lang="en">A time during the day, with no date specified</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="time-primitive" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="id-primitive">
<xs:restriction base="xs:string">
<xs:pattern value="[A-Za-z0-9\-\.]{1,64}"/>
<xs:minLength value="1"/>
<xs:maxLength value="64"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="id">
<xs:annotation>
<xs:documentation xml:lang="en">Any combination of letters, numerals, &quot;-&quot; and &quot;.&quot;, with a length limit of 64 characters. (This might be an integer, an unprefixed OID, UUID or any other identifier pattern that meets these constraints.) Ids are case-insensitive.</xs:documentation>
<xs:documentation xml:lang="en">RFC 4122</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="id-primitive"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="positiveInt-primitive">
<xs:restriction base="xs:positiveInteger">
<xs:pattern value="[1-9][0-9]*"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">An integer with a value that is positive (e.g. &gt;0)</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="positiveInt-primitive"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="decimal-primitive">
<xs:union memberTypes="xs:decimal xs:double"/>
</xs:simpleType>
<xs:complexType name="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">A rational number with implicit precision</xs:documentation>
<xs:documentation xml:lang="en">Do not use an IEEE type floating point type, instead use something that works like a true decimal, with inbuilt precision (e.g. Java BigInteger)</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="decimal-primitive" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ResourceContainer">
<xs:choice>
<xs:element ref="Account"/>
<xs:element ref="ActivityDefinition"/>
<xs:element ref="AdverseEvent"/>
<xs:element ref="AllergyIntolerance"/>
<xs:element ref="Appointment"/>
<xs:element ref="AppointmentResponse"/>
<xs:element ref="AuditEvent"/>
<xs:element ref="Basic"/>
<xs:element ref="Binary"/>
<xs:element ref="BiologicallyDerivedProduct"/>
<xs:element ref="BodyStructure"/>
<xs:element ref="Bundle"/>
<xs:element ref="CapabilityStatement"/>
<xs:element ref="CarePlan"/>
<xs:element ref="CareTeam"/>
<xs:element ref="CatalogEntry"/>
<xs:element ref="ChargeItem"/>
<xs:element ref="ChargeItemDefinition"/>
<xs:element ref="Claim"/>
<xs:element ref="ClaimResponse"/>
<xs:element ref="ClinicalImpression"/>
<xs:element ref="CodeSystem"/>
<xs:element ref="Communication"/>
<xs:element ref="CommunicationRequest"/>
<xs:element ref="CompartmentDefinition"/>
<xs:element ref="Composition"/>
<xs:element ref="ConceptMap"/>
<xs:element ref="Condition"/>
<xs:element ref="Consent"/>
<xs:element ref="Contract"/>
<xs:element ref="Coverage"/>
<xs:element ref="CoverageEligibilityRequest"/>
<xs:element ref="CoverageEligibilityResponse"/>
<xs:element ref="DetectedIssue"/>
<xs:element ref="Device"/>
<xs:element ref="DeviceDefinition"/>
<xs:element ref="DeviceMetric"/>
<xs:element ref="DeviceRequest"/>
<xs:element ref="DeviceUseStatement"/>
<xs:element ref="DiagnosticReport"/>
<xs:element ref="DocumentManifest"/>
<xs:element ref="DocumentReference"/>
<xs:element ref="EffectEvidenceSynthesis"/>
<xs:element ref="Encounter"/>
<xs:element ref="Endpoint"/>
<xs:element ref="EnrollmentRequest"/>
<xs:element ref="EnrollmentResponse"/>
<xs:element ref="EpisodeOfCare"/>
<xs:element ref="EventDefinition"/>
<xs:element ref="Evidence"/>
<xs:element ref="EvidenceVariable"/>
<xs:element ref="ExampleScenario"/>
<xs:element ref="ExplanationOfBenefit"/>
<xs:element ref="FamilyMemberHistory"/>
<xs:element ref="Flag"/>
<xs:element ref="Goal"/>
<xs:element ref="GraphDefinition"/>
<xs:element ref="Group"/>
<xs:element ref="GuidanceResponse"/>
<xs:element ref="HealthcareService"/>
<xs:element ref="ImagingStudy"/>
<xs:element ref="Immunization"/>
<xs:element ref="ImmunizationEvaluation"/>
<xs:element ref="ImmunizationRecommendation"/>
<xs:element ref="ImplementationGuide"/>
<xs:element ref="InsurancePlan"/>
<xs:element ref="Invoice"/>
<xs:element ref="Library"/>
<xs:element ref="Linkage"/>
<xs:element ref="List"/>
<xs:element ref="Location"/>
<xs:element ref="Measure"/>
<xs:element ref="MeasureReport"/>
<xs:element ref="Media"/>
<xs:element ref="Medication"/>
<xs:element ref="MedicationAdministration"/>
<xs:element ref="MedicationDispense"/>
<xs:element ref="MedicationKnowledge"/>
<xs:element ref="MedicationRequest"/>
<xs:element ref="MedicationStatement"/>
<xs:element ref="MedicinalProduct"/>
<xs:element ref="MedicinalProductAuthorization"/>
<xs:element ref="MedicinalProductContraindication"/>
<xs:element ref="MedicinalProductIndication"/>
<xs:element ref="MedicinalProductIngredient"/>
<xs:element ref="MedicinalProductInteraction"/>
<xs:element ref="MedicinalProductManufactured"/>
<xs:element ref="MedicinalProductPackaged"/>
<xs:element ref="MedicinalProductPharmaceutical"/>
<xs:element ref="MedicinalProductUndesirableEffect"/>
<xs:element ref="MessageDefinition"/>
<xs:element ref="MessageHeader"/>
<xs:element ref="MolecularSequence"/>
<xs:element ref="NamingSystem"/>
<xs:element ref="NutritionOrder"/>
<xs:element ref="Observation"/>
<xs:element ref="ObservationDefinition"/>
<xs:element ref="OperationDefinition"/>
<xs:element ref="OperationOutcome"/>
<xs:element ref="Organization"/>
<xs:element ref="OrganizationAffiliation"/>
<xs:element ref="Patient"/>
<xs:element ref="PaymentNotice"/>
<xs:element ref="PaymentReconciliation"/>
<xs:element ref="Person"/>
<xs:element ref="PlanDefinition"/>
<xs:element ref="Practitioner"/>
<xs:element ref="PractitionerRole"/>
<xs:element ref="Procedure"/>
<xs:element ref="Provenance"/>
<xs:element ref="Questionnaire"/>
<xs:element ref="QuestionnaireResponse"/>
<xs:element ref="RelatedPerson"/>
<xs:element ref="RequestGroup"/>
<xs:element ref="ResearchDefinition"/>
<xs:element ref="ResearchElementDefinition"/>
<xs:element ref="ResearchStudy"/>
<xs:element ref="ResearchSubject"/>
<xs:element ref="RiskAssessment"/>
<xs:element ref="RiskEvidenceSynthesis"/>
<xs:element ref="Schedule"/>
<xs:element ref="SearchParameter"/>
<xs:element ref="ServiceRequest"/>
<xs:element ref="Slot"/>
<xs:element ref="Specimen"/>
<xs:element ref="SpecimenDefinition"/>
<xs:element ref="StructureDefinition"/>
<xs:element ref="StructureMap"/>
<xs:element ref="Subscription"/>
<xs:element ref="Substance"/>
<xs:element ref="SubstanceNucleicAcid"/>
<xs:element ref="SubstancePolymer"/>
<xs:element ref="SubstanceProtein"/>
<xs:element ref="SubstanceReferenceInformation"/>
<xs:element ref="SubstanceSourceMaterial"/>
<xs:element ref="SubstanceSpecification"/>
<xs:element ref="SupplyDelivery"/>
<xs:element ref="SupplyRequest"/>
<xs:element ref="Task"/>
<xs:element ref="TerminologyCapabilities"/>
<xs:element ref="TestReport"/>
<xs:element ref="TestScript"/>
<xs:element ref="ValueSet"/>
<xs:element ref="VerificationResult"/>
<xs:element ref="VisionPrescription"/>
<xs:element ref="Parameters"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="Extension">
<xs:annotation>
<xs:documentation xml:lang="en">Optional Extension Element - found in all resources.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Value of extension - must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list).</xs:documentation>
</xs:annotation>
<xs:element name="valueBase64Binary" type="base64Binary"/>
<xs:element name="valueBoolean" type="boolean"/>
<xs:element name="valueCanonical" type="canonical"/>
<xs:element name="valueCode" type="code"/>
<xs:element name="valueDate" type="date"/>
<xs:element name="valueDateTime" type="dateTime"/>
<xs:element name="valueDecimal" type="decimal"/>
<xs:element name="valueId" type="id"/>
<xs:element name="valueInstant" type="instant"/>
<xs:element name="valueInteger" type="integer"/>
<xs:element name="valueMarkdown" type="markdown"/>
<xs:element name="valueOid" type="oid"/>
<xs:element name="valuePositiveInt" type="positiveInt"/>
<xs:element name="valueString" type="string"/>
<xs:element name="valueTime" type="time"/>
<xs:element name="valueUnsignedInt" type="unsignedInt"/>
<xs:element name="valueUri" type="uri"/>
<xs:element name="valueUrl" type="url"/>
<xs:element name="valueUuid" type="uuid"/>
<xs:element name="valueAddress" type="Address"/>
<xs:element name="valueAge" type="Age"/>
<xs:element name="valueAnnotation" type="Annotation"/>
<xs:element name="valueAttachment" type="Attachment"/>
<xs:element name="valueCodeableConcept" type="CodeableConcept"/>
<xs:element name="valueCoding" type="Coding"/>
<xs:element name="valueContactPoint" type="ContactPoint"/>
<xs:element name="valueCount" type="Count"/>
<xs:element name="valueDistance" type="Distance"/>
<xs:element name="valueDuration" type="Duration"/>
<xs:element name="valueHumanName" type="HumanName"/>
<xs:element name="valueIdentifier" type="Identifier"/>
<xs:element name="valueMoney" type="Money"/>
<xs:element name="valuePeriod" type="Period"/>
<xs:element name="valueQuantity" type="Quantity"/>
<xs:element name="valueRange" type="Range"/>
<xs:element name="valueRatio" type="Ratio"/>
<xs:element name="valueReference" type="Reference"/>
<xs:element name="valueSampledData" type="SampledData"/>
<xs:element name="valueSignature" type="Signature"/>
<xs:element name="valueTiming" type="Timing"/>
<xs:element name="valueContactDetail" type="ContactDetail"/>
<xs:element name="valueContributor" type="Contributor"/>
<xs:element name="valueDataRequirement" type="DataRequirement"/>
<xs:element name="valueExpression" type="Expression"/>
<xs:element name="valueParameterDefinition" type="ParameterDefinition"/>
<xs:element name="valueRelatedArtifact" type="RelatedArtifact"/>
<xs:element name="valueTriggerDefinition" type="TriggerDefinition"/>
<xs:element name="valueUsageContext" type="UsageContext"/>
<xs:element name="valueDosage" type="Dosage"/>
<xs:element name="valueMeta" type="Meta"/>
</xs:choice>
</xs:sequence>
<xs:attribute name="url" type="uri-primitive" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="BackboneElement">
<xs:annotation>
<xs:documentation xml:lang="en">Base definition for all elements that are defined inside a resource - but not those in a data type.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="modifierExtension" type="Extension" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Narrative">
<xs:annotation>
<xs:documentation xml:lang="en">A human-readable summary of the resource conveying the essential clinical and business information for the resource.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="status" type="NarrativeStatus" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the narrative - whether it's entirely generated (from just the defined data or the extensions too), or whether a human authored it and it may contain additional data.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="xhtml:div" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The actual narrative content, a stripped down version of XHTML.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="NarrativeStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="generated">
<xs:annotation>
<xs:documentation xml:lang="en">Generated</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="extensions">
<xs:annotation>
<xs:documentation xml:lang="en">Extensions</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="additional">
<xs:annotation>
<xs:documentation xml:lang="en">Additional</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="empty">
<xs:annotation>
<xs:documentation xml:lang="en">Empty</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="NarrativeStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of a resource narrative.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="NarrativeStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Element">
<xs:annotation>
<xs:documentation xml:lang="en">Base definition for all elements in a resource.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="extension" type="Extension" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attribute name="id" type="string-primitive" use="optional"/>
</xs:complexType>
<xs:complexType name="Meta">
<xs:annotation>
<xs:documentation xml:lang="en">The metadata about a resource. This is content in the resource that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="versionId" type="id" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lastUpdated" type="instant" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">When the resource last changed - e.g. when the version changed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" type="uri" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A uri that identifies the source system of the resource. This provides a minimal amount of [[[Provenance]]] information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="profile" type="canonical" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A list of profiles (references to [[[StructureDefinition]]] resources) that this resource claims to conform to. The URL is a reference to [[[StructureDefinition.url]]].</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="security" type="Coding" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Security labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="tag" type="Coding" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Tags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Address">
<xs:annotation>
<xs:documentation xml:lang="en">An address expressed using postal conventions (as opposed to GPS or other location definition formats). This data type may be used to convey addresses for use in delivering mail as well as for visiting locations which might not be valid for mail delivery. There are a variety of postal address formats defined around the world.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="use" type="AddressUse" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The purpose of this address.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" type="AddressType" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Distinguishes between physical addresses (those you can visit) and mailing addresses (e.g. PO Boxes and care-of addresses). Most addresses are both.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="text" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies the entire address as it should be displayed e.g. on a postal label. This may be provided instead of or as well as the specific parts.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="line" type="string" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">This component contains the house number, apartment number, street name, street direction, P.O. Box number, delivery hints, and similar address information.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="city" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the city, town, suburb, village or other community or delivery center.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="district" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the administrative area (county).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="state" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Sub-unit of a country with limited sovereignty in a federally organized country. A code may be used if codes are in common use (e.g. US 2 letter state codes).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="postalCode" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A postal code designating a region defined by the postal service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="country" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Country - a nation as commonly understood or generally accepted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" type="Period" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Time period when address was/is in use.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="AddressUse-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="home">
<xs:annotation>
<xs:documentation xml:lang="en">Home</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="work">
<xs:annotation>
<xs:documentation xml:lang="en">Work</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="temp">
<xs:annotation>
<xs:documentation xml:lang="en">Temporary</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="old">
<xs:annotation>
<xs:documentation xml:lang="en">Old / Incorrect</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="billing">
<xs:annotation>
<xs:documentation xml:lang="en">Billing</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="AddressUse">
<xs:annotation>
<xs:documentation xml:lang="en">The use of an address.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="AddressUse-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="AddressType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="postal">
<xs:annotation>
<xs:documentation xml:lang="en">Postal</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="physical">
<xs:annotation>
<xs:documentation xml:lang="en">Physical</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="both">
<xs:annotation>
<xs:documentation xml:lang="en">Postal &amp; Physical</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="AddressType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of an address (physical / postal).</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="AddressType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Contributor">
<xs:annotation>
<xs:documentation xml:lang="en">A contributor to the content of a knowledge asset, including authors, editors, reviewers, and endorsers.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="type" type="ContributorType" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The type of contributor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" type="string" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the individual or organization responsible for the contribution.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" type="ContactDetail" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the contributor.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ContributorType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="author">
<xs:annotation>
<xs:documentation xml:lang="en">Author</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="editor">
<xs:annotation>
<xs:documentation xml:lang="en">Editor</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="reviewer">
<xs:annotation>
<xs:documentation xml:lang="en">Reviewer</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="endorser">
<xs:annotation>
<xs:documentation xml:lang="en">Endorser</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ContributorType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of contributor.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ContributorType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Attachment">
<xs:annotation>
<xs:documentation xml:lang="en">For referring to data content defined in other formats.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="contentType" type="code" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the type of the data in the attachment and allows a method to be chosen to interpret or render the data. Includes mime type parameters such as charset where appropriate.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="language" type="code" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The human language of the content. The value can be any valid value according to BCP 47.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="data" type="base64Binary" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The actual data of the attachment - a sequence of bytes, base64 encoded.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="url" type="url" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A location where the data can be accessed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="size" type="unsignedInt" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The number of bytes of data that make up this attachment (before base64 encoding, if that is done).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="hash" type="base64Binary" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The calculated hash of the data using SHA-1. Represented using base64.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A label or set of text to display in place of the data.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="creation" type="dateTime" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The date that the attachment was first created.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Count">
<xs:annotation>
<xs:documentation xml:lang="en">A measured amount (or an amount that can potentially be measured). Note that measured amounts include amounts that are not precisely quantified, including amounts involving arbitrary units and floating currencies.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Quantity">
<xs:sequence>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DataRequirement">
<xs:annotation>
<xs:documentation xml:lang="en">Describes a required data item for evaluation in terms of the type of data, and optional code or date-based filters of the data.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="type" type="code" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The type of the required data, specified as the type name of a resource. For profiles, this value is set to the type of the base resource of the profile.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="profile" type="canonical" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The profile of the required data, specified as the uri of the profile definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The intended subjects of the data requirement. If this element is not provided, a Patient subject is assumed.</xs:documentation>
</xs:annotation>
<xs:element name="subjectCodeableConcept" type="CodeableConcept" maxOccurs="1"/>
<xs:element name="subjectReference" type="Reference" maxOccurs="1"/>
</xs:choice>
<xs:element name="mustSupport" type="string" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates that specific elements of the type are referenced by the knowledge module and must be supported by the consumer in order to obtain an effective evaluation. This does not mean that a value is required for this element, only that the consuming system must understand the element and be able to provide values for it if they are available.
The value of mustSupport SHALL be a FHIRPath resolveable on the type of the DataRequirement. The path SHALL consist only of identifiers, constant indexers, and .resolve() (see the [Simple FHIRPath Profile](fhirpath.html#simple) for full details).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="codeFilter" type="DataRequirement.CodeFilter" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Code filters specify additional constraints on the data, specifying the value set of interest for a particular element of the data. Each code filter defines an additional constraint on the data, i.e. code filters are AND'ed, not OR'ed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dateFilter" type="DataRequirement.DateFilter" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Date filters specify additional constraints on the data in terms of the applicable date range for specific elements. Each date filter specifies an additional constraint on the data, i.e. date filters are AND'ed, not OR'ed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="limit" type="positiveInt" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies a maximum number of results that are required (uses the _count search parameter).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sort" type="DataRequirement.Sort" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies the order of the results to be returned.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DataRequirement.CodeFilter">
<xs:annotation>
<xs:documentation xml:lang="en">Describes a required data item for evaluation in terms of the type of data, and optional code or date-based filters of the data.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="path" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The code-valued attribute of the filter. The specified path SHALL be a FHIRPath resolveable on the specified type of the DataRequirement, and SHALL consist only of identifiers, constant indexers, and .resolve(). The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements (see the [Simple FHIRPath Profile](fhirpath.html#simple) for full details). Note that the index must be an integer constant. The path must resolve to an element of type code, Coding, or CodeableConcept.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="searchParam" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A token parameter that refers to a search parameter defined on the specified type of the DataRequirement, and which searches on elements of type code, Coding, or CodeableConcept.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="valueSet" type="canonical" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The valueset for the code filter. The valueSet and code elements are additive. If valueSet is specified, the filter will return only those data items for which the value of the code-valued element specified in the path is a member of the specified valueset.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" type="Coding" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The codes for the code filter. If values are given, the filter will return only those data items for which the code-valued attribute specified by the path has a value that is one of the specified codes. If codes are specified in addition to a value set, the filter returns items matching a code in the value set or one of the specified codes.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DataRequirement.DateFilter">
<xs:annotation>
<xs:documentation xml:lang="en">Describes a required data item for evaluation in terms of the type of data, and optional code or date-based filters of the data.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="path" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The date-valued attribute of the filter. The specified path SHALL be a FHIRPath resolveable on the specified type of the DataRequirement, and SHALL consist only of identifiers, constant indexers, and .resolve(). The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements (see the [Simple FHIRPath Profile](fhirpath.html#simple) for full details). Note that the index must be an integer constant. The path must resolve to an element of type date, dateTime, Period, Schedule, or Timing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="searchParam" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A date parameter that refers to a search parameter defined on the specified type of the DataRequirement, and which searches on elements of type date, dateTime, Period, Schedule, or Timing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The value of the filter. If period is specified, the filter will return only those data items that fall within the bounds determined by the Period, inclusive of the period boundaries. If dateTime is specified, the filter will return only those data items that are equal to the specified dateTime. If a Duration is specified, the filter will return only those data items that fall within Duration before now.</xs:documentation>
</xs:annotation>
<xs:element name="valueDateTime" type="dateTime" maxOccurs="1"/>
<xs:element name="valuePeriod" type="Period" maxOccurs="1"/>
<xs:element name="valueDuration" type="Duration" maxOccurs="1"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DataRequirement.Sort">
<xs:annotation>
<xs:documentation xml:lang="en">Describes a required data item for evaluation in terms of the type of data, and optional code or date-based filters of the data.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="path" type="string" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The attribute of the sort. The specified path must be resolvable from the type of the required data. The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements. Note that the index must be an integer constant.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="direction" type="SortDirection" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The direction of the sort, ascending or descending.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="SortDirection-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="ascending">
<xs:annotation>
<xs:documentation xml:lang="en">Ascending</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="descending">
<xs:annotation>
<xs:documentation xml:lang="en">Descending</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="SortDirection">
<xs:annotation>
<xs:documentation xml:lang="en">The possible sort directions, ascending or descending.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="SortDirection-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Dosage">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates how the medication is/was taken or should be taken by the patient.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="sequence" type="integer" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the order in which the dosage instructions should be applied or interpreted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="text" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Free text dosage instructions e.g. SIG.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="additionalInstruction" type="CodeableConcept" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Supplemental instructions to the patient on how to take the medication (e.g. &quot;with meals&quot; or&quot;take half to one hour before food&quot;) or warnings for the patient about the medication (e.g. &quot;may cause drowsiness&quot; or &quot;avoid exposure of skin to direct sunlight or sunlamps&quot;).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patientInstruction" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Instructions in terms that are understood by the patient or consumer.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="timing" type="Timing" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">When medication should be administered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether the Medication is only taken when needed within a specific dosing schedule (Boolean option), or it indicates the precondition for taking the Medication (CodeableConcept).</xs:documentation>
</xs:annotation>
<xs:element name="asNeededBoolean" type="boolean" maxOccurs="1"/>
<xs:element name="asNeededCodeableConcept" type="CodeableConcept" maxOccurs="1"/>
</xs:choice>
<xs:element name="site" type="CodeableConcept" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Body site to administer to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="route" type="CodeableConcept" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">How drug should enter body.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="method" type="CodeableConcept" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Technique for administering medication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="doseAndRate" type="Dosage.DoseAndRate" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The amount of medication administered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="maxDosePerPeriod" type="Ratio" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Upper limit on medication per unit of time.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="maxDosePerAdministration" type="Quantity" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Upper limit on medication per administration.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="maxDosePerLifetime" type="Quantity" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Upper limit on medication per lifetime of the patient.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Dosage.DoseAndRate">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates how the medication is/was taken or should be taken by the patient.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" type="CodeableConcept" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The kind of dose or rate specified, for example, ordered or calculated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Amount of medication per dose.</xs:documentation>
</xs:annotation>
<xs:element name="doseRange" type="Range" maxOccurs="1"/>
<xs:element name="doseQuantity" type="Quantity" maxOccurs="1"/>
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Amount of medication per unit of time.</xs:documentation>
</xs:annotation>
<xs:element name="rateRatio" type="Ratio" maxOccurs="1"/>
<xs:element name="rateRange" type="Range" maxOccurs="1"/>
<xs:element name="rateQuantity" type="Quantity" maxOccurs="1"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Money">
<xs:annotation>
<xs:documentation xml:lang="en">An amount of economic utility in some recognized currency.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="value" type="decimal" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Numerical value (with implicit precision).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="currency" type="code" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">ISO 4217 Currency Code.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="HumanName">
<xs:annotation>
<xs:documentation xml:lang="en">A human's name with the ability to identify parts and usage.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="use" type="NameUse" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the purpose for this name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="text" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies the entire name as it should be displayed e.g. on an application UI. This may be provided instead of or as well as the specific parts.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="family" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The part of a name that links to the genealogy. In some cultures (e.g. Eritrea) the family name of a son is the first name of his father.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="given" type="string" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Given name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="prefix" type="string" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Part of the name that is acquired as a title due to academic, legal, employment or nobility status, etc. and that appears at the start of the name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="suffix" type="string" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Part of the name that is acquired as a title due to academic, legal, employment or nobility status, etc. and that appears at the end of the name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" type="Period" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the period of time when this name was valid for the named person.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="NameUse-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="usual">
<xs:annotation>
<xs:documentation xml:lang="en">Usual</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="official">
<xs:annotation>
<xs:documentation xml:lang="en">Official</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="temp">
<xs:annotation>
<xs:documentation xml:lang="en">Temp</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="nickname">
<xs:annotation>
<xs:documentation xml:lang="en">Nickname</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="anonymous">
<xs:annotation>
<xs:documentation xml:lang="en">Anonymous</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="old">
<xs:annotation>
<xs:documentation xml:lang="en">Old</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="maiden">
<xs:annotation>
<xs:documentation xml:lang="en">Name changed for Marriage</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="NameUse">
<xs:annotation>
<xs:documentation xml:lang="en">The use of a human name.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="NameUse-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ContactPoint">
<xs:annotation>
<xs:documentation xml:lang="en">Details for all kinds of technology mediated contact points for a person or organization, including telephone, email, etc.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="system" type="ContactPointSystem" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Telecommunications form for contact point - what communications system is required to make use of the contact.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="value" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The actual contact point details, in a form that is meaningful to the designated communication system (i.e. phone number or email address).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="use" type="ContactPointUse" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the purpose for the contact point.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="rank" type="positiveInt" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies a preferred order in which to use a set of contacts. ContactPoints with lower rank values are more preferred than those with higher rank values.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" type="Period" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Time period when the contact point was/is in use.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ContactPointSystem-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="phone">
<xs:annotation>
<xs:documentation xml:lang="en">Phone</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="fax">
<xs:annotation>
<xs:documentation xml:lang="en">Fax</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="email">
<xs:annotation>
<xs:documentation xml:lang="en">Email</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="pager">
<xs:annotation>
<xs:documentation xml:lang="en">Pager</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="url">
<xs:annotation>
<xs:documentation xml:lang="en">URL</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="sms">
<xs:annotation>
<xs:documentation xml:lang="en">SMS</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="other">
<xs:annotation>
<xs:documentation xml:lang="en">Other</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ContactPointSystem">
<xs:annotation>
<xs:documentation xml:lang="en">Telecommunications form for contact point.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ContactPointSystem-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ContactPointUse-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="home">
<xs:annotation>
<xs:documentation xml:lang="en">Home</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="work">
<xs:annotation>
<xs:documentation xml:lang="en">Work</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="temp">
<xs:annotation>
<xs:documentation xml:lang="en">Temp</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="old">
<xs:annotation>
<xs:documentation xml:lang="en">Old</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="mobile">
<xs:annotation>
<xs:documentation xml:lang="en">Mobile</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ContactPointUse">
<xs:annotation>
<xs:documentation xml:lang="en">Use of contact point.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ContactPointUse-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MarketingStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The marketing status describes the date when a medicinal product is actually put on the market or the date as of which it is no longer available.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="country" type="CodeableConcept" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The country in which the marketing authorisation has been granted shall be specified It should be specified using the ISO 3166 1 alpha-2 code elements.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" type="CodeableConcept" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Where a Medicines Regulatory Agency has granted a marketing authorisation for which specific provisions within a jurisdiction apply, the jurisdiction can be specified using an appropriate controlled terminology The controlled term and the controlled term identifier shall be specified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" type="CodeableConcept" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">This attribute provides information on the status of the marketing of the medicinal product See ISO/TS 20443 for more information and examples.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dateRange" type="Period" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The date when the Medicinal Product is placed on the market by the Marketing Authorisation Holder (or where applicable, the manufacturer/distributor) in a country and/or jurisdiction shall be provided A complete date consisting of day, month and year shall be specified using the ISO 8601 date format NOTE “Placed on the market” refers to the release of the Medicinal Product into the distribution chain.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="restoreDate" type="dateTime" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The date when the Medicinal Product is placed on the market by the Marketing Authorisation Holder (or where applicable, the manufacturer/distributor) in a country and/or jurisdiction shall be provided A complete date consisting of day, month and year shall be specified using the ISO 8601 date format NOTE “Placed on the market” refers to the release of the Medicinal Product into the distribution chain.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">An identifier - identifies some entity uniquely and unambiguously. Typically this is used for business identifiers.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="use" type="IdentifierUse" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The purpose of this identifier.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" type="CodeableConcept" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A coded type for the identifier that can be used to determine which identifier to use for a specific purpose.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="system" type="uri" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Establishes the namespace for the value - that is, a URL that describes a set values that are unique.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="value" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The portion of the identifier typically relevant to the user and which is unique within the context of the system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" type="Period" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Time period during which identifier is/was valid for use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="assigner" type="Reference" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Organization that issued/manages the identifier.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="IdentifierUse-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="usual">
<xs:annotation>
<xs:documentation xml:lang="en">Usual</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="official">
<xs:annotation>
<xs:documentation xml:lang="en">Official</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="temp">
<xs:annotation>
<xs:documentation xml:lang="en">Temp</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="secondary">
<xs:annotation>
<xs:documentation xml:lang="en">Secondary</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="old">
<xs:annotation>
<xs:documentation xml:lang="en">Old</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="IdentifierUse">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the purpose for this identifier, if known .</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="IdentifierUse-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceAmount">
<xs:annotation>
<xs:documentation xml:lang="en">Chemical substances are a single substance type whose primary defining element is the molecular structure. Chemical substances shall be defined on the basis of their complete covalent molecular structure; the presence of a salt (counter-ion) and/or solvates (water, alcohols) is also captured. Purity, grade, physical form or particle size are not taken into account in the definition of a chemical substance or in the assignment of a Substance ID.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Used to capture quantitative values for a variety of elements. If only limits are given, the arithmetic mean would be the average. If only a single definite value for a given element is given, it would be captured in this field.</xs:documentation>
</xs:annotation>
<xs:element name="amountQuantity" type="Quantity" maxOccurs="1"/>
<xs:element name="amountRange" type="Range" maxOccurs="1"/>
<xs:element name="amountString" type="string" maxOccurs="1"/>
</xs:choice>
<xs:element name="amountType" type="CodeableConcept" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Most elements that require a quantitative value will also have a field called amount type. Amount type should always be specified because the actual value of the amount is often dependent on it. EXAMPLE: In capturing the actual relative amounts of substances or molecular fragments it is essential to indicate whether the amount refers to a mole ratio or weight ratio. For any given element an effort should be made to use same the amount type for all related definitional elements.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="amountText" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A textual comment on a numeric value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referenceRange" type="SubstanceAmount.ReferenceRange" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Reference range of possible or expected values.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceAmount.ReferenceRange">
<xs:annotation>
<xs:documentation xml:lang="en">Chemical substances are a single substance type whose primary defining element is the molecular structure. Chemical substances shall be defined on the basis of their complete covalent molecular structure; the presence of a salt (counter-ion) and/or solvates (water, alcohols) is also captured. Purity, grade, physical form or particle size are not taken into account in the definition of a chemical substance or in the assignment of a Substance ID.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="lowLimit" type="Quantity" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Lower limit possible or expected.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="highLimit" type="Quantity" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Upper limit possible or expected.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a code defined by a terminology system.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="system" type="uri" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The identification of the code system that defines the meaning of the symbol in the code.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" type="code" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="display" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A representation of the meaning of the code in the system, following the rules of the system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="userSelected" type="boolean" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates that this coding was chosen by a user directly - e.g. off a pick list of available items (codes or displays).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SampledData">
<xs:annotation>
<xs:documentation xml:lang="en">A series of measurements taken by a device, with upper and lower limits. There may be more than one dimension in the data.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="origin" type="Quantity" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The base quantity that a measured value of zero represents. In addition, this provides the units of the entire measurement series.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" type="decimal" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The length of time between sampling times, measured in milliseconds.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="factor" type="decimal" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A correction factor that is applied to the sampled data points before they are added to the origin.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lowerLimit" type="decimal" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The lower limit of detection of the measured points. This is needed if any of the data points have the value &quot;L&quot; (lower than detection limit).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="upperLimit" type="decimal" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The upper limit of detection of the measured points. This is needed if any of the data points have the value &quot;U&quot; (higher than detection limit).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dimensions" type="positiveInt" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The number of sample points at each time point. If this value is greater than one, then the dimensions will be interlaced - all the sample points for a point in time will be recorded at once.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="data" type="SampledDataDataType" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A series of data points which are decimal values separated by a single space (character u20). The special values &quot;E&quot; (error), &quot;L&quot; (below detection limit) and &quot;U&quot; (above detection limit) can also be used in place of a decimal value.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="SampledDataDataType-primitive">
<xs:restriction base="xs:string">
<xs:pattern value="((-{0,1}\d*\.{0,1}\d+)|[EUL])( ((-{0,1}\d*\.{0,1}\d+)|[EUL]))*"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="SampledDataDataType">
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="SampledDataDataType-primitive" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Population">
<xs:annotation>
<xs:documentation xml:lang="en">A populatioof people with some set of grouping criteria.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The age of the specific population.</xs:documentation>
</xs:annotation>
<xs:element name="ageRange" type="Range" maxOccurs="1"/>
<xs:element name="ageCodeableConcept" type="CodeableConcept" maxOccurs="1"/>
</xs:choice>
<xs:element name="gender" type="CodeableConcept" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The gender of the specific population.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="race" type="CodeableConcept" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Race of the specific population.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="physiologicalCondition" type="CodeableConcept" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The existing physiological conditions of the specific population to which this applies.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Ratio">
<xs:annotation>
<xs:documentation xml:lang="en">A relationship of two Quantity values - expressed as a numerator and a denominator.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="numerator" type="Quantity" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The value of the numerator.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="denominator" type="Quantity" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The value of the denominator.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Distance">
<xs:annotation>
<xs:documentation xml:lang="en">A length - a value with a unit that is a physical distance.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Quantity">
<xs:sequence>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Age">
<xs:annotation>
<xs:documentation xml:lang="en">A duration of time during which an organism (or a process) has existed.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Quantity">
<xs:sequence>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference from one resource to another.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="reference" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" type="uri" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The expected type of the target of the reference. If both Reference.type and Reference.reference are populated and Reference.reference is a FHIR URL, both SHALL be consistent.
The type is the Canonical URL of Resource Definition that is the type this reference refers to. References are URLs that are relative to http://hl7.org/fhir/StructureDefinition/ e.g. &quot;Patient&quot; is a reference to http://hl7.org/fhir/StructureDefinition/Patient. Absolute URLs are only allowed for logical models (and can only be used in references in logical models, not resources).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" type="Identifier" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">An identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="display" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Plain text narrative that identifies the resource in addition to the resource reference.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TriggerDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">A description of a triggering event. Triggering events can be named events, data events, or periodic, as determined by the type element.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="type" type="TriggerType" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The type of triggering event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A formal name for the event. This may be an absolute URI that identifies the event formally (e.g. from a trigger registry), or a simple relative URI that identifies the event in a local context.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The timing of the event (if this is a periodic trigger).</xs:documentation>
</xs:annotation>
<xs:element name="timingTiming" type="Timing" maxOccurs="1"/>
<xs:element name="timingReference" type="Reference" maxOccurs="1"/>
<xs:element name="timingDate" type="date" maxOccurs="1"/>
<xs:element name="timingDateTime" type="dateTime" maxOccurs="1"/>
</xs:choice>
<xs:element name="data" type="DataRequirement" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The triggering data of the event (if this is a data trigger). If more than one data is requirement is specified, then all the data requirements must be true.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="condition" type="Expression" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A boolean-valued expression that is evaluated in the context of the container of the trigger definition and returns whether or not the trigger fires.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="TriggerType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="named-event">
<xs:annotation>
<xs:documentation xml:lang="en">Named Event</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="periodic">
<xs:annotation>
<xs:documentation xml:lang="en">Periodic</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="data-changed">
<xs:annotation>
<xs:documentation xml:lang="en">Data Changed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="data-added">
<xs:annotation>
<xs:documentation xml:lang="en">Data Added</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="data-modified">
<xs:annotation>
<xs:documentation xml:lang="en">Data Updated</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="data-removed">
<xs:annotation>
<xs:documentation xml:lang="en">Data Removed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="data-accessed">
<xs:annotation>
<xs:documentation xml:lang="en">Data Accessed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="data-access-ended">
<xs:annotation>
<xs:documentation xml:lang="en">Data Access Ended</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="TriggerType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of trigger.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="TriggerType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">A measured amount (or an amount that can potentially be measured). Note that measured amounts include amounts that are not precisely quantified, including amounts involving arbitrary units and floating currencies.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="value" type="decimal" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The value of the measured amount. The value includes an implicit precision in the presentation of the value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comparator" type="QuantityComparator" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">How the value should be understood and represented - whether the actual value is greater or less than the stated value due to measurement issues; e.g. if the comparator is &quot;&lt;&quot; , then the real value is &lt; stated value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unit" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A human-readable form of the unit.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="system" type="uri" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The identification of the system that provides the coded form of the unit.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" type="code" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A computer processable form of the unit in some unit representation system.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="QuantityComparator-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="&lt;">
<xs:annotation>
<xs:documentation xml:lang="en">Less than</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="&lt;=">
<xs:annotation>
<xs:documentation xml:lang="en">Less or Equal to</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="&gt;=">
<xs:annotation>
<xs:documentation xml:lang="en">Greater or Equal to</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="&gt;">
<xs:annotation>
<xs:documentation xml:lang="en">Greater than</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="QuantityComparator">
<xs:annotation>
<xs:documentation xml:lang="en">How the Quantity should be understood and represented.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="QuantityComparator-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Period">
<xs:annotation>
<xs:documentation xml:lang="en">A time period defined by a start and end date and optionally time.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="start" type="dateTime" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The start of the period. The boundary is inclusive.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="end" type="dateTime" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The end of the period. If the end of the period is missing, it means no end was known or planned at the time the instance was created. The start may be in the past, and the end date in the future, which means that period is expected/planned to end at that time.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Duration">
<xs:annotation>
<xs:documentation xml:lang="en">A length of time.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Quantity">
<xs:sequence>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Range">
<xs:annotation>
<xs:documentation xml:lang="en">A set of ordered Quantities defined by a low and high limit.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="low" type="Quantity" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The low limit. The boundary is inclusive.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="high" type="Quantity" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The high limit. The boundary is inclusive.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="RelatedArtifact">
<xs:annotation>
<xs:documentation xml:lang="en">Related artifacts such as additional documentation, justification, or bibliographic references.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="type" type="RelatedArtifactType" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The type of relationship to the related artifact.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="label" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A short label that can be used to reference the citation from elsewhere in the containing artifact, such as a footnote index.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="display" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A brief description of the document or knowledge resource being referenced, suitable for display to a consumer.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="citation" type="markdown" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A bibliographic citation for the related artifact. This text SHOULD be formatted according to an accepted citation format.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="url" type="url" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A url for the artifact that can be followed to access the actual content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="document" type="Attachment" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The document being referenced, represented as an attachment. This is exclusive with the resource element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="resource" type="canonical" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The related resource, such as a library, value set, profile, or other knowledge resource.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="RelatedArtifactType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="documentation">
<xs:annotation>
<xs:documentation xml:lang="en">Documentation</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="justification">
<xs:annotation>
<xs:documentation xml:lang="en">Justification</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="citation">
<xs:annotation>
<xs:documentation xml:lang="en">Citation</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="predecessor">
<xs:annotation>
<xs:documentation xml:lang="en">Predecessor</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="successor">
<xs:annotation>
<xs:documentation xml:lang="en">Successor</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="derived-from">
<xs:annotation>
<xs:documentation xml:lang="en">Derived From</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="depends-on">
<xs:annotation>
<xs:documentation xml:lang="en">Depends On</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="composed-of">
<xs:annotation>
<xs:documentation xml:lang="en">Composed Of</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="RelatedArtifactType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of relationship to the related artifact.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="RelatedArtifactType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">A text note which also contains information about who made the statement and when.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The individual responsible for making the annotation.</xs:documentation>
</xs:annotation>
<xs:element name="authorReference" type="Reference" maxOccurs="1"/>
<xs:element name="authorString" type="string" maxOccurs="1"/>
</xs:choice>
<xs:element name="time" type="dateTime" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates when this particular annotation was made.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="text" type="markdown" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The text of the annotation in markdown format.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ProductShelfLife">
<xs:annotation>
<xs:documentation xml:lang="en">The shelf-life and storage information for a medicinal product item or container can be described using this class.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="identifier" type="Identifier" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Unique identifier for the packaged Medicinal Product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" type="CodeableConcept" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">This describes the shelf life, taking into account various scenarios such as shelf life of the packaged Medicinal Product itself, shelf life after transformation where necessary and shelf life after the first opening of a bottle, etc. The shelf life type shall be specified using an appropriate controlled vocabulary The controlled term and the controlled term identifier shall be specified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" type="Quantity" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The shelf life time period can be specified using a numerical value for the period of time and its unit of time measurement The unit of measurement shall be specified in accordance with ISO 11240 and the resulting terminology The symbol and the symbol identifier shall be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specialPrecautionsForStorage" type="CodeableConcept" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Special precautions for storage, if any, can be specified using an appropriate controlled vocabulary The controlled term and the controlled term identifier shall be specified.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies contact information for a person or organization.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="name" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The name of an individual to contact.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="telecom" type="ContactPoint" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The contact details for the individual (if a name was provided) or the organization.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies clinical/business/etc. metadata that can be used to retrieve, index and/or categorize an artifact. This metadata can either be specific to the applicable population (e.g., age category, DRG) or the specific context of care (e.g., venue, care setting, provider of care).</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="code" type="Coding" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A code that identifies the type of context being specified by this usage context.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A value that defines the context specified in this context of use. The interpretation of the value is defined by the code.</xs:documentation>
</xs:annotation>
<xs:element name="valueCodeableConcept" type="CodeableConcept" maxOccurs="1"/>
<xs:element name="valueQuantity" type="Quantity" maxOccurs="1"/>
<xs:element name="valueRange" type="Range" maxOccurs="1"/>
<xs:element name="valueReference" type="Reference" maxOccurs="1"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Expression">
<xs:annotation>
<xs:documentation xml:lang="en">A expression that is evaluated in a specified context and returns a value. The context of use of the expression must specify the context in which the expression is evaluated, and how the result of the expression is used.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="description" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A brief, natural language description of the condition that effectively communicates the intended semantics.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" type="id" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A short name assigned to the expression to allow for multiple reuse of the expression in the context where it is defined.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="language" type="ExpressionLanguage" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The media type of the language for the expression.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expression" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">An expression in the specified language that returns a value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reference" type="uri" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A URI that defines where the expression is found.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ExpressionLanguage-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="text/cql">
<xs:annotation>
<xs:documentation xml:lang="en">CQL</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="text/fhirpath">
<xs:annotation>
<xs:documentation xml:lang="en">FHIRPath</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="application/x-fhir-query">
<xs:annotation>
<xs:documentation xml:lang="en">FHIR Query</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ExpressionLanguage">
<xs:annotation>
<xs:documentation xml:lang="en">The media type of the expression language.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ExpressionLanguage-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Signature">
<xs:annotation>
<xs:documentation xml:lang="en">A signature along with supporting context. The signature may be a digital signature that is cryptographic in nature, or some other signature acceptable to the domain. This other signature may be as simple as a graphical image representing a hand-written signature, or a signature ceremony Different signature approaches have different utilities.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="type" type="Coding" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">An indication of the reason that the entity signed this document. This may be explicitly included as part of the signature information and can be used when determining accountability for various actions concerning the document.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="when" type="instant" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">When the digital signature was signed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="who" type="Reference" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to an application-usable description of the identity that signed (e.g. the signature used their private key).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="onBehalfOf" type="Reference" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to an application-usable description of the identity that is represented by the signature.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="targetFormat" type="code" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A mime type that indicates the technical format of the target resources signed by the signature.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sigFormat" type="code" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A mime type that indicates the technical format of the signature. Important mime types are application/signature+xml for X ML DigSig, application/jose for JWS, and image/* for a graphical image of a signature, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="data" type="base64Binary" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The base64 encoding of the Signature content. When signature is not recorded electronically this element would be empty.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Timing">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies an event that may occur multiple times. Timing schedules are used to record when things are planned, expected or requested to occur. The most common usage is in dosage instructions for medications. They are also used when planning care of various kinds, and may be used for reporting the schedule to which past regular activities were carried out.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="event" type="dateTime" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies specific times when the event occurs.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="repeat" type="Timing.Repeat" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A set of rules that describe when the event is scheduled.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" type="CodeableConcept" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A code for the timing schedule (or just text in code.text). Some codes such as BID are ubiquitous, but many institutions define their own additional codes. If a code is provided, the code is understood to be a complete statement of whatever is specified in the structured timing data, and either the code or the data may be used to interpret the Timing, with the exception that .repeat.bounds still applies over the code (and is not contained in the code).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Timing.Repeat">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies an event that may occur multiple times. Timing schedules are used to record when things are planned, expected or requested to occur. The most common usage is in dosage instructions for medications. They are also used when planning care of various kinds, and may be used for reporting the schedule to which past regular activities were carried out.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Either a duration for the length of the timing schedule, a range of possible length, or outer bounds for start and/or end limits of the timing schedule.</xs:documentation>
</xs:annotation>
<xs:element name="boundsDuration" type="Duration" maxOccurs="1"/>
<xs:element name="boundsRange" type="Range" maxOccurs="1"/>
<xs:element name="boundsPeriod" type="Period" maxOccurs="1"/>
</xs:choice>
<xs:element name="count" type="positiveInt" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A total count of the desired number of repetitions across the duration of the entire timing specification. If countMax is present, this element indicates the lower bound of the allowed range of count values.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="countMax" type="positiveInt" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">If present, indicates that the count is a range - so to perform the action between [count] and [countMax] times.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="duration" type="decimal" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">How long this thing happens for when it happens. If durationMax is present, this element indicates the lower bound of the allowed range of the duration.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="durationMax" type="decimal" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">If present, indicates that the duration is a range - so to perform the action between [duration] and [durationMax] time length.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="durationUnit" type="UnitsOfTime" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The units of time for the duration, in UCUM units.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="frequency" type="positiveInt" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The number of times to repeat the action within the specified period. If frequencyMax is present, this element indicates the lower bound of the allowed range of the frequency.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="frequencyMax" type="positiveInt" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">If present, indicates that the frequency is a range - so to repeat between [frequency] and [frequencyMax] times within the period or period range.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" type="decimal" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the duration of time over which repetitions are to occur; e.g. to express &quot;3 times per day&quot;, 3 would be the frequency and &quot;1 day&quot; would be the period. If periodMax is present, this element indicates the lower bound of the allowed range of the period length.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="periodMax" type="decimal" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">If present, indicates that the period is a range from [period] to [periodMax], allowing expressing concepts such as &quot;do this once every 3-5 days.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="periodUnit" type="UnitsOfTime" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The units of time for the period in UCUM units.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dayOfWeek" type="code" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">If one or more days of week is provided, then the action happens only on the specified day(s).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="timeOfDay" type="time" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Specified time of day for action to take place.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="when" type="EventTiming" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">An approximate time period during the day, potentially linked to an event of daily living that indicates when the action should occur.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="offset" type="unsignedInt" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The number of minutes from the event. If the event code does not indicate whether the minutes is before or after the event, then the offset is assumed to be after the event.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="UnitsOfTime-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="s">
<xs:annotation>
<xs:documentation xml:lang="en">秒</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="min">
<xs:annotation>
<xs:documentation xml:lang="en">分钟</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="h">
<xs:annotation>
<xs:documentation xml:lang="en">小时</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="d">
<xs:annotation>
<xs:documentation xml:lang="en">天</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="wk">
<xs:annotation>
<xs:documentation xml:lang="en">星期</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="mo">
<xs:annotation>
<xs:documentation xml:lang="en">月</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="a">
<xs:annotation>
<xs:documentation xml:lang="en">年</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="UnitsOfTime">
<xs:annotation>
<xs:documentation xml:lang="en">A unit of time (units from UCUM).</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="UnitsOfTime-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="EventTiming-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="MORN">
<xs:annotation>
<xs:documentation xml:lang="en">Morning</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MORN.early">
<xs:annotation>
<xs:documentation xml:lang="en">Early Morning</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MORN.late">
<xs:annotation>
<xs:documentation xml:lang="en">Late Morning</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="NOON">
<xs:annotation>
<xs:documentation xml:lang="en">Noon</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AFT">
<xs:annotation>
<xs:documentation xml:lang="en">Afternoon</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AFT.early">
<xs:annotation>
<xs:documentation xml:lang="en">Early Afternoon</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AFT.late">
<xs:annotation>
<xs:documentation xml:lang="en">Late Afternoon</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="EVE">
<xs:annotation>
<xs:documentation xml:lang="en">Evening</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="EVE.early">
<xs:annotation>
<xs:documentation xml:lang="en">Early Evening</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="EVE.late">
<xs:annotation>
<xs:documentation xml:lang="en">Late Evening</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="NIGHT">
<xs:annotation>
<xs:documentation xml:lang="en">Night</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="PHS">
<xs:annotation>
<xs:documentation xml:lang="en">After Sleep</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="HS">
<xs:annotation>
<xs:documentation xml:lang="en">HS</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="WAKE">
<xs:annotation>
<xs:documentation xml:lang="en">WAKE</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="C">
<xs:annotation>
<xs:documentation xml:lang="en">C</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CM">
<xs:annotation>
<xs:documentation xml:lang="en">CM</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CD">
<xs:annotation>
<xs:documentation xml:lang="en">CD</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CV">
<xs:annotation>
<xs:documentation xml:lang="en">CV</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AC">
<xs:annotation>
<xs:documentation xml:lang="en">AC</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ACM">
<xs:annotation>
<xs:documentation xml:lang="en">ACM</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ACD">
<xs:annotation>
<xs:documentation xml:lang="en">ACD</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ACV">
<xs:annotation>
<xs:documentation xml:lang="en">ACV</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="PC">
<xs:annotation>
<xs:documentation xml:lang="en">PC</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="PCM">
<xs:annotation>
<xs:documentation xml:lang="en">PCM</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="PCD">
<xs:annotation>
<xs:documentation xml:lang="en">PCD</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="PCV">
<xs:annotation>
<xs:documentation xml:lang="en">PCV</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="EventTiming">
<xs:annotation>
<xs:documentation xml:lang="en">Real world event relating to the schedule.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="EventTiming-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ProdCharacteristic">
<xs:annotation>
<xs:documentation xml:lang="en">The marketing status describes the date when a medicinal product is actually put on the market or the date as of which it is no longer available.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="height" type="Quantity" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Where applicable, the height can be specified using a numerical value and its unit of measurement The unit of measurement shall be specified in accordance with ISO 11240 and the resulting terminology The symbol and the symbol identifier shall be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="width" type="Quantity" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Where applicable, the width can be specified using a numerical value and its unit of measurement The unit of measurement shall be specified in accordance with ISO 11240 and the resulting terminology The symbol and the symbol identifier shall be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="depth" type="Quantity" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Where applicable, the depth can be specified using a numerical value and its unit of measurement The unit of measurement shall be specified in accordance with ISO 11240 and the resulting terminology The symbol and the symbol identifier shall be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="weight" type="Quantity" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Where applicable, the weight can be specified using a numerical value and its unit of measurement The unit of measurement shall be specified in accordance with ISO 11240 and the resulting terminology The symbol and the symbol identifier shall be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="nominalVolume" type="Quantity" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Where applicable, the nominal volume can be specified using a numerical value and its unit of measurement The unit of measurement shall be specified in accordance with ISO 11240 and the resulting terminology The symbol and the symbol identifier shall be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="externalDiameter" type="Quantity" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Where applicable, the external diameter can be specified using a numerical value and its unit of measurement The unit of measurement shall be specified in accordance with ISO 11240 and the resulting terminology The symbol and the symbol identifier shall be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="shape" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Where applicable, the shape can be specified An appropriate controlled vocabulary shall be used The term and the term identifier shall be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="color" type="string" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Where applicable, the color can be specified An appropriate controlled vocabulary shall be used The term and the term identifier shall be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="imprint" type="string" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Where applicable, the imprint can be specified as text.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="image" type="Attachment" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Where applicable, the image can be provided The format of the image attachment shall be specified by regional implementations.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="scoring" type="CodeableConcept" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Where applicable, the scoring can be specified An appropriate controlled vocabulary shall be used The term and the term identifier shall be used.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="coding" type="Coding" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a code defined by a terminology system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="text" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ParameterDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">The parameters to the module. This collection specifies both the input and output parameters. Input parameters are provided by the caller as part of the $evaluate operation. Output parameters are included in the GuidanceResponse.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:sequence>
<xs:element name="name" type="code" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the parameter used to allow access to the value of the parameter in evaluation contexts.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="use" type="code" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the parameter is input or output for the module.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="min" type="integer" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The minimum number of times this parameter SHALL appear in the request or response.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="max" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The maximum number of times this element is permitted to appear in the request or response.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="documentation" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A brief discussion of what the parameter is for and how it is used by the module.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" type="code" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The type of the parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="profile" type="canonical" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">If specified, this indicates a profile that the input data must conform to, or that the output data will conform to.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ElementDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">Captures constraints on each element within the resource, profile, or extension.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="path" type="string" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The path identifies the element and is expressed as a &quot;.&quot;-separated list of ancestor elements, beginning with the name of the resource or extension.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="representation" type="PropertyRepresentation" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Codes that define how this element is represented in instances, when the deviation varies from the normal case.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sliceName" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The name of this element definition slice, when slicing is working. The name must be a token with no dots or spaces. This is a unique name referring to a specific set of constraints applied to this element, used to provide a name to different slices of the same element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sliceIsConstraining" type="boolean" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">If true, indicates that this slice definition is constraining a slice definition with the same name in an inherited profile. If false, the slice is not overriding any slice in an inherited profile. If missing, the slice might or might not be overriding a slice in an inherited profile, depending on the sliceName.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="label" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A single preferred label which is the text to display beside the element indicating its meaning or to use to prompt for the element in a user display or form.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" type="Coding" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A code that has the same meaning as the element in a particular terminology.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="slicing" type="ElementDefinition.Slicing" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates that the element is sliced into a set of alternative definitions (i.e. in a structure definition, there are multiple different constraints on a single element in the base resource). Slicing can be used in any resource that has cardinality ..* on the base resource, or any resource with a choice of types. The set of slices is any elements that come after this in the element sequence that have the same path, until a shorter path occurs (the shorter path terminates the set).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="short" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A concise description of what this element means (e.g. for use in autogenerated summaries).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="definition" type="markdown" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Provides a complete explanation of the meaning of the data element for human readability. For the case of elements derived from existing elements (e.g. constraints), the definition SHALL be consistent with the base definition, but convey the meaning of the element in the particular context of use of the resource. (Note: The text you are reading is specified in ElementDefinition.definition).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comment" type="markdown" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Explanatory notes and implementation guidance about the data element, including notes about how to use the data properly, exceptions to proper use, etc. (Note: The text you are reading is specified in ElementDefinition.comment).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requirements" type="markdown" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">This element is for traceability of why the element was created and why the constraints exist as they do. This may be used to point to source materials or specifications that drove the structure of this element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="alias" type="string" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies additional names by which this element might also be known.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="min" type="unsignedInt" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The minimum number of times this element SHALL appear in the instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="max" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The maximum number of times this element is permitted to appear in the instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="base" type="ElementDefinition.Base" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Information about the base definition of the element, provided to make it unnecessary for tools to trace the deviation of the element through the derived and related profiles. When the element definition is not the original definition of an element - i.g. either in a constraint on another type, or for elements from a super type in a snap shot - then the information in provided in the element definition may be different to the base definition. On the original definition of the element, it will be same.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contentReference" type="uri" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies an element defined elsewhere in the definition whose content rules should be applied to the current element. ContentReferences bring across all the rules that are in the ElementDefinition for the element, including definitions, cardinality constraints, bindings, invariants etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" type="ElementDefinition.Type" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The data type or resource that the value of this element is permitted to be.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The value that should be used if there is no value stated in the instance (e.g. 'if not otherwise specified, the abstract is false').</xs:documentation>
</xs:annotation>
<xs:element name="defaultValueBase64Binary" type="base64Binary"/>
<xs:element name="defaultValueBoolean" type="boolean"/>
<xs:element name="defaultValueCanonical" type="canonical"/>
<xs:element name="defaultValueCode" type="code"/>
<xs:element name="defaultValueDate" type="date"/>
<xs:element name="defaultValueDateTime" type="dateTime"/>
<xs:element name="defaultValueDecimal" type="decimal"/>
<xs:element name="defaultValueId" type="id"/>
<xs:element name="defaultValueInstant" type="instant"/>
<xs:element name="defaultValueInteger" type="integer"/>
<xs:element name="defaultValueMarkdown" type="markdown"/>
<xs:element name="defaultValueOid" type="oid"/>
<xs:element name="defaultValuePositiveInt" type="positiveInt"/>
<xs:element name="defaultValueString" type="string"/>
<xs:element name="defaultValueTime" type="time"/>
<xs:element name="defaultValueUnsignedInt" type="unsignedInt"/>
<xs:element name="defaultValueUri" type="uri"/>
<xs:element name="defaultValueUrl" type="url"/>
<xs:element name="defaultValueUuid" type="uuid"/>
<xs:element name="defaultValueAddress" type="Address"/>
<xs:element name="defaultValueAge" type="Age"/>
<xs:element name="defaultValueAnnotation" type="Annotation"/>
<xs:element name="defaultValueAttachment" type="Attachment"/>
<xs:element name="defaultValueCodeableConcept" type="CodeableConcept"/>
<xs:element name="defaultValueCoding" type="Coding"/>
<xs:element name="defaultValueContactPoint" type="ContactPoint"/>
<xs:element name="defaultValueCount" type="Count"/>
<xs:element name="defaultValueDistance" type="Distance"/>
<xs:element name="defaultValueDuration" type="Duration"/>
<xs:element name="defaultValueHumanName" type="HumanName"/>
<xs:element name="defaultValueIdentifier" type="Identifier"/>
<xs:element name="defaultValueMoney" type="Money"/>
<xs:element name="defaultValuePeriod" type="Period"/>
<xs:element name="defaultValueQuantity" type="Quantity"/>
<xs:element name="defaultValueRange" type="Range"/>
<xs:element name="defaultValueRatio" type="Ratio"/>
<xs:element name="defaultValueReference" type="Reference"/>
<xs:element name="defaultValueSampledData" type="SampledData"/>
<xs:element name="defaultValueSignature" type="Signature"/>
<xs:element name="defaultValueTiming" type="Timing"/>
<xs:element name="defaultValueContactDetail" type="ContactDetail"/>
<xs:element name="defaultValueContributor" type="Contributor"/>
<xs:element name="defaultValueDataRequirement" type="DataRequirement"/>
<xs:element name="defaultValueExpression" type="Expression"/>
<xs:element name="defaultValueParameterDefinition" type="ParameterDefinition"/>
<xs:element name="defaultValueRelatedArtifact" type="RelatedArtifact"/>
<xs:element name="defaultValueTriggerDefinition" type="TriggerDefinition"/>
<xs:element name="defaultValueUsageContext" type="UsageContext"/>
<xs:element name="defaultValueDosage" type="Dosage"/>
<xs:element name="defaultValueMeta" type="Meta"/>
</xs:choice>
<xs:element name="meaningWhenMissing" type="markdown" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The Implicit meaning that is to be understood when this element is missing (e.g. 'when this element is missing, the period is ongoing').</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="orderMeaning" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">If present, indicates that the order of the repeating element has meaning and describes what that meaning is. If absent, it means that the order of the element has no meaning.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies a value that SHALL be exactly the value for this element in the instance. For purposes of comparison, non-significant whitespace is ignored, and all values must be an exact match (case and accent sensitive). Missing elements/attributes must also be missing.</xs:documentation>
</xs:annotation>
<xs:element name="fixedBase64Binary" type="base64Binary"/>
<xs:element name="fixedBoolean" type="boolean"/>
<xs:element name="fixedCanonical" type="canonical"/>
<xs:element name="fixedCode" type="code"/>
<xs:element name="fixedDate" type="date"/>
<xs:element name="fixedDateTime" type="dateTime"/>
<xs:element name="fixedDecimal" type="decimal"/>
<xs:element name="fixedId" type="id"/>
<xs:element name="fixedInstant" type="instant"/>
<xs:element name="fixedInteger" type="integer"/>
<xs:element name="fixedMarkdown" type="markdown"/>
<xs:element name="fixedOid" type="oid"/>
<xs:element name="fixedPositiveInt" type="positiveInt"/>
<xs:element name="fixedString" type="string"/>
<xs:element name="fixedTime" type="time"/>
<xs:element name="fixedUnsignedInt" type="unsignedInt"/>
<xs:element name="fixedUri" type="uri"/>
<xs:element name="fixedUrl" type="url"/>
<xs:element name="fixedUuid" type="uuid"/>
<xs:element name="fixedAddress" type="Address"/>
<xs:element name="fixedAge" type="Age"/>
<xs:element name="fixedAnnotation" type="Annotation"/>
<xs:element name="fixedAttachment" type="Attachment"/>
<xs:element name="fixedCodeableConcept" type="CodeableConcept"/>
<xs:element name="fixedCoding" type="Coding"/>
<xs:element name="fixedContactPoint" type="ContactPoint"/>
<xs:element name="fixedCount" type="Count"/>
<xs:element name="fixedDistance" type="Distance"/>
<xs:element name="fixedDuration" type="Duration"/>
<xs:element name="fixedHumanName" type="HumanName"/>
<xs:element name="fixedIdentifier" type="Identifier"/>
<xs:element name="fixedMoney" type="Money"/>
<xs:element name="fixedPeriod" type="Period"/>
<xs:element name="fixedQuantity" type="Quantity"/>
<xs:element name="fixedRange" type="Range"/>
<xs:element name="fixedRatio" type="Ratio"/>
<xs:element name="fixedReference" type="Reference"/>
<xs:element name="fixedSampledData" type="SampledData"/>
<xs:element name="fixedSignature" type="Signature"/>
<xs:element name="fixedTiming" type="Timing"/>
<xs:element name="fixedContactDetail" type="ContactDetail"/>
<xs:element name="fixedContributor" type="Contributor"/>
<xs:element name="fixedDataRequirement" type="DataRequirement"/>
<xs:element name="fixedExpression" type="Expression"/>
<xs:element name="fixedParameterDefinition" type="ParameterDefinition"/>
<xs:element name="fixedRelatedArtifact" type="RelatedArtifact"/>
<xs:element name="fixedTriggerDefinition" type="TriggerDefinition"/>
<xs:element name="fixedUsageContext" type="UsageContext"/>
<xs:element name="fixedDosage" type="Dosage"/>
<xs:element name="fixedMeta" type="Meta"/>
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies a value that the value in the instance SHALL follow - that is, any value in the pattern must be found in the instance. Other additional values may be found too. This is effectively constraint by example.
When pattern[x] is used to constrain a primitive, it means that the value provided in the pattern[x] must match the instance value exactly.
When pattern[x] is used to constrain an array, it means that each element provided in the pattern[x] array must (recursively) match at least one element from the instance array.
When pattern[x] is used to constrain a complex object, it means that each property in the pattern must be present in the complex object, and its value must recursively match -- i.e.,
1. If primitive: it must match exactly the pattern value
2. If a complex object: it must match (recursively) the pattern value
3. If an array: it must match (recursively) the pattern value.</xs:documentation>
</xs:annotation>
<xs:element name="patternBase64Binary" type="base64Binary"/>
<xs:element name="patternBoolean" type="boolean"/>
<xs:element name="patternCanonical" type="canonical"/>
<xs:element name="patternCode" type="code"/>
<xs:element name="patternDate" type="date"/>
<xs:element name="patternDateTime" type="dateTime"/>
<xs:element name="patternDecimal" type="decimal"/>
<xs:element name="patternId" type="id"/>
<xs:element name="patternInstant" type="instant"/>
<xs:element name="patternInteger" type="integer"/>
<xs:element name="patternMarkdown" type="markdown"/>
<xs:element name="patternOid" type="oid"/>
<xs:element name="patternPositiveInt" type="positiveInt"/>
<xs:element name="patternString" type="string"/>
<xs:element name="patternTime" type="time"/>
<xs:element name="patternUnsignedInt" type="unsignedInt"/>
<xs:element name="patternUri" type="uri"/>
<xs:element name="patternUrl" type="url"/>
<xs:element name="patternUuid" type="uuid"/>
<xs:element name="patternAddress" type="Address"/>
<xs:element name="patternAge" type="Age"/>
<xs:element name="patternAnnotation" type="Annotation"/>
<xs:element name="patternAttachment" type="Attachment"/>
<xs:element name="patternCodeableConcept" type="CodeableConcept"/>
<xs:element name="patternCoding" type="Coding"/>
<xs:element name="patternContactPoint" type="ContactPoint"/>
<xs:element name="patternCount" type="Count"/>
<xs:element name="patternDistance" type="Distance"/>
<xs:element name="patternDuration" type="Duration"/>
<xs:element name="patternHumanName" type="HumanName"/>
<xs:element name="patternIdentifier" type="Identifier"/>
<xs:element name="patternMoney" type="Money"/>
<xs:element name="patternPeriod" type="Period"/>
<xs:element name="patternQuantity" type="Quantity"/>
<xs:element name="patternRange" type="Range"/>
<xs:element name="patternRatio" type="Ratio"/>
<xs:element name="patternReference" type="Reference"/>
<xs:element name="patternSampledData" type="SampledData"/>
<xs:element name="patternSignature" type="Signature"/>
<xs:element name="patternTiming" type="Timing"/>
<xs:element name="patternContactDetail" type="ContactDetail"/>
<xs:element name="patternContributor" type="Contributor"/>
<xs:element name="patternDataRequirement" type="DataRequirement"/>
<xs:element name="patternExpression" type="Expression"/>
<xs:element name="patternParameterDefinition" type="ParameterDefinition"/>
<xs:element name="patternRelatedArtifact" type="RelatedArtifact"/>
<xs:element name="patternTriggerDefinition" type="TriggerDefinition"/>
<xs:element name="patternUsageContext" type="UsageContext"/>
<xs:element name="patternDosage" type="Dosage"/>
<xs:element name="patternMeta" type="Meta"/>
</xs:choice>
<xs:element name="example" type="ElementDefinition.Example" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A sample value for this element demonstrating the type of information that would typically be found in the element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The minimum allowed value for the element. The value is inclusive. This is allowed for the types date, dateTime, instant, time, decimal, integer, and Quantity.</xs:documentation>
</xs:annotation>
<xs:element name="minValueDate" type="date" maxOccurs="1"/>
<xs:element name="minValueDateTime" type="dateTime" maxOccurs="1"/>
<xs:element name="minValueInstant" type="instant" maxOccurs="1"/>
<xs:element name="minValueTime" type="time" maxOccurs="1"/>
<xs:element name="minValueDecimal" type="decimal" maxOccurs="1"/>
<xs:element name="minValueInteger" type="integer" maxOccurs="1"/>
<xs:element name="minValuePositiveInt" type="positiveInt" maxOccurs="1"/>
<xs:element name="minValueUnsignedInt" type="unsignedInt" maxOccurs="1"/>
<xs:element name="minValueQuantity" type="Quantity" maxOccurs="1"/>
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The maximum allowed value for the element. The value is inclusive. This is allowed for the types date, dateTime, instant, time, decimal, integer, and Quantity.</xs:documentation>
</xs:annotation>
<xs:element name="maxValueDate" type="date" maxOccurs="1"/>
<xs:element name="maxValueDateTime" type="dateTime" maxOccurs="1"/>
<xs:element name="maxValueInstant" type="instant" maxOccurs="1"/>
<xs:element name="maxValueTime" type="time" maxOccurs="1"/>
<xs:element name="maxValueDecimal" type="decimal" maxOccurs="1"/>
<xs:element name="maxValueInteger" type="integer" maxOccurs="1"/>
<xs:element name="maxValuePositiveInt" type="positiveInt" maxOccurs="1"/>
<xs:element name="maxValueUnsignedInt" type="unsignedInt" maxOccurs="1"/>
<xs:element name="maxValueQuantity" type="Quantity" maxOccurs="1"/>
</xs:choice>
<xs:element name="maxLength" type="integer" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the maximum length in characters that is permitted to be present in conformant instances and which is expected to be supported by conformant consumers that support the element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="condition" type="id" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to an invariant that may make additional statements about the cardinality or value in the instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="constraint" type="ElementDefinition.Constraint" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Formal constraints such as co-occurrence and other constraints that can be computationally evaluated within the context of the instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="mustSupport" type="boolean" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">If true, implementations that produce or consume resources SHALL provide &quot;support&quot; for the element in some meaningful way. If false, the element may be ignored and not supported. If false, whether to populate or use the data element in any way is at the discretion of the implementation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="isModifier" type="boolean" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">If true, the value of this element affects the interpretation of the element or resource that contains it, and the value of the element cannot be ignored. Typically, this is used for status, negation and qualification codes. The effect of this is that the element cannot be ignored by systems: they SHALL either recognize the element and process it, and/or a pre-determination has been made that it is not relevant to their particular system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="isModifierReason" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Explains how that element affects the interpretation of the resource or element that contains it.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="isSummary" type="boolean" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the element should be included if a client requests a search with the parameter _summary=true.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="binding" type="ElementDefinition.Binding" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Binds to a value set if this element is coded (code, Coding, CodeableConcept, Quantity), or the data types (string, uri).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="mapping" type="ElementDefinition.Mapping" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies a concept from an external specification that roughly corresponds to this element.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ElementDefinition.Constraint">
<xs:annotation>
<xs:documentation xml:lang="en">Captures constraints on each element within the resource, profile, or extension.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="key" type="id" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Allows identification of which elements have their cardinalities impacted by the constraint. Will not be referenced for constraints that do not affect cardinality.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requirements" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Description of why this constraint is necessary or appropriate.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="severity" type="ConstraintSeverity" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the impact constraint violation has on the conformance of the instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="human" type="string" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Text that can be used to describe the constraint in messages identifying that the constraint has been violated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expression" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A [FHIRPath](fhirpath.html) expression of constraint that can be executed to see if this constraint is met.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="xpath" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">An XPath expression of constraint that can be executed to see if this constraint is met.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" type="canonical" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to the original source of the constraint, for traceability purposes.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ElementDefinition.Mapping">
<xs:annotation>
<xs:documentation xml:lang="en">Captures constraints on each element within the resource, profile, or extension.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="identity" type="id" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">An internal reference to the definition of a mapping.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="language" type="code" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the computable language in which mapping.map is expressed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="map" type="string" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Expresses what part of the target specification corresponds to this element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comment" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Comments that provide information about the mapping or its use.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ElementDefinition.Base">
<xs:annotation>
<xs:documentation xml:lang="en">Captures constraints on each element within the resource, profile, or extension.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="path" type="string" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The Path that identifies the base element - this matches the ElementDefinition.path for that element. Across FHIR, there is only one base definition of any element - that is, an element definition on a [[[StructureDefinition]]] without a StructureDefinition.base.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="min" type="unsignedInt" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Minimum cardinality of the base element identified by the path.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="max" type="string" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Maximum cardinality of the base element identified by the path.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ElementDefinition.Type">
<xs:annotation>
<xs:documentation xml:lang="en">Captures constraints on each element within the resource, profile, or extension.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" type="uri" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">URL of Data type or Resource that is a(or the) type used for this element. References are URLs that are relative to http://hl7.org/fhir/StructureDefinition e.g. &quot;string&quot; is a reference to http://hl7.org/fhir/StructureDefinition/string. Absolute URLs are only allowed in logical models.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="profile" type="canonical" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies a profile structure or implementation Guide that applies to the datatype this element refers to. If any profiles are specified, then the content must conform to at least one of them. The URL can be a local reference - to a contained StructureDefinition, or a reference to another StructureDefinition or Implementation Guide by a canonical URL. When an implementation guide is specified, the type SHALL conform to at least one profile defined in the implementation guide.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="targetProfile" type="canonical" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Used when the type is &quot;Reference&quot; or &quot;canonical&quot;, and identifies a profile structure or implementation Guide that applies to the target of the reference this element refers to. If any profiles are specified, then the content must conform to at least one of them. The URL can be a local reference - to a contained StructureDefinition, or a reference to another StructureDefinition or Implementation Guide by a canonical URL. When an implementation guide is specified, the target resource SHALL conform to at least one profile defined in the implementation guide.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="aggregation" type="AggregationMode" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">If the type is a reference to another resource, how the resource is or can be aggregated - is it a contained resource, or a reference, and if the context is a bundle, is it included in the bundle.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="versioning" type="ReferenceVersionRules" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Whether this reference needs to be version specific or version independent, or whether either can be used.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ElementDefinition.Example">
<xs:annotation>
<xs:documentation xml:lang="en">Captures constraints on each element within the resource, profile, or extension.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="label" type="string" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the purpose of this example amoung the set of examples.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The actual value for the element, which must be one of the types allowed for this element.</xs:documentation>
</xs:annotation>
<xs:element name="valueBase64Binary" type="base64Binary"/>
<xs:element name="valueBoolean" type="boolean"/>
<xs:element name="valueCanonical" type="canonical"/>
<xs:element name="valueCode" type="code"/>
<xs:element name="valueDate" type="date"/>
<xs:element name="valueDateTime" type="dateTime"/>
<xs:element name="valueDecimal" type="decimal"/>
<xs:element name="valueId" type="id"/>
<xs:element name="valueInstant" type="instant"/>
<xs:element name="valueInteger" type="integer"/>
<xs:element name="valueMarkdown" type="markdown"/>
<xs:element name="valueOid" type="oid"/>
<xs:element name="valuePositiveInt" type="positiveInt"/>
<xs:element name="valueString" type="string"/>
<xs:element name="valueTime" type="time"/>
<xs:element name="valueUnsignedInt" type="unsignedInt"/>
<xs:element name="valueUri" type="uri"/>
<xs:element name="valueUrl" type="url"/>
<xs:element name="valueUuid" type="uuid"/>
<xs:element name="valueAddress" type="Address"/>
<xs:element name="valueAge" type="Age"/>
<xs:element name="valueAnnotation" type="Annotation"/>
<xs:element name="valueAttachment" type="Attachment"/>
<xs:element name="valueCodeableConcept" type="CodeableConcept"/>
<xs:element name="valueCoding" type="Coding"/>
<xs:element name="valueContactPoint" type="ContactPoint"/>
<xs:element name="valueCount" type="Count"/>
<xs:element name="valueDistance" type="Distance"/>
<xs:element name="valueDuration" type="Duration"/>
<xs:element name="valueHumanName" type="HumanName"/>
<xs:element name="valueIdentifier" type="Identifier"/>
<xs:element name="valueMoney" type="Money"/>
<xs:element name="valuePeriod" type="Period"/>
<xs:element name="valueQuantity" type="Quantity"/>
<xs:element name="valueRange" type="Range"/>
<xs:element name="valueRatio" type="Ratio"/>
<xs:element name="valueReference" type="Reference"/>
<xs:element name="valueSampledData" type="SampledData"/>
<xs:element name="valueSignature" type="Signature"/>
<xs:element name="valueTiming" type="Timing"/>
<xs:element name="valueContactDetail" type="ContactDetail"/>
<xs:element name="valueContributor" type="Contributor"/>
<xs:element name="valueDataRequirement" type="DataRequirement"/>
<xs:element name="valueExpression" type="Expression"/>
<xs:element name="valueParameterDefinition" type="ParameterDefinition"/>
<xs:element name="valueRelatedArtifact" type="RelatedArtifact"/>
<xs:element name="valueTriggerDefinition" type="TriggerDefinition"/>
<xs:element name="valueUsageContext" type="UsageContext"/>
<xs:element name="valueDosage" type="Dosage"/>
<xs:element name="valueMeta" type="Meta"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ElementDefinition.Slicing">
<xs:annotation>
<xs:documentation xml:lang="en">Captures constraints on each element within the resource, profile, or extension.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="discriminator" type="ElementDefinition.Discriminator" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Designates which child elements are used to discriminate between the slices when processing an instance. If one or more discriminators are provided, the value of the child elements in the instance data SHALL completely distinguish which slice the element in the resource matches based on the allowed values for those elements in each of the slices.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A human-readable text description of how the slicing works. If there is no discriminator, this is required to be present to provide whatever information is possible about how the slices can be differentiated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ordered" type="boolean" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">If the matching elements have to occur in the same order as defined in the profile.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="rules" type="SlicingRules" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Whether additional slices are allowed or not. When the slices are ordered, profile authors can also say that additional slices are only allowed at the end.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ElementDefinition.Binding">
<xs:annotation>
<xs:documentation xml:lang="en">Captures constraints on each element within the resource, profile, or extension.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="strength" type="BindingStrength" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the degree of conformance expectations associated with this binding - that is, the degree to which the provided value set must be adhered to in the instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" type="string" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the intended use of this particular set of codes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="valueSet" type="canonical" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Refers to the value set that identifies the set of codes the binding refers to.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ElementDefinition.Discriminator">
<xs:annotation>
<xs:documentation xml:lang="en">Captures constraints on each element within the resource, profile, or extension.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have a value for at least one of the defined elements, an @id referenced from the Narrative, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" type="DiscriminatorType" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">How the element value is interpreted when discrimination is evaluated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="path" type="string" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A FHIRPath expression, using [the simple subset of FHIRPath](fhirpath.html#simple), that is used to identify the element on which discrimination is based.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="PropertyRepresentation-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="xmlAttr">
<xs:annotation>
<xs:documentation xml:lang="en">XML Attribute</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="xmlText">
<xs:annotation>
<xs:documentation xml:lang="en">XML Text</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="typeAttr">
<xs:annotation>
<xs:documentation xml:lang="en">Type Attribute</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cdaText">
<xs:annotation>
<xs:documentation xml:lang="en">CDA Text Format</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="xhtml">
<xs:annotation>
<xs:documentation xml:lang="en">XHTML</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="PropertyRepresentation">
<xs:annotation>
<xs:documentation xml:lang="en">How a property is represented when serialized.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="PropertyRepresentation-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ConstraintSeverity-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="error">
<xs:annotation>
<xs:documentation xml:lang="en">Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="warning">
<xs:annotation>
<xs:documentation xml:lang="en">Warning</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ConstraintSeverity">
<xs:annotation>
<xs:documentation xml:lang="en">SHALL applications comply with this constraint?</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ConstraintSeverity-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="AggregationMode-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="contained">
<xs:annotation>
<xs:documentation xml:lang="en">Contained</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="referenced">
<xs:annotation>
<xs:documentation xml:lang="en">Referenced</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="bundled">
<xs:annotation>
<xs:documentation xml:lang="en">Bundled</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="AggregationMode">
<xs:annotation>
<xs:documentation xml:lang="en">How resource references can be aggregated.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="AggregationMode-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ReferenceVersionRules-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="either">
<xs:annotation>
<xs:documentation xml:lang="en">Either Specific or independent</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="independent">
<xs:annotation>
<xs:documentation xml:lang="en">Version independent</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="specific">
<xs:annotation>
<xs:documentation xml:lang="en">Version Specific</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ReferenceVersionRules">
<xs:annotation>
<xs:documentation xml:lang="en">Whether a reference needs to be version specific or version independent, or whether either can be used.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ReferenceVersionRules-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="SlicingRules-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="closed">
<xs:annotation>
<xs:documentation xml:lang="en">Closed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="open">
<xs:annotation>
<xs:documentation xml:lang="en">Open</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="openAtEnd">
<xs:annotation>
<xs:documentation xml:lang="en">Open at End</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="SlicingRules">
<xs:annotation>
<xs:documentation xml:lang="en">How slices are interpreted when evaluating an instance.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="SlicingRules-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="BindingStrength-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="required">
<xs:annotation>
<xs:documentation xml:lang="en">Required</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="extensible">
<xs:annotation>
<xs:documentation xml:lang="en">Extensible</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="preferred">
<xs:annotation>
<xs:documentation xml:lang="en">Preferred</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="example">
<xs:annotation>
<xs:documentation xml:lang="en">Example</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="BindingStrength">
<xs:annotation>
<xs:documentation xml:lang="en">Indication of the degree of conformance expectations associated with a binding.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="BindingStrength-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="DiscriminatorType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="value">
<xs:annotation>
<xs:documentation xml:lang="en">Value</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="exists">
<xs:annotation>
<xs:documentation xml:lang="en">Exists</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="pattern">
<xs:annotation>
<xs:documentation xml:lang="en">Pattern</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="type">
<xs:annotation>
<xs:documentation xml:lang="en">Type</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="profile">
<xs:annotation>
<xs:documentation xml:lang="en">Profile</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="DiscriminatorType">
<xs:annotation>
<xs:documentation xml:lang="en">How an element value is interpreted when discrimination is evaluated.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="DiscriminatorType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DomainResource">
<xs:annotation>
<xs:documentation xml:lang="en">A resource that includes narrative, extensions, and contained resources.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Resource">
<xs:sequence>
<xs:element name="text" type="Narrative" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it &quot;clinically safe&quot; for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contained" type="ResourceContainer" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="extension" type="Extension" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modifierExtension" type="Extension" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Resource">
<xs:annotation>
<xs:documentation xml:lang="en">This is the base resource type for everything.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="id" type="id" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="meta" type="Meta" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="implicitRules" type="uri" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="language" type="code" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The base language in which the resource is written.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="PublicationStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="draft">
<xs:annotation>
<xs:documentation xml:lang="en">Draft</xs:documentation>
<xs:documentation xml:lang="ru">черновик</xs:documentation>
<xs:documentation xml:lang="nl">ontwerp</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="active">
<xs:annotation>
<xs:documentation xml:lang="en">Active</xs:documentation>
<xs:documentation xml:lang="ru">активный</xs:documentation>
<xs:documentation xml:lang="nl">actief</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="retired">
<xs:annotation>
<xs:documentation xml:lang="en">Retired</xs:documentation>
<xs:documentation xml:lang="ru">удалён</xs:documentation>
<xs:documentation xml:lang="nl">verouderd</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unknown">
<xs:annotation>
<xs:documentation xml:lang="en">Unknown</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en"></xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="PublicationStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="SearchParamType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="number">
<xs:annotation>
<xs:documentation xml:lang="en">Number</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="date">
<xs:annotation>
<xs:documentation xml:lang="en">Date/DateTime</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="string">
<xs:annotation>
<xs:documentation xml:lang="en">String</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="token">
<xs:annotation>
<xs:documentation xml:lang="en">Token</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="composite">
<xs:annotation>
<xs:documentation xml:lang="en">Composite</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="quantity">
<xs:annotation>
<xs:documentation xml:lang="en">Quantity</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="uri">
<xs:annotation>
<xs:documentation xml:lang="en">URI</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="special">
<xs:annotation>
<xs:documentation xml:lang="en">Special</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="SearchParamType">
<xs:annotation>
<xs:documentation xml:lang="en"></xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="SearchParamType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="AdministrativeGender-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="male">
<xs:annotation>
<xs:documentation xml:lang="en">Male</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="female">
<xs:annotation>
<xs:documentation xml:lang="en">Female</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="other">
<xs:annotation>
<xs:documentation xml:lang="en">Other</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unknown">
<xs:annotation>
<xs:documentation xml:lang="en">Unknown</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="AdministrativeGender">
<xs:annotation>
<xs:documentation xml:lang="en"></xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="AdministrativeGender-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="FHIRVersion-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="0.01">
<xs:annotation>
<xs:documentation xml:lang="en">0.01</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="0.05">
<xs:annotation>
<xs:documentation xml:lang="en">0.05</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="0.06">
<xs:annotation>
<xs:documentation xml:lang="en">0.06</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="0.11">
<xs:annotation>
<xs:documentation xml:lang="en">0.11</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="0.0.80">
<xs:annotation>
<xs:documentation xml:lang="en">0.0.80</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="0.0.81">
<xs:annotation>
<xs:documentation xml:lang="en">0.0.81</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="0.0.82">
<xs:annotation>
<xs:documentation xml:lang="en">0.0.82</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="0.4.0">
<xs:annotation>
<xs:documentation xml:lang="en">0.4.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="0.5.0">
<xs:annotation>
<xs:documentation xml:lang="en">0.5.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="1.0.0">
<xs:annotation>
<xs:documentation xml:lang="en">1.0.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="1.0.1">
<xs:annotation>
<xs:documentation xml:lang="en">1.0.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="1.0.2">
<xs:annotation>
<xs:documentation xml:lang="en">1.0.2</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="1.1.0">
<xs:annotation>
<xs:documentation xml:lang="en">1.1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="1.4.0">
<xs:annotation>
<xs:documentation xml:lang="en">1.4.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="1.6.0">
<xs:annotation>
<xs:documentation xml:lang="en">1.6.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="1.8.0">
<xs:annotation>
<xs:documentation xml:lang="en">1.8.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="3.0.0">
<xs:annotation>
<xs:documentation xml:lang="en">3.0.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="3.0.1">
<xs:annotation>
<xs:documentation xml:lang="en">3.0.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="3.3.0">
<xs:annotation>
<xs:documentation xml:lang="en">3.3.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="3.5.0">
<xs:annotation>
<xs:documentation xml:lang="en">3.5.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="4.0.0">
<xs:annotation>
<xs:documentation xml:lang="en">4.0.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="4.0.1">
<xs:annotation>
<xs:documentation xml:lang="en">4.0.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="FHIRVersion">
<xs:annotation>
<xs:documentation xml:lang="en"></xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="FHIRVersion-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="NoteType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="display">
<xs:annotation>
<xs:documentation xml:lang="en">Display</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="print">
<xs:annotation>
<xs:documentation xml:lang="en">Print (Form)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="printoper">
<xs:annotation>
<xs:documentation xml:lang="en">Print (Operator)</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="NoteType">
<xs:annotation>
<xs:documentation xml:lang="en"></xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="NoteType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="RemittanceOutcome-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="queued">
<xs:annotation>
<xs:documentation xml:lang="en">Queued</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="complete">
<xs:annotation>
<xs:documentation xml:lang="en">Processing Complete</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="error">
<xs:annotation>
<xs:documentation xml:lang="en">Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="partial">
<xs:annotation>
<xs:documentation xml:lang="en">Partial Processing</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="RemittanceOutcome">
<xs:annotation>
<xs:documentation xml:lang="en"></xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="RemittanceOutcome-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ConceptMapEquivalence-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="relatedto">
<xs:annotation>
<xs:documentation xml:lang="en">Related To</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="equivalent">
<xs:annotation>
<xs:documentation xml:lang="en">Equivalent</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="equal">
<xs:annotation>
<xs:documentation xml:lang="en">Equal</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="wider">
<xs:annotation>
<xs:documentation xml:lang="en">Wider</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="subsumes">
<xs:annotation>
<xs:documentation xml:lang="en">Subsumes</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="narrower">
<xs:annotation>
<xs:documentation xml:lang="en">Narrower</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="specializes">
<xs:annotation>
<xs:documentation xml:lang="en">Specializes</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="inexact">
<xs:annotation>
<xs:documentation xml:lang="en">Inexact</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unmatched">
<xs:annotation>
<xs:documentation xml:lang="en">Unmatched</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="disjoint">
<xs:annotation>
<xs:documentation xml:lang="en">Disjoint</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ConceptMapEquivalence">
<xs:annotation>
<xs:documentation xml:lang="en"></xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ConceptMapEquivalence-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="DocumentReferenceStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="current">
<xs:annotation>
<xs:documentation xml:lang="en">Current</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="superseded">
<xs:annotation>
<xs:documentation xml:lang="en">Superseded</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="DocumentReferenceStatus">
<xs:annotation>
<xs:documentation xml:lang="en"></xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="DocumentReferenceStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Account" type="Account">
<xs:annotation>
<xs:documentation xml:lang="en">A financial tool for tracking value accrued for a particular purpose. In the healthcare field, used to track charges for a patient, cost centers, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Account">
<xs:annotation>
<xs:documentation xml:lang="en">A financial tool for tracking value accrued for a particular purpose. In the healthcare field, used to track charges for a patient, cost centers, etc.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Unique identifier used to reference the account. Might or might not be intended for human use (e.g. credit card number).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="AccountStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether the account is presently used/usable or not.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Categorizes the account for reporting and searching purposes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Name used for the account when displaying it to humans in reports, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the entity which incurs the expenses. While the immediate recipients of services or goods might be entities related to the subject, the expenses were ultimately incurred by the subject of the Account.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="servicePeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The date range of services associated with this account.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="coverage" type="Account.Coverage" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The party(s) that are responsible for covering the payment of this account, and what order should they be applied to the account.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="owner" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the service area, hospital, department, etc. with responsibility for managing the Account.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Provides additional information about what the account tracks and how it is used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="guarantor" type="Account.Guarantor" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The parties responsible for balancing the account if other payment options fall short.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partOf" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to a parent Account.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Account.Coverage">
<xs:annotation>
<xs:documentation xml:lang="en">A financial tool for tracking value accrued for a particular purpose. In the healthcare field, used to track charges for a patient, cost centers, etc.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="coverage" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The party(s) that contribute to payment (or part of) of the charges applied to this account (including self-pay).
A coverage may only be responsible for specific types of charges, and the sequence of the coverages in the account could be important when processing billing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priority" minOccurs="0" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The priority of the coverage in the context of this account.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Account.Guarantor">
<xs:annotation>
<xs:documentation xml:lang="en">A financial tool for tracking value accrued for a particular purpose. In the healthcare field, used to track charges for a patient, cost centers, etc.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="party" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The entity who is responsible.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="onHold" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A guarantor may be placed on credit hold or otherwise have their role temporarily suspended.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The timeframe during which the guarantor accepts responsibility for the account.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="AccountStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="active">
<xs:annotation>
<xs:documentation xml:lang="en">Active</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="inactive">
<xs:annotation>
<xs:documentation xml:lang="en">Inactive</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="on-hold">
<xs:annotation>
<xs:documentation xml:lang="en">On Hold</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unknown">
<xs:annotation>
<xs:documentation xml:lang="en">Unknown</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="AccountStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether the account is available to be used.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="AccountStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="ActivityDefinition" type="ActivityDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">This resource allows for the definition of some activity to be performed, independent of a particular patient, practitioner, or other performance context.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ActivityDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">This resource allows for the definition of some activity to be performed, independent of a particular patient, practitioner, or other performance context.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this activity definition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this activity definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the activity definition is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this activity definition when it is represented in other formats, or referenced in a specification, model, design or an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the activity definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the activity definition author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. To provide a version consistent with the Decision Support Service specification, use the format Major.Minor.Revision (e.g. 1.0.0). For more information on versioning knowledge assets, refer to the Decision Support Service specification. Note that a version is required for non-experimental active assets.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the activity definition. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the activity definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subtitle" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">An explanatory or alternate title for the activity definition giving additional information about its content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this activity definition. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this activity definition is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">A code or group definition that describes the intended subject of the activity being defined.</xs:documentation>
</xs:annotation>
<xs:element name="subjectCodeableConcept" type="CodeableConcept"/>
<xs:element name="subjectReference" type="Reference"/>
</xs:choice>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the activity definition was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the activity definition changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the activity definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the activity definition from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate activity definition instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the activity definition is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Explanation of why this activity definition is needed and why it has been designed as it has.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="usage" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A detailed description of how the activity definition is used from a clinical perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the activity definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the activity definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="approvalDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lastReviewDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="effectivePeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period during which the activity definition content was or is planned to be in active use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="topic" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Descriptive topics related to the content of the activity. Topics provide a high-level categorization of the activity that can be useful for filtering and searching.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individiual or organization primarily involved in the creation and maintenance of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="editor" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for internal coherence of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reviewer" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for review of some aspect of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endorser" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization responsible for officially endorsing the content for use in some setting.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relatedArtifact" minOccurs="0" maxOccurs="unbounded" type="RelatedArtifact">
<xs:annotation>
<xs:documentation xml:lang="en">Related artifacts such as additional documentation, justification, or bibliographic references.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="library" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a Library resource containing any formal logic used by the activity definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="kind" minOccurs="0" maxOccurs="1" type="RequestResourceType">
<xs:annotation>
<xs:documentation xml:lang="en">A description of the kind of resource the activity definition is representing. For example, a MedicationRequest, a ServiceRequest, or a CommunicationRequest. Typically, but not always, this is a Request resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="profile" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A profile to which the target of the activity definition is expected to conform.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Detailed description of the type of activity; e.g. What lab test, what procedure, what kind of encounter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="intent" minOccurs="0" maxOccurs="1" type="RequestIntent">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the level of authority/intentionality associated with the activity and where the request should fit into the workflow chain.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priority" minOccurs="0" maxOccurs="1" type="RequestPriority">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates how quickly the activity should be addressed with respect to other requests.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="doNotPerform" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Set this to true if the definition is to indicate that a particular activity should NOT be performed. If true, this element should be interpreted to reinforce a negative coding. For example NPO as a code with a doNotPerform of true would still indicate to NOT perform the action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The period, timing or frequency upon which the described activity is to occur.</xs:documentation>
</xs:annotation>
<xs:element name="timingTiming" type="Timing"/>
<xs:element name="timingDateTime" type="dateTime"/>
<xs:element name="timingAge" type="Age"/>
<xs:element name="timingPeriod" type="Period"/>
<xs:element name="timingRange" type="Range"/>
<xs:element name="timingDuration" type="Duration"/>
</xs:choice>
<xs:element name="location" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="participant" type="ActivityDefinition.Participant" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates who should participate in performing the action described.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the food, drug or other product being consumed or supplied in the activity.</xs:documentation>
</xs:annotation>
<xs:element name="productReference" type="Reference"/>
<xs:element name="productCodeableConcept" type="CodeableConcept"/>
</xs:choice>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the quantity expected to be consumed at once (per dose, per meal, etc.).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dosage" minOccurs="0" maxOccurs="unbounded" type="Dosage">
<xs:annotation>
<xs:documentation xml:lang="en">Provides detailed dosage instructions in the same way that they are described for MedicationRequest resources.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="bodySite" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the sites on the subject's body where the procedure should be performed (I.e. the target sites).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specimenRequirement" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Defines specimen requirements for the action to be performed, such as required specimens for a lab test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="observationRequirement" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Defines observation requirements for the action to be performed, such as body weight or surface area.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="observationResultRequirement" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Defines the observations that are expected to be produced by the action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="transform" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a StructureMap resource that defines a transform that can be executed to produce the intent resource using the ActivityDefinition instance as the input.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dynamicValue" type="ActivityDefinition.DynamicValue" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Dynamic values that will be evaluated to produce values for elements of the resulting resource. For example, if the dosage of a medication must be computed based on the patient's weight, a dynamic value would be used to specify an expression that calculated the weight, and the path on the request resource that would contain the result.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ActivityDefinition.Participant">
<xs:annotation>
<xs:documentation xml:lang="en">This resource allows for the definition of some activity to be performed, independent of a particular patient, practitioner, or other performance context.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="ActionParticipantType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of participant in the action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="role" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The role the participant should play in performing the described action.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ActivityDefinition.DynamicValue">
<xs:annotation>
<xs:documentation xml:lang="en">This resource allows for the definition of some activity to be performed, independent of a particular patient, practitioner, or other performance context.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="path" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The path to the element to be customized. This is the path on the resource that will hold the result of the calculation defined by the expression. The specified path SHALL be a FHIRPath resolveable on the specified target type of the ActivityDefinition, and SHALL consist only of identifiers, constant indexers, and a restricted subset of functions. The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements (see the [Simple FHIRPath Profile](fhirpath.html#simple) for full details).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expression" minOccurs="1" maxOccurs="1" type="Expression">
<xs:annotation>
<xs:documentation xml:lang="en">An expression specifying the value of the customized element.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ActionParticipantType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="patient">
<xs:annotation>
<xs:documentation xml:lang="en">Patient</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="practitioner">
<xs:annotation>
<xs:documentation xml:lang="en">Practitioner</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="related-person">
<xs:annotation>
<xs:documentation xml:lang="en">Related Person</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="device">
<xs:annotation>
<xs:documentation xml:lang="en">Device</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ActionParticipantType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of participant in the activity.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ActionParticipantType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="RequestIntent-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="proposal">
<xs:annotation>
<xs:documentation xml:lang="en">Proposal</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="plan">
<xs:annotation>
<xs:documentation xml:lang="en">Plan</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="directive">
<xs:annotation>
<xs:documentation xml:lang="en">Directive</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="order">
<xs:annotation>
<xs:documentation xml:lang="en">Order</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="original-order">
<xs:annotation>
<xs:documentation xml:lang="en">Original Order</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="reflex-order">
<xs:annotation>
<xs:documentation xml:lang="en">Reflex Order</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="filler-order">
<xs:annotation>
<xs:documentation xml:lang="en">Filler Order</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="instance-order">
<xs:annotation>
<xs:documentation xml:lang="en">Instance Order</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="option">
<xs:annotation>
<xs:documentation xml:lang="en">Option</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="RequestIntent">
<xs:annotation>
<xs:documentation xml:lang="en">Codes indicating the degree of authority/intentionality associated with a request.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="RequestIntent-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="RequestResourceType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="Appointment">
<xs:annotation>
<xs:documentation xml:lang="en">Appointment</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AppointmentResponse">
<xs:annotation>
<xs:documentation xml:lang="en">AppointmentResponse</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CarePlan">
<xs:annotation>
<xs:documentation xml:lang="en">CarePlan</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Claim">
<xs:annotation>
<xs:documentation xml:lang="en">Claim</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CommunicationRequest">
<xs:annotation>
<xs:documentation xml:lang="en">CommunicationRequest</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Contract">
<xs:annotation>
<xs:documentation xml:lang="en">Contract</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="DeviceRequest">
<xs:annotation>
<xs:documentation xml:lang="en">DeviceRequest</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="EnrollmentRequest">
<xs:annotation>
<xs:documentation xml:lang="en">EnrollmentRequest</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ImmunizationRecommendation">
<xs:annotation>
<xs:documentation xml:lang="en">ImmunizationRecommendation</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MedicationRequest">
<xs:annotation>
<xs:documentation xml:lang="en">MedicationRequest</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="NutritionOrder">
<xs:annotation>
<xs:documentation xml:lang="en">NutritionOrder</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ServiceRequest">
<xs:annotation>
<xs:documentation xml:lang="en">ServiceRequest</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SupplyRequest">
<xs:annotation>
<xs:documentation xml:lang="en">SupplyRequest</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Task">
<xs:annotation>
<xs:documentation xml:lang="en">Task</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="VisionPrescription">
<xs:annotation>
<xs:documentation xml:lang="en">VisionPrescription</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="RequestResourceType">
<xs:annotation>
<xs:documentation xml:lang="en">The kind of activity the definition is describing.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="RequestResourceType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="RequestPriority-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="routine">
<xs:annotation>
<xs:documentation xml:lang="en">Routine</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="urgent">
<xs:annotation>
<xs:documentation xml:lang="en">Urgent</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="asap">
<xs:annotation>
<xs:documentation xml:lang="en">ASAP</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="stat">
<xs:annotation>
<xs:documentation xml:lang="en">STAT</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="RequestPriority">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the level of importance to be assigned to actioning the request.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="RequestPriority-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="AdverseEvent" type="AdverseEvent">
<xs:annotation>
<xs:documentation xml:lang="en">Actual or potential/avoided event causing unintended physical injury resulting from or contributed to by medical care, a research study or other healthcare setting factors that requires additional monitoring, treatment, or hospitalization, or that results in death.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="AdverseEvent">
<xs:annotation>
<xs:documentation xml:lang="en">Actual or potential/avoided event causing unintended physical injury resulting from or contributed to by medical care, a research study or other healthcare setting factors that requires additional monitoring, treatment, or hospitalization, or that results in death.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business identifiers assigned to this adverse event by the performer or other systems which remain constant as the resource is updated and propagates from server to server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="actuality" minOccurs="1" maxOccurs="1" type="AdverseEventActuality">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the event actually happened, or just had the potential to. Note that this is independent of whether anyone was affected or harmed or how severely.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The overall type of event, intended for search and filtering purposes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="event" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">This element defines the specific type of event that occurred or that was prevented from occurring.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">This subject or group impacted by the event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The Encounter during which AdverseEvent was created or to which the creation of this record is tightly associated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and perhaps time) when the adverse event occurred.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detected" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Estimated or actual date the AdverseEvent began, in the opinion of the reporter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="recordedDate" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the existence of the AdverseEvent was first recorded.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="resultingCondition" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Includes information about the reaction that occurred as a result of exposure to a substance (for example, a drug or a chemical).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="location" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The information about where the adverse event occurred.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="seriousness" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Assessment whether this event was of real importance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="severity" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the severity of the adverse event, in relation to the subject. Contrast to AdverseEvent.seriousness - a severe rash might not be serious, but a mild heart problem is.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="outcome" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the type of outcome from the adverse event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="recorder" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Information on who recorded the adverse event. May be the patient or a practitioner.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contributor" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Parties that may or should contribute or have contributed information to the adverse event, which can consist of one or more activities. Such information includes information leading to the decision to perform the activity and how to perform the activity (e.g. consultant), information that the activity itself seeks to reveal (e.g. informant of clinical history), or information about what activity was performed (e.g. informant witness).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="suspectEntity" type="AdverseEvent.SuspectEntity" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the entity that is suspected to have caused the adverse event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subjectMedicalHistory" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">AdverseEvent.subjectMedicalHistory.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referenceDocument" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">AdverseEvent.referenceDocument.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="study" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">AdverseEvent.study.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="AdverseEvent.SuspectEntity">
<xs:annotation>
<xs:documentation xml:lang="en">Actual or potential/avoided event causing unintended physical injury resulting from or contributed to by medical care, a research study or other healthcare setting factors that requires additional monitoring, treatment, or hospitalization, or that results in death.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="instance" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the actual instance of what caused the adverse event. May be a substance, medication, medication administration, medication statement or a device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="causality" type="AdverseEvent.Causality" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Information on the possible cause of the event.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="AdverseEvent.Causality">
<xs:annotation>
<xs:documentation xml:lang="en">Actual or potential/avoided event causing unintended physical injury resulting from or contributed to by medical care, a research study or other healthcare setting factors that requires additional monitoring, treatment, or hospitalization, or that results in death.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="assessment" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Assessment of if the entity caused the event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="productRelatedness" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">AdverseEvent.suspectEntity.causalityProductRelatedness.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">AdverseEvent.suspectEntity.causalityAuthor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="method" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">ProbabilityScale | Bayesian | Checklist.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="AdverseEventActuality-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="actual">
<xs:annotation>
<xs:documentation xml:lang="en">Adverse Event</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="potential">
<xs:annotation>
<xs:documentation xml:lang="en">Potential Adverse Event</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="AdverseEventActuality">
<xs:annotation>
<xs:documentation xml:lang="en">Overall nature of the adverse event, e.g. real or potential.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="AdverseEventActuality-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="AllergyIntolerance" type="AllergyIntolerance">
<xs:annotation>
<xs:documentation xml:lang="en">Risk of harmful or undesirable, physiological response which is unique to an individual and associated with exposure to a substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="AllergyIntolerance">
<xs:annotation>
<xs:documentation xml:lang="en">Risk of harmful or undesirable, physiological response which is unique to an individual and associated with exposure to a substance.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business identifiers assigned to this AllergyIntolerance by the performer or other systems which remain constant as the resource is updated and propagates from server to server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="clinicalStatus" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The clinical status of the allergy or intolerance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="verificationStatus" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Assertion about certainty associated with the propensity, or potential risk, of a reaction to the identified substance (including pharmaceutical product).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="AllergyIntoleranceType">
<xs:annotation>
<xs:documentation xml:lang="en">Identification of the underlying physiological mechanism for the reaction risk.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="unbounded" type="AllergyIntoleranceCategory">
<xs:annotation>
<xs:documentation xml:lang="en">Category of the identified substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="criticality" minOccurs="0" maxOccurs="1" type="AllergyIntoleranceCriticality">
<xs:annotation>
<xs:documentation xml:lang="en">Estimate of the potential clinical harm, or seriousness, of the reaction to the identified substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Code for an allergy or intolerance statement (either a positive or a negated/excluded statement). This may be a code for a substance or pharmaceutical product that is considered to be responsible for the adverse reaction risk (e.g., &quot;Latex&quot;), an allergy or intolerance condition (e.g., &quot;Latex allergy&quot;), or a negated/excluded code for a specific substance or class (e.g., &quot;No latex allergy&quot;) or a general or categorical negated statement (e.g., &quot;No known allergy&quot;, &quot;No known drug allergies&quot;). Note: the substance for a specific reaction may be different from the substance identified as the cause of the risk, but it must be consistent with it. For instance, it may be a more specific substance (e.g. a brand medication) or a composite product that includes the identified substance. It must be clinically safe to only process the 'code' and ignore the 'reaction.substance'. If a receiving system is unable to confirm that AllergyIntolerance.reaction.substance falls within the semantic scope of AllergyIntolerance.code, then the receiving system should ignore AllergyIntolerance.reaction.substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patient" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The patient who has the allergy or intolerance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The encounter when the allergy or intolerance was asserted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Estimated or actual date, date-time, or age when allergy or intolerance was identified.</xs:documentation>
</xs:annotation>
<xs:element name="onsetDateTime" type="dateTime"/>
<xs:element name="onsetAge" type="Age"/>
<xs:element name="onsetPeriod" type="Period"/>
<xs:element name="onsetRange" type="Range"/>
<xs:element name="onsetString" type="string"/>
</xs:choice>
<xs:element name="recordedDate" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The recordedDate represents when this particular AllergyIntolerance record was created in the system, which is often a system-generated date.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="recorder" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Individual who recorded the record and takes responsibility for its content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="asserter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The source of the information about the allergy that is recorded.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lastOccurrence" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Represents the date and/or time of the last known occurrence of a reaction event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Additional narrative about the propensity for the Adverse Reaction, not captured in other fields.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reaction" type="AllergyIntolerance.Reaction" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Details about each adverse reaction event linked to exposure to the identified substance.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="AllergyIntolerance.Reaction">
<xs:annotation>
<xs:documentation xml:lang="en">Risk of harmful or undesirable, physiological response which is unique to an individual and associated with exposure to a substance.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="substance" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identification of the specific substance (or pharmaceutical product) considered to be responsible for the Adverse Reaction event. Note: the substance for a specific reaction may be different from the substance identified as the cause of the risk, but it must be consistent with it. For instance, it may be a more specific substance (e.g. a brand medication) or a composite product that includes the identified substance. It must be clinically safe to only process the 'code' and ignore the 'reaction.substance'. If a receiving system is unable to confirm that AllergyIntolerance.reaction.substance falls within the semantic scope of AllergyIntolerance.code, then the receiving system should ignore AllergyIntolerance.reaction.substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="manifestation" minOccurs="1" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Clinical symptoms and/or signs that are observed or associated with the adverse reaction event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Text description about the reaction as a whole, including details of the manifestation if required.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="onset" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Record of the date and/or time of the onset of the Reaction.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="severity" minOccurs="0" maxOccurs="1" type="AllergyIntoleranceSeverity">
<xs:annotation>
<xs:documentation xml:lang="en">Clinical assessment of the severity of the reaction event as a whole, potentially considering multiple different manifestations.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="exposureRoute" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identification of the route by which the subject was exposed to the substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Additional text about the adverse reaction event not captured in other fields.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="AllergyIntoleranceCriticality-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="low">
<xs:annotation>
<xs:documentation xml:lang="en">Low Risk</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="high">
<xs:annotation>
<xs:documentation xml:lang="en">High Risk</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unable-to-assess">
<xs:annotation>
<xs:documentation xml:lang="en">Unable to Assess Risk</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="AllergyIntoleranceCriticality">
<xs:annotation>
<xs:documentation xml:lang="en">Estimate of the potential clinical harm, or seriousness, of a reaction to an identified substance.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="AllergyIntoleranceCriticality-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="AllergyIntoleranceType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="allergy">
<xs:annotation>
<xs:documentation xml:lang="en">Allergy</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="intolerance">
<xs:annotation>
<xs:documentation xml:lang="en">Intolerance</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="AllergyIntoleranceType">
<xs:annotation>
<xs:documentation xml:lang="en">Identification of the underlying physiological mechanism for a Reaction Risk.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="AllergyIntoleranceType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="AllergyIntoleranceCategory-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="food">
<xs:annotation>
<xs:documentation xml:lang="en">Food</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="medication">
<xs:annotation>
<xs:documentation xml:lang="en">Medication</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="environment">
<xs:annotation>
<xs:documentation xml:lang="en">Environment</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="biologic">
<xs:annotation>
<xs:documentation xml:lang="en">Biologic</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="AllergyIntoleranceCategory">
<xs:annotation>
<xs:documentation xml:lang="en">Category of an identified substance associated with allergies or intolerances.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="AllergyIntoleranceCategory-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="AllergyIntoleranceSeverity-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="mild">
<xs:annotation>
<xs:documentation xml:lang="en">Mild</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="moderate">
<xs:annotation>
<xs:documentation xml:lang="en">Moderate</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="severe">
<xs:annotation>
<xs:documentation xml:lang="en">Severe</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="AllergyIntoleranceSeverity">
<xs:annotation>
<xs:documentation xml:lang="en">Clinical assessment of the severity of a reaction event as a whole, potentially considering multiple different manifestations.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="AllergyIntoleranceSeverity-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Appointment" type="Appointment">
<xs:annotation>
<xs:documentation xml:lang="en">A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Appointment">
<xs:annotation>
<xs:documentation xml:lang="en">A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s).</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">This records identifiers associated with this appointment concern that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="AppointmentStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The overall status of the Appointment. Each of the participants has their own participation status which indicates their involvement in the process, however this status indicates the shared status.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="cancelationReason" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The coded reason for the appointment being cancelled. This is often used in reporting/billing/futher processing to determine if further actions are required, or specific fees apply.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="serviceCategory" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A broad categorization of the service that is to be performed during this appointment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="serviceType" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The specific service that is to be performed during this appointment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specialty" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The specialty of a practitioner that would be required to perform the service requested in this appointment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="appointmentType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The style of appointment or patient that has been booked in the slot (not service type).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The coded reason that this appointment is being scheduled. This is more clinical than administrative.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reason the appointment has been scheduled to take place, as specified using information from another resource. When the patient arrives and the encounter begins it may be used as the admission diagnosis. The indication will typically be a Condition (with other resources referenced in the evidence.detail), or a Procedure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priority" minOccurs="0" maxOccurs="1" type="unsignedInt">
<xs:annotation>
<xs:documentation xml:lang="en">The priority of the appointment. Can be used to make informed decisions if needing to re-prioritize appointments. (The iCal Standard specifies 0 as undefined, 1 as highest, 9 as lowest priority).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The brief description of the appointment as would be shown on a subject line in a meeting request, or appointment list. Detailed or expanded information should be put in the comment field.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="supportingInformation" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Additional information to support the appointment provided when making the appointment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="start" minOccurs="0" maxOccurs="1" type="instant">
<xs:annotation>
<xs:documentation xml:lang="en">Date/Time that the appointment is to take place.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="end" minOccurs="0" maxOccurs="1" type="instant">
<xs:annotation>
<xs:documentation xml:lang="en">Date/Time that the appointment is to conclude.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="minutesDuration" minOccurs="0" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">Number of minutes that the appointment is to take. This can be less than the duration between the start and end times. For example, where the actual time of appointment is only an estimate or if a 30 minute appointment is being requested, but any time would work. Also, if there is, for example, a planned 15 minute break in the middle of a long appointment, the duration may be 15 minutes less than the difference between the start and end.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="slot" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The slots from the participants' schedules that will be filled by the appointment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="created" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date that this appointment was initially created. This could be different to the meta.lastModified value on the initial entry, as this could have been before the resource was created on the FHIR server, and should remain unchanged over the lifespan of the appointment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comment" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Additional comments about the appointment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patientInstruction" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">While Appointment.comment contains information for internal use, Appointment.patientInstructions is used to capture patient facing information about the Appointment (e.g. please bring your referral or fast from 8pm night before).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basedOn" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The service request this appointment is allocated to assess (e.g. incoming referral or procedure request).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="participant" type="Appointment.Participant" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">List of participants involved in the appointment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requestedPeriod" minOccurs="0" maxOccurs="unbounded" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">A set of date ranges (potentially including times) that the appointment is preferred to be scheduled within.
The duration (usually in minutes) could also be provided to indicate the length of the appointment to fill and populate the start/end times for the actual allocated time. However, in other situations the duration may be calculated by the scheduling system.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Appointment.Participant">
<xs:annotation>
<xs:documentation xml:lang="en">A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Role of participant in the appointment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="actor" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A Person, Location/HealthcareService or Device that is participating in the appointment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="required" minOccurs="0" maxOccurs="1" type="ParticipantRequired">
<xs:annotation>
<xs:documentation xml:lang="en">Whether this participant is required to be present at the meeting. This covers a use-case where two doctors need to meet to discuss the results for a specific patient, and the patient is not required to be present.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="ParticipationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Participation status of the actor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">Participation period of the actor.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ParticipantRequired-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="required">
<xs:annotation>
<xs:documentation xml:lang="en">Required</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="optional">
<xs:annotation>
<xs:documentation xml:lang="en">Optional</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="information-only">
<xs:annotation>
<xs:documentation xml:lang="en">Information Only</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ParticipantRequired">
<xs:annotation>
<xs:documentation xml:lang="en">Is the Participant required to attend the appointment.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ParticipantRequired-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="AppointmentStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="proposed">
<xs:annotation>
<xs:documentation xml:lang="en">Proposed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="pending">
<xs:annotation>
<xs:documentation xml:lang="en">Pending</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="booked">
<xs:annotation>
<xs:documentation xml:lang="en">Booked</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="arrived">
<xs:annotation>
<xs:documentation xml:lang="en">Arrived</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="fulfilled">
<xs:annotation>
<xs:documentation xml:lang="en">Fulfilled</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cancelled">
<xs:annotation>
<xs:documentation xml:lang="en">Cancelled</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="noshow">
<xs:annotation>
<xs:documentation xml:lang="en">No Show</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="checked-in">
<xs:annotation>
<xs:documentation xml:lang="en">Checked In</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="waitlist">
<xs:annotation>
<xs:documentation xml:lang="en">Waitlisted</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="AppointmentStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The free/busy status of an appointment.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="AppointmentStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ParticipationStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="accepted">
<xs:annotation>
<xs:documentation xml:lang="en">Accepted</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="declined">
<xs:annotation>
<xs:documentation xml:lang="en">Declined</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="tentative">
<xs:annotation>
<xs:documentation xml:lang="en">Tentative</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="needs-action">
<xs:annotation>
<xs:documentation xml:lang="en">Needs Action</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ParticipationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The Participation status of an appointment.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ParticipationStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="AppointmentResponse" type="AppointmentResponse">
<xs:annotation>
<xs:documentation xml:lang="en">A reply to an appointment request for a patient and/or practitioner(s), such as a confirmation or rejection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="AppointmentResponse">
<xs:annotation>
<xs:documentation xml:lang="en">A reply to an appointment request for a patient and/or practitioner(s), such as a confirmation or rejection.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">This records identifiers associated with this appointment response concern that are defined by business processes and/ or used to refer to it when a direct URL reference to the resource itself is not appropriate.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="appointment" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Appointment that this response is replying to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="start" minOccurs="0" maxOccurs="1" type="instant">
<xs:annotation>
<xs:documentation xml:lang="en">Date/Time that the appointment is to take place, or requested new start time.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="end" minOccurs="0" maxOccurs="1" type="instant">
<xs:annotation>
<xs:documentation xml:lang="en">This may be either the same as the appointment request to confirm the details of the appointment, or alternately a new time to request a re-negotiation of the end time.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="participantType" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Role of participant in the appointment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="actor" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A Person, Location, HealthcareService, or Device that is participating in the appointment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="participantStatus" minOccurs="1" maxOccurs="1" type="ParticipationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Participation status of the participant. When the status is declined or tentative if the start/end times are different to the appointment, then these times should be interpreted as a requested time change. When the status is accepted, the times can either be the time of the appointment (as a confirmation of the time) or can be empty.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comment" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Additional comments about the appointment.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="AuditEvent" type="AuditEvent">
<xs:annotation>
<xs:documentation xml:lang="en">A record of an event made for purposes of maintaining a security log. Typical uses include detection of intrusion attempts and monitoring for inappropriate usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="AuditEvent">
<xs:annotation>
<xs:documentation xml:lang="en">A record of an event made for purposes of maintaining a security log. Typical uses include detection of intrusion attempts and monitoring for inappropriate usage.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier for a family of the event. For example, a menu item, program, rule, policy, function code, application name or URL. It identifies the performed function.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subtype" minOccurs="0" maxOccurs="unbounded" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier for the category of event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="action" minOccurs="0" maxOccurs="1" type="AuditEventAction">
<xs:annotation>
<xs:documentation xml:lang="en">Indicator for type of action performed during the event that generated the audit.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period during which the activity occurred.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="recorded" minOccurs="1" maxOccurs="1" type="instant">
<xs:annotation>
<xs:documentation xml:lang="en">The time when the event was recorded.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="outcome" minOccurs="0" maxOccurs="1" type="AuditEventOutcome">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether the event succeeded or failed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="outcomeDesc" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A free text description of the outcome of the event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purposeOfEvent" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The purposeOfUse (reason) that was used during the event being recorded.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="agent" type="AuditEvent.Agent" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">An actor taking an active role in the event or activity that is logged.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" type="AuditEvent.Source" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The system that is reporting the event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="entity" type="AuditEvent.Entity" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Specific instances of data or objects that have been accessed.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="AuditEvent.Agent">
<xs:annotation>
<xs:documentation xml:lang="en">A record of an event made for purposes of maintaining a security log. Typical uses include detection of intrusion attempts and monitoring for inappropriate usage.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Specification of the participation type the user plays when performing the event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="role" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The security role that the user was acting under, that come from local codes defined by the access control security system (e.g. RBAC, ABAC) used in the local context.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="who" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to who this agent is that was involved in the event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="altId" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Alternative agent Identifier. For a human, this should be a user identifier text string from authentication system. This identifier would be one known to a common authentication system (e.g. single sign-on), if available.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Human-meaningful name for the agent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requestor" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Indicator that the user is or is not the requestor, or initiator, for the event being audited.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="location" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Where the event occurred.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="policy" minOccurs="0" maxOccurs="unbounded" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The policy or plan that authorized the activity being recorded. Typically, a single activity may have multiple applicable policies, such as patient consent, guarantor funding, etc. The policy would also indicate the security token used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="media" minOccurs="0" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">Type of media involved. Used when the event is about exporting/importing onto media.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="network" type="AuditEvent.Network" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Logical network location for application activity, if the activity has a network location.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purposeOfUse" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The reason (purpose of use), specific to this agent, that was used during the event being recorded.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="AuditEvent.Network">
<xs:annotation>
<xs:documentation xml:lang="en">A record of an event made for purposes of maintaining a security log. Typical uses include detection of intrusion attempts and monitoring for inappropriate usage.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="address" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">An identifier for the network access point of the user device for the audit event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="AuditEventAgentNetworkType">
<xs:annotation>
<xs:documentation xml:lang="en">An identifier for the type of network access point that originated the audit event.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="AuditEvent.Source">
<xs:annotation>
<xs:documentation xml:lang="en">A record of an event made for purposes of maintaining a security log. Typical uses include detection of intrusion attempts and monitoring for inappropriate usage.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="site" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Logical source location within the healthcare enterprise network. For example, a hospital or other provider location within a multi-entity provider group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="observer" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier of the source where the event was detected.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="unbounded" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">Code specifying the type of source where event originated.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="AuditEvent.Entity">
<xs:annotation>
<xs:documentation xml:lang="en">A record of an event made for purposes of maintaining a security log. Typical uses include detection of intrusion attempts and monitoring for inappropriate usage.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="what" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies a specific instance of the entity. The reference should be version specific.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">The type of the object that was involved in this audit event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="role" minOccurs="0" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">Code representing the role the entity played in the event being audited.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lifecycle" minOccurs="0" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier for the data life-cycle stage for the entity.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="securityLabel" minOccurs="0" maxOccurs="unbounded" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">Security labels for the identified entity.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A name of the entity in the audit event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Text that describes the entity in more detail.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="query" minOccurs="0" maxOccurs="1" type="base64Binary">
<xs:annotation>
<xs:documentation xml:lang="en">The query parameters for a query-type entities.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detail" type="AuditEvent.Detail" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Tagged value pairs for conveying additional information about the entity.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="AuditEvent.Detail">
<xs:annotation>
<xs:documentation xml:lang="en">A record of an event made for purposes of maintaining a security log. Typical uses include detection of intrusion attempts and monitoring for inappropriate usage.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The type of extra detail provided in the value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The value of the extra detail.</xs:documentation>
</xs:annotation>
<xs:element name="valueString" type="string"/>
<xs:element name="valueBase64Binary" type="base64Binary"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="AuditEventOutcome-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="0">
<xs:annotation>
<xs:documentation xml:lang="en">Success</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="4">
<xs:annotation>
<xs:documentation xml:lang="en">Minor failure</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="8">
<xs:annotation>
<xs:documentation xml:lang="en">Serious failure</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="12">
<xs:annotation>
<xs:documentation xml:lang="en">Major failure</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="AuditEventOutcome">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether the event succeeded or failed.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="AuditEventOutcome-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="AuditEventAction-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="C">
<xs:annotation>
<xs:documentation xml:lang="en">Create</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="R">
<xs:annotation>
<xs:documentation xml:lang="en">Read/View/Print</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="U">
<xs:annotation>
<xs:documentation xml:lang="en">Update</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="D">
<xs:annotation>
<xs:documentation xml:lang="en">Delete</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="E">
<xs:annotation>
<xs:documentation xml:lang="en">Execute</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="AuditEventAction">
<xs:annotation>
<xs:documentation xml:lang="en">Indicator for type of action performed during the event that generated the event.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="AuditEventAction-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="AuditEventAgentNetworkType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="1">
<xs:annotation>
<xs:documentation xml:lang="en">Machine Name</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="2">
<xs:annotation>
<xs:documentation xml:lang="en">IP Address</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="3">
<xs:annotation>
<xs:documentation xml:lang="en">Telephone Number</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="4">
<xs:annotation>
<xs:documentation xml:lang="en">Email address</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="5">
<xs:annotation>
<xs:documentation xml:lang="en">URI</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="AuditEventAgentNetworkType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of network access point of this agent in the audit event.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="AuditEventAgentNetworkType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Basic" type="Basic">
<xs:annotation>
<xs:documentation xml:lang="en">Basic is used for handling concepts not yet defined in FHIR, narrative-only resources that don't map to an existing resource, and custom resources not appropriate for inclusion in the FHIR specification.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Basic">
<xs:annotation>
<xs:documentation xml:lang="en">Basic is used for handling concepts not yet defined in FHIR, narrative-only resources that don't map to an existing resource, and custom resources not appropriate for inclusion in the FHIR specification.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier assigned to the resource for business purposes, outside the context of FHIR.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the 'type' of resource - equivalent to the resource name for other resources.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the patient, practitioner, device or any other resource that is the &quot;focus&quot; of this resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="created" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies when the resource was first created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates who was responsible for creating the resource instance.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Binary" type="Binary">
<xs:annotation>
<xs:documentation xml:lang="en">A resource that represents the data of a single raw artifact as digital content accessible in its native format. A Binary resource can contain any content, whether text, image, pdf, zip archive, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Binary">
<xs:annotation>
<xs:documentation xml:lang="en">A resource that represents the data of a single raw artifact as digital content accessible in its native format. A Binary resource can contain any content, whether text, image, pdf, zip archive, etc.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Resource">
<xs:sequence>
<xs:element name="contentType" minOccurs="1" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">MimeType of the binary content represented as a standard MimeType (BCP 13).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="securityContext" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">This element identifies another resource that can be used as a proxy of the security sensitivity to use when deciding and enforcing access control rules for the Binary resource. Given that the Binary resource contains very few elements that can be used to determine the sensitivity of the data and relationships to individuals, the referenced resource stands in as a proxy equivalent for this purpose. This referenced resource may be related to the Binary (e.g. Media, DocumentReference), or may be some non-related Resource purely as a security proxy. E.g. to identify that the binary resource relates to a patient, and access should only be granted to applications that have access to the patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="data" minOccurs="0" maxOccurs="1" type="base64Binary">
<xs:annotation>
<xs:documentation xml:lang="en">The actual content, base64 encoded.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="BiologicallyDerivedProduct" type="BiologicallyDerivedProduct">
<xs:annotation>
<xs:documentation xml:lang="en">A material substance originating from a biological entity intended to be transplanted or infused
into another (possibly the same) biological entity.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="BiologicallyDerivedProduct">
<xs:annotation>
<xs:documentation xml:lang="en">A material substance originating from a biological entity intended to be transplanted or infused
into another (possibly the same) biological entity.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">This records identifiers associated with this biologically derived product instance that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="productCategory" minOccurs="0" maxOccurs="1" type="BiologicallyDerivedProductCategory">
<xs:annotation>
<xs:documentation xml:lang="en">Broad category of this product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="productCode" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code that identifies the kind of this biologically derived product (SNOMED Ctcode).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="BiologicallyDerivedProductStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the product is currently available.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="request" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Procedure request to obtain this biologically derived product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Number of discrete units within this product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="parent" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Parent product (if any).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="collection" type="BiologicallyDerivedProduct.Collection" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">How this product was collected.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="processing" type="BiologicallyDerivedProduct.Processing" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Any processing of the product during collection that does not change the fundamental nature of the product. For example adding anti-coagulants during the collection of Peripheral Blood Stem Cells.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="manipulation" type="BiologicallyDerivedProduct.Manipulation" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Any manipulation of product post-collection that is intended to alter the product. For example a buffy-coat enrichment or CD8 reduction of Peripheral Blood Stem Cells to make it more suitable for infusion.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="storage" type="BiologicallyDerivedProduct.Storage" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Product storage.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="BiologicallyDerivedProduct.Collection">
<xs:annotation>
<xs:documentation xml:lang="en">A material substance originating from a biological entity intended to be transplanted or infused
into another (possibly the same) biological entity.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="collector" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Healthcare professional who is performing the collection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The patient or entity, such as a hospital or vendor in the case of a processed/manipulated/manufactured product, providing the product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Time of product collection.</xs:documentation>
</xs:annotation>
<xs:element name="collectedDateTime" type="dateTime"/>
<xs:element name="collectedPeriod" type="Period"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="BiologicallyDerivedProduct.Processing">
<xs:annotation>
<xs:documentation xml:lang="en">A material substance originating from a biological entity intended to be transplanted or infused
into another (possibly the same) biological entity.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Description of of processing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="procedure" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Procesing code.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="additive" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Substance added during processing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Time of processing.</xs:documentation>
</xs:annotation>
<xs:element name="timeDateTime" type="dateTime"/>
<xs:element name="timePeriod" type="Period"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="BiologicallyDerivedProduct.Manipulation">
<xs:annotation>
<xs:documentation xml:lang="en">A material substance originating from a biological entity intended to be transplanted or infused
into another (possibly the same) biological entity.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Description of manipulation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Time of manipulation.</xs:documentation>
</xs:annotation>
<xs:element name="timeDateTime" type="dateTime"/>
<xs:element name="timePeriod" type="Period"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="BiologicallyDerivedProduct.Storage">
<xs:annotation>
<xs:documentation xml:lang="en">A material substance originating from a biological entity intended to be transplanted or infused
into another (possibly the same) biological entity.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Description of storage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="temperature" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Storage temperature.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="scale" minOccurs="0" maxOccurs="1" type="BiologicallyDerivedProductStorageScale">
<xs:annotation>
<xs:documentation xml:lang="en">Temperature scale used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="duration" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">Storage timeperiod.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="BiologicallyDerivedProductCategory-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="organ">
<xs:annotation>
<xs:documentation xml:lang="en">Organ</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="tissue">
<xs:annotation>
<xs:documentation xml:lang="en">Tissue</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="fluid">
<xs:annotation>
<xs:documentation xml:lang="en">Fluid</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cells">
<xs:annotation>
<xs:documentation xml:lang="en">Cells</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="biologicalAgent">
<xs:annotation>
<xs:documentation xml:lang="en">BiologicalAgent</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="BiologicallyDerivedProductCategory">
<xs:annotation>
<xs:documentation xml:lang="en">Biologically Derived Product Category.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="BiologicallyDerivedProductCategory-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="BiologicallyDerivedProductStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="available">
<xs:annotation>
<xs:documentation xml:lang="en">Available</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unavailable">
<xs:annotation>
<xs:documentation xml:lang="en">Unavailable</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="BiologicallyDerivedProductStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Biologically Derived Product Status.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="BiologicallyDerivedProductStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="BiologicallyDerivedProductStorageScale-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="farenheit">
<xs:annotation>
<xs:documentation xml:lang="en">Fahrenheit</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="celsius">
<xs:annotation>
<xs:documentation xml:lang="en">Celsius</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="kelvin">
<xs:annotation>
<xs:documentation xml:lang="en">Kelvin</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="BiologicallyDerivedProductStorageScale">
<xs:annotation>
<xs:documentation xml:lang="en">BiologicallyDerived Product Storage Scale.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="BiologicallyDerivedProductStorageScale-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="BodyStructure" type="BodyStructure">
<xs:annotation>
<xs:documentation xml:lang="en">Record details about an anatomical structure. This resource may be used when a coded concept does not provide the necessary detail needed for the use case.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="BodyStructure">
<xs:annotation>
<xs:documentation xml:lang="en">Record details about an anatomical structure. This resource may be used when a coded concept does not provide the necessary detail needed for the use case.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier for this instance of the anatomical structure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="active" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether this body site is in active use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="morphology" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The kind of structure being represented by the body structure at `BodyStructure.location`. This can define both normal and abnormal morphologies.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="location" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The anatomical location or region of the specimen, lesion, or body structure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="locationQualifier" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Qualifier to refine the anatomical location. These include qualifiers for laterality, relative location, directionality, number, and plane.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A summary, characterization or explanation of the body structure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="image" minOccurs="0" maxOccurs="unbounded" type="Attachment">
<xs:annotation>
<xs:documentation xml:lang="en">Image or images used to identify a location.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patient" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The person to which the body site belongs.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Bundle" type="Bundle">
<xs:annotation>
<xs:documentation xml:lang="en">A container for a collection of resources.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Bundle">
<xs:annotation>
<xs:documentation xml:lang="en">A container for a collection of resources.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Resource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A persistent identifier for the bundle that won't change as a bundle is copied from server to server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="BundleType">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the purpose of this bundle - how it is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="timestamp" minOccurs="0" maxOccurs="1" type="instant">
<xs:annotation>
<xs:documentation xml:lang="en">The date/time that the bundle was assembled - i.e. when the resources were placed in the bundle.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="total" minOccurs="0" maxOccurs="1" type="unsignedInt">
<xs:annotation>
<xs:documentation xml:lang="en">If a set of search matches, this is the total number of entries of type 'match' across all pages in the search. It does not include search.mode = 'include' or 'outcome' entries and it does not provide a count of the number of entries in the Bundle.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="link" type="Bundle.Link" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A series of links that provide context to this bundle.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="entry" type="Bundle.Entry" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">An entry in a bundle resource - will either contain a resource or information about a resource (transactions and history only).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="signature" minOccurs="0" maxOccurs="1" type="Signature">
<xs:annotation>
<xs:documentation xml:lang="en">Digital Signature - base64 encoded. XML-DSig or a JWT.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Bundle.Link">
<xs:annotation>
<xs:documentation xml:lang="en">A container for a collection of resources.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="relation" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A name which details the functional use for this link - see [http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1](http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="url" minOccurs="1" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The reference details for the link.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Bundle.Entry">
<xs:annotation>
<xs:documentation xml:lang="en">A container for a collection of resources.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="link" type="Bundle.Link" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A series of links that provide context to this entry.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="fullUrl" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The Absolute URL for the resource. The fullUrl SHALL NOT disagree with the id in the resource - i.e. if the fullUrl is not a urn:uuid, the URL shall be version-independent URL consistent with the Resource.id. The fullUrl is a version independent reference to the resource. The fullUrl element SHALL have a value except that:
* fullUrl can be empty on a POST (although it does not need to when specifying a temporary id for reference in the bundle)
* Results from operations might involve resources that are not identified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="resource" minOccurs="0" maxOccurs="1" type="ResourceContainer">
<xs:annotation>
<xs:documentation xml:lang="en">The Resource for the entry. The purpose/meaning of the resource is determined by the Bundle.type.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="search" type="Bundle.Search" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Information about the search process that lead to the creation of this entry.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="request" type="Bundle.Request" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Additional information about how this entry should be processed as part of a transaction or batch. For history, it shows how the entry was processed to create the version contained in the entry.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="response" type="Bundle.Response" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the results of processing the corresponding 'request' entry in the batch or transaction being responded to or what the results of an operation where when returning history.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Bundle.Search">
<xs:annotation>
<xs:documentation xml:lang="en">A container for a collection of resources.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="mode" minOccurs="0" maxOccurs="1" type="SearchEntryMode">
<xs:annotation>
<xs:documentation xml:lang="en">Why this entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="score" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">When searching, the server's search ranking score for the entry.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Bundle.Request">
<xs:annotation>
<xs:documentation xml:lang="en">A container for a collection of resources.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="method" minOccurs="1" maxOccurs="1" type="HTTPVerb">
<xs:annotation>
<xs:documentation xml:lang="en">In a transaction or batch, this is the HTTP action to be executed for this entry. In a history bundle, this indicates the HTTP action that occurred.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="url" minOccurs="1" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The URL for this entry, relative to the root (the address to which the request is posted).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ifNoneMatch" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">If the ETag values match, return a 304 Not Modified status. See the API documentation for [&quot;Conditional Read&quot;](http.html#cread).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ifModifiedSince" minOccurs="0" maxOccurs="1" type="instant">
<xs:annotation>
<xs:documentation xml:lang="en">Only perform the operation if the last updated date matches. See the API documentation for [&quot;Conditional Read&quot;](http.html#cread).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ifMatch" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Only perform the operation if the Etag value matches. For more information, see the API section [&quot;Managing Resource Contention&quot;](http.html#concurrency).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ifNoneExist" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Instruct the server not to perform the create if a specified resource already exists. For further information, see the API documentation for [&quot;Conditional Create&quot;](http.html#ccreate). This is just the query portion of the URL - what follows the &quot;?&quot; (not including the &quot;?&quot;).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Bundle.Response">
<xs:annotation>
<xs:documentation xml:lang="en">A container for a collection of resources.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The status code returned by processing this entry. The status SHALL start with a 3 digit HTTP code (e.g. 404) and may contain the standard HTTP description associated with the status code.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="location" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The location header created by processing this operation, populated if the operation returns a location.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="etag" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The Etag for the resource, if the operation for the entry produced a versioned resource (see [Resource Metadata and Versioning](http.html#versioning) and [Managing Resource Contention](http.html#concurrency)).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lastModified" minOccurs="0" maxOccurs="1" type="instant">
<xs:annotation>
<xs:documentation xml:lang="en">The date/time that the resource was modified on the server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="outcome" minOccurs="0" maxOccurs="1" type="ResourceContainer">
<xs:annotation>
<xs:documentation xml:lang="en">An OperationOutcome containing hints and warnings produced as part of processing this entry in a batch or transaction.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="HTTPVerb-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="GET">
<xs:annotation>
<xs:documentation xml:lang="en">GET</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="HEAD">
<xs:annotation>
<xs:documentation xml:lang="en">HEAD</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="POST">
<xs:annotation>
<xs:documentation xml:lang="en">POST</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="PUT">
<xs:annotation>
<xs:documentation xml:lang="en">PUT</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="DELETE">
<xs:annotation>
<xs:documentation xml:lang="en">DELETE</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="PATCH">
<xs:annotation>
<xs:documentation xml:lang="en">PATCH</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="HTTPVerb">
<xs:annotation>
<xs:documentation xml:lang="en">HTTP verbs (in the HTTP command line). See [HTTP rfc](https://tools.ietf.org/html/rfc7231) for details.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="HTTPVerb-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="BundleType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="document">
<xs:annotation>
<xs:documentation xml:lang="en">Document</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="message">
<xs:annotation>
<xs:documentation xml:lang="en">Message</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="transaction">
<xs:annotation>
<xs:documentation xml:lang="en">Transaction</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="transaction-response">
<xs:annotation>
<xs:documentation xml:lang="en">Transaction Response</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="batch">
<xs:annotation>
<xs:documentation xml:lang="en">Batch</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="batch-response">
<xs:annotation>
<xs:documentation xml:lang="en">Batch Response</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="history">
<xs:annotation>
<xs:documentation xml:lang="en">History List</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="searchset">
<xs:annotation>
<xs:documentation xml:lang="en">Search Results</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="collection">
<xs:annotation>
<xs:documentation xml:lang="en">Collection</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="BundleType">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the purpose of a bundle - how it is intended to be used.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="BundleType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="SearchEntryMode-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="match">
<xs:annotation>
<xs:documentation xml:lang="en">Match</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="include">
<xs:annotation>
<xs:documentation xml:lang="en">Include</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="outcome">
<xs:annotation>
<xs:documentation xml:lang="en">Outcome</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="SearchEntryMode">
<xs:annotation>
<xs:documentation xml:lang="en">Why an entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="SearchEntryMode-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="CapabilityStatement" type="CapabilityStatement">
<xs:annotation>
<xs:documentation xml:lang="en">A Capability Statement documents a set of capabilities (behaviors) of a FHIR Server for a particular version of FHIR that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="CapabilityStatement">
<xs:annotation>
<xs:documentation xml:lang="en">A Capability Statement documents a set of capabilities (behaviors) of a FHIR Server for a particular version of FHIR that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this capability statement when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this capability statement is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the capability statement is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the capability statement when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the capability statement author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the capability statement. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the capability statement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this capability statement. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this capability statement is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="1" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the capability statement was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the capability statement changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the capability statement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the capability statement from a consumer's perspective. Typically, this is used when the capability statement describes a desired rather than an actual solution, for example as a formal expression of requirements as part of an RFP.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate capability statement instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the capability statement is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Explanation of why this capability statement is needed and why it has been designed as it has.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the capability statement and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the capability statement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="kind" minOccurs="1" maxOccurs="1" type="CapabilityStatementKind">
<xs:annotation>
<xs:documentation xml:lang="en">The way that this statement is intended to be used, to describe an actual running instance of software, a particular product (kind, not instance of software) or a class of implementation (e.g. a desired purchase).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiates" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to a canonical URL of another CapabilityStatement that this software implements. This capability statement is a published API description that corresponds to a business service. The server may actually implement a subset of the capability statement it claims to implement, so the capability statement must specify the full capability details.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="imports" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to a canonical URL of another CapabilityStatement that this software adds to. The capability statement automatically includes everything in the other statement, and it is not duplicated, though the server may repeat the same resources, interactions and operations to add additional details to them.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="software" type="CapabilityStatement.Software" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Software that is covered by this capability statement. It is used when the capability statement describes the capabilities of a particular software version, independent of an installation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="implementation" type="CapabilityStatement.Implementation" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies a specific implementation instance that is described by the capability statement - i.e. a particular installation, rather than the capabilities of a software program.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="fhirVersion" minOccurs="1" maxOccurs="1" type="FHIRVersion">
<xs:annotation>
<xs:documentation xml:lang="en">The version of the FHIR specification that this CapabilityStatement describes (which SHALL be the same as the FHIR version of the CapabilityStatement itself). There is no default value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="format" minOccurs="1" maxOccurs="unbounded" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">A list of the formats supported by this implementation using their content types.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patchFormat" minOccurs="0" maxOccurs="unbounded" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">A list of the patch formats supported by this implementation using their content types.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="implementationGuide" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A list of implementation guides that the server does (or should) support in their entirety.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="rest" type="CapabilityStatement.Rest" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A definition of the restful capabilities of the solution, if any.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="messaging" type="CapabilityStatement.Messaging" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A description of the messaging capabilities of the solution.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="document" type="CapabilityStatement.Document" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A document definition.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CapabilityStatement.Software">
<xs:annotation>
<xs:documentation xml:lang="en">A Capability Statement documents a set of capabilities (behaviors) of a FHIR Server for a particular version of FHIR that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Name the software is known by.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The version identifier for the software covered by this statement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="releaseDate" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Date this version of the software was released.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CapabilityStatement.Implementation">
<xs:annotation>
<xs:documentation xml:lang="en">A Capability Statement documents a set of capabilities (behaviors) of a FHIR Server for a particular version of FHIR that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="description" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Information about the specific installation that this capability statement relates to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="url">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute base URL for the implementation. This forms the base for REST interfaces as well as the mailbox and document interfaces.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="custodian" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The organization responsible for the management of the instance and oversight of the data on the server at the specified URL.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CapabilityStatement.Rest">
<xs:annotation>
<xs:documentation xml:lang="en">A Capability Statement documents a set of capabilities (behaviors) of a FHIR Server for a particular version of FHIR that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="mode" minOccurs="1" maxOccurs="1" type="RestfulCapabilityMode">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies whether this portion of the statement is describing the ability to initiate or receive restful operations.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="documentation" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Information about the system's restful capabilities that apply across all applications, such as security.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="security" type="CapabilityStatement.Security" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Information about security implementation from an interface perspective - what a client needs to know.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="resource" type="CapabilityStatement.Resource" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A specification of the restful capabilities of the solution for a specific resource type.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="interaction" type="CapabilityStatement.Interaction1" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A specification of restful operations supported by the system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="searchParam" type="CapabilityStatement.SearchParam" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Search parameters that are supported for searching all resources for implementations to support and/or make use of - either references to ones defined in the specification, or additional ones defined for/by the implementation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="operation" type="CapabilityStatement.Operation" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Definition of an operation or a named query together with its parameters and their meaning and type.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="compartment" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI which is a reference to the definition of a compartment that the system supports. The reference is to a CompartmentDefinition resource by its canonical URL .</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CapabilityStatement.Security">
<xs:annotation>
<xs:documentation xml:lang="en">A Capability Statement documents a set of capabilities (behaviors) of a FHIR Server for a particular version of FHIR that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="cors" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Server adds CORS headers when responding to requests - this enables Javascript applications to use the server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="service" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Types of security services that are supported/required by the system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">General description of how security works.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CapabilityStatement.Resource">
<xs:annotation>
<xs:documentation xml:lang="en">A Capability Statement documents a set of capabilities (behaviors) of a FHIR Server for a particular version of FHIR that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">A type of resource exposed via the restful interface.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="profile" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A specification of the profile that describes the solution's overall support for the resource, including any constraints on cardinality, bindings, lengths or other limitations. See further discussion in [Using Profiles](profiling.html#profile-uses).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="supportedProfile" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A list of profiles that represent different use cases supported by the system. For a server, &quot;supported by the system&quot; means the system hosts/produces a set of resources that are conformant to a particular profile, and allows clients that use its services to search using this profile and to find appropriate data. For a client, it means the system will search by this profile and process data according to the guidance implicit in the profile. See further discussion in [Using Profiles](profiling.html#profile-uses).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="documentation" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Additional information about the resource type used by the system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="interaction" type="CapabilityStatement.Interaction" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies a restful operation supported by the solution.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="versioning" minOccurs="0" maxOccurs="1" type="ResourceVersionPolicy">
<xs:annotation>
<xs:documentation xml:lang="en">This field is set to no-version to specify that the system does not support (server) or use (client) versioning for this resource type. If this has some other value, the server must at least correctly track and populate the versionId meta-property on resources. If the value is 'versioned-update', then the server supports all the versioning features, including using e-tags for version integrity in the API.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="readHistory" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A flag for whether the server is able to return past versions as part of the vRead operation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="updateCreate" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A flag to indicate that the server allows or needs to allow the client to create new identities on the server (that is, the client PUTs to a location where there is no existing resource). Allowing this operation means that the server allows the client to create new identities on the server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="conditionalCreate" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A flag that indicates that the server supports conditional create.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="conditionalRead" minOccurs="0" maxOccurs="1" type="ConditionalReadStatus">
<xs:annotation>
<xs:documentation xml:lang="en">A code that indicates how the server supports conditional read.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="conditionalUpdate" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A flag that indicates that the server supports conditional update.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="conditionalDelete" minOccurs="0" maxOccurs="1" type="ConditionalDeleteStatus">
<xs:annotation>
<xs:documentation xml:lang="en">A code that indicates how the server supports conditional delete.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referencePolicy" minOccurs="0" maxOccurs="unbounded" type="ReferenceHandlingPolicy">
<xs:annotation>
<xs:documentation xml:lang="en">A set of flags that defines how references are supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="searchInclude" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A list of _include values supported by the server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="searchRevInclude" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A list of _revinclude (reverse include) values supported by the server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="searchParam" type="CapabilityStatement.SearchParam" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Search parameters for implementations to support and/or make use of - either references to ones defined in the specification, or additional ones defined for/by the implementation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="operation" type="CapabilityStatement.Operation" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Definition of an operation or a named query together with its parameters and their meaning and type. Consult the definition of the operation for details about how to invoke the operation, and the parameters.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CapabilityStatement.Interaction">
<xs:annotation>
<xs:documentation xml:lang="en">A Capability Statement documents a set of capabilities (behaviors) of a FHIR Server for a particular version of FHIR that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="TypeRestfulInteraction">
<xs:annotation>
<xs:documentation xml:lang="en">Coded identifier of the operation, supported by the system resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="documentation" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Guidance specific to the implementation of this operation, such as 'delete is a logical delete' or 'updates are only allowed with version id' or 'creates permitted from pre-authorized certificates only'.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CapabilityStatement.SearchParam">
<xs:annotation>
<xs:documentation xml:lang="en">A Capability Statement documents a set of capabilities (behaviors) of a FHIR Server for a particular version of FHIR that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the search parameter used in the interface.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="definition" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is a formal reference to where this parameter was first defined, so that a client can be confident of the meaning of the search parameter (a reference to [[[SearchParameter.url]]]). This element SHALL be populated if the search parameter refers to a SearchParameter defined by the FHIR core specification or externally defined IGs.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="SearchParamType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of value a search parameter refers to, and how the content is interpreted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="documentation" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">This allows documentation of any distinct behaviors about how the search parameter is used. For example, text matching algorithms.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CapabilityStatement.Operation">
<xs:annotation>
<xs:documentation xml:lang="en">A Capability Statement documents a set of capabilities (behaviors) of a FHIR Server for a particular version of FHIR that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the operation or query. For an operation, this is the name prefixed with $ and used in the URL. For a query, this is the name used in the _query parameter when the query is called.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="definition" minOccurs="1" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">Where the formal definition can be found. If a server references the base definition of an Operation (i.e. from the specification itself such as ```http://hl7.org/fhir/OperationDefinition/ValueSet-expand```), that means it supports the full capabilities of the operation - e.g. both GET and POST invocation. If it only supports a subset, it must define its own custom [[[OperationDefinition]]] with a 'base' of the original OperationDefinition. The custom definition would describe the specific subset of functionality supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="documentation" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Documentation that describes anything special about the operation behavior, possibly detailing different behavior for system, type and instance-level invocation of the operation.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CapabilityStatement.Interaction1">
<xs:annotation>
<xs:documentation xml:lang="en">A Capability Statement documents a set of capabilities (behaviors) of a FHIR Server for a particular version of FHIR that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="SystemRestfulInteraction">
<xs:annotation>
<xs:documentation xml:lang="en">A coded identifier of the operation, supported by the system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="documentation" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Guidance specific to the implementation of this operation, such as limitations on the kind of transactions allowed, or information about system wide search is implemented.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CapabilityStatement.Messaging">
<xs:annotation>
<xs:documentation xml:lang="en">A Capability Statement documents a set of capabilities (behaviors) of a FHIR Server for a particular version of FHIR that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="endpoint" type="CapabilityStatement.Endpoint" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">An endpoint (network accessible address) to which messages and/or replies are to be sent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reliableCache" minOccurs="0" maxOccurs="1" type="unsignedInt">
<xs:annotation>
<xs:documentation xml:lang="en">Length if the receiver's reliable messaging cache in minutes (if a receiver) or how long the cache length on the receiver should be (if a sender).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="documentation" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Documentation about the system's messaging capabilities for this endpoint not otherwise documented by the capability statement. For example, the process for becoming an authorized messaging exchange partner.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="supportedMessage" type="CapabilityStatement.SupportedMessage" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">References to message definitions for messages this system can send or receive.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CapabilityStatement.Endpoint">
<xs:annotation>
<xs:documentation xml:lang="en">A Capability Statement documents a set of capabilities (behaviors) of a FHIR Server for a particular version of FHIR that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="protocol" minOccurs="1" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">A list of the messaging transport protocol(s) identifiers, supported by this endpoint.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="address" minOccurs="1" maxOccurs="1" type="url">
<xs:annotation>
<xs:documentation xml:lang="en">The network address of the endpoint. For solutions that do not use network addresses for routing, it can be just an identifier.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CapabilityStatement.SupportedMessage">
<xs:annotation>
<xs:documentation xml:lang="en">A Capability Statement documents a set of capabilities (behaviors) of a FHIR Server for a particular version of FHIR that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="mode" minOccurs="1" maxOccurs="1" type="EventCapabilityMode">
<xs:annotation>
<xs:documentation xml:lang="en">The mode of this event declaration - whether application is sender or receiver.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="definition" minOccurs="1" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">Points to a message definition that identifies the messaging event, message structure, allowed responses, etc.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CapabilityStatement.Document">
<xs:annotation>
<xs:documentation xml:lang="en">A Capability Statement documents a set of capabilities (behaviors) of a FHIR Server for a particular version of FHIR that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="mode" minOccurs="1" maxOccurs="1" type="DocumentMode">
<xs:annotation>
<xs:documentation xml:lang="en">Mode of this document declaration - whether an application is a producer or consumer.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="documentation" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A description of how the application supports or uses the specified document profile. For example, when documents are created, what action is taken with consumed documents, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="profile" minOccurs="1" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A profile on the document Bundle that constrains which resources are present, and their contents.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="CapabilityStatementKind-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="instance">
<xs:annotation>
<xs:documentation xml:lang="en">Instance</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="capability">
<xs:annotation>
<xs:documentation xml:lang="en">Capability</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="requirements">
<xs:annotation>
<xs:documentation xml:lang="en">Requirements</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="CapabilityStatementKind">
<xs:annotation>
<xs:documentation xml:lang="en">How a capability statement is intended to be used.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="CapabilityStatementKind-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="EventCapabilityMode-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="sender">
<xs:annotation>
<xs:documentation xml:lang="en">Sender</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="receiver">
<xs:annotation>
<xs:documentation xml:lang="en">Receiver</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="EventCapabilityMode">
<xs:annotation>
<xs:documentation xml:lang="en">The mode of a message capability statement.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="EventCapabilityMode-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ResourceVersionPolicy-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="no-version">
<xs:annotation>
<xs:documentation xml:lang="en">No VersionId Support</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="versioned">
<xs:annotation>
<xs:documentation xml:lang="en">Versioned</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="versioned-update">
<xs:annotation>
<xs:documentation xml:lang="en">VersionId tracked fully</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ResourceVersionPolicy">
<xs:annotation>
<xs:documentation xml:lang="en">How the system supports versioning for a resource.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ResourceVersionPolicy-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="DocumentMode-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="producer">
<xs:annotation>
<xs:documentation xml:lang="en">Producer</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="consumer">
<xs:annotation>
<xs:documentation xml:lang="en">Consumer</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="DocumentMode">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the application produces or consumes documents.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="DocumentMode-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="RestfulCapabilityMode-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="client">
<xs:annotation>
<xs:documentation xml:lang="en">Client</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="server">
<xs:annotation>
<xs:documentation xml:lang="en">Server</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="RestfulCapabilityMode">
<xs:annotation>
<xs:documentation xml:lang="en">The mode of a RESTful capability statement.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="RestfulCapabilityMode-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="TypeRestfulInteraction-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="read">
<xs:annotation>
<xs:documentation xml:lang="en">read</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="vread">
<xs:annotation>
<xs:documentation xml:lang="en">vread</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="update">
<xs:annotation>
<xs:documentation xml:lang="en">update</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="patch">
<xs:annotation>
<xs:documentation xml:lang="en">patch</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="delete">
<xs:annotation>
<xs:documentation xml:lang="en">delete</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="history-instance">
<xs:annotation>
<xs:documentation xml:lang="en">history-instance</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="history-type">
<xs:annotation>
<xs:documentation xml:lang="en">history-type</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="create">
<xs:annotation>
<xs:documentation xml:lang="en">create</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="search-type">
<xs:annotation>
<xs:documentation xml:lang="en">search-type</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="TypeRestfulInteraction">
<xs:annotation>
<xs:documentation xml:lang="en">Operations supported by REST at the type or instance level.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="TypeRestfulInteraction-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="SystemRestfulInteraction-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="transaction">
<xs:annotation>
<xs:documentation xml:lang="en">transaction</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="batch">
<xs:annotation>
<xs:documentation xml:lang="en">batch</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="search-system">
<xs:annotation>
<xs:documentation xml:lang="en">search-system</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="history-system">
<xs:annotation>
<xs:documentation xml:lang="en">history-system</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="SystemRestfulInteraction">
<xs:annotation>
<xs:documentation xml:lang="en">Operations supported by REST at the system level.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="SystemRestfulInteraction-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ConditionalReadStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="not-supported">
<xs:annotation>
<xs:documentation xml:lang="en">Not Supported</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="modified-since">
<xs:annotation>
<xs:documentation xml:lang="en">If-Modified-Since</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="not-match">
<xs:annotation>
<xs:documentation xml:lang="en">If-None-Match</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="full-support">
<xs:annotation>
<xs:documentation xml:lang="en">Full Support</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ConditionalReadStatus">
<xs:annotation>
<xs:documentation xml:lang="en">A code that indicates how the server supports conditional read.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ConditionalReadStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ReferenceHandlingPolicy-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="literal">
<xs:annotation>
<xs:documentation xml:lang="en">Literal References</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="logical">
<xs:annotation>
<xs:documentation xml:lang="en">Logical References</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="resolves">
<xs:annotation>
<xs:documentation xml:lang="en">Resolves References</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="enforced">
<xs:annotation>
<xs:documentation xml:lang="en">Reference Integrity Enforced</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="local">
<xs:annotation>
<xs:documentation xml:lang="en">Local References Only</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ReferenceHandlingPolicy">
<xs:annotation>
<xs:documentation xml:lang="en">A set of flags that defines how references are supported.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ReferenceHandlingPolicy-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ConditionalDeleteStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="not-supported">
<xs:annotation>
<xs:documentation xml:lang="en">Not Supported</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="single">
<xs:annotation>
<xs:documentation xml:lang="en">Single Deletes Supported</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="multiple">
<xs:annotation>
<xs:documentation xml:lang="en">Multiple Deletes Supported</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ConditionalDeleteStatus">
<xs:annotation>
<xs:documentation xml:lang="en">A code that indicates how the server supports conditional delete.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ConditionalDeleteStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="CarePlan" type="CarePlan">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the intention of how one or more practitioners intend to deliver care for a particular patient, group or community for a period of time, possibly limited to care for a specific condition or set of conditions.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="CarePlan">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the intention of how one or more practitioners intend to deliver care for a particular patient, group or community for a period of time, possibly limited to care for a specific condition or set of conditions.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business identifiers assigned to this care plan by the performer or other systems which remain constant as the resource is updated and propagates from server to server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesCanonical" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to a FHIR-defined protocol, guideline, questionnaire or other definition that is adhered to in whole or in part by this CarePlan.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesUri" minOccurs="0" maxOccurs="unbounded" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to an externally maintained protocol, guideline, questionnaire or other definition that is adhered to in whole or in part by this CarePlan.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basedOn" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A care plan that is fulfilled in whole or in part by this care plan.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="replaces" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Completed or terminated care plan whose function is taken by this new care plan.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partOf" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A larger care plan of which this particular care plan is a component or step.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="RequestStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether the plan is currently being acted upon, represents future intentions or is now a historical record.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="intent" minOccurs="1" maxOccurs="1" type="CarePlanIntent">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the level of authority/intentionality associated with the care plan and where the care plan fits into the workflow chain.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies what &quot;kind&quot; of plan this is to support differentiation between multiple co-existing plans; e.g. &quot;Home health&quot;, &quot;psychiatric&quot;, &quot;asthma&quot;, &quot;disease management&quot;, &quot;wellness plan&quot;, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Human-friendly name for the care plan.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A description of the scope and nature of the plan.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the patient or group whose intended care is described by the plan.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The Encounter during which this CarePlan was created or to which the creation of this record is tightly associated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates when the plan did (or is intended to) come into effect and end.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="created" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Represents when this particular CarePlan record was created in the system, which is often a system-generated date.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">When populated, the author is responsible for the care plan. The care plan is attributed to the author.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contributor" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the individual(s) or organization who provided the contents of the care plan.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="careTeam" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies all people and organizations who are expected to be involved in the care envisioned by this plan.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="addresses" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the conditions/problems/concerns/diagnoses/etc. whose management and/or mitigation are handled by this plan.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="supportingInfo" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies portions of the patient's record that specifically influenced the formation of the plan. These might include comorbidities, recent procedures, limitations, recent assessments, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="goal" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the intended objective(s) of carrying out the care plan.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="activity" type="CarePlan.Activity" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies a planned action to occur as part of the plan. For example, a medication to be used, lab tests to perform, self-monitoring, education, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">General notes about the care plan not covered elsewhere.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CarePlan.Activity">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the intention of how one or more practitioners intend to deliver care for a particular patient, group or community for a period of time, possibly limited to care for a specific condition or set of conditions.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="outcomeCodeableConcept" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the outcome at the point when the status of the activity is assessed. For example, the outcome of an education activity could be patient understands (or not).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="outcomeReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Details of the outcome or action resulting from the activity. The reference to an &quot;event&quot; resource, such as Procedure or Encounter or Observation, is the result/outcome of the activity itself. The activity can be conveyed using CarePlan.activity.detail OR using the CarePlan.activity.reference (a reference to a “request” resource).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="progress" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Notes about the adherence/status/progress of the activity.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reference" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The details of the proposed activity represented in a specific resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detail" type="CarePlan.Detail" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A simple summary of a planned activity suitable for a general care plan system (e.g. form driven) that doesn't know about specific resources such as procedure etc.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CarePlan.Detail">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the intention of how one or more practitioners intend to deliver care for a particular patient, group or community for a period of time, possibly limited to care for a specific condition or set of conditions.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="kind" minOccurs="0" maxOccurs="1" type="CarePlanActivityKind">
<xs:annotation>
<xs:documentation xml:lang="en">A description of the kind of resource the in-line definition of a care plan activity is representing. The CarePlan.activity.detail is an in-line definition when a resource is not referenced using CarePlan.activity.reference. For example, a MedicationRequest, a ServiceRequest, or a CommunicationRequest.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesCanonical" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to a FHIR-defined protocol, guideline, questionnaire or other definition that is adhered to in whole or in part by this CarePlan activity.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesUri" minOccurs="0" maxOccurs="unbounded" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to an externally maintained protocol, guideline, questionnaire or other definition that is adhered to in whole or in part by this CarePlan activity.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Detailed description of the type of planned activity; e.g. what lab test, what procedure, what kind of encounter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Provides the rationale that drove the inclusion of this particular activity as part of the plan or the reason why the activity was prohibited.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates another resource, such as the health condition(s), whose existence justifies this request and drove the inclusion of this particular activity as part of the plan.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="goal" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Internal reference that identifies the goals that this activity is intended to contribute towards meeting.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="CarePlanActivityStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies what progress is being made for the specific activity.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="statusReason" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Provides reason why the activity isn't yet started, is on hold, was cancelled, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="doNotPerform" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">If true, indicates that the described activity is one that must NOT be engaged in when following the plan. If false, or missing, indicates that the described activity is one that should be engaged in when following the plan.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The period, timing or frequency upon which the described activity is to occur.</xs:documentation>
</xs:annotation>
<xs:element name="scheduledTiming" type="Timing"/>
<xs:element name="scheduledPeriod" type="Period"/>
<xs:element name="scheduledString" type="string"/>
</xs:choice>
<xs:element name="location" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performer" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies who's expected to be involved in the activity.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the food, drug or other product to be consumed or supplied in the activity.</xs:documentation>
</xs:annotation>
<xs:element name="productCodeableConcept" type="CodeableConcept"/>
<xs:element name="productReference" type="Reference"/>
</xs:choice>
<xs:element name="dailyAmount" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the quantity expected to be consumed in a given day.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the quantity expected to be supplied, administered or consumed by the subject.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">This provides a textual description of constraints on the intended activity occurrence, including relation to other activities. It may also include objectives, pre-conditions and end-conditions. Finally, it may convey specifics about the activity such as body site, method, route, etc.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="CarePlanActivityKind-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="Appointment">
<xs:annotation>
<xs:documentation xml:lang="en">Appointment</xs:documentation>
<xs:documentation xml:lang="en">Appointment</xs:documentation>
<xs:documentation xml:lang="it">Appuntamento</xs:documentation>
<xs:documentation xml:lang="fr">RendezVous</xs:documentation>
<xs:documentation xml:lang="es">Cita</xs:documentation>
<xs:documentation xml:lang="zh">预约</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CommunicationRequest">
<xs:annotation>
<xs:documentation xml:lang="en">CommunicationRequest</xs:documentation>
<xs:documentation xml:lang="en">CommunicationRequest</xs:documentation>
<xs:documentation xml:lang="it">RichiestaDiComunicazione</xs:documentation>
<xs:documentation xml:lang="fr">DemandeDeCommunication</xs:documentation>
<xs:documentation xml:lang="es">ComunicaciónRequerimiento</xs:documentation>
<xs:documentation xml:lang="zh">通讯请求</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="DeviceRequest">
<xs:annotation>
<xs:documentation xml:lang="en">DeviceRequest</xs:documentation>
<xs:documentation xml:lang="en">DeviceRequest</xs:documentation>
<xs:documentation xml:lang="it">RichiestaDispositivo</xs:documentation>
<xs:documentation xml:lang="fr">DemandeUtilisationDispositif</xs:documentation>
<xs:documentation xml:lang="es">SolicitudDeDispositivo</xs:documentation>
<xs:documentation xml:lang="zh">装置请求</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MedicationRequest">
<xs:annotation>
<xs:documentation xml:lang="en">MedicationRequest</xs:documentation>
<xs:documentation xml:lang="en">MedicationRequest</xs:documentation>
<xs:documentation xml:lang="fr">PrescriptionMédicamenteuseTODO</xs:documentation>
<xs:documentation xml:lang="zh">药物请求</xs:documentation>
<xs:documentation xml:lang="es">PrescripciónMedicaciónTODO /PrescripcionMedicamento</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="NutritionOrder">
<xs:annotation>
<xs:documentation xml:lang="en">NutritionOrder</xs:documentation>
<xs:documentation xml:lang="en">NutritionOrder</xs:documentation>
<xs:documentation xml:lang="fr">OrdreNutrition</xs:documentation>
<xs:documentation xml:lang="es">OrdenNutrición</xs:documentation>
<xs:documentation xml:lang="zh">营养医嘱</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Task">
<xs:annotation>
<xs:documentation xml:lang="en">Task</xs:documentation>
<xs:documentation xml:lang="en">Task</xs:documentation>
<xs:documentation xml:lang="es">Tarea</xs:documentation>
<xs:documentation xml:lang="zh">任务</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ServiceRequest">
<xs:annotation>
<xs:documentation xml:lang="en">ServiceRequest</xs:documentation>
<xs:documentation xml:lang="en">ServiceRequest</xs:documentation>
<xs:documentation xml:lang="it">RichiestaDiServizio</xs:documentation>
<xs:documentation xml:lang="fr">DemandeService</xs:documentation>
<xs:documentation xml:lang="es">PeticiónServicio</xs:documentation>
<xs:documentation xml:lang="zh">服务项目请求</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="VisionPrescription">
<xs:annotation>
<xs:documentation xml:lang="en">VisionPrescription</xs:documentation>
<xs:documentation xml:lang="en">VisionPrescription</xs:documentation>
<xs:documentation xml:lang="fr">PrescriptionVision</xs:documentation>
<xs:documentation xml:lang="es">PrescripcionDeVision</xs:documentation>
<xs:documentation xml:lang="zh">视力处方</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="CarePlanActivityKind">
<xs:annotation>
<xs:documentation xml:lang="en">Resource types defined as part of FHIR that can be represented as in-line definitions of a care plan activity.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="CarePlanActivityKind-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="CarePlanActivityStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="not-started">
<xs:annotation>
<xs:documentation xml:lang="en">Not Started</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="scheduled">
<xs:annotation>
<xs:documentation xml:lang="en">Scheduled</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="in-progress">
<xs:annotation>
<xs:documentation xml:lang="en">In Progress</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="on-hold">
<xs:annotation>
<xs:documentation xml:lang="en">On Hold</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="completed">
<xs:annotation>
<xs:documentation xml:lang="en">Completed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cancelled">
<xs:annotation>
<xs:documentation xml:lang="en">Cancelled</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="stopped">
<xs:annotation>
<xs:documentation xml:lang="en">Stopped</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unknown">
<xs:annotation>
<xs:documentation xml:lang="en">Unknown</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="CarePlanActivityStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Codes that reflect the current state of a care plan activity within its overall life cycle.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="CarePlanActivityStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="CarePlanIntent-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="proposal">
<xs:annotation>
<xs:documentation xml:lang="en">Proposal</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="plan">
<xs:annotation>
<xs:documentation xml:lang="en">Plan</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="order">
<xs:annotation>
<xs:documentation xml:lang="en">Order</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="option">
<xs:annotation>
<xs:documentation xml:lang="en">Option</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="CarePlanIntent">
<xs:annotation>
<xs:documentation xml:lang="en">Codes indicating the degree of authority/intentionality associated with a care plan.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="CarePlanIntent-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="RequestStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="draft">
<xs:annotation>
<xs:documentation xml:lang="en">Draft</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="active">
<xs:annotation>
<xs:documentation xml:lang="en">Active</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="on-hold">
<xs:annotation>
<xs:documentation xml:lang="en">On Hold</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="revoked">
<xs:annotation>
<xs:documentation xml:lang="en">Revoked</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="completed">
<xs:annotation>
<xs:documentation xml:lang="en">Completed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unknown">
<xs:annotation>
<xs:documentation xml:lang="en">Unknown</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="RequestStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether the plan is currently being acted upon, represents future intentions or is now a historical record.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="RequestStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="CareTeam" type="CareTeam">
<xs:annotation>
<xs:documentation xml:lang="en">The Care Team includes all the people and organizations who plan to participate in the coordination and delivery of care for a patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="CareTeam">
<xs:annotation>
<xs:documentation xml:lang="en">The Care Team includes all the people and organizations who plan to participate in the coordination and delivery of care for a patient.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business identifiers assigned to this care team by the performer or other systems which remain constant as the resource is updated and propagates from server to server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="CareTeamStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the current state of the care team.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies what kind of team. This is to support differentiation between multiple co-existing teams, such as care plan team, episode of care team, longitudinal care team.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A label for human use intended to distinguish like teams. E.g. the &quot;red&quot; vs. &quot;green&quot; trauma teams.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the patient or group whose intended care is handled by the team.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The Encounter during which this CareTeam was created or to which the creation of this record is tightly associated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates when the team did (or is intended to) come into effect and end.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="participant" type="CareTeam.Participant" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies all people and organizations who are expected to be involved in the care team.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes why the care team exists.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Condition(s) that this care team addresses.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="managingOrganization" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The organization responsible for the care team.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="telecom" minOccurs="0" maxOccurs="unbounded" type="ContactPoint">
<xs:annotation>
<xs:documentation xml:lang="en">A central contact detail for the care team (that applies to all members).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Comments made about the CareTeam.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CareTeam.Participant">
<xs:annotation>
<xs:documentation xml:lang="en">The Care Team includes all the people and organizations who plan to participate in the coordination and delivery of care for a patient.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="role" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates specific responsibility of an individual within the care team, such as &quot;Primary care physician&quot;, &quot;Trained social worker counselor&quot;, &quot;Caregiver&quot;, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="member" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The specific person or organization who is participating/expected to participate in the care team.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="onBehalfOf" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The organization of the practitioner.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates when the specific member or organization did (or is intended to) come into effect and end.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="CareTeamStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="proposed">
<xs:annotation>
<xs:documentation xml:lang="en">Proposed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="active">
<xs:annotation>
<xs:documentation xml:lang="en">Active</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="suspended">
<xs:annotation>
<xs:documentation xml:lang="en">Suspended</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="inactive">
<xs:annotation>
<xs:documentation xml:lang="en">Inactive</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="CareTeamStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the status of the care team.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="CareTeamStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="CatalogEntry" type="CatalogEntry">
<xs:annotation>
<xs:documentation xml:lang="en">Catalog entries are wrappers that contextualize items included in a catalog.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="CatalogEntry">
<xs:annotation>
<xs:documentation xml:lang="en">Catalog entries are wrappers that contextualize items included in a catalog.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Used in supporting different identifiers for the same product, e.g. manufacturer code and retailer code.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of item - medication, device, service, protocol or other.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="orderable" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the entry represents an orderable item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referencedItem" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The item in a catalog or definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="additionalIdentifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Used in supporting related concepts, e.g. NDC to RxNorm.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="classification" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Classes of devices, or ATC for medication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Used to support catalog exchange even for unsupported products, e.g. getting list of medications even if not prescribable.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="validityPeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The time period in which this catalog entry is expected to be active.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="validTo" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date until which this catalog entry is expected to be active.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lastUpdated" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Typically date of issue is different from the beginning of the validity. This can be used to see when an item was last updated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="additionalCharacteristic" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Used for examplefor Out of Formulary, or any specifics.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="additionalClassification" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">User for example for ATC classification, or.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relatedEntry" type="CatalogEntry.RelatedEntry" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Used for example, to point to a substance, or to a device used to administer a medication.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CatalogEntry.RelatedEntry">
<xs:annotation>
<xs:documentation xml:lang="en">Catalog entries are wrappers that contextualize items included in a catalog.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="relationtype" minOccurs="1" maxOccurs="1" type="CatalogEntryRelationType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of relation to the related item: child, parent, packageContent, containerPackage, usedIn, uses, requires, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="item" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The reference to the related item.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="CatalogEntryRelationType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="triggers">
<xs:annotation>
<xs:documentation xml:lang="en">Triggers</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="is-replaced-by">
<xs:annotation>
<xs:documentation xml:lang="en">Replaced By</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="CatalogEntryRelationType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of relations between entries.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="CatalogEntryRelationType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="ChargeItem" type="ChargeItem">
<xs:annotation>
<xs:documentation xml:lang="en">The resource ChargeItem describes the provision of healthcare provider products for a certain patient, therefore referring not only to the product, but containing in addition details of the provision, like date, time, amounts and participating organizations and persons. Main Usage of the ChargeItem is to enable the billing process and internal cost allocation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ChargeItem">
<xs:annotation>
<xs:documentation xml:lang="en">The resource ChargeItem describes the provision of healthcare provider products for a certain patient, therefore referring not only to the product, but containing in addition details of the provision, like date, time, amounts and participating organizations and persons. Main Usage of the ChargeItem is to enable the billing process and internal cost allocation.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifiers assigned to this event performer or other systems.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="definitionUri" minOccurs="0" maxOccurs="unbounded" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">References the (external) source of pricing information, rules of application for the code this ChargeItem uses.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="definitionCanonical" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">References the source of pricing information, rules of application for the code this ChargeItem uses.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="ChargeItemStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The current state of the ChargeItem.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partOf" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">ChargeItems can be grouped to larger ChargeItems covering the whole set.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code that identifies the charge, like a billing code.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The individual or set of individuals the action is being or was performed on.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="context" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The encounter or episode of care that establishes the context for this event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Date/time(s) or duration when the charged service was applied.</xs:documentation>
</xs:annotation>
<xs:element name="occurrenceDateTime" type="dateTime"/>
<xs:element name="occurrencePeriod" type="Period"/>
<xs:element name="occurrenceTiming" type="Timing"/>
</xs:choice>
<xs:element name="performer" type="ChargeItem.Performer" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates who or what performed or participated in the charged service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performingOrganization" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The organization requesting the service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requestingOrganization" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The organization performing the service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="costCenter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The financial cost center permits the tracking of charge attribution.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">Quantity of which the charge item has been serviced.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="bodysite" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The anatomical location where the related service has been applied.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="factorOverride" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Factor overriding the factor determined by the rules associated with the code.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priceOverride" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">Total price of the charge overriding the list price associated with the code.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="overrideReason" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">If the list price or the rule-based factor associated with the code is overridden, this attribute can capture a text to indicate the reason for this action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="enterer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The device, practitioner, etc. who entered the charge item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="enteredDate" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Date the charge item was entered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reason" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes why the event occurred in coded or textual form.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="service" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicated the rendered service that caused this charge.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the device, food, drug or other product being charged either by type code or reference to an instance.</xs:documentation>
</xs:annotation>
<xs:element name="productReference" type="Reference"/>
<xs:element name="productCodeableConcept" type="CodeableConcept"/>
</xs:choice>
<xs:element name="account" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Account into which this ChargeItems belongs.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Comments made about the event by the performer, subject or other participants.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="supportingInformation" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Further information supporting this charge.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ChargeItem.Performer">
<xs:annotation>
<xs:documentation xml:lang="en">The resource ChargeItem describes the provision of healthcare provider products for a certain patient, therefore referring not only to the product, but containing in addition details of the provision, like date, time, amounts and participating organizations and persons. Main Usage of the ChargeItem is to enable the billing process and internal cost allocation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="function" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the type of performance or participation(e.g. primary surgeon, anesthesiologiest, etc.).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="actor" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The device, practitioner, etc. who performed or participated in the service.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ChargeItemStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="planned">
<xs:annotation>
<xs:documentation xml:lang="en">Planned</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="billable">
<xs:annotation>
<xs:documentation xml:lang="en">Billable</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="not-billable">
<xs:annotation>
<xs:documentation xml:lang="en">Not billable</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="aborted">
<xs:annotation>
<xs:documentation xml:lang="en">Aborted</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="billed">
<xs:annotation>
<xs:documentation xml:lang="en">Billed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unknown">
<xs:annotation>
<xs:documentation xml:lang="en">Unknown</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ChargeItemStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Codes identifying the lifecycle stage of a ChargeItem.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ChargeItemStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="ChargeItemDefinition" type="ChargeItemDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">The ChargeItemDefinition resource provides the properties that apply to the (billing) codes necessary to calculate costs and prices. The properties may differ largely depending on type and realm, therefore this resource gives only a rough structure and requires profiling for each type of billing code system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ChargeItemDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">The ChargeItemDefinition resource provides the properties that apply to the (billing) codes necessary to calculate costs and prices. The properties may differ largely depending on type and realm, therefore this resource gives only a rough structure and requires profiling for each type of billing code system.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="1" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this charge item definition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this charge item definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the charge item definition is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this charge item definition when it is represented in other formats, or referenced in a specification, model, design or an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the charge item definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the charge item definition author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. To provide a version consistent with the Decision Support Service specification, use the format Major.Minor.Revision (e.g. 1.0.0). For more information on versioning knowledge assets, refer to the Decision Support Service specification. Note that a version is required for non-experimental active assets.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the charge item definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="derivedFromUri" minOccurs="0" maxOccurs="unbounded" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to an externally-defined charge item definition that is adhered to in whole or in part by this definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partOf" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A larger definition of which this particular definition is a component or step.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="replaces" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">As new versions of a protocol or guideline are defined, allows identification of what versions are replaced by a new instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The current state of the ChargeItemDefinition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this charge item definition is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the charge item definition was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the charge item definition changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the charge item definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the charge item definition from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate charge item definition instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the charge item definition is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the charge item definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the charge item definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="approvalDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lastReviewDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="effectivePeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period during which the charge item definition content was or is planned to be in active use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The defined billing details in this resource pertain to the given billing code.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instance" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The defined billing details in this resource pertain to the given product instance(s).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="applicability" type="ChargeItemDefinition.Applicability" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Expressions that describe applicability criteria for the billing code.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="propertyGroup" type="ChargeItemDefinition.PropertyGroup" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Group of properties which are applicable under the same conditions. If no applicability rules are established for the group, then all properties always apply.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ChargeItemDefinition.Applicability">
<xs:annotation>
<xs:documentation xml:lang="en">The ChargeItemDefinition resource provides the properties that apply to the (billing) codes necessary to calculate costs and prices. The properties may differ largely depending on type and realm, therefore this resource gives only a rough structure and requires profiling for each type of billing code system.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A brief, natural language description of the condition that effectively communicates the intended semantics.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="language" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The media type of the language for the expression, e.g. &quot;text/cql&quot; for Clinical Query Language expressions or &quot;text/fhirpath&quot; for FHIRPath expressions.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expression" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">An expression that returns true or false, indicating whether the condition is satisfied. When using FHIRPath expressions, the %context environment variable must be replaced at runtime with the ChargeItem resource to which this definition is applied.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ChargeItemDefinition.PropertyGroup">
<xs:annotation>
<xs:documentation xml:lang="en">The ChargeItemDefinition resource provides the properties that apply to the (billing) codes necessary to calculate costs and prices. The properties may differ largely depending on type and realm, therefore this resource gives only a rough structure and requires profiling for each type of billing code system.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="applicability" type="ChargeItemDefinition.Applicability" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Expressions that describe applicability criteria for the priceComponent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priceComponent" type="ChargeItemDefinition.PriceComponent" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The price for a ChargeItem may be calculated as a base price with surcharges/deductions that apply in certain conditions. A ChargeItemDefinition resource that defines the prices, factors and conditions that apply to a billing code is currently under development. The priceComponent element can be used to offer transparency to the recipient of the Invoice of how the prices have been calculated.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ChargeItemDefinition.PriceComponent">
<xs:annotation>
<xs:documentation xml:lang="en">The ChargeItemDefinition resource provides the properties that apply to the (billing) codes necessary to calculate costs and prices. The properties may differ largely depending on type and realm, therefore this resource gives only a rough structure and requires profiling for each type of billing code system.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="InvoicePriceComponentType">
<xs:annotation>
<xs:documentation xml:lang="en">This code identifies the type of the component.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code that identifies the component. Codes may be used to differentiate between kinds of taxes, surcharges, discounts etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="factor" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">The factor that has been applied on the base price for calculating this component.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="amount" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">The amount calculated for this component.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="InvoicePriceComponentType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="base">
<xs:annotation>
<xs:documentation xml:lang="en">base price</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="surcharge">
<xs:annotation>
<xs:documentation xml:lang="en">surcharge</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="deduction">
<xs:annotation>
<xs:documentation xml:lang="en">deduction</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="discount">
<xs:annotation>
<xs:documentation xml:lang="en">discount</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="tax">
<xs:annotation>
<xs:documentation xml:lang="en">tax</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="informational">
<xs:annotation>
<xs:documentation xml:lang="en">informational</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="InvoicePriceComponentType">
<xs:annotation>
<xs:documentation xml:lang="en">Codes indicating the kind of the price component.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="InvoicePriceComponentType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Claim" type="Claim">
<xs:annotation>
<xs:documentation xml:lang="en">A provider issued list of professional services and products which have been provided, or are to be provided, to a patient which is sent to an insurer for reimbursement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Claim">
<xs:annotation>
<xs:documentation xml:lang="en">A provider issued list of professional services and products which have been provided, or are to be provided, to a patient which is sent to an insurer for reimbursement.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A unique identifier assigned to this claim.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="FinancialResourceStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the resource instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The category of claim, e.g. oral, pharmacy, vision, institutional, professional.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A finer grained suite of claim type codes which may convey additional information such as Inpatient vs Outpatient and/or a specialty service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="use" minOccurs="1" maxOccurs="1" type="Use">
<xs:annotation>
<xs:documentation xml:lang="en">A code to indicate whether the nature of the request is: to request adjudication of products and services previously rendered; or requesting authorization and adjudication for provision in the future; or requesting the non-binding adjudication of the listed products and services which could be provided in the future.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patient" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The party to whom the professional services and/or products have been supplied or are being considered and for whom actual or forecast reimbursement is sought.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="billablePeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period for which charges are being submitted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="created" minOccurs="1" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date this resource was created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="enterer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Individual who created the claim, predetermination or preauthorization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="insurer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The Insurer who is target of the request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="provider" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The provider which is responsible for the claim, predetermination or preauthorization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priority" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The provider-required urgency of processing the request. Typical values include: stat, routine deferred.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="fundsReserve" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code to indicate whether and for whom funds are to be reserved for future claims.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="related" type="Claim.Related" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Other claims which are related to this claim such as prior submissions or claims for related services or for the same event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="prescription" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Prescription to support the dispensing of pharmacy, device or vision products.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="originalPrescription" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Original prescription which has been superseded by this prescription to support the dispensing of pharmacy services, medications or products.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="payee" type="Claim.Payee" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The party to be reimbursed for cost of the products and services according to the terms of the policy.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referral" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a referral resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="facility" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Facility where the services were provided.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="careTeam" type="Claim.CareTeam" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The members of the team who provided the products and services.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="supportingInfo" type="Claim.SupportingInfo" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Additional information codes regarding exceptions, special considerations, the condition, situation, prior or concurrent issues.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="diagnosis" type="Claim.Diagnosis" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Information about diagnoses relevant to the claim items.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="procedure" type="Claim.Procedure" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Procedures performed on the patient relevant to the billing items with the claim.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="insurance" type="Claim.Insurance" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Financial instruments for reimbursement for the health care products and services specified on the claim.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="accident" type="Claim.Accident" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Details of an accident which resulted in injuries which required the products and services listed in the claim.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="item" type="Claim.Item" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A claim line. Either a simple product or service or a 'group' of details which can each be a simple items or groups of sub-details.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="total" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">The total value of the all the items in the claim.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Claim.Related">
<xs:annotation>
<xs:documentation xml:lang="en">A provider issued list of professional services and products which have been provided, or are to be provided, to a patient which is sent to an insurer for reimbursement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="claim" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to a related claim.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relationship" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code to convey how the claims are related.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reference" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">An alternate organizational reference to the case or file to which this particular claim pertains.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Claim.Payee">
<xs:annotation>
<xs:documentation xml:lang="en">A provider issued list of professional services and products which have been provided, or are to be provided, to a patient which is sent to an insurer for reimbursement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of Party to be reimbursed: subscriber, provider, other.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="party" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to the individual or organization to whom any payment will be made.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Claim.CareTeam">
<xs:annotation>
<xs:documentation xml:lang="en">A provider issued list of professional services and products which have been provided, or are to be provided, to a patient which is sent to an insurer for reimbursement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="sequence" minOccurs="1" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A number to uniquely identify care team entries.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="provider" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Member of the team who provided the product or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="responsible" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">The party who is billing and/or responsible for the claimed products or services.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="role" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The lead, assisting or supervising practitioner and their discipline if a multidisciplinary team.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="qualification" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The qualification of the practitioner which is applicable for this service.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Claim.SupportingInfo">
<xs:annotation>
<xs:documentation xml:lang="en">A provider issued list of professional services and products which have been provided, or are to be provided, to a patient which is sent to an insurer for reimbursement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="sequence" minOccurs="1" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A number to uniquely identify supporting information entries.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The general class of the information supplied: information; exception; accident, employment; onset, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">System and code pertaining to the specific information regarding special conditions relating to the setting, treatment or patient for which care is sought.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The date when or period to which this information refers.</xs:documentation>
</xs:annotation>
<xs:element name="timingDate" type="date"/>
<xs:element name="timingPeriod" type="Period"/>
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Additional data or information such as resources, documents, images etc. including references to the data or the actual inclusion of the data.</xs:documentation>
</xs:annotation>
<xs:element name="valueBoolean" type="boolean"/>
<xs:element name="valueString" type="string"/>
<xs:element name="valueQuantity" type="Quantity"/>
<xs:element name="valueAttachment" type="Attachment"/>
<xs:element name="valueReference" type="Reference"/>
</xs:choice>
<xs:element name="reason" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Provides the reason in the situation where a reason code is required in addition to the content.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Claim.Diagnosis">
<xs:annotation>
<xs:documentation xml:lang="en">A provider issued list of professional services and products which have been provided, or are to be provided, to a patient which is sent to an insurer for reimbursement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="sequence" minOccurs="1" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A number to uniquely identify diagnosis entries.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The nature of illness or problem in a coded form or as a reference to an external defined Condition.</xs:documentation>
</xs:annotation>
<xs:element name="diagnosisCodeableConcept" type="CodeableConcept"/>
<xs:element name="diagnosisReference" type="Reference"/>
</xs:choice>
<xs:element name="type" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">When the condition was observed or the relative ranking.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="onAdmission" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indication of whether the diagnosis was present on admission to a facility.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="packageCode" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A package billing code or bundle code used to group products and services to a particular health condition (such as heart attack) which is based on a predetermined grouping code system.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Claim.Procedure">
<xs:annotation>
<xs:documentation xml:lang="en">A provider issued list of professional services and products which have been provided, or are to be provided, to a patient which is sent to an insurer for reimbursement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="sequence" minOccurs="1" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A number to uniquely identify procedure entries.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">When the condition was observed or the relative ranking.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Date and optionally time the procedure was performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The code or reference to a Procedure resource which identifies the clinical intervention performed.</xs:documentation>
</xs:annotation>
<xs:element name="procedureCodeableConcept" type="CodeableConcept"/>
<xs:element name="procedureReference" type="Reference"/>
</xs:choice>
<xs:element name="udi" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Unique Device Identifiers associated with this line item.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Claim.Insurance">
<xs:annotation>
<xs:documentation xml:lang="en">A provider issued list of professional services and products which have been provided, or are to be provided, to a patient which is sent to an insurer for reimbursement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="sequence" minOccurs="1" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A number to uniquely identify insurance entries and provide a sequence of coverages to convey coordination of benefit order.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="focal" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A flag to indicate that this Coverage is to be used for adjudication of this claim when set to true.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">The business identifier to be used when the claim is sent for adjudication against this insurance policy.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="coverage" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to the insurance card level information contained in the Coverage resource. The coverage issuing insurer will use these details to locate the patient's actual coverage within the insurer's information system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="businessArrangement" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A business agreement number established between the provider and the insurer for special business processing purposes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="preAuthRef" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Reference numbers previously provided by the insurer to the provider to be quoted on subsequent claims containing services or products related to the prior authorization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="claimResponse" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The result of the adjudication of the line items for the Coverage specified in this insurance.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Claim.Accident">
<xs:annotation>
<xs:documentation xml:lang="en">A provider issued list of professional services and products which have been provided, or are to be provided, to a patient which is sent to an insurer for reimbursement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="date" minOccurs="1" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">Date of an accident event related to the products and services contained in the claim.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type or context of the accident event for the purposes of selection of potential insurance coverages and determination of coordination between insurers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The physical location of the accident event.</xs:documentation>
</xs:annotation>
<xs:element name="locationAddress" type="Address"/>
<xs:element name="locationReference" type="Reference"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Claim.Item">
<xs:annotation>
<xs:documentation xml:lang="en">A provider issued list of professional services and products which have been provided, or are to be provided, to a patient which is sent to an insurer for reimbursement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="sequence" minOccurs="1" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A number to uniquely identify item entries.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="careTeamSequence" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">CareTeam members related to this service or product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="diagnosisSequence" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">Diagnosis applicable for this service or product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="procedureSequence" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">Procedures applicable for this service or product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="informationSequence" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">Exceptions, special conditions and supporting information applicable for this service or product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="revenue" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of revenue or cost center providing the product and/or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Code to identify the general type of benefits under which products and services are provided.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="productOrService" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">When the value is a group code then this item collects a set of related claim details, otherwise this contains the product, service, drug or other billing code for the item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modifier" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Item typification or modifiers codes to convey additional context for the product or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="programCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the program under which this may be recovered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The date or dates when the service or product was supplied, performed or completed.</xs:documentation>
</xs:annotation>
<xs:element name="servicedDate" type="date"/>
<xs:element name="servicedPeriod" type="Period"/>
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Where the product or service was provided.</xs:documentation>
</xs:annotation>
<xs:element name="locationCodeableConcept" type="CodeableConcept"/>
<xs:element name="locationAddress" type="Address"/>
<xs:element name="locationReference" type="Reference"/>
</xs:choice>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The number of repetitions of a service or product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unitPrice" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">If the item is not a group then this is the fee for the product or service, otherwise this is the total of the fees for the details of the group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="factor" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">A real number that represents a multiplier used in determining the overall value of services delivered and/or goods received. The concept of a Factor allows for a discount or surcharge multiplier to be applied to a monetary amount.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="net" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">The quantity times the unit price for an additional service or product or charge.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="udi" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Unique Device Identifiers associated with this line item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="bodySite" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Physical service site on the patient (limb, tooth, etc.).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subSite" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A region or surface of the bodySite, e.g. limb region or tooth surface(s).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The Encounters during which this Claim was created or to which the creation of this record is tightly associated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detail" type="Claim.Detail" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A claim detail line. Either a simple (a product or service) or a 'group' of sub-details which are simple items.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Claim.Detail">
<xs:annotation>
<xs:documentation xml:lang="en">A provider issued list of professional services and products which have been provided, or are to be provided, to a patient which is sent to an insurer for reimbursement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="sequence" minOccurs="1" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A number to uniquely identify item entries.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="revenue" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of revenue or cost center providing the product and/or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Code to identify the general type of benefits under which products and services are provided.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="productOrService" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">When the value is a group code then this item collects a set of related claim details, otherwise this contains the product, service, drug or other billing code for the item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modifier" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Item typification or modifiers codes to convey additional context for the product or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="programCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the program under which this may be recovered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The number of repetitions of a service or product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unitPrice" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">If the item is not a group then this is the fee for the product or service, otherwise this is the total of the fees for the details of the group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="factor" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">A real number that represents a multiplier used in determining the overall value of services delivered and/or goods received. The concept of a Factor allows for a discount or surcharge multiplier to be applied to a monetary amount.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="net" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">The quantity times the unit price for an additional service or product or charge.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="udi" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Unique Device Identifiers associated with this line item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subDetail" type="Claim.SubDetail" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A claim detail line. Either a simple (a product or service) or a 'group' of sub-details which are simple items.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Claim.SubDetail">
<xs:annotation>
<xs:documentation xml:lang="en">A provider issued list of professional services and products which have been provided, or are to be provided, to a patient which is sent to an insurer for reimbursement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="sequence" minOccurs="1" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A number to uniquely identify item entries.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="revenue" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of revenue or cost center providing the product and/or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Code to identify the general type of benefits under which products and services are provided.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="productOrService" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">When the value is a group code then this item collects a set of related claim details, otherwise this contains the product, service, drug or other billing code for the item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modifier" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Item typification or modifiers codes to convey additional context for the product or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="programCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the program under which this may be recovered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The number of repetitions of a service or product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unitPrice" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">If the item is not a group then this is the fee for the product or service, otherwise this is the total of the fees for the details of the group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="factor" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">A real number that represents a multiplier used in determining the overall value of services delivered and/or goods received. The concept of a Factor allows for a discount or surcharge multiplier to be applied to a monetary amount.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="net" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">The quantity times the unit price for an additional service or product or charge.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="udi" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Unique Device Identifiers associated with this line item.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="Use-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="claim">
<xs:annotation>
<xs:documentation xml:lang="en">Claim</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="preauthorization">
<xs:annotation>
<xs:documentation xml:lang="en">Preauthorization</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="predetermination">
<xs:annotation>
<xs:documentation xml:lang="en">Predetermination</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="Use">
<xs:annotation>
<xs:documentation xml:lang="en">The purpose of the Claim: predetermination, preauthorization, claim.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="Use-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="FinancialResourceStatusCodes-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="active">
<xs:annotation>
<xs:documentation xml:lang="en">Active</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cancelled">
<xs:annotation>
<xs:documentation xml:lang="en">Cancelled</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="draft">
<xs:annotation>
<xs:documentation xml:lang="en">Draft</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="FinancialResourceStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">A code specifying the state of the resource instance.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="FinancialResourceStatusCodes-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="ClaimResponse" type="ClaimResponse">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the adjudication details from the processing of a Claim resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ClaimResponse">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the adjudication details from the processing of a Claim resource.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A unique identifier assigned to this claim response.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="FinancialResourceStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the resource instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A finer grained suite of claim type codes which may convey additional information such as Inpatient vs Outpatient and/or a specialty service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A finer grained suite of claim type codes which may convey additional information such as Inpatient vs Outpatient and/or a specialty service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="use" minOccurs="1" maxOccurs="1" type="Use">
<xs:annotation>
<xs:documentation xml:lang="en">A code to indicate whether the nature of the request is: to request adjudication of products and services previously rendered; or requesting authorization and adjudication for provision in the future; or requesting the non-binding adjudication of the listed products and services which could be provided in the future.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patient" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The party to whom the professional services and/or products have been supplied or are being considered and for whom actual for facast reimbursement is sought.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="created" minOccurs="1" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date this resource was created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="insurer" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The party responsible for authorization, adjudication and reimbursement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requestor" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The provider which is responsible for the claim, predetermination or preauthorization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="request" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Original request resource reference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="outcome" minOccurs="1" maxOccurs="1" type="ClaimProcessingCodes">
<xs:annotation>
<xs:documentation xml:lang="en">The outcome of the claim, predetermination, or preauthorization processing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="disposition" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A human readable description of the status of the adjudication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="preAuthRef" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Reference from the Insurer which is used in later communications which refers to this adjudication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="preAuthPeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The time frame during which this authorization is effective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="payeeType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of Party to be reimbursed: subscriber, provider, other.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="item" type="ClaimResponse.Item" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A claim line. Either a simple (a product or service) or a 'group' of details which can also be a simple items or groups of sub-details.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="addItem" type="ClaimResponse.AddItem" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The first-tier service adjudications for payor added product or service lines.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="adjudication" type="ClaimResponse.Adjudication" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The adjudication results which are presented at the header level rather than at the line-item or add-item levels.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="total" type="ClaimResponse.Total" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Categorized monetary totals for the adjudication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="payment" type="ClaimResponse.Payment" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Payment details for the adjudication of the claim.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="fundsReserve" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code, used only on a response to a preauthorization, to indicate whether the benefits payable have been reserved and for whom.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="formCode" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code for the form to be used for printing the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="form" minOccurs="0" maxOccurs="1" type="Attachment">
<xs:annotation>
<xs:documentation xml:lang="en">The actual form, by reference or inclusion, for printing the content or an EOB.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="processNote" type="ClaimResponse.ProcessNote" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A note that describes or explains adjudication results in a human readable form.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="communicationRequest" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Request for additional supporting or authorizing information.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="insurance" type="ClaimResponse.Insurance" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Financial instruments for reimbursement for the health care products and services specified on the claim.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="error" type="ClaimResponse.Error" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Errors encountered during the processing of the adjudication.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ClaimResponse.Item">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the adjudication details from the processing of a Claim resource.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="itemSequence" minOccurs="1" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A number to uniquely reference the claim item entries.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="noteNumber" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The numbers associated with notes below which apply to the adjudication of this item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="adjudication" type="ClaimResponse.Adjudication" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">If this item is a group then the values here are a summary of the adjudication of the detail items. If this item is a simple product or service then this is the result of the adjudication of this item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detail" type="ClaimResponse.Detail" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A claim detail. Either a simple (a product or service) or a 'group' of sub-details which are simple items.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ClaimResponse.Adjudication">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the adjudication details from the processing of a Claim resource.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="category" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code to indicate the information type of this adjudication record. Information types may include the value submitted, maximum values or percentages allowed or payable under the plan, amounts that: the patient is responsible for in aggregate or pertaining to this item; amounts paid by other coverages; and, the benefit payable for this item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reason" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code supporting the understanding of the adjudication result and explaining variance from expected amount.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="amount" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">Monetary amount associated with the category.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="value" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">A non-monetary value associated with the category. Mutually exclusive to the amount element above.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ClaimResponse.Detail">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the adjudication details from the processing of a Claim resource.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="detailSequence" minOccurs="1" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A number to uniquely reference the claim detail entry.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="noteNumber" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The numbers associated with notes below which apply to the adjudication of this item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="adjudication" type="ClaimResponse.Adjudication" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The adjudication results.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subDetail" type="ClaimResponse.SubDetail" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A sub-detail adjudication of a simple product or service.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ClaimResponse.SubDetail">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the adjudication details from the processing of a Claim resource.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="subDetailSequence" minOccurs="1" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A number to uniquely reference the claim sub-detail entry.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="noteNumber" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The numbers associated with notes below which apply to the adjudication of this item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="adjudication" type="ClaimResponse.Adjudication" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The adjudication results.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ClaimResponse.AddItem">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the adjudication details from the processing of a Claim resource.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="itemSequence" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">Claim items which this service line is intended to replace.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detailSequence" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The sequence number of the details within the claim item which this line is intended to replace.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subdetailSequence" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The sequence number of the sub-details within the details within the claim item which this line is intended to replace.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="provider" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The providers who are authorized for the services rendered to the patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="productOrService" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">When the value is a group code then this item collects a set of related claim details, otherwise this contains the product, service, drug or other billing code for the item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modifier" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Item typification or modifiers codes to convey additional context for the product or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="programCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the program under which this may be recovered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The date or dates when the service or product was supplied, performed or completed.</xs:documentation>
</xs:annotation>
<xs:element name="servicedDate" type="date"/>
<xs:element name="servicedPeriod" type="Period"/>
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Where the product or service was provided.</xs:documentation>
</xs:annotation>
<xs:element name="locationCodeableConcept" type="CodeableConcept"/>
<xs:element name="locationAddress" type="Address"/>
<xs:element name="locationReference" type="Reference"/>
</xs:choice>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The number of repetitions of a service or product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unitPrice" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">If the item is not a group then this is the fee for the product or service, otherwise this is the total of the fees for the details of the group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="factor" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">A real number that represents a multiplier used in determining the overall value of services delivered and/or goods received. The concept of a Factor allows for a discount or surcharge multiplier to be applied to a monetary amount.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="net" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">The quantity times the unit price for an additional service or product or charge.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="bodySite" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Physical service site on the patient (limb, tooth, etc.).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subSite" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A region or surface of the bodySite, e.g. limb region or tooth surface(s).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="noteNumber" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The numbers associated with notes below which apply to the adjudication of this item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="adjudication" type="ClaimResponse.Adjudication" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The adjudication results.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detail" type="ClaimResponse.Detail1" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The second-tier service adjudications for payor added services.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ClaimResponse.Detail1">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the adjudication details from the processing of a Claim resource.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="productOrService" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">When the value is a group code then this item collects a set of related claim details, otherwise this contains the product, service, drug or other billing code for the item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modifier" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Item typification or modifiers codes to convey additional context for the product or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The number of repetitions of a service or product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unitPrice" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">If the item is not a group then this is the fee for the product or service, otherwise this is the total of the fees for the details of the group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="factor" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">A real number that represents a multiplier used in determining the overall value of services delivered and/or goods received. The concept of a Factor allows for a discount or surcharge multiplier to be applied to a monetary amount.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="net" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">The quantity times the unit price for an additional service or product or charge.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="noteNumber" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The numbers associated with notes below which apply to the adjudication of this item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="adjudication" type="ClaimResponse.Adjudication" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The adjudication results.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subDetail" type="ClaimResponse.SubDetail1" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The third-tier service adjudications for payor added services.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ClaimResponse.SubDetail1">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the adjudication details from the processing of a Claim resource.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="productOrService" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">When the value is a group code then this item collects a set of related claim details, otherwise this contains the product, service, drug or other billing code for the item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modifier" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Item typification or modifiers codes to convey additional context for the product or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The number of repetitions of a service or product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unitPrice" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">If the item is not a group then this is the fee for the product or service, otherwise this is the total of the fees for the details of the group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="factor" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">A real number that represents a multiplier used in determining the overall value of services delivered and/or goods received. The concept of a Factor allows for a discount or surcharge multiplier to be applied to a monetary amount.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="net" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">The quantity times the unit price for an additional service or product or charge.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="noteNumber" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The numbers associated with notes below which apply to the adjudication of this item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="adjudication" type="ClaimResponse.Adjudication" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The adjudication results.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ClaimResponse.Total">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the adjudication details from the processing of a Claim resource.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="category" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code to indicate the information type of this adjudication record. Information types may include: the value submitted, maximum values or percentages allowed or payable under the plan, amounts that the patient is responsible for in aggregate or pertaining to this item, amounts paid by other coverages, and the benefit payable for this item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="amount" minOccurs="1" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">Monetary total amount associated with the category.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ClaimResponse.Payment">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the adjudication details from the processing of a Claim resource.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Whether this represents partial or complete payment of the benefits payable.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="adjustment" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">Total amount of all adjustments to this payment included in this transaction which are not related to this claim's adjudication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="adjustmentReason" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Reason for the payment adjustment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">Estimated date the payment will be issued or the actual issue date of payment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="amount" minOccurs="1" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">Benefits payable less any payment adjustment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Issuer's unique identifier for the payment instrument.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ClaimResponse.ProcessNote">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the adjudication details from the processing of a Claim resource.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="number" minOccurs="0" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A number to uniquely identify a note entry.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="NoteType">
<xs:annotation>
<xs:documentation xml:lang="en">The business purpose of the note text.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="text" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The explanation or description associated with the processing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="language" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code to define the language used in the text of the note.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ClaimResponse.Insurance">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the adjudication details from the processing of a Claim resource.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="sequence" minOccurs="1" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A number to uniquely identify insurance entries and provide a sequence of coverages to convey coordination of benefit order.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="focal" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A flag to indicate that this Coverage is to be used for adjudication of this claim when set to true.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="coverage" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to the insurance card level information contained in the Coverage resource. The coverage issuing insurer will use these details to locate the patient's actual coverage within the insurer's information system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="businessArrangement" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A business agreement number established between the provider and the insurer for special business processing purposes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="claimResponse" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The result of the adjudication of the line items for the Coverage specified in this insurance.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ClaimResponse.Error">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the adjudication details from the processing of a Claim resource.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="itemSequence" minOccurs="0" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The sequence number of the line item submitted which contains the error. This value is omitted when the error occurs outside of the item structure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detailSequence" minOccurs="0" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The sequence number of the detail within the line item submitted which contains the error. This value is omitted when the error occurs outside of the item structure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subDetailSequence" minOccurs="0" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The sequence number of the sub-detail within the detail within the line item submitted which contains the error. This value is omitted when the error occurs outside of the item structure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">An error code, from a specified code system, which details why the claim could not be adjudicated.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ClaimProcessingCodes-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="queued">
<xs:annotation>
<xs:documentation xml:lang="en">Queued</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="complete">
<xs:annotation>
<xs:documentation xml:lang="en">Processing Complete</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="error">
<xs:annotation>
<xs:documentation xml:lang="en">Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="partial">
<xs:annotation>
<xs:documentation xml:lang="en">Partial Processing</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ClaimProcessingCodes">
<xs:annotation>
<xs:documentation xml:lang="en">The result of the claim processing.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ClaimProcessingCodes-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="ClinicalImpression" type="ClinicalImpression">
<xs:annotation>
<xs:documentation xml:lang="en">A record of a clinical assessment performed to determine what problem(s) may affect the patient and before planning the treatments or management strategies that are best to manage a patient's condition. Assessments are often 1:1 with a clinical consultation / encounter, but this varies greatly depending on the clinical workflow. This resource is called &quot;ClinicalImpression&quot; rather than &quot;ClinicalAssessment&quot; to avoid confusion with the recording of assessment tools such as Apgar score.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ClinicalImpression">
<xs:annotation>
<xs:documentation xml:lang="en">A record of a clinical assessment performed to determine what problem(s) may affect the patient and before planning the treatments or management strategies that are best to manage a patient's condition. Assessments are often 1:1 with a clinical consultation / encounter, but this varies greatly depending on the clinical workflow. This resource is called &quot;ClinicalImpression&quot; rather than &quot;ClinicalAssessment&quot; to avoid confusion with the recording of assessment tools such as Apgar score.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business identifiers assigned to this clinical impression by the performer or other systems which remain constant as the resource is updated and propagates from server to server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="ClinicalImpressionStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the workflow status of the assessment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="statusReason" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Captures the reason for the current state of the ClinicalImpression.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Categorizes the type of clinical assessment performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A summary of the context and/or cause of the assessment - why / where it was performed, and what patient events/status prompted it.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The patient or group of individuals assessed as part of this record.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The Encounter during which this ClinicalImpression was created or to which the creation of this record is tightly associated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The point in time or period over which the subject was assessed.</xs:documentation>
</xs:annotation>
<xs:element name="effectiveDateTime" type="dateTime"/>
<xs:element name="effectivePeriod" type="Period"/>
</xs:choice>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates when the documentation of the assessment was complete.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="assessor" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The clinician performing the assessment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="previous" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to the last assessment that was conducted on this patient. Assessments are often/usually ongoing in nature; a care provider (practitioner or team) will make new assessments on an ongoing basis as new data arises or the patient's conditions changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="problem" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A list of the relevant problems/conditions for a patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="investigation" type="ClinicalImpression.Investigation" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">One or more sets of investigations (signs, symptoms, etc.). The actual grouping of investigations varies greatly depending on the type and context of the assessment. These investigations may include data generated during the assessment process, or data previously generated and recorded that is pertinent to the outcomes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="protocol" minOccurs="0" maxOccurs="unbounded" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to a specific published clinical protocol that was followed during this assessment, and/or that provides evidence in support of the diagnosis.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="summary" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A text summary of the investigations and the diagnosis.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="finding" type="ClinicalImpression.Finding" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Specific findings or diagnoses that were considered likely or relevant to ongoing treatment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="prognosisCodeableConcept" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Estimate of likely outcome.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="prognosisReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">RiskAssessment expressing likely outcome.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="supportingInfo" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Information supporting the clinical impression.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Commentary about the impression, typically recorded after the impression itself was made, though supplemental notes by the original author could also appear.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ClinicalImpression.Investigation">
<xs:annotation>
<xs:documentation xml:lang="en">A record of a clinical assessment performed to determine what problem(s) may affect the patient and before planning the treatments or management strategies that are best to manage a patient's condition. Assessments are often 1:1 with a clinical consultation / encounter, but this varies greatly depending on the clinical workflow. This resource is called &quot;ClinicalImpression&quot; rather than &quot;ClinicalAssessment&quot; to avoid confusion with the recording of assessment tools such as Apgar score.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A name/code for the group (&quot;set&quot;) of investigations. Typically, this will be something like &quot;signs&quot;, &quot;symptoms&quot;, &quot;clinical&quot;, &quot;diagnostic&quot;, but the list is not constrained, and others such groups such as (exposure|family|travel|nutritional) history may be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="item" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A record of a specific investigation that was undertaken.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ClinicalImpression.Finding">
<xs:annotation>
<xs:documentation xml:lang="en">A record of a clinical assessment performed to determine what problem(s) may affect the patient and before planning the treatments or management strategies that are best to manage a patient's condition. Assessments are often 1:1 with a clinical consultation / encounter, but this varies greatly depending on the clinical workflow. This resource is called &quot;ClinicalImpression&quot; rather than &quot;ClinicalAssessment&quot; to avoid confusion with the recording of assessment tools such as Apgar score.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="itemCodeableConcept" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Specific text or code for finding or diagnosis, which may include ruled-out or resolved conditions.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="itemReference" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Specific reference for finding or diagnosis, which may include ruled-out or resolved conditions.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basis" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Which investigations support finding or diagnosis.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ClinicalImpressionStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="in-progress">
<xs:annotation>
<xs:documentation xml:lang="en">In Progress</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="completed">
<xs:annotation>
<xs:documentation xml:lang="en">Completed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ClinicalImpressionStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The workflow state of a clinical impression.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ClinicalImpressionStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="CodeSystem" type="CodeSystem">
<xs:annotation>
<xs:documentation xml:lang="en">The CodeSystem resource is used to declare the existence of and describe a code system or code system supplement and its key properties, and optionally define a part or all of its content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="CodeSystem">
<xs:annotation>
<xs:documentation xml:lang="en">The CodeSystem resource is used to declare the existence of and describe a code system or code system supplement and its key properties, and optionally define a part or all of its content.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this code system when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this code system is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the code system is stored on different servers. This is used in [Coding](datatypes.html#Coding).system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this code system when it is represented in other formats, or referenced in a specification, model, design or an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the code system when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the code system author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. This is used in [Coding](datatypes.html#Coding).version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the code system. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the code system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the code system resource was created or revised.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this code system is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the code system was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the code system changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the code system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the code system from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate code system instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the code system is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Explanation of why this code system is needed and why it has been designed as it has.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the code system and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the code system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="caseSensitive" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">If code comparison is case sensitive when codes within this system are compared to each other.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="valueSet" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">Canonical reference to the value set that contains the entire code system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="hierarchyMeaning" minOccurs="0" maxOccurs="1" type="CodeSystemHierarchyMeaning">
<xs:annotation>
<xs:documentation xml:lang="en">The meaning of the hierarchy of concepts as represented in this resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="compositional" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">The code system defines a compositional (post-coordination) grammar.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="versionNeeded" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">This flag is used to signify that the code system does not commit to concept permanence across versions. If true, a version must be specified when referencing this code system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="content" minOccurs="1" maxOccurs="1" type="CodeSystemContentMode">
<xs:annotation>
<xs:documentation xml:lang="en">The extent of the content of the code system (the concepts and codes it defines) are represented in this resource instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="supplements" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">The canonical URL of the code system that this code system supplement is adding designations and properties to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="count" minOccurs="0" maxOccurs="1" type="unsignedInt">
<xs:annotation>
<xs:documentation xml:lang="en">The total number of concepts defined by the code system. Where the code system has a compositional grammar, the basis of this count is defined by the system steward.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="filter" type="CodeSystem.Filter" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A filter that can be used in a value set compose statement when selecting concepts using a filter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="property" type="CodeSystem.Property" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A property defines an additional slot through which additional information can be provided about a concept.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="concept" type="CodeSystem.Concept" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Concepts that are in the code system. The concept definitions are inherently hierarchical, but the definitions must be consulted to determine what the meanings of the hierarchical relationships are.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CodeSystem.Filter">
<xs:annotation>
<xs:documentation xml:lang="en">The CodeSystem resource is used to declare the existence of and describe a code system or code system supplement and its key properties, and optionally define a part or all of its content.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The code that identifies this filter when it is used as a filter in [[[ValueSet]]].compose.include.filter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A description of how or why the filter is used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="operator" minOccurs="1" maxOccurs="unbounded" type="FilterOperator">
<xs:annotation>
<xs:documentation xml:lang="en">A list of operators that can be used with the filter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="value" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A description of what the value for the filter should be.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CodeSystem.Property">
<xs:annotation>
<xs:documentation xml:lang="en">The CodeSystem resource is used to declare the existence of and describe a code system or code system supplement and its key properties, and optionally define a part or all of its content.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">A code that is used to identify the property. The code is used internally (in CodeSystem.concept.property.code) and also externally, such as in property filters.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="uri" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to the formal meaning of the property. One possible source of meaning is the [Concept Properties](codesystem-concept-properties.html) code system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A description of the property- why it is defined, and how its value might be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="PropertyType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of the property value. Properties of type &quot;code&quot; contain a code defined by the code system (e.g. a reference to another defined concept).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CodeSystem.Concept">
<xs:annotation>
<xs:documentation xml:lang="en">The CodeSystem resource is used to declare the existence of and describe a code system or code system supplement and its key properties, and optionally define a part or all of its content.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">A code - a text symbol - that uniquely identifies the concept within the code system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="display" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A human readable string that is the recommended default way to present this concept to a user.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="definition" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The formal definition of the concept. The code system resource does not make formal definitions required, because of the prevalence of legacy systems. However, they are highly recommended, as without them there is no formal meaning associated with the concept.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="designation" type="CodeSystem.Designation" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Additional representations for the concept - other languages, aliases, specialized purposes, used for particular purposes, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="property" type="CodeSystem.Property1" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A property value for this concept.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="concept" type="CodeSystem.Concept" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Defines children of a concept to produce a hierarchy of concepts. The nature of the relationships is variable (is-a/contains/categorizes) - see hierarchyMeaning.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CodeSystem.Designation">
<xs:annotation>
<xs:documentation xml:lang="en">The CodeSystem resource is used to declare the existence of and describe a code system or code system supplement and its key properties, and optionally define a part or all of its content.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="language" minOccurs="0" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The language this designation is defined for.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="use" minOccurs="0" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">A code that details how this designation would be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="value" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The text value for this designation.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CodeSystem.Property1">
<xs:annotation>
<xs:documentation xml:lang="en">The CodeSystem resource is used to declare the existence of and describe a code system or code system supplement and its key properties, and optionally define a part or all of its content.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">A code that is a reference to CodeSystem.property.code.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The value of this property.</xs:documentation>
</xs:annotation>
<xs:element name="valueCode" type="code"/>
<xs:element name="valueCoding" type="Coding"/>
<xs:element name="valueString" type="string"/>
<xs:element name="valueInteger" type="integer"/>
<xs:element name="valueBoolean" type="boolean"/>
<xs:element name="valueDateTime" type="dateTime"/>
<xs:element name="valueDecimal" type="decimal"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="FilterOperator-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="=">
<xs:annotation>
<xs:documentation xml:lang="en">Equals</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="is-a">
<xs:annotation>
<xs:documentation xml:lang="en">Is A (by subsumption)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="descendent-of">
<xs:annotation>
<xs:documentation xml:lang="en">Descendent Of (by subsumption)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="is-not-a">
<xs:annotation>
<xs:documentation xml:lang="en">Not (Is A) (by subsumption)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="regex">
<xs:annotation>
<xs:documentation xml:lang="en">Regular Expression</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="in">
<xs:annotation>
<xs:documentation xml:lang="en">In Set</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="not-in">
<xs:annotation>
<xs:documentation xml:lang="en">Not in Set</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="generalizes">
<xs:annotation>
<xs:documentation xml:lang="en">Generalizes (by Subsumption)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="exists">
<xs:annotation>
<xs:documentation xml:lang="en">Exists</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="FilterOperator">
<xs:annotation>
<xs:documentation xml:lang="en">The kind of operation to perform as a part of a property based filter.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="FilterOperator-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="PropertyType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="code">
<xs:annotation>
<xs:documentation xml:lang="en">code (internal reference)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">Coding (external reference)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="string">
<xs:annotation>
<xs:documentation xml:lang="en">string</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="integer">
<xs:annotation>
<xs:documentation xml:lang="en">integer</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">boolean</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">dateTime</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">decimal</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="PropertyType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of a property value.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="PropertyType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="CodeSystemHierarchyMeaning-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="grouped-by">
<xs:annotation>
<xs:documentation xml:lang="en">Grouped By</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="is-a">
<xs:annotation>
<xs:documentation xml:lang="en">Is-A</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="part-of">
<xs:annotation>
<xs:documentation xml:lang="en">Part Of</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="classified-with">
<xs:annotation>
<xs:documentation xml:lang="en">Classified With</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="CodeSystemHierarchyMeaning">
<xs:annotation>
<xs:documentation xml:lang="en">The meaning of the hierarchy of concepts in a code system.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="CodeSystemHierarchyMeaning-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="CodeSystemContentMode-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="not-present">
<xs:annotation>
<xs:documentation xml:lang="en">Not Present</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="example">
<xs:annotation>
<xs:documentation xml:lang="en">Example</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="fragment">
<xs:annotation>
<xs:documentation xml:lang="en">Fragment</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="complete">
<xs:annotation>
<xs:documentation xml:lang="en">Complete</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="supplement">
<xs:annotation>
<xs:documentation xml:lang="en">Supplement</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="CodeSystemContentMode">
<xs:annotation>
<xs:documentation xml:lang="en">The extent of the content of the code system (the concepts and codes it defines) are represented in a code system resource.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="CodeSystemContentMode-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Communication" type="Communication">
<xs:annotation>
<xs:documentation xml:lang="en">An occurrence of information being transmitted; e.g. an alert that was sent to a responsible provider, a public health agency that was notified about a reportable condition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Communication">
<xs:annotation>
<xs:documentation xml:lang="en">An occurrence of information being transmitted; e.g. an alert that was sent to a responsible provider, a public health agency that was notified about a reportable condition.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business identifiers assigned to this communication by the performer or other systems which remain constant as the resource is updated and propagates from server to server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesCanonical" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to a FHIR-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Communication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesUri" minOccurs="0" maxOccurs="unbounded" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to an externally maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Communication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basedOn" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">An order, proposal or plan fulfilled in whole or in part by this Communication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partOf" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Part of this action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="inResponseTo" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Prior communication that this communication is in response to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="EventStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the transmission.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="statusReason" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Captures the reason for the current state of the Communication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of message conveyed such as alert, notification, reminder, instruction, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priority" minOccurs="0" maxOccurs="1" type="RequestPriority">
<xs:annotation>
<xs:documentation xml:lang="en">Characterizes how quickly the planned or in progress communication must be addressed. Includes concepts such as stat, urgent, routine.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="medium" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A channel that was used for this communication (e.g. email, fax).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The patient or group that was the focus of this communication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="topic" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Description of the purpose/content, similar to a subject line in an email.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="about" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Other resources that pertain to this communication and to which this communication should be associated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The Encounter during which this Communication was created or to which the creation of this record is tightly associated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sent" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The time when this communication was sent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="received" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The time when this communication arrived at the destination.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="recipient" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The entity (e.g. person, organization, clinical information system, care team or device) which was the target of the communication. If receipts need to be tracked by an individual, a separate resource instance will need to be created for each recipient. Multiple recipient communications are intended where either receipts are not tracked (e.g. a mass mail-out) or a receipt is captured in aggregate (all emails confirmed received by a particular time).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sender" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The entity (e.g. person, organization, clinical information system, or device) which was the source of the communication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The reason or justification for the communication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates another resource whose existence justifies this communication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="payload" type="Communication.Payload" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Text, attachment(s), or resource(s) that was communicated to the recipient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Additional notes or commentary about the communication by the sender, receiver or other interested parties.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Communication.Payload">
<xs:annotation>
<xs:documentation xml:lang="en">An occurrence of information being transmitted; e.g. an alert that was sent to a responsible provider, a public health agency that was notified about a reportable condition.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">A communicated content (or for multi-part communications, one portion of the communication).</xs:documentation>
</xs:annotation>
<xs:element name="contentString" type="string"/>
<xs:element name="contentAttachment" type="Attachment"/>
<xs:element name="contentReference" type="Reference"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="EventStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="preparation">
<xs:annotation>
<xs:documentation xml:lang="en">Preparation</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="in-progress">
<xs:annotation>
<xs:documentation xml:lang="en">In Progress</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="not-done">
<xs:annotation>
<xs:documentation xml:lang="en">Not Done</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="on-hold">
<xs:annotation>
<xs:documentation xml:lang="en">On Hold</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="stopped">
<xs:annotation>
<xs:documentation xml:lang="en">Stopped</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="completed">
<xs:annotation>
<xs:documentation xml:lang="en">Completed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unknown">
<xs:annotation>
<xs:documentation xml:lang="en">Unknown</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="EventStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the communication.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="EventStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="CommunicationRequest" type="CommunicationRequest">
<xs:annotation>
<xs:documentation xml:lang="en">A request to convey information; e.g. the CDS system proposes that an alert be sent to a responsible provider, the CDS system proposes that the public health agency be notified about a reportable condition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="CommunicationRequest">
<xs:annotation>
<xs:documentation xml:lang="en">A request to convey information; e.g. the CDS system proposes that an alert be sent to a responsible provider, the CDS system proposes that the public health agency be notified about a reportable condition.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business identifiers assigned to this communication request by the performer or other systems which remain constant as the resource is updated and propagates from server to server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basedOn" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A plan or proposal that is fulfilled in whole or in part by this request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="replaces" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Completed or terminated request(s) whose function is taken by this new request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="groupIdentifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A shared identifier common to all requests that were authorized more or less simultaneously by a single author, representing the identifier of the requisition, prescription or similar form.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="RequestStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the proposal or order.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="statusReason" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Captures the reason for the current state of the CommunicationRequest.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of message to be sent such as alert, notification, reminder, instruction, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priority" minOccurs="0" maxOccurs="1" type="RequestPriority">
<xs:annotation>
<xs:documentation xml:lang="en">Characterizes how quickly the proposed act must be initiated. Includes concepts such as stat, urgent, routine.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="doNotPerform" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">If true indicates that the CommunicationRequest is asking for the specified action to *not* occur.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="medium" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A channel that was used for this communication (e.g. email, fax).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The patient or group that is the focus of this communication request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="about" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Other resources that pertain to this communication request and to which this communication request should be associated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The Encounter during which this CommunicationRequest was created or to which the creation of this record is tightly associated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="payload" type="CommunicationRequest.Payload" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Text, attachment(s), or resource(s) to be communicated to the recipient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The time when this communication is to occur.</xs:documentation>
</xs:annotation>
<xs:element name="occurrenceDateTime" type="dateTime"/>
<xs:element name="occurrencePeriod" type="Period"/>
</xs:choice>
<xs:element name="authoredOn" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">For draft requests, indicates the date of initial creation. For requests with other statuses, indicates the date of activation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requester" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The device, individual, or organization who initiated the request and has responsibility for its activation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="recipient" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The entity (e.g. person, organization, clinical information system, device, group, or care team) which is the intended target of the communication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sender" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The entity (e.g. person, organization, clinical information system, or device) which is to be the source of the communication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes why the request is being made in coded or textual form.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates another resource whose existence justifies this request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Comments made about the request by the requester, sender, recipient, subject or other participants.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CommunicationRequest.Payload">
<xs:annotation>
<xs:documentation xml:lang="en">A request to convey information; e.g. the CDS system proposes that an alert be sent to a responsible provider, the CDS system proposes that the public health agency be notified about a reportable condition.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The communicated content (or for multi-part communications, one portion of the communication).</xs:documentation>
</xs:annotation>
<xs:element name="contentString" type="string"/>
<xs:element name="contentAttachment" type="Attachment"/>
<xs:element name="contentReference" type="Reference"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="CompartmentDefinition" type="CompartmentDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">A compartment definition that defines how resources are accessed on a server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="CompartmentDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">A compartment definition that defines how resources are accessed on a server.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="1" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this compartment definition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this compartment definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the compartment definition is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the compartment definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the compartment definition author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the compartment definition. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this compartment definition. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this compartment definition is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the compartment definition was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the compartment definition changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the compartment definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the compartment definition from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate compartment definition instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Explanation of why this compartment definition is needed and why it has been designed as it has.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CompartmentType">
<xs:annotation>
<xs:documentation xml:lang="en">Which compartment this definition describes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="search" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the search syntax is supported,.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="resource" type="CompartmentDefinition.Resource" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Information about how a resource is related to the compartment.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CompartmentDefinition.Resource">
<xs:annotation>
<xs:documentation xml:lang="en">A compartment definition that defines how resources are accessed on a server.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The name of a resource supported by the server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="param" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of a search parameter that represents the link to the compartment. More than one may be listed because a resource may be linked to a compartment in more than one way,.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="documentation" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Additional documentation about the resource and compartment.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="CompartmentType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="Patient">
<xs:annotation>
<xs:documentation xml:lang="en">Patient</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Encounter">
<xs:annotation>
<xs:documentation xml:lang="en">Encounter</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="RelatedPerson">
<xs:annotation>
<xs:documentation xml:lang="en">RelatedPerson</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Practitioner">
<xs:annotation>
<xs:documentation xml:lang="en">Practitioner</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Device">
<xs:annotation>
<xs:documentation xml:lang="en">Device</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="CompartmentType">
<xs:annotation>
<xs:documentation xml:lang="en">Which type a compartment definition describes.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="CompartmentType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Composition" type="Composition">
<xs:annotation>
<xs:documentation xml:lang="en">A set of healthcare-related information that is assembled together into a single logical package that provides a single coherent statement of meaning, establishes its own context and that has clinical attestation with regard to who is making the statement. A Composition defines the structure and narrative content necessary for a document. However, a Composition alone does not constitute a document. Rather, the Composition must be the first entry in a Bundle where Bundle.type=document, and any other resources referenced from Composition must be included as subsequent entries in the Bundle (for example Patient, Practitioner, Encounter, etc.).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Composition">
<xs:annotation>
<xs:documentation xml:lang="en">A set of healthcare-related information that is assembled together into a single logical package that provides a single coherent statement of meaning, establishes its own context and that has clinical attestation with regard to who is making the statement. A Composition defines the structure and narrative content necessary for a document. However, a Composition alone does not constitute a document. Rather, the Composition must be the first entry in a Bundle where Bundle.type=document, and any other resources referenced from Composition must be included as subsequent entries in the Bundle (for example Patient, Practitioner, Encounter, etc.).</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A version-independent identifier for the Composition. This identifier stays constant as the composition is changed over time.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="CompositionStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The workflow/clinical status of this composition. The status is a marker for the clinical standing of the document.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies the particular kind of composition (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the composition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A categorization for the type of the composition - helps for indexing and searching. This may be implied by or derived from the code specified in the Composition Type.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Who or what the composition is about. The composition can be about a person, (patient or healthcare practitioner), a device (e.g. a machine) or even a group of subjects (such as a document about a herd of livestock, or a set of patients that share a common exposure).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the clinical encounter or type of care this documentation is associated with.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="1" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The composition editing time, when the composition was last logically changed by the author.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="1" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies who is responsible for the information in the composition, not necessarily who typed it in.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Official human-readable label for the composition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="confidentiality" minOccurs="0" maxOccurs="1" type="vConfidentialityClassification">
<xs:annotation>
<xs:documentation xml:lang="en">The code specifying the level of confidentiality of the Composition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="attester" type="Composition.Attester" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A participant who has attested to the accuracy of the composition/document.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="custodian" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the organization or group who is responsible for ongoing maintenance of and access to the composition/document information.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relatesTo" type="Composition.RelatesTo" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Relationships that this composition has with other compositions or documents that already exist.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="event" type="Composition.Event" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The clinical service, such as a colonoscopy or an appendectomy, being documented.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="section" type="Composition.Section" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The root of the sections that make up the composition.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Composition.Attester">
<xs:annotation>
<xs:documentation xml:lang="en">A set of healthcare-related information that is assembled together into a single logical package that provides a single coherent statement of meaning, establishes its own context and that has clinical attestation with regard to who is making the statement. A Composition defines the structure and narrative content necessary for a document. However, a Composition alone does not constitute a document. Rather, the Composition must be the first entry in a Bundle where Bundle.type=document, and any other resources referenced from Composition must be included as subsequent entries in the Bundle (for example Patient, Practitioner, Encounter, etc.).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="mode" minOccurs="1" maxOccurs="1" type="CompositionAttestationMode">
<xs:annotation>
<xs:documentation xml:lang="en">The type of attestation the authenticator offers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="time" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">When the composition was attested by the party.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="party" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Who attested the composition in the specified way.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Composition.RelatesTo">
<xs:annotation>
<xs:documentation xml:lang="en">A set of healthcare-related information that is assembled together into a single logical package that provides a single coherent statement of meaning, establishes its own context and that has clinical attestation with regard to who is making the statement. A Composition defines the structure and narrative content necessary for a document. However, a Composition alone does not constitute a document. Rather, the Composition must be the first entry in a Bundle where Bundle.type=document, and any other resources referenced from Composition must be included as subsequent entries in the Bundle (for example Patient, Practitioner, Encounter, etc.).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="DocumentRelationshipType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of relationship that this composition has with anther composition or document.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The target composition/document of this relationship.</xs:documentation>
</xs:annotation>
<xs:element name="targetIdentifier" type="Identifier"/>
<xs:element name="targetReference" type="Reference"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Composition.Event">
<xs:annotation>
<xs:documentation xml:lang="en">A set of healthcare-related information that is assembled together into a single logical package that provides a single coherent statement of meaning, establishes its own context and that has clinical attestation with regard to who is making the statement. A Composition defines the structure and narrative content necessary for a document. However, a Composition alone does not constitute a document. Rather, the Composition must be the first entry in a Bundle where Bundle.type=document, and any other resources referenced from Composition must be included as subsequent entries in the Bundle (for example Patient, Practitioner, Encounter, etc.).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">This list of codes represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the typeCode, such as a &quot;History and Physical Report&quot; in which the procedure being documented is necessarily a &quot;History and Physical&quot; act.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period of time covered by the documentation. There is no assertion that the documentation is a complete representation for this period, only that it documents events during this time.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detail" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The description and/or reference of the event(s) being documented. For example, this could be used to document such a colonoscopy or an appendectomy.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Composition.Section">
<xs:annotation>
<xs:documentation xml:lang="en">A set of healthcare-related information that is assembled together into a single logical package that provides a single coherent statement of meaning, establishes its own context and that has clinical attestation with regard to who is making the statement. A Composition defines the structure and narrative content necessary for a document. However, a Composition alone does not constitute a document. Rather, the Composition must be the first entry in a Bundle where Bundle.type=document, and any other resources referenced from Composition must be included as subsequent entries in the Bundle (for example Patient, Practitioner, Encounter, etc.).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The label for this particular section. This will be part of the rendered content for the document, and is often used to build a table of contents.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code identifying the kind of content contained within the section. This must be consistent with the section title.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies who is responsible for the information in this section, not necessarily who typed it in.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="focus" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The actual focus of the section when it is not the subject of the composition, but instead represents something or someone associated with the subject such as (for a patient subject) a spouse, parent, fetus, or donor. If not focus is specified, the focus is assumed to be focus of the parent section, or, for a section in the Composition itself, the subject of the composition. Sections with a focus SHALL only include resources where the logical subject (patient, subject, focus, etc.) matches the section focus, or the resources have no logical subject (few resources).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="text" minOccurs="0" maxOccurs="1" type="Narrative">
<xs:annotation>
<xs:documentation xml:lang="en">A human-readable narrative that contains the attested content of the section, used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it &quot;clinically safe&quot; for a human to just read the narrative.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="mode" minOccurs="0" maxOccurs="1" type="ListMode">
<xs:annotation>
<xs:documentation xml:lang="en">How the entry list was prepared - whether it is a working list that is suitable for being maintained on an ongoing basis, or if it represents a snapshot of a list of items from another source, or whether it is a prepared list where items may be marked as added, modified or deleted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="orderedBy" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies the order applied to the items in the section entries.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="entry" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to the actual resource from which the narrative in the section is derived.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="emptyReason" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">If the section is empty, why the list is empty. An empty section typically has some text explaining the empty reason.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="section" type="Composition.Section" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A nested sub-section within this section.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="vConfidentialityClassification-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="U">
<xs:annotation>
<xs:documentation xml:lang="en">unrestricted</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="L">
<xs:annotation>
<xs:documentation xml:lang="en">low</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="M">
<xs:annotation>
<xs:documentation xml:lang="en">moderate</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="N">
<xs:annotation>
<xs:documentation xml:lang="en">normal</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="R">
<xs:annotation>
<xs:documentation xml:lang="en">restricted</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="V">
<xs:annotation>
<xs:documentation xml:lang="en">very restricted</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="vConfidentialityClassification">
<xs:annotation>
<xs:documentation xml:lang="en">Codes specifying the level of confidentiality of the composition.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="vConfidentialityClassification-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="CompositionStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="preliminary">
<xs:annotation>
<xs:documentation xml:lang="en">Preliminary</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="final">
<xs:annotation>
<xs:documentation xml:lang="en">Final</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="amended">
<xs:annotation>
<xs:documentation xml:lang="en">Amended</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="CompositionStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The workflow/clinical status of the composition.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="CompositionStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="DocumentRelationshipType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="replaces">
<xs:annotation>
<xs:documentation xml:lang="en">Replaces</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="transforms">
<xs:annotation>
<xs:documentation xml:lang="en">Transforms</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="signs">
<xs:annotation>
<xs:documentation xml:lang="en">Signs</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="appends">
<xs:annotation>
<xs:documentation xml:lang="en">Appends</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="DocumentRelationshipType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of relationship between documents.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="DocumentRelationshipType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="CompositionAttestationMode-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="personal">
<xs:annotation>
<xs:documentation xml:lang="en">Personal</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="professional">
<xs:annotation>
<xs:documentation xml:lang="en">Professional</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="legal">
<xs:annotation>
<xs:documentation xml:lang="en">Legal</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="official">
<xs:annotation>
<xs:documentation xml:lang="en">Official</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="CompositionAttestationMode">
<xs:annotation>
<xs:documentation xml:lang="en">The way in which a person authenticated a composition.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="CompositionAttestationMode-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ListMode-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="working">
<xs:annotation>
<xs:documentation xml:lang="en">Working List</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="snapshot">
<xs:annotation>
<xs:documentation xml:lang="en">Snapshot List</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="changes">
<xs:annotation>
<xs:documentation xml:lang="en">Change List</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ListMode">
<xs:annotation>
<xs:documentation xml:lang="en">The processing mode that applies to this section.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ListMode-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="ConceptMap" type="ConceptMap">
<xs:annotation>
<xs:documentation xml:lang="en">A statement of relationships from one set of concepts to one or more other concepts - either concepts in code systems, or data element/data element concepts, or classes in class models.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ConceptMap">
<xs:annotation>
<xs:documentation xml:lang="en">A statement of relationships from one set of concepts to one or more other concepts - either concepts in code systems, or data element/data element concepts, or classes in class models.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this concept map when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this concept map is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the concept map is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this concept map when it is represented in other formats, or referenced in a specification, model, design or an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the concept map when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the concept map author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the concept map. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the concept map.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this concept map. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this concept map is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the concept map was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the concept map changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the concept map.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the concept map from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate concept map instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the concept map is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Explanation of why this concept map is needed and why it has been designed as it has.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the concept map and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the concept map.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Identifier for the source value set that contains the concepts that are being mapped and provides context for the mappings.</xs:documentation>
</xs:annotation>
<xs:element name="sourceUri" type="uri"/>
<xs:element name="sourceCanonical" type="canonical"/>
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The target value set provides context for the mappings. Note that the mapping is made between concepts, not between value sets, but the value set provides important context about how the concept mapping choices are made.</xs:documentation>
</xs:annotation>
<xs:element name="targetUri" type="uri"/>
<xs:element name="targetCanonical" type="canonical"/>
</xs:choice>
<xs:element name="group" type="ConceptMap.Group" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A group of mappings that all have the same source and target system.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ConceptMap.Group">
<xs:annotation>
<xs:documentation xml:lang="en">A statement of relationships from one set of concepts to one or more other concepts - either concepts in code systems, or data element/data element concepts, or classes in class models.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="source" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that identifies the source system where the concepts to be mapped are defined.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sourceVersion" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The specific version of the code system, as determined by the code system authority.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="target" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that identifies the target system that the concepts will be mapped to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="targetVersion" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The specific version of the code system, as determined by the code system authority.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="element" type="ConceptMap.Element" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Mappings for an individual concept in the source to one or more concepts in the target.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unmapped" type="ConceptMap.Unmapped" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">What to do when there is no mapping for the source concept. &quot;Unmapped&quot; does not include codes that are unmatched, and the unmapped element is ignored in a code is specified to have equivalence = unmatched.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ConceptMap.Element">
<xs:annotation>
<xs:documentation xml:lang="en">A statement of relationships from one set of concepts to one or more other concepts - either concepts in code systems, or data element/data element concepts, or classes in class models.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">Identity (code or path) or the element/item being mapped.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="display" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The display for the code. The display is only provided to help editors when editing the concept map.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="target" type="ConceptMap.Target" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A concept from the target value set that this concept maps to.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ConceptMap.Target">
<xs:annotation>
<xs:documentation xml:lang="en">A statement of relationships from one set of concepts to one or more other concepts - either concepts in code systems, or data element/data element concepts, or classes in class models.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">Identity (code or path) or the element/item that the map refers to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="display" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The display for the code. The display is only provided to help editors when editing the concept map.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="equivalence" minOccurs="1" maxOccurs="1" type="ConceptMapEquivalence">
<xs:annotation>
<xs:documentation xml:lang="en">The equivalence between the source and target concepts (counting for the dependencies and products). The equivalence is read from target to source (e.g. the target is 'wider' than the source).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comment" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A description of status/issues in mapping that conveys additional information not represented in the structured data.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dependsOn" type="ConceptMap.DependsOn" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A set of additional dependencies for this mapping to hold. This mapping is only applicable if the specified element can be resolved, and it has the specified value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="product" type="ConceptMap.DependsOn" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A set of additional outcomes from this mapping to other elements. To properly execute this mapping, the specified element must be mapped to some data element or source that is in context. The mapping may still be useful without a place for the additional data elements, but the equivalence cannot be relied on.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ConceptMap.DependsOn">
<xs:annotation>
<xs:documentation xml:lang="en">A statement of relationships from one set of concepts to one or more other concepts - either concepts in code systems, or data element/data element concepts, or classes in class models.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="property" minOccurs="1" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to an element that holds a coded value that corresponds to a code system property. The idea is that the information model carries an element somewhere that is labeled to correspond with a code system property.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="system" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that identifies the code system of the dependency code (if the source/dependency is a value set that crosses code systems).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="value" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Identity (code or path) or the element/item/ValueSet/text that the map depends on / refers to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="display" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The display for the code. The display is only provided to help editors when editing the concept map.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ConceptMap.Unmapped">
<xs:annotation>
<xs:documentation xml:lang="en">A statement of relationships from one set of concepts to one or more other concepts - either concepts in code systems, or data element/data element concepts, or classes in class models.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="mode" minOccurs="1" maxOccurs="1" type="ConceptMapGroupUnmappedMode">
<xs:annotation>
<xs:documentation xml:lang="en">Defines which action to take if there is no match for the source concept in the target system designated for the group. One of 3 actions are possible: use the unmapped code (this is useful when doing a mapping between versions, and only a few codes have changed), use a fixed code (a default code), or alternatively, a reference to a different concept map can be provided (by canonical URL).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The fixed code to use when the mode = 'fixed' - all unmapped codes are mapped to a single fixed code.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="display" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The display for the code. The display is only provided to help editors when editing the concept map.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">The canonical reference to an additional ConceptMap resource instance to use for mapping if this ConceptMap resource contains no matching mapping for the source concept.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ConceptMapGroupUnmappedMode-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="provided">
<xs:annotation>
<xs:documentation xml:lang="en">Provided Code</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="fixed">
<xs:annotation>
<xs:documentation xml:lang="en">Fixed Code</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="other-map">
<xs:annotation>
<xs:documentation xml:lang="en">Other Map</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ConceptMapGroupUnmappedMode">
<xs:annotation>
<xs:documentation xml:lang="en">Defines which action to take if there is no match in the group.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ConceptMapGroupUnmappedMode-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Condition" type="Condition">
<xs:annotation>
<xs:documentation xml:lang="en">A clinical condition, problem, diagnosis, or other event, situation, issue, or clinical concept that has risen to a level of concern.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Condition">
<xs:annotation>
<xs:documentation xml:lang="en">A clinical condition, problem, diagnosis, or other event, situation, issue, or clinical concept that has risen to a level of concern.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business identifiers assigned to this condition by the performer or other systems which remain constant as the resource is updated and propagates from server to server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="clinicalStatus" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The clinical status of the condition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="verificationStatus" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The verification status to support the clinical status of the condition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A category assigned to the condition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="severity" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A subjective assessment of the severity of the condition as evaluated by the clinician.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identification of the condition, problem or diagnosis.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="bodySite" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The anatomical location where this condition manifests itself.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the patient or group who the condition record is associated with.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The Encounter during which this Condition was created or to which the creation of this record is tightly associated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Estimated or actual date or date-time the condition began, in the opinion of the clinician.</xs:documentation>
</xs:annotation>
<xs:element name="onsetDateTime" type="dateTime"/>
<xs:element name="onsetAge" type="Age"/>
<xs:element name="onsetPeriod" type="Period"/>
<xs:element name="onsetRange" type="Range"/>
<xs:element name="onsetString" type="string"/>
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The date or estimated date that the condition resolved or went into remission. This is called &quot;abatement&quot; because of the many overloaded connotations associated with &quot;remission&quot; or &quot;resolution&quot; - Conditions are never really resolved, but they can abate.</xs:documentation>
</xs:annotation>
<xs:element name="abatementDateTime" type="dateTime"/>
<xs:element name="abatementAge" type="Age"/>
<xs:element name="abatementPeriod" type="Period"/>
<xs:element name="abatementRange" type="Range"/>
<xs:element name="abatementString" type="string"/>
</xs:choice>
<xs:element name="recordedDate" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The recordedDate represents when this particular Condition record was created in the system, which is often a system-generated date.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="recorder" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Individual who recorded the record and takes responsibility for its content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="asserter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Individual who is making the condition statement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="stage" type="Condition.Stage" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Clinical stage or grade of a condition. May include formal severity assessments.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="evidence" type="Condition.Evidence" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Supporting evidence / manifestations that are the basis of the Condition's verification status, such as evidence that confirmed or refuted the condition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Additional information about the Condition. This is a general notes/comments entry for description of the Condition, its diagnosis and prognosis.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Condition.Stage">
<xs:annotation>
<xs:documentation xml:lang="en">A clinical condition, problem, diagnosis, or other event, situation, issue, or clinical concept that has risen to a level of concern.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="summary" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A simple summary of the stage such as &quot;Stage 3&quot;. The determination of the stage is disease-specific.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="assessment" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to a formal record of the evidence on which the staging assessment is based.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The kind of staging, such as pathological or clinical staging.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Condition.Evidence">
<xs:annotation>
<xs:documentation xml:lang="en">A clinical condition, problem, diagnosis, or other event, situation, issue, or clinical concept that has risen to a level of concern.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A manifestation or symptom that led to the recording of this condition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detail" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Links to other relevant information, including pathology reports.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Consent" type="Consent">
<xs:annotation>
<xs:documentation xml:lang="en">A record of a healthcare consumers choices, which permits or denies identified recipient(s) or recipient role(s) to perform one or more actions within a given policy context, for specific purposes and periods of time.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Consent">
<xs:annotation>
<xs:documentation xml:lang="en">A record of a healthcare consumers choices, which permits or denies identified recipient(s) or recipient role(s) to perform one or more actions within a given policy context, for specific purposes and periods of time.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Unique identifier for this copy of the Consent Statement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="ConsentState">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the current state of this consent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="scope" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A selector of the type of consent being presented: ADR, Privacy, Treatment, Research. This list is now extensible.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="1" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A classification of the type of consents found in the statement. This element supports indexing and retrieval of consent statements.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patient" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The patient/healthcare consumer to whom this consent applies.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dateTime" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">When this Consent was issued / created / indexed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performer" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Either the Grantor, which is the entity responsible for granting the rights listed in a Consent Directive or the Grantee, which is the entity responsible for complying with the Consent Directive, including any obligations or limitations on authorizations and enforcement of prohibitions.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="organization" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The organization that manages the consent, and the framework within which it is executed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The source on which this consent statement is based. The source might be a scanned original paper form, or a reference to a consent that links back to such a source, a reference to a document repository (e.g. XDS) that stores the original consent document.</xs:documentation>
</xs:annotation>
<xs:element name="sourceAttachment" type="Attachment"/>
<xs:element name="sourceReference" type="Reference"/>
</xs:choice>
<xs:element name="policy" type="Consent.Policy" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The references to the policies that are included in this consent scope. Policies may be organizational, but are often defined jurisdictionally, or in law.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="policyRule" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to the specific base computable regulation or policy.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="verification" type="Consent.Verification" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Whether a treatment instruction (e.g. artificial respiration yes or no) was verified with the patient, his/her family or another authorized person.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="provision" type="Consent.Provision" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">An exception to the base policy of this consent. An exception can be an addition or removal of access permissions.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Consent.Policy">
<xs:annotation>
<xs:documentation xml:lang="en">A record of a healthcare consumers choices, which permits or denies identified recipient(s) or recipient role(s) to perform one or more actions within a given policy context, for specific purposes and periods of time.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="authority" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">Entity or Organization having regulatory jurisdiction or accountability for enforcing policies pertaining to Consent Directives.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="uri" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The references to the policies that are included in this consent scope. Policies may be organizational, but are often defined jurisdictionally, or in law.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Consent.Verification">
<xs:annotation>
<xs:documentation xml:lang="en">A record of a healthcare consumers choices, which permits or denies identified recipient(s) or recipient role(s) to perform one or more actions within a given policy context, for specific purposes and periods of time.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="verified" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Has the instruction been verified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="verifiedWith" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Who verified the instruction (Patient, Relative or other Authorized Person).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="verificationDate" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Date verification was collected.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Consent.Provision">
<xs:annotation>
<xs:documentation xml:lang="en">A record of a healthcare consumers choices, which permits or denies identified recipient(s) or recipient role(s) to perform one or more actions within a given policy context, for specific purposes and periods of time.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="ConsentProvisionType">
<xs:annotation>
<xs:documentation xml:lang="en">Action to take - permit or deny - when the rule conditions are met. Not permitted in root rule, required in all nested rules.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The timeframe in this rule is valid.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="actor" type="Consent.Actor" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Who or what is controlled by this rule. Use group to identify a set of actors by some property they share (e.g. 'admitting officers').</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="action" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Actions controlled by this Rule.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="securityLabel" minOccurs="0" maxOccurs="unbounded" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">A security label, comprised of 0..* security label fields (Privacy tags), which define which resources are controlled by this exception.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="unbounded" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">The context of the activities a user is taking - why the user is accessing the data - that are controlled by this rule.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="class" minOccurs="0" maxOccurs="unbounded" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">The class of information covered by this rule. The type can be a FHIR resource type, a profile on a type, or a CDA document, or some other type that indicates what sort of information the consent relates to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">If this code is found in an instance, then the rule applies.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dataPeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">Clinical or Operational Relevant period of time that bounds the data controlled by this rule.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="data" type="Consent.Data" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The resources controlled by this rule if specific resources are referenced.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="provision" type="Consent.Provision" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Rules which provide exceptions to the base rule or subrules.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Consent.Actor">
<xs:annotation>
<xs:documentation xml:lang="en">A record of a healthcare consumers choices, which permits or denies identified recipient(s) or recipient role(s) to perform one or more actions within a given policy context, for specific purposes and periods of time.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="role" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">How the individual is involved in the resources content that is described in the exception.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reference" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The resource that identifies the actor. To identify actors by type, use group to identify a set of actors by some property they share (e.g. 'admitting officers').</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Consent.Data">
<xs:annotation>
<xs:documentation xml:lang="en">A record of a healthcare consumers choices, which permits or denies identified recipient(s) or recipient role(s) to perform one or more actions within a given policy context, for specific purposes and periods of time.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="meaning" minOccurs="1" maxOccurs="1" type="ConsentDataMeaning">
<xs:annotation>
<xs:documentation xml:lang="en">How the resource reference is interpreted when testing consent restrictions.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reference" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a specific resource that defines which resources are covered by this consent.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ConsentProvisionType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="deny">
<xs:annotation>
<xs:documentation xml:lang="en">Opt Out</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="permit">
<xs:annotation>
<xs:documentation xml:lang="en">Opt In</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ConsentProvisionType">
<xs:annotation>
<xs:documentation xml:lang="en">How a rule statement is applied, such as adding additional consent or removing consent.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ConsentProvisionType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ConsentDataMeaning-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="instance">
<xs:annotation>
<xs:documentation xml:lang="en">Instance</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="related">
<xs:annotation>
<xs:documentation xml:lang="en">Related</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="dependents">
<xs:annotation>
<xs:documentation xml:lang="en">Dependents</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="authoredby">
<xs:annotation>
<xs:documentation xml:lang="en">AuthoredBy</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ConsentDataMeaning">
<xs:annotation>
<xs:documentation xml:lang="en">How a resource reference is interpreted when testing consent restrictions.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ConsentDataMeaning-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ConsentState-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="draft">
<xs:annotation>
<xs:documentation xml:lang="en">Pending</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="proposed">
<xs:annotation>
<xs:documentation xml:lang="en">Proposed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="active">
<xs:annotation>
<xs:documentation xml:lang="en">Active</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="rejected">
<xs:annotation>
<xs:documentation xml:lang="en">Rejected</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="inactive">
<xs:annotation>
<xs:documentation xml:lang="en">Inactive</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ConsentState">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the state of the consent.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ConsentState-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Contract" type="Contract">
<xs:annotation>
<xs:documentation xml:lang="en">Legally enforceable, formally recorded unilateral or bilateral directive i.e., a policy or agreement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Contract">
<xs:annotation>
<xs:documentation xml:lang="en">Legally enforceable, formally recorded unilateral or bilateral directive i.e., a policy or agreement.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Unique identifier for this Contract or a derivative that references a Source Contract.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">Canonical identifier for this contract, represented as a URI (globally unique).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">An edition identifier used for business purposes to label business significant variants.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="ContractResourceStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the resource instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="legalState" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Legal states of the formation of a legal instrument, which is a formally executed written document that can be formally attributed to its author, records and formally expresses a legally enforceable act, process, or contractual duty, obligation, or right, and therefore evidences that act, process, or agreement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesCanonical" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to a FHIR-defined Contract Definition that is adhered to in whole or part by this Contract.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesUri" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to an externally maintained definition that is adhered to in whole or in part by this Contract.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contentDerivative" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The minimal content derived from the basal information source at a specific stage in its lifecycle.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="issued" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">When this Contract was issued.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="applies" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">Relevant time or time-period when this Contract is applicable.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expirationType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Event resulting in discontinuation or termination of this Contract instance by one or more parties to the contract.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The target entity impacted by or of interest to parties to the agreement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="authority" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A formally or informally recognized grouping of people, principals, organizations, or jurisdictions formed for the purpose of achieving some form of collective action such as the promulgation, administration and enforcement of contracts and policies.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="domain" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Recognized governance framework or system operating with a circumscribed scope in accordance with specified principles, policies, processes or procedures for managing rights, actions, or behaviors of parties or principals relative to resources.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="site" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Sites in which the contract is complied with, exercised, or in force.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying this Contract definition, derivative, or instance in any legal state. Provides additional information about its content. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for this Contract definition, derivative, or instance in any legal state.t giving additional information about its content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subtitle" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">An explanatory or alternate user-friendly title for this Contract definition, derivative, or instance in any legal state.t giving additional information about its content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="alias" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Alternative representation of the title for this Contract definition, derivative, or instance in any legal state., e.g., a domain specific contract number related to legislation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The individual or organization that authored the Contract definition, derivative, or instance in any legal state.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="scope" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A selector of legal concerns for this Contract definition, derivative, or instance in any legal state.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Narrows the range of legal concerns to focus on the achievement of specific contractual objectives.</xs:documentation>
</xs:annotation>
<xs:element name="topicCodeableConcept" type="CodeableConcept"/>
<xs:element name="topicReference" type="Reference"/>
</xs:choice>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A high-level category for the legal instrument, whether constructed as a Contract definition, derivative, or instance in any legal state. Provides additional information about its content within the context of the Contract's scope to distinguish the kinds of systems that would be interested in the contract.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subType" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Sub-category for the Contract that distinguishes the kinds of systems that would be interested in the Contract within the context of the Contract's scope.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contentDefinition" type="Contract.ContentDefinition" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Precusory content developed with a focus and intent of supporting the formation a Contract instance, which may be associated with and transformable into a Contract.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="term" type="Contract.Term" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">One or more Contract Provisions, which may be related and conveyed as a group, and may contain nested groups.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="supportingInfo" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Information that may be needed by/relevant to the performer in their execution of this term action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relevantHistory" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Links to Provenance records for past versions of this Contract definition, derivative, or instance, which identify key state transitions or updates that are likely to be relevant to a user looking at the current version of the Contract. The Provence.entity indicates the target that was changed in the update. http://build.fhir.org/provenance-definitions.html#Provenance.entity.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="signer" type="Contract.Signer" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Parties with legal standing in the Contract, including the principal parties, the grantor(s) and grantee(s), which are any person or organization bound by the contract, and any ancillary parties, which facilitate the execution of the contract such as a notary or witness.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="friendly" type="Contract.Friendly" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The &quot;patient friendly language&quot; versionof the Contract in whole or in parts. &quot;Patient friendly language&quot; means the representation of the Contract and Contract Provisions in a manner that is readily accessible and understandable by a layperson in accordance with best practices for communication styles that ensure that those agreeing to or signing the Contract understand the roles, actions, obligations, responsibilities, and implication of the agreement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="legal" type="Contract.Legal" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">List of Legal expressions or representations of this Contract.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="rule" type="Contract.Rule" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">List of Computable Policy Rule Language Representations of this Contract.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Legally binding Contract: This is the signed and legally recognized representation of the Contract, which is considered the &quot;source of truth&quot; and which would be the basis for legal action related to enforcement of this Contract.</xs:documentation>
</xs:annotation>
<xs:element name="legallyBindingAttachment" type="Attachment"/>
<xs:element name="legallyBindingReference" type="Reference"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Contract.ContentDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">Legally enforceable, formally recorded unilateral or bilateral directive i.e., a policy or agreement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Precusory content structure and use, i.e., a boilerplate, template, application for a contract such as an insurance policy or benefits under a program, e.g., workers compensation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Detailed Precusory content type.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The individual or organization that published the Contract precursor content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publicationDate" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the contract was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the contract changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publicationStatus" minOccurs="1" maxOccurs="1" type="ContractResourcePublicationStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">amended | appended | cancelled | disputed | entered-in-error | executable | executed | negotiable | offered | policy | rejected | renewed | revoked | resolved | terminated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to Contract precursor content. Copyright statements are generally legal restrictions on the use and publishing of the Contract precursor content.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Contract.Term">
<xs:annotation>
<xs:documentation xml:lang="en">Legally enforceable, formally recorded unilateral or bilateral directive i.e., a policy or agreement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Unique identifier for this particular Contract Provision.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="issued" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">When this Contract Provision was issued.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="applies" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">Relevant time or time-period when this Contract Provision is applicable.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The entity that the term applies to.</xs:documentation>
</xs:annotation>
<xs:element name="topicCodeableConcept" type="CodeableConcept"/>
<xs:element name="topicReference" type="Reference"/>
</xs:choice>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal clause or condition contained within a contract that requires one or both parties to perform a particular requirement by some specified time or prevents one or both parties from performing a particular requirement by some specified time.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A specialized legal clause or condition based on overarching contract type.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="text" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Statement of a provision in a policy or a contract.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="securityLabel" type="Contract.SecurityLabel" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Security labels that protect the handling of information about the term and its elements, which may be specifically identified..</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="offer" type="Contract.Offer" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The matter of concern in the context of this provision of the agrement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="asset" type="Contract.Asset" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Contract Term Asset List.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="action" type="Contract.Action" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">An actor taking a role in an activity for which it can be assigned some degree of responsibility for the activity taking place.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="group" type="Contract.Term" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Nested group of Contract Provisions.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Contract.SecurityLabel">
<xs:annotation>
<xs:documentation xml:lang="en">Legally enforceable, formally recorded unilateral or bilateral directive i.e., a policy or agreement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="number" minOccurs="0" maxOccurs="unbounded" type="unsignedInt">
<xs:annotation>
<xs:documentation xml:lang="en">Number used to link this term or term element to the applicable Security Label.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="classification" minOccurs="1" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">Security label privacy tag that species the level of confidentiality protection required for this term and/or term elements.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="unbounded" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">Security label privacy tag that species the applicable privacy and security policies governing this term and/or term elements.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="control" minOccurs="0" maxOccurs="unbounded" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">Security label privacy tag that species the manner in which term and/or term elements are to be protected.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Contract.Offer">
<xs:annotation>
<xs:documentation xml:lang="en">Legally enforceable, formally recorded unilateral or bilateral directive i.e., a policy or agreement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Unique identifier for this particular Contract Provision.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="party" type="Contract.Party" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Offer Recipient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="topic" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The owner of an asset has the residual control rights over the asset: the right to decide all usages of the asset in any way not inconsistent with a prior contract, custom, or law (Hart, 1995, p. 30).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of Contract Provision such as specific requirements, purposes for actions, obligations, prohibitions, e.g. life time maximum benefit.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="decision" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of choice made by accepting party with respect to an offer made by an offeror/ grantee.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="decisionMode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">How the decision about a Contract was conveyed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="answer" type="Contract.Answer" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Response to offer text.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="text" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Human readable form of this Contract Offer.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="linkId" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The id of the clause or question text of the offer in the referenced questionnaire/response.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="securityLabelNumber" minOccurs="0" maxOccurs="unbounded" type="unsignedInt">
<xs:annotation>
<xs:documentation xml:lang="en">Security labels that protects the offer.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Contract.Party">
<xs:annotation>
<xs:documentation xml:lang="en">Legally enforceable, formally recorded unilateral or bilateral directive i.e., a policy or agreement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="reference" minOccurs="1" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Participant in the offer.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="role" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">How the party participates in the offer.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Contract.Answer">
<xs:annotation>
<xs:documentation xml:lang="en">Legally enforceable, formally recorded unilateral or bilateral directive i.e., a policy or agreement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Response to an offer clause or question text, which enables selection of values to be agreed to, e.g., the period of participation, the date of occupancy of a rental, warrently duration, or whether biospecimen may be used for further research.</xs:documentation>
</xs:annotation>
<xs:element name="valueBoolean" type="boolean"/>
<xs:element name="valueDecimal" type="decimal"/>
<xs:element name="valueInteger" type="integer"/>
<xs:element name="valueDate" type="date"/>
<xs:element name="valueDateTime" type="dateTime"/>
<xs:element name="valueTime" type="time"/>
<xs:element name="valueString" type="string"/>
<xs:element name="valueUri" type="uri"/>
<xs:element name="valueAttachment" type="Attachment"/>
<xs:element name="valueCoding" type="Coding"/>
<xs:element name="valueQuantity" type="Quantity"/>
<xs:element name="valueReference" type="Reference"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Contract.Asset">
<xs:annotation>
<xs:documentation xml:lang="en">Legally enforceable, formally recorded unilateral or bilateral directive i.e., a policy or agreement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="scope" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Differentiates the kind of the asset .</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Target entity type about which the term may be concerned.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="typeReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Associated entities.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subtype" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">May be a subtype or part of an offered asset.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relationship" minOccurs="0" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies the applicability of the term to an asset resource instance, and instances it refers to orinstances that refer to it, and/or are owned by the offeree.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="context" type="Contract.Context" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Circumstance of the asset.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="condition" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Description of the quality and completeness of the asset that imay be a factor in its valuation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="periodType" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of Asset availability for use or ownership.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="unbounded" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">Asset relevant contractual time period.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="usePeriod" minOccurs="0" maxOccurs="unbounded" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">Time period of asset use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="text" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Clause or question text (Prose Object) concerning the asset in a linked form, such as a QuestionnaireResponse used in the formation of the contract.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="linkId" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Id [identifier??] of the clause or question text about the asset in the referenced form or QuestionnaireResponse.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="answer" type="Contract.Answer" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Response to assets.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="securityLabelNumber" minOccurs="0" maxOccurs="unbounded" type="unsignedInt">
<xs:annotation>
<xs:documentation xml:lang="en">Security labels that protects the asset.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="valuedItem" type="Contract.ValuedItem" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Contract Valued Item List.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Contract.Context">
<xs:annotation>
<xs:documentation xml:lang="en">Legally enforceable, formally recorded unilateral or bilateral directive i.e., a policy or agreement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="reference" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Asset context reference may include the creator, custodian, or owning Person or Organization (e.g., bank, repository), location held, e.g., building, jurisdiction.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Coded representation of the context generally or of the Referenced entity, such as the asset holder type or location.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="text" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Context description.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Contract.ValuedItem">
<xs:annotation>
<xs:documentation xml:lang="en">Legally enforceable, formally recorded unilateral or bilateral directive i.e., a policy or agreement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Specific type of Contract Valued Item that may be priced.</xs:documentation>
</xs:annotation>
<xs:element name="entityCodeableConcept" type="CodeableConcept"/>
<xs:element name="entityReference" type="Reference"/>
</xs:choice>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies a Contract Valued Item instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="effectiveTime" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the time during which this Contract ValuedItem information is effective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies the units by which the Contract Valued Item is measured or counted, and quantifies the countable or measurable Contract Valued Item instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unitPrice" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">A Contract Valued Item unit valuation measure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="factor" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">A real number that represents a multiplier used in determining the overall value of the Contract Valued Item delivered. The concept of a Factor allows for a discount or surcharge multiplier to be applied to a monetary amount.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="points" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">An amount that expresses the weighting (based on difficulty, cost and/or resource intensiveness) associated with the Contract Valued Item delivered. The concept of Points allows for assignment of point values for a Contract Valued Item, such that a monetary amount can be assigned to each point.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="net" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">Expresses the product of the Contract Valued Item unitQuantity and the unitPriceAmt. For example, the formula: unit Quantity * unit Price (Cost per Point) * factor Number * points = net Amount. Quantity, factor and points are assumed to be 1 if not supplied.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="payment" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Terms of valuation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="paymentDate" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">When payment is due.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="responsible" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Who will make payment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="recipient" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Who will receive payment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="linkId" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Id of the clause or question text related to the context of this valuedItem in the referenced form or QuestionnaireResponse.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="securityLabelNumber" minOccurs="0" maxOccurs="unbounded" type="unsignedInt">
<xs:annotation>
<xs:documentation xml:lang="en">A set of security labels that define which terms are controlled by this condition.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Contract.Action">
<xs:annotation>
<xs:documentation xml:lang="en">Legally enforceable, formally recorded unilateral or bilateral directive i.e., a policy or agreement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="doNotPerform" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">True if the term prohibits the action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Activity or service obligation to be done or not done, performed or not performed, effectuated or not by this Contract term.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" type="Contract.Subject" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Entity of the action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="intent" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Reason or purpose for the action stipulated by this Contract Provision.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="linkId" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Id [identifier??] of the clause or question text related to this action in the referenced form or QuestionnaireResponse.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Current state of the term action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="context" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Encounter or Episode with primary association to specified term activity.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contextLinkId" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Id [identifier??] of the clause or question text related to the requester of this action in the referenced form or QuestionnaireResponse.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">When action happens.</xs:documentation>
</xs:annotation>
<xs:element name="occurrenceDateTime" type="dateTime"/>
<xs:element name="occurrencePeriod" type="Period"/>
<xs:element name="occurrenceTiming" type="Timing"/>
</xs:choice>
<xs:element name="requester" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Who or what initiated the action and has responsibility for its activation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requesterLinkId" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Id [identifier??] of the clause or question text related to the requester of this action in the referenced form or QuestionnaireResponse.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performerType" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of individual that is desired or required to perform or not perform the action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performerRole" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of role or competency of an individual desired or required to perform or not perform the action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates who or what is being asked to perform (or not perform) the ction.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performerLinkId" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Id [identifier??] of the clause or question text related to the reason type or reference of this action in the referenced form or QuestionnaireResponse.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Rationale for the action to be performed or not performed. Describes why the action is permitted or prohibited.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates another resource whose existence justifies permitting or not permitting this action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reason" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Describes why the action is to be performed or not performed in textual form.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonLinkId" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Id [identifier??] of the clause or question text related to the reason type or reference of this action in the referenced form or QuestionnaireResponse.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Comments made about the term action made by the requester, performer, subject or other participants.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="securityLabelNumber" minOccurs="0" maxOccurs="unbounded" type="unsignedInt">
<xs:annotation>
<xs:documentation xml:lang="en">Security labels that protects the action.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Contract.Subject">
<xs:annotation>
<xs:documentation xml:lang="en">Legally enforceable, formally recorded unilateral or bilateral directive i.e., a policy or agreement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="reference" minOccurs="1" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The entity the action is performed or not performed on or for.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="role" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Role type of agent assigned roles in this Contract.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Contract.Signer">
<xs:annotation>
<xs:documentation xml:lang="en">Legally enforceable, formally recorded unilateral or bilateral directive i.e., a policy or agreement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">Role of this Contract signer, e.g. notary, grantee.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="party" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Party which is a signator to this Contract.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="signature" minOccurs="1" maxOccurs="unbounded" type="Signature">
<xs:annotation>
<xs:documentation xml:lang="en">Legally binding Contract DSIG signature contents in Base64.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Contract.Friendly">
<xs:annotation>
<xs:documentation xml:lang="en">Legally enforceable, formally recorded unilateral or bilateral directive i.e., a policy or agreement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Human readable rendering of this Contract in a format and representation intended to enhance comprehension and ensure understandability.</xs:documentation>
</xs:annotation>
<xs:element name="contentAttachment" type="Attachment"/>
<xs:element name="contentReference" type="Reference"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Contract.Legal">
<xs:annotation>
<xs:documentation xml:lang="en">Legally enforceable, formally recorded unilateral or bilateral directive i.e., a policy or agreement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Contract legal text in human renderable form.</xs:documentation>
</xs:annotation>
<xs:element name="contentAttachment" type="Attachment"/>
<xs:element name="contentReference" type="Reference"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Contract.Rule">
<xs:annotation>
<xs:documentation xml:lang="en">Legally enforceable, formally recorded unilateral or bilateral directive i.e., a policy or agreement.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Computable Contract conveyed using a policy rule language (e.g. XACML, DKAL, SecPal).</xs:documentation>
</xs:annotation>
<xs:element name="contentAttachment" type="Attachment"/>
<xs:element name="contentReference" type="Reference"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ContractResourceStatusCodes-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="amended">
<xs:annotation>
<xs:documentation xml:lang="en">Amended</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="appended">
<xs:annotation>
<xs:documentation xml:lang="en">Appended</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cancelled">
<xs:annotation>
<xs:documentation xml:lang="en">Cancelled</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="disputed">
<xs:annotation>
<xs:documentation xml:lang="en">Disputed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="executable">
<xs:annotation>
<xs:documentation xml:lang="en">Executable</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="executed">
<xs:annotation>
<xs:documentation xml:lang="en">Executed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="negotiable">
<xs:annotation>
<xs:documentation xml:lang="en">Negotiable</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="offered">
<xs:annotation>
<xs:documentation xml:lang="en">Offered</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="policy">
<xs:annotation>
<xs:documentation xml:lang="en">Policy</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="rejected">
<xs:annotation>
<xs:documentation xml:lang="en">Rejected</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="renewed">
<xs:annotation>
<xs:documentation xml:lang="en">Renewed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="revoked">
<xs:annotation>
<xs:documentation xml:lang="en">Revoked</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="resolved">
<xs:annotation>
<xs:documentation xml:lang="en">Resolved</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="terminated">
<xs:annotation>
<xs:documentation xml:lang="en">Terminated</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ContractResourceStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">A code specifying the state of the resource instance.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ContractResourceStatusCodes-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ContractResourcePublicationStatusCodes-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="amended">
<xs:annotation>
<xs:documentation xml:lang="en">Amended</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="appended">
<xs:annotation>
<xs:documentation xml:lang="en">Appended</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cancelled">
<xs:annotation>
<xs:documentation xml:lang="en">Cancelled</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="disputed">
<xs:annotation>
<xs:documentation xml:lang="en">Disputed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="executable">
<xs:annotation>
<xs:documentation xml:lang="en">Executable</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="executed">
<xs:annotation>
<xs:documentation xml:lang="en">Executed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="negotiable">
<xs:annotation>
<xs:documentation xml:lang="en">Negotiable</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="offered">
<xs:annotation>
<xs:documentation xml:lang="en">Offered</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="policy">
<xs:annotation>
<xs:documentation xml:lang="en">Policy</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="rejected">
<xs:annotation>
<xs:documentation xml:lang="en">Rejected</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="renewed">
<xs:annotation>
<xs:documentation xml:lang="en">Renewed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="revoked">
<xs:annotation>
<xs:documentation xml:lang="en">Revoked</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="resolved">
<xs:annotation>
<xs:documentation xml:lang="en">Resolved</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="terminated">
<xs:annotation>
<xs:documentation xml:lang="en">Terminated</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ContractResourcePublicationStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">Status of the publication of contract content.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ContractResourcePublicationStatusCodes-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Coverage" type="Coverage">
<xs:annotation>
<xs:documentation xml:lang="en">Financial instrument which may be used to reimburse or pay for health care products and services. Includes both insurance and self-payment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Coverage">
<xs:annotation>
<xs:documentation xml:lang="en">Financial instrument which may be used to reimburse or pay for health care products and services. Includes both insurance and self-payment.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A unique identifier assigned to this coverage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="FinancialResourceStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the resource instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of coverage: social program, medical plan, accident coverage (workers compensation, auto), group health or payment by an individual or organization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="policyHolder" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The party who 'owns' the insurance policy.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subscriber" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The party who has signed-up for or 'owns' the contractual relationship to the policy or to whom the benefit of the policy for services rendered to them or their family is due.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subscriberId" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The insurer assigned ID for the Subscriber.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="beneficiary" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The party who benefits from the insurance coverage; the patient when products and/or services are provided.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dependent" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A unique identifier for a dependent under the coverage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relationship" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The relationship of beneficiary (patient) to the subscriber.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">Time period during which the coverage is in force. A missing start date indicates the start date isn't known, a missing end date means the coverage is continuing to be in force.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="payor" minOccurs="1" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The program or plan underwriter or payor including both insurance and non-insurance agreements, such as patient-pay agreements.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="class" type="Coverage.Class" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A suite of underwriter specific classifiers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="order" minOccurs="0" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The order of applicability of this coverage relative to other coverages which are currently in force. Note, there may be gaps in the numbering and this does not imply primary, secondary etc. as the specific positioning of coverages depends upon the episode of care.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="network" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The insurer-specific identifier for the insurer-defined network of providers to which the beneficiary may seek treatment which will be covered at the 'in-network' rate, otherwise 'out of network' terms and conditions apply.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="costToBeneficiary" type="Coverage.CostToBeneficiary" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A suite of codes indicating the cost category and associated amount which have been detailed in the policy and may have been included on the health card.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subrogation" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">When 'subrogation=true' this insurance instance has been included not for adjudication but to provide insurers with the details to recover costs.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contract" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The policy(s) which constitute this insurance coverage.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Coverage.Class">
<xs:annotation>
<xs:documentation xml:lang="en">Financial instrument which may be used to reimburse or pay for health care products and services. Includes both insurance and self-payment.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of classification for which an insurer-specific class label or number and optional name is provided, for example may be used to identify a class of coverage or employer group, Policy, Plan.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="value" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The alphanumeric string value associated with the insurer issued label.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short description for the class.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Coverage.CostToBeneficiary">
<xs:annotation>
<xs:documentation xml:lang="en">Financial instrument which may be used to reimburse or pay for health care products and services. Includes both insurance and self-payment.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The category of patient centric costs associated with treatment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The amount due from the patient for the cost category.</xs:documentation>
</xs:annotation>
<xs:element name="valueQuantity" type="Quantity"/>
<xs:element name="valueMoney" type="Money"/>
</xs:choice>
<xs:element name="exception" type="Coverage.Exception" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A suite of codes indicating exceptions or reductions to patient costs and their effective periods.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Coverage.Exception">
<xs:annotation>
<xs:documentation xml:lang="en">Financial instrument which may be used to reimburse or pay for health care products and services. Includes both insurance and self-payment.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The code for the specific exception.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The timeframe during when the exception is in force.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="CoverageEligibilityRequest" type="CoverageEligibilityRequest">
<xs:annotation>
<xs:documentation xml:lang="en">The CoverageEligibilityRequest provides patient and insurance coverage information to an insurer for them to respond, in the form of an CoverageEligibilityResponse, with information regarding whether the stated coverage is valid and in-force and optionally to provide the insurance details of the policy.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="CoverageEligibilityRequest">
<xs:annotation>
<xs:documentation xml:lang="en">The CoverageEligibilityRequest provides patient and insurance coverage information to an insurer for them to respond, in the form of an CoverageEligibilityResponse, with information regarding whether the stated coverage is valid and in-force and optionally to provide the insurance details of the policy.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A unique identifier assigned to this coverage eligiblity request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="FinancialResourceStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the resource instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priority" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">When the requestor expects the processor to complete processing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="1" maxOccurs="unbounded" type="EligibilityRequestPurpose">
<xs:annotation>
<xs:documentation xml:lang="en">Code to specify whether requesting: prior authorization requirements for some service categories or billing codes; benefits for coverages specified or discovered; discovery and return of coverages for the patient; and/or validation that the specified coverage is in-force at the date/period specified or 'now' if not specified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patient" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The party who is the beneficiary of the supplied coverage and for whom eligibility is sought.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The date or dates when the enclosed suite of services were performed or completed.</xs:documentation>
</xs:annotation>
<xs:element name="servicedDate" type="date"/>
<xs:element name="servicedPeriod" type="Period"/>
</xs:choice>
<xs:element name="created" minOccurs="1" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date when this resource was created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="enterer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Person who created the request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="provider" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The provider which is responsible for the request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="insurer" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The Insurer who issued the coverage in question and is the recipient of the request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="facility" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Facility where the services are intended to be provided.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="supportingInfo" type="CoverageEligibilityRequest.SupportingInfo" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Additional information codes regarding exceptions, special considerations, the condition, situation, prior or concurrent issues.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="insurance" type="CoverageEligibilityRequest.Insurance" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Financial instruments for reimbursement for the health care products and services.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="item" type="CoverageEligibilityRequest.Item" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Service categories or billable services for which benefit details and/or an authorization prior to service delivery may be required by the payor.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CoverageEligibilityRequest.SupportingInfo">
<xs:annotation>
<xs:documentation xml:lang="en">The CoverageEligibilityRequest provides patient and insurance coverage information to an insurer for them to respond, in the form of an CoverageEligibilityResponse, with information regarding whether the stated coverage is valid and in-force and optionally to provide the insurance details of the policy.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="sequence" minOccurs="1" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A number to uniquely identify supporting information entries.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="information" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Additional data or information such as resources, documents, images etc. including references to the data or the actual inclusion of the data.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="appliesToAll" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">The supporting materials are applicable for all detail items, product/servce categories and specific billing codes.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CoverageEligibilityRequest.Insurance">
<xs:annotation>
<xs:documentation xml:lang="en">The CoverageEligibilityRequest provides patient and insurance coverage information to an insurer for them to respond, in the form of an CoverageEligibilityResponse, with information regarding whether the stated coverage is valid and in-force and optionally to provide the insurance details of the policy.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="focal" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A flag to indicate that this Coverage is to be used for evaluation of this request when set to true.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="coverage" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to the insurance card level information contained in the Coverage resource. The coverage issuing insurer will use these details to locate the patient's actual coverage within the insurer's information system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="businessArrangement" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A business agreement number established between the provider and the insurer for special business processing purposes.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CoverageEligibilityRequest.Item">
<xs:annotation>
<xs:documentation xml:lang="en">The CoverageEligibilityRequest provides patient and insurance coverage information to an insurer for them to respond, in the form of an CoverageEligibilityResponse, with information regarding whether the stated coverage is valid and in-force and optionally to provide the insurance details of the policy.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="supportingInfoSequence" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">Exceptions, special conditions and supporting information applicable for this service or product line.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Code to identify the general type of benefits under which products and services are provided.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="productOrService" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">This contains the product, service, drug or other billing code for the item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modifier" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Item typification or modifiers codes to convey additional context for the product or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="provider" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The practitioner who is responsible for the product or service to be rendered to the patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The number of repetitions of a service or product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unitPrice" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">The amount charged to the patient by the provider for a single unit.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="facility" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Facility where the services will be provided.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="diagnosis" type="CoverageEligibilityRequest.Diagnosis" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Patient diagnosis for which care is sought.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detail" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The plan/proposal/order describing the proposed service in detail.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CoverageEligibilityRequest.Diagnosis">
<xs:annotation>
<xs:documentation xml:lang="en">The CoverageEligibilityRequest provides patient and insurance coverage information to an insurer for them to respond, in the form of an CoverageEligibilityResponse, with information regarding whether the stated coverage is valid and in-force and optionally to provide the insurance details of the policy.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The nature of illness or problem in a coded form or as a reference to an external defined Condition.</xs:documentation>
</xs:annotation>
<xs:element name="diagnosisCodeableConcept" type="CodeableConcept"/>
<xs:element name="diagnosisReference" type="Reference"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="EligibilityRequestPurpose-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="auth-requirements">
<xs:annotation>
<xs:documentation xml:lang="en">Coverage auth-requirements</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="benefits">
<xs:annotation>
<xs:documentation xml:lang="en">Coverage benefits</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="discovery">
<xs:annotation>
<xs:documentation xml:lang="en">Coverage Discovery</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="validation">
<xs:annotation>
<xs:documentation xml:lang="en">Coverage Validation</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="EligibilityRequestPurpose">
<xs:annotation>
<xs:documentation xml:lang="en">A code specifying the types of information being requested.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="EligibilityRequestPurpose-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="CoverageEligibilityResponse" type="CoverageEligibilityResponse">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides eligibility and plan details from the processing of an CoverageEligibilityRequest resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="CoverageEligibilityResponse">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides eligibility and plan details from the processing of an CoverageEligibilityRequest resource.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A unique identifier assigned to this coverage eligiblity request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="FinancialResourceStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the resource instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="1" maxOccurs="unbounded" type="EligibilityResponsePurpose">
<xs:annotation>
<xs:documentation xml:lang="en">Code to specify whether requesting: prior authorization requirements for some service categories or billing codes; benefits for coverages specified or discovered; discovery and return of coverages for the patient; and/or validation that the specified coverage is in-force at the date/period specified or 'now' if not specified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patient" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The party who is the beneficiary of the supplied coverage and for whom eligibility is sought.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The date or dates when the enclosed suite of services were performed or completed.</xs:documentation>
</xs:annotation>
<xs:element name="servicedDate" type="date"/>
<xs:element name="servicedPeriod" type="Period"/>
</xs:choice>
<xs:element name="created" minOccurs="1" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date this resource was created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requestor" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The provider which is responsible for the request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="request" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to the original request resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="outcome" minOccurs="1" maxOccurs="1" type="RemittanceOutcome">
<xs:annotation>
<xs:documentation xml:lang="en">The outcome of the request processing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="disposition" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A human readable description of the status of the adjudication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="insurer" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The Insurer who issued the coverage in question and is the author of the response.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="insurance" type="CoverageEligibilityResponse.Insurance" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Financial instruments for reimbursement for the health care products and services.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="preAuthRef" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A reference from the Insurer to which these services pertain to be used on further communication and as proof that the request occurred.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="form" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code for the form to be used for printing the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="error" type="CoverageEligibilityResponse.Error" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Errors encountered during the processing of the request.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CoverageEligibilityResponse.Insurance">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides eligibility and plan details from the processing of an CoverageEligibilityRequest resource.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="coverage" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to the insurance card level information contained in the Coverage resource. The coverage issuing insurer will use these details to locate the patient's actual coverage within the insurer's information system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="inforce" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Flag indicating if the coverage provided is inforce currently if no service date(s) specified or for the whole duration of the service dates.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="benefitPeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The term of the benefits documented in this response.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="item" type="CoverageEligibilityResponse.Item" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Benefits and optionally current balances, and authorization details by category or service.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CoverageEligibilityResponse.Item">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides eligibility and plan details from the processing of an CoverageEligibilityRequest resource.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="category" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Code to identify the general type of benefits under which products and services are provided.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="productOrService" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">This contains the product, service, drug or other billing code for the item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modifier" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Item typification or modifiers codes to convey additional context for the product or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="provider" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The practitioner who is eligible for the provision of the product or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="excluded" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">True if the indicated class of service is excluded from the plan, missing or False indicates the product or service is included in the coverage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short name or tag for the benefit.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A richer description of the benefit or services covered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="network" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Is a flag to indicate whether the benefits refer to in-network providers or out-of-network providers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unit" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates if the benefits apply to an individual or to the family.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="term" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The term or period of the values such as 'maximum lifetime benefit' or 'maximum annual visits'.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="benefit" type="CoverageEligibilityResponse.Benefit" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Benefits used to date.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="authorizationRequired" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A boolean flag indicating whether a preauthorization is required prior to actual service delivery.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="authorizationSupporting" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Codes or comments regarding information or actions associated with the preauthorization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="authorizationUrl" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">A web location for obtaining requirements or descriptive information regarding the preauthorization.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CoverageEligibilityResponse.Benefit">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides eligibility and plan details from the processing of an CoverageEligibilityRequest resource.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Classification of benefit being provided.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The quantity of the benefit which is permitted under the coverage.</xs:documentation>
</xs:annotation>
<xs:element name="allowedUnsignedInt" type="unsignedInt"/>
<xs:element name="allowedString" type="string"/>
<xs:element name="allowedMoney" type="Money"/>
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The quantity of the benefit which have been consumed to date.</xs:documentation>
</xs:annotation>
<xs:element name="usedUnsignedInt" type="unsignedInt"/>
<xs:element name="usedString" type="string"/>
<xs:element name="usedMoney" type="Money"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CoverageEligibilityResponse.Error">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides eligibility and plan details from the processing of an CoverageEligibilityRequest resource.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">An error code,from a specified code system, which details why the eligibility check could not be performed.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="EligibilityResponsePurpose-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="auth-requirements">
<xs:annotation>
<xs:documentation xml:lang="en">Coverage auth-requirements</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="benefits">
<xs:annotation>
<xs:documentation xml:lang="en">Coverage benefits</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="discovery">
<xs:annotation>
<xs:documentation xml:lang="en">Coverage Discovery</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="validation">
<xs:annotation>
<xs:documentation xml:lang="en">Coverage Validation</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="EligibilityResponsePurpose">
<xs:annotation>
<xs:documentation xml:lang="en">A code specifying the types of information being requested.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="EligibilityResponsePurpose-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="DetectedIssue" type="DetectedIssue">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates an actual or potential clinical issue with or between one or more active or proposed clinical actions for a patient; e.g. Drug-drug interaction, Ineffective treatment frequency, Procedure-condition conflict, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="DetectedIssue">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates an actual or potential clinical issue with or between one or more active or proposed clinical actions for a patient; e.g. Drug-drug interaction, Ineffective treatment frequency, Procedure-condition conflict, etc.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business identifier associated with the detected issue record.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="ObservationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the status of the detected issue.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the general type of issue identified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="severity" minOccurs="0" maxOccurs="1" type="DetectedIssueSeverity">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the degree of importance associated with the identified issue based on the potential impact on the patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patient" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the patient whose record the detected issue is associated with.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The date or period when the detected issue was initially identified.</xs:documentation>
</xs:annotation>
<xs:element name="identifiedDateTime" type="dateTime"/>
<xs:element name="identifiedPeriod" type="Period"/>
</xs:choice>
<xs:element name="author" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Individual or device responsible for the issue being raised. For example, a decision support application or a pharmacist conducting a medication review.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="implicated" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the resource representing the current activity or proposed activity that is potentially problematic.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="evidence" type="DetectedIssue.Evidence" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Supporting evidence or manifestations that provide the basis for identifying the detected issue such as a GuidanceResponse or MeasureReport.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detail" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A textual explanation of the detected issue.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reference" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The literature, knowledge-base or similar reference that describes the propensity for the detected issue identified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="mitigation" type="DetectedIssue.Mitigation" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates an action that has been taken or is committed to reduce or eliminate the likelihood of the risk identified by the detected issue from manifesting. Can also reflect an observation of known mitigating factors that may reduce/eliminate the need for any action.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DetectedIssue.Evidence">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates an actual or potential clinical issue with or between one or more active or proposed clinical actions for a patient; e.g. Drug-drug interaction, Ineffective treatment frequency, Procedure-condition conflict, etc.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A manifestation that led to the recording of this detected issue.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detail" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Links to resources that constitute evidence for the detected issue such as a GuidanceResponse or MeasureReport.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DetectedIssue.Mitigation">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates an actual or potential clinical issue with or between one or more active or proposed clinical actions for a patient; e.g. Drug-drug interaction, Ineffective treatment frequency, Procedure-condition conflict, etc.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="action" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the action that was taken or the observation that was made that reduces/eliminates the risk associated with the identified issue.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates when the mitigating action was documented.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the practitioner who determined the mitigation and takes responsibility for the mitigation step occurring.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ObservationStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="registered">
<xs:annotation>
<xs:documentation xml:lang="en">Registered</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="preliminary">
<xs:annotation>
<xs:documentation xml:lang="en">Preliminary</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="final">
<xs:annotation>
<xs:documentation xml:lang="en">Final</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="amended">
<xs:annotation>
<xs:documentation xml:lang="en">Amended</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="corrected">
<xs:annotation>
<xs:documentation xml:lang="en">Corrected</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cancelled">
<xs:annotation>
<xs:documentation xml:lang="en">Cancelled</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unknown">
<xs:annotation>
<xs:documentation xml:lang="en">Unknown</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ObservationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the status of the identified issue.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ObservationStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="DetectedIssueSeverity-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="high">
<xs:annotation>
<xs:documentation xml:lang="en">High</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="moderate">
<xs:annotation>
<xs:documentation xml:lang="en">Moderate</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="low">
<xs:annotation>
<xs:documentation xml:lang="en">Low</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="DetectedIssueSeverity">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the potential degree of impact of the identified issue on the patient.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="DetectedIssueSeverity-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Device" type="Device">
<xs:annotation>
<xs:documentation xml:lang="en">A type of a manufactured item that is used in the provision of healthcare without being substantially changed through that activity. The device may be a medical or non-medical device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Device">
<xs:annotation>
<xs:documentation xml:lang="en">A type of a manufactured item that is used in the provision of healthcare without being substantially changed through that activity. The device may be a medical or non-medical device.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Unique instance identifiers assigned to a device by manufacturers other organizations or owners.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="definition" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The reference to the definition for the device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="udiCarrier" type="Device.UdiCarrier" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Unique device identifier (UDI) assigned to device label or package. Note that the Device may include multiple udiCarriers as it either may include just the udiCarrier for the jurisdiction it is sold, or for multiple jurisdictions it could have been sold.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="FHIRDeviceStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Status of the Device availability.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="statusReason" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Reason for the dtatus of the Device availability.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="distinctIdentifier" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The distinct identification string as required by regulation for a human cell, tissue, or cellular and tissue-based product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="manufacturer" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A name of the manufacturer.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="manufactureDate" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date and time when the device was manufactured.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expirationDate" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date and time beyond which this device is no longer valid or should not be used (if applicable).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lotNumber" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Lot number assigned by the manufacturer.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="serialNumber" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The serial number assigned by the organization when the device was manufactured.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="deviceName" type="Device.DeviceName" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">This represents the manufacturer's name of the device as provided by the device, from a UDI label, or by a person describing the Device. This typically would be used when a person provides the name(s) or when the device represents one of the names available from DeviceDefinition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modelNumber" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The model number for the device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partNumber" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The part number of the device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The kind or type of device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specialization" type="Device.Specialization" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The capabilities supported on a device, the standards to which the device conforms for a particular purpose, and used for the communication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" type="Device.Version" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The actual design of the device or software version running on the device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="property" type="Device.Property" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The actual configuration settings of a device as it actually operates, e.g., regulation status, time properties.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patient" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Patient information, If the device is affixed to a person.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="owner" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">An organization that is responsible for the provision and ongoing maintenance of the device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactPoint">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details for an organization or a particular human that is responsible for the device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="location" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The place where the device can be found.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">A network address on which the device may be contacted directly.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Descriptive information, usage information or implantation information that is not captured in an existing element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="safety" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Provides additional safety characteristics about a medical device. For example devices containing latex.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="parent" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The parent device.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Device.UdiCarrier">
<xs:annotation>
<xs:documentation xml:lang="en">A type of a manufactured item that is used in the provision of healthcare without being substantially changed through that activity. The device may be a medical or non-medical device.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="deviceIdentifier" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The device identifier (DI) is a mandatory, fixed portion of a UDI that identifies the labeler and the specific version or model of a device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="issuer" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">Organization that is charged with issuing UDIs for devices. For example, the US FDA issuers include :
1) GS1:
http://hl7.org/fhir/NamingSystem/gs1-di,
2) HIBCC:
http://hl7.org/fhir/NamingSystem/hibcc-dI,
3) ICCBBA for blood containers:
http://hl7.org/fhir/NamingSystem/iccbba-blood-di,
4) ICCBA for other devices:
http://hl7.org/fhir/NamingSystem/iccbba-other-di.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The identity of the authoritative source for UDI generation within a jurisdiction. All UDIs are globally unique within a single namespace with the appropriate repository uri as the system. For example, UDIs of devices managed in the U.S. by the FDA, the value is http://hl7.org/fhir/NamingSystem/fda-udi.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="carrierAIDC" minOccurs="0" maxOccurs="1" type="base64Binary">
<xs:annotation>
<xs:documentation xml:lang="en">The full UDI carrier of the Automatic Identification and Data Capture (AIDC) technology representation of the barcode string as printed on the packaging of the device - e.g., a barcode or RFID. Because of limitations on character sets in XML and the need to round-trip JSON data through XML, AIDC Formats *SHALL* be base64 encoded.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="carrierHRF" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The full UDI carrier as the human readable form (HRF) representation of the barcode string as printed on the packaging of the device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="entryType" minOccurs="0" maxOccurs="1" type="UDIEntryType">
<xs:annotation>
<xs:documentation xml:lang="en">A coded entry to indicate how the data was entered.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Device.DeviceName">
<xs:annotation>
<xs:documentation xml:lang="en">A type of a manufactured item that is used in the provision of healthcare without being substantially changed through that activity. The device may be a medical or non-medical device.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="DeviceNameType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of deviceName.
UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | ModelName.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Device.Specialization">
<xs:annotation>
<xs:documentation xml:lang="en">A type of a manufactured item that is used in the provision of healthcare without being substantially changed through that activity. The device may be a medical or non-medical device.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="systemType" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The standard that is used to operate and communicate.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The version of the standard that is used to operate and communicate.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Device.Version">
<xs:annotation>
<xs:documentation xml:lang="en">A type of a manufactured item that is used in the provision of healthcare without being substantially changed through that activity. The device may be a medical or non-medical device.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of the device version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="component" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A single component of the device version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="value" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The version text.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Device.Property">
<xs:annotation>
<xs:documentation xml:lang="en">A type of a manufactured item that is used in the provision of healthcare without being substantially changed through that activity. The device may be a medical or non-medical device.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Code that specifies the property DeviceDefinitionPropetyCode (Extensible).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="valueQuantity" minOccurs="0" maxOccurs="unbounded" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">Property value as a quantity.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="valueCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Property value as a code, e.g., NTP4 (synced to NTP).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="FHIRDeviceStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="active">
<xs:annotation>
<xs:documentation xml:lang="en">Active</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="inactive">
<xs:annotation>
<xs:documentation xml:lang="en">Inactive</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unknown">
<xs:annotation>
<xs:documentation xml:lang="en">Unknown</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="FHIRDeviceStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The availability status of the device.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="FHIRDeviceStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="DeviceNameType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="udi-label-name">
<xs:annotation>
<xs:documentation xml:lang="en">UDI Label name</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="user-friendly-name">
<xs:annotation>
<xs:documentation xml:lang="en">User Friendly name</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="patient-reported-name">
<xs:annotation>
<xs:documentation xml:lang="en">Patient Reported name</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="manufacturer-name">
<xs:annotation>
<xs:documentation xml:lang="en">Manufacturer name</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="model-name">
<xs:annotation>
<xs:documentation xml:lang="en">Model name</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="other">
<xs:annotation>
<xs:documentation xml:lang="en">other</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="DeviceNameType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of name the device is referred by.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="DeviceNameType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="UDIEntryType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="barcode">
<xs:annotation>
<xs:documentation xml:lang="en">Barcode</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="rfid">
<xs:annotation>
<xs:documentation xml:lang="en">RFID</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="manual">
<xs:annotation>
<xs:documentation xml:lang="en">Manual</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="card">
<xs:annotation>
<xs:documentation xml:lang="en">Card</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="self-reported">
<xs:annotation>
<xs:documentation xml:lang="en">Self Reported</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unknown">
<xs:annotation>
<xs:documentation xml:lang="en">Unknown</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="UDIEntryType">
<xs:annotation>
<xs:documentation xml:lang="en">Codes to identify how UDI data was entered.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="UDIEntryType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="DeviceDefinition" type="DeviceDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">The characteristics, operational status and capabilities of a medical-related component of a medical device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="DeviceDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">The characteristics, operational status and capabilities of a medical-related component of a medical device.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Unique instance identifiers assigned to a device by the software, manufacturers, other organizations or owners. For example: handle ID.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="udiDeviceIdentifier" type="DeviceDefinition.UdiDeviceIdentifier" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Unique device identifier (UDI) assigned to device label or package. Note that the Device may include multiple udiCarriers as it either may include just the udiCarrier for the jurisdiction it is sold, or for multiple jurisdictions it could have been sold.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">A name of the manufacturer.</xs:documentation>
</xs:annotation>
<xs:element name="manufacturerString" type="string"/>
<xs:element name="manufacturerReference" type="Reference"/>
</xs:choice>
<xs:element name="deviceName" type="DeviceDefinition.DeviceName" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A name given to the device to identify it.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modelNumber" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The model number for the device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">What kind of device or device system this is.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specialization" type="DeviceDefinition.Specialization" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The capabilities supported on a device, the standards to which the device conforms for a particular purpose, and used for the communication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The available versions of the device, e.g., software versions.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="safety" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Safety characteristics of the device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="shelfLifeStorage" minOccurs="0" maxOccurs="unbounded" type="ProductShelfLife">
<xs:annotation>
<xs:documentation xml:lang="en">Shelf Life and storage information.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="physicalCharacteristics" minOccurs="0" maxOccurs="1" type="ProdCharacteristic">
<xs:annotation>
<xs:documentation xml:lang="en">Dimensions, color etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="languageCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Language code for the human-readable text strings produced by the device (all supported).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="capability" type="DeviceDefinition.Capability" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Device capabilities.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="property" type="DeviceDefinition.Property" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The actual configuration settings of a device as it actually operates, e.g., regulation status, time properties.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="owner" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">An organization that is responsible for the provision and ongoing maintenance of the device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactPoint">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details for an organization or a particular human that is responsible for the device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">A network address on which the device may be contacted directly.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="onlineInformation" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">Access to on-line information about the device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Descriptive information, usage information or implantation information that is not captured in an existing element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The quantity of the device present in the packaging (e.g. the number of devices present in a pack, or the number of devices in the same package of the medicinal product).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="parentDevice" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The parent device it can be part of.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="material" type="DeviceDefinition.Material" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A substance used to create the material(s) of which the device is made.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DeviceDefinition.UdiDeviceIdentifier">
<xs:annotation>
<xs:documentation xml:lang="en">The characteristics, operational status and capabilities of a medical-related component of a medical device.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="deviceIdentifier" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is to be associated with every Device that references this DeviceDefintiion for the issuer and jurisdication porvided in the DeviceDefinition.udiDeviceIdentifier.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="issuer" minOccurs="1" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The organization that assigns the identifier algorithm.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="1" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The jurisdiction to which the deviceIdentifier applies.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DeviceDefinition.DeviceName">
<xs:annotation>
<xs:documentation xml:lang="en">The characteristics, operational status and capabilities of a medical-related component of a medical device.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="DeviceNameType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of deviceName.
UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | ModelName.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DeviceDefinition.Specialization">
<xs:annotation>
<xs:documentation xml:lang="en">The characteristics, operational status and capabilities of a medical-related component of a medical device.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="systemType" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The standard that is used to operate and communicate.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The version of the standard that is used to operate and communicate.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DeviceDefinition.Capability">
<xs:annotation>
<xs:documentation xml:lang="en">The characteristics, operational status and capabilities of a medical-related component of a medical device.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of capability.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Description of capability.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DeviceDefinition.Property">
<xs:annotation>
<xs:documentation xml:lang="en">The characteristics, operational status and capabilities of a medical-related component of a medical device.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Code that specifies the property DeviceDefinitionPropetyCode (Extensible).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="valueQuantity" minOccurs="0" maxOccurs="unbounded" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">Property value as a quantity.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="valueCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Property value as a code, e.g., NTP4 (synced to NTP).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DeviceDefinition.Material">
<xs:annotation>
<xs:documentation xml:lang="en">The characteristics, operational status and capabilities of a medical-related component of a medical device.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="substance" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="alternate" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates an alternative material of the device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="allergenicIndicator" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the substance is a known or suspected allergen.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="DeviceMetric" type="DeviceMetric">
<xs:annotation>
<xs:documentation xml:lang="en">Describes a measurement, calculation or setting capability of a medical device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="DeviceMetric">
<xs:annotation>
<xs:documentation xml:lang="en">Describes a measurement, calculation or setting capability of a medical device.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Unique instance identifiers assigned to a device by the device or gateway software, manufacturers, other organizations or owners. For example: handle ID.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the type of the metric. For example: Heart Rate, PEEP Setting, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unit" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the unit that an observed value determined for this metric will have. For example: Percent, Seconds, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the link to the Device that this DeviceMetric belongs to and that contains administrative device information such as manufacturer, serial number, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="parent" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the link to the Device that this DeviceMetric belongs to and that provide information about the location of this DeviceMetric in the containment structure of the parent Device. An example would be a Device that represents a Channel. This reference can be used by a client application to distinguish DeviceMetrics that have the same type, but should be interpreted based on their containment location.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="operationalStatus" minOccurs="0" maxOccurs="1" type="DeviceMetricOperationalStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates current operational state of the device. For example: On, Off, Standby, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="color" minOccurs="0" maxOccurs="1" type="DeviceMetricColor">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the color representation for the metric. This is often used to aid clinicians to track and identify parameter types by color. In practice, consider a Patient Monitor that has ECG/HR and Pleth for example; the parameters are displayed in different characteristic colors, such as HR-blue, BP-green, and PR and SpO2- magenta.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="1" maxOccurs="1" type="DeviceMetricCategory">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the category of the observation generation process. A DeviceMetric can be for example a setting, measurement, or calculation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="measurementPeriod" minOccurs="0" maxOccurs="1" type="Timing">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the measurement repetition time. This is not necessarily the same as the update period. The measurement repetition time can range from milliseconds up to hours. An example for a measurement repetition time in the range of milliseconds is the sampling rate of an ECG. An example for a measurement repetition time in the range of hours is a NIBP that is triggered automatically every hour. The update period may be different than the measurement repetition time, if the device does not update the published observed value with the same frequency as it was measured.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="calibration" type="DeviceMetric.Calibration" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the calibrations that have been performed or that are required to be performed.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DeviceMetric.Calibration">
<xs:annotation>
<xs:documentation xml:lang="en">Describes a measurement, calculation or setting capability of a medical device.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="DeviceMetricCalibrationType">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the type of the calibration method.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="state" minOccurs="0" maxOccurs="1" type="DeviceMetricCalibrationState">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the state of the calibration.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="time" minOccurs="0" maxOccurs="1" type="instant">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the time last calibration has been performed.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="DeviceMetricCalibrationType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="unspecified">
<xs:annotation>
<xs:documentation xml:lang="en">Unspecified</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="offset">
<xs:annotation>
<xs:documentation xml:lang="en">Offset</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="gain">
<xs:annotation>
<xs:documentation xml:lang="en">Gain</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="two-point">
<xs:annotation>
<xs:documentation xml:lang="en">Two Point</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="DeviceMetricCalibrationType">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the type of a metric calibration.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="DeviceMetricCalibrationType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="DeviceMetricColor-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="black">
<xs:annotation>
<xs:documentation xml:lang="en">Color Black</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="red">
<xs:annotation>
<xs:documentation xml:lang="en">Color Red</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="green">
<xs:annotation>
<xs:documentation xml:lang="en">Color Green</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="yellow">
<xs:annotation>
<xs:documentation xml:lang="en">Color Yellow</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="blue">
<xs:annotation>
<xs:documentation xml:lang="en">Color Blue</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="magenta">
<xs:annotation>
<xs:documentation xml:lang="en">Color Magenta</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cyan">
<xs:annotation>
<xs:documentation xml:lang="en">Color Cyan</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="white">
<xs:annotation>
<xs:documentation xml:lang="en">Color White</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="DeviceMetricColor">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the typical color of representation.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="DeviceMetricColor-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="DeviceMetricCalibrationState-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="not-calibrated">
<xs:annotation>
<xs:documentation xml:lang="en">Not Calibrated</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="calibration-required">
<xs:annotation>
<xs:documentation xml:lang="en">Calibration Required</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="calibrated">
<xs:annotation>
<xs:documentation xml:lang="en">Calibrated</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unspecified">
<xs:annotation>
<xs:documentation xml:lang="en">Unspecified</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="DeviceMetricCalibrationState">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the state of a metric calibration.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="DeviceMetricCalibrationState-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="DeviceMetricOperationalStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="on">
<xs:annotation>
<xs:documentation xml:lang="en">On</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="off">
<xs:annotation>
<xs:documentation xml:lang="en">Off</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="standby">
<xs:annotation>
<xs:documentation xml:lang="en">Standby</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered In Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="DeviceMetricOperationalStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the operational status of the DeviceMetric.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="DeviceMetricOperationalStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="DeviceMetricCategory-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="measurement">
<xs:annotation>
<xs:documentation xml:lang="en">Measurement</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="setting">
<xs:annotation>
<xs:documentation xml:lang="en">Setting</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="calculation">
<xs:annotation>
<xs:documentation xml:lang="en">Calculation</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unspecified">
<xs:annotation>
<xs:documentation xml:lang="en">Unspecified</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="DeviceMetricCategory">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the category of the metric.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="DeviceMetricCategory-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="DeviceRequest" type="DeviceRequest">
<xs:annotation>
<xs:documentation xml:lang="en">Represents a request for a patient to employ a medical device. The device may be an implantable device, or an external assistive device, such as a walker.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="DeviceRequest">
<xs:annotation>
<xs:documentation xml:lang="en">Represents a request for a patient to employ a medical device. The device may be an implantable device, or an external assistive device, such as a walker.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifiers assigned to this order by the orderer or by the receiver.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesCanonical" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to a FHIR-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this DeviceRequest.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesUri" minOccurs="0" maxOccurs="unbounded" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to an externally maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this DeviceRequest.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basedOn" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Plan/proposal/order fulfilled by this request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priorRequest" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The request takes the place of the referenced completed or terminated request(s).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="groupIdentifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Composite request this is part of.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="RequestStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="intent" minOccurs="1" maxOccurs="1" type="RequestIntent">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the request is a proposal, plan, an original order or a reflex order.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priority" minOccurs="0" maxOccurs="1" type="RequestPriority">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates how quickly the {{title}} should be addressed with respect to other requests.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The details of the device to be used.</xs:documentation>
</xs:annotation>
<xs:element name="codeReference" type="Reference"/>
<xs:element name="codeCodeableConcept" type="CodeableConcept"/>
</xs:choice>
<xs:element name="parameter" type="DeviceRequest.Parameter" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Specific parameters for the ordered item. For example, the prism value for lenses.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The patient who will use the device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">An encounter that provides additional context in which this request is made.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The timing schedule for the use of the device. The Schedule data type allows many different expressions, for example. &quot;Every 8 hours&quot;; &quot;Three times a day&quot;; &quot;1/2 an hour before breakfast for 10 days from 23-Dec 2011:&quot;; &quot;15 Oct 2013, 17 Oct 2013 and 1 Nov 2013&quot;.</xs:documentation>
</xs:annotation>
<xs:element name="occurrenceDateTime" type="dateTime"/>
<xs:element name="occurrencePeriod" type="Period"/>
<xs:element name="occurrenceTiming" type="Timing"/>
</xs:choice>
<xs:element name="authoredOn" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">When the request transitioned to being actionable.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requester" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The individual who initiated the request and has responsibility for its activation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performerType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Desired type of performer for doing the diagnostic testing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The desired performer for doing the diagnostic testing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Reason or justification for the use of this device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reason or justification for the use of this device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="insurance" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Insurance plans, coverage extensions, pre-authorizations and/or pre-determinations that may be required for delivering the requested service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="supportingInfo" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Additional clinical information about the patient that may influence the request fulfilment. For example, this may include where on the subject's body the device will be used (i.e. the target site).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Details about this request that were not represented at all or sufficiently in one of the attributes provided in a class. These may include for example a comment, an instruction, or a note associated with the statement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relevantHistory" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Key events in the history of the request.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DeviceRequest.Parameter">
<xs:annotation>
<xs:documentation xml:lang="en">Represents a request for a patient to employ a medical device. The device may be an implantable device, or an external assistive device, such as a walker.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code or string that identifies the device detail being asserted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The value of the device detail.</xs:documentation>
</xs:annotation>
<xs:element name="valueCodeableConcept" type="CodeableConcept"/>
<xs:element name="valueQuantity" type="Quantity"/>
<xs:element name="valueRange" type="Range"/>
<xs:element name="valueBoolean" type="boolean"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="DeviceUseStatement" type="DeviceUseStatement">
<xs:annotation>
<xs:documentation xml:lang="en">A record of a device being used by a patient where the record is the result of a report from the patient or another clinician.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="DeviceUseStatement">
<xs:annotation>
<xs:documentation xml:lang="en">A record of a device being used by a patient where the record is the result of a report from the patient or another clinician.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">An external identifier for this statement such as an IRI.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basedOn" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A plan, proposal or order that is fulfilled in whole or in part by this DeviceUseStatement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="DeviceUseStatementStatus">
<xs:annotation>
<xs:documentation xml:lang="en">A code representing the patient or other source's judgment about the state of the device used that this statement is about. Generally this will be active or completed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The patient who used the device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="derivedFrom" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Allows linking the DeviceUseStatement to the underlying Request, or to other information that supports or is used to derive the DeviceUseStatement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">How often the device was used.</xs:documentation>
</xs:annotation>
<xs:element name="timingTiming" type="Timing"/>
<xs:element name="timingPeriod" type="Period"/>
<xs:element name="timingDateTime" type="dateTime"/>
</xs:choice>
<xs:element name="recordedOn" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The time at which the statement was made/recorded.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Who reported the device was being used by the patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="device" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The details of the device used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Reason or justification for the use of the device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates another resource whose existence justifies this DeviceUseStatement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="bodySite" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the anotomic location on the subject's body where the device was used ( i.e. the target).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Details about the device statement that were not represented at all or sufficiently in one of the attributes provided in a class. These may include for example a comment, an instruction, or a note associated with the statement.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="DeviceUseStatementStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="active">
<xs:annotation>
<xs:documentation xml:lang="en">Active</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="completed">
<xs:annotation>
<xs:documentation xml:lang="en">Completed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="intended">
<xs:annotation>
<xs:documentation xml:lang="en">Intended</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="stopped">
<xs:annotation>
<xs:documentation xml:lang="en">Stopped</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="on-hold">
<xs:annotation>
<xs:documentation xml:lang="en">On Hold</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="DeviceUseStatementStatus">
<xs:annotation>
<xs:documentation xml:lang="en">A coded concept indicating the current status of the Device Usage.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="DeviceUseStatementStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="DiagnosticReport" type="DiagnosticReport">
<xs:annotation>
<xs:documentation xml:lang="en">The findings and interpretation of diagnostic tests performed on patients, groups of patients, devices, and locations, and/or specimens derived from these. The report includes clinical context such as requesting and provider information, and some mix of atomic results, images, textual and coded interpretations, and formatted representation of diagnostic reports.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="DiagnosticReport">
<xs:annotation>
<xs:documentation xml:lang="en">The findings and interpretation of diagnostic tests performed on patients, groups of patients, devices, and locations, and/or specimens derived from these. The report includes clinical context such as requesting and provider information, and some mix of atomic results, images, textual and coded interpretations, and formatted representation of diagnostic reports.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifiers assigned to this report by the performer or other systems.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basedOn" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Details concerning a service requested.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="DiagnosticReportStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the diagnostic report.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code that classifies the clinical discipline, department or diagnostic service that created the report (e.g. cardiology, biochemistry, hematology, MRI). This is used for searching, sorting and display purposes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code or name that describes this diagnostic report.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The subject of the report. Usually, but not always, this is a patient. However, diagnostic services also perform analyses on specimens collected from a variety of other sources.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The healthcare event (e.g. a patient and healthcare provider interaction) which this DiagnosticReport is about.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The time or time-period the observed values are related to. When the subject of the report is a patient, this is usually either the time of the procedure or of specimen collection(s), but very often the source of the date/time is not known, only the date/time itself.</xs:documentation>
</xs:annotation>
<xs:element name="effectiveDateTime" type="dateTime"/>
<xs:element name="effectivePeriod" type="Period"/>
</xs:choice>
<xs:element name="issued" minOccurs="0" maxOccurs="1" type="instant">
<xs:annotation>
<xs:documentation xml:lang="en">The date and time that this version of the report was made available to providers, typically after the report was reviewed and verified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performer" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The diagnostic service that is responsible for issuing the report.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="resultsInterpreter" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The practitioner or organization that is responsible for the report's conclusions and interpretations.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specimen" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Details about the specimens on which this diagnostic report is based.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="result" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">[Observations](observation.html) that are part of this diagnostic report.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="imagingStudy" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">One or more links to full details of any imaging performed during the diagnostic investigation. Typically, this is imaging performed by DICOM enabled modalities, but this is not required. A fully enabled PACS viewer can use this information to provide views of the source images.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="media" type="DiagnosticReport.Media" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A list of key images associated with this report. The images are generally created during the diagnostic process, and may be directly of the patient, or of treated specimens (i.e. slides of interest).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="conclusion" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Concise and clinically contextualized summary conclusion (interpretation/impression) of the diagnostic report.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="conclusionCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">One or more codes that represent the summary conclusion (interpretation/impression) of the diagnostic report.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="presentedForm" minOccurs="0" maxOccurs="unbounded" type="Attachment">
<xs:annotation>
<xs:documentation xml:lang="en">Rich text representation of the entire result as issued by the diagnostic service. Multiple formats are allowed but they SHALL be semantically equivalent.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DiagnosticReport.Media">
<xs:annotation>
<xs:documentation xml:lang="en">The findings and interpretation of diagnostic tests performed on patients, groups of patients, devices, and locations, and/or specimens derived from these. The report includes clinical context such as requesting and provider information, and some mix of atomic results, images, textual and coded interpretations, and formatted representation of diagnostic reports.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="comment" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A comment about the image. Typically, this is used to provide an explanation for why the image is included, or to draw the viewer's attention to important features.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="link" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to the image source.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="DiagnosticReportStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="registered">
<xs:annotation>
<xs:documentation xml:lang="en">Registered</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="partial">
<xs:annotation>
<xs:documentation xml:lang="en">Partial</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="preliminary">
<xs:annotation>
<xs:documentation xml:lang="en">Preliminary</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="final">
<xs:annotation>
<xs:documentation xml:lang="en">Final</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="amended">
<xs:annotation>
<xs:documentation xml:lang="en">Amended</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="corrected">
<xs:annotation>
<xs:documentation xml:lang="en">Corrected</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="appended">
<xs:annotation>
<xs:documentation xml:lang="en">Appended</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cancelled">
<xs:annotation>
<xs:documentation xml:lang="en">Cancelled</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unknown">
<xs:annotation>
<xs:documentation xml:lang="en">Unknown</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="DiagnosticReportStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the diagnostic report.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="DiagnosticReportStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="DocumentManifest" type="DocumentManifest">
<xs:annotation>
<xs:documentation xml:lang="en">A collection of documents compiled for a purpose together with metadata that applies to the collection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="DocumentManifest">
<xs:annotation>
<xs:documentation xml:lang="en">A collection of documents compiled for a purpose together with metadata that applies to the collection.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="masterIdentifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A single identifier that uniquely identifies this manifest. Principally used to refer to the manifest in non-FHIR contexts.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Other identifiers associated with the document manifest, including version independent identifiers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="DocumentReferenceStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this document manifest.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The code specifying the type of clinical activity that resulted in placing the associated content into the DocumentManifest.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Who or what the set of documents is about. The documents can be about a person, (patient or healthcare practitioner), a device (i.e. machine) or even a group of subjects (such as a document about a herd of farm animals, or a set of patients that share a common exposure). If the documents cross more than one subject, then more than one subject is allowed here (unusual use case).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="created" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">When the document manifest was created for submission to the server (not necessarily the same thing as the actual resource last modified time, since it may be modified, replicated, etc.).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies who is the author of the manifest. Manifest author is not necessarly the author of the references included.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="recipient" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A patient, practitioner, or organization for which this set of documents is intended.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the source system, application, or software that produced the document manifest.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Human-readable description of the source document. This is sometimes known as the &quot;title&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="content" minOccurs="1" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The list of Resources that consist of the parts of this manifest.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="related" type="DocumentManifest.Related" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Related identifiers or resources associated with the DocumentManifest.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DocumentManifest.Related">
<xs:annotation>
<xs:documentation xml:lang="en">A collection of documents compiled for a purpose together with metadata that applies to the collection.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Related identifier to this DocumentManifest. For example, Order numbers, accession numbers, XDW workflow numbers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ref" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Related Resource to this DocumentManifest. For example, Order, ServiceRequest, Procedure, EligibilityRequest, etc.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="DocumentReference" type="DocumentReference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a document of any kind for any purpose. Provides metadata about the document so that the document can be discovered and managed. The scope of a document is any seralized object with a mime-type, so includes formal patient centric documents (CDA), cliical notes, scanned paper, and non-patient specific documents like policy text.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="DocumentReference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a document of any kind for any purpose. Provides metadata about the document so that the document can be discovered and managed. The scope of a document is any seralized object with a mime-type, so includes formal patient centric documents (CDA), cliical notes, scanned paper, and non-patient specific documents like policy text.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="masterIdentifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Document identifier as assigned by the source of the document. This identifier is specific to this version of the document. This unique identifier may be used elsewhere to identify this version of the document.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Other identifiers associated with the document, including version independent identifiers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="DocumentReferenceStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this document reference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="docStatus" minOccurs="0" maxOccurs="1" type="CompositionStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the underlying document.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies the particular kind of document referenced (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the document referenced.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A categorization for the type of document referenced - helps for indexing and searching. This may be implied by or derived from the code specified in the DocumentReference.type.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Who or what the document is about. The document can be about a person, (patient or healthcare practitioner), a device (e.g. a machine) or even a group of subjects (such as a document about a herd of farm animals, or a set of patients that share a common exposure).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="instant">
<xs:annotation>
<xs:documentation xml:lang="en">When the document reference was created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies who is responsible for adding the information to the document.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="authenticator" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Which person or organization authenticates that this document is valid.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="custodian" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the organization or group who is responsible for ongoing maintenance of and access to the document.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relatesTo" type="DocumentReference.RelatesTo" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Relationships that this document has with other document references that already exist.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Human-readable description of the source document.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="securityLabel" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A set of Security-Tag codes specifying the level of privacy/security of the Document. Note that DocumentReference.meta.security contains the security labels of the &quot;reference&quot; to the document, while DocumentReference.securityLabel contains a snapshot of the security labels on the document the reference refers to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="content" type="DocumentReference.Content" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The document and format referenced. There may be multiple content element repetitions, each with a different format.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="context" type="DocumentReference.Context" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The clinical context in which the document was prepared.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DocumentReference.RelatesTo">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a document of any kind for any purpose. Provides metadata about the document so that the document can be discovered and managed. The scope of a document is any seralized object with a mime-type, so includes formal patient centric documents (CDA), cliical notes, scanned paper, and non-patient specific documents like policy text.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="DocumentRelationshipType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of relationship that this document has with anther document.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="target" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The target document of this relationship.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DocumentReference.Content">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a document of any kind for any purpose. Provides metadata about the document so that the document can be discovered and managed. The scope of a document is any seralized object with a mime-type, so includes formal patient centric documents (CDA), cliical notes, scanned paper, and non-patient specific documents like policy text.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="attachment" minOccurs="1" maxOccurs="1" type="Attachment">
<xs:annotation>
<xs:documentation xml:lang="en">The document or URL of the document along with critical metadata to prove content has integrity.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="format" minOccurs="0" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">An identifier of the document encoding, structure, and template that the document conforms to beyond the base format indicated in the mimeType.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DocumentReference.Context">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a document of any kind for any purpose. Provides metadata about the document so that the document can be discovered and managed. The scope of a document is any seralized object with a mime-type, so includes formal patient centric documents (CDA), cliical notes, scanned paper, and non-patient specific documents like policy text.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="encounter" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the clinical encounter or type of care that the document content is associated with.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="event" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">This list of codes represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the type Code, such as a &quot;History and Physical Report&quot; in which the procedure being documented is necessarily a &quot;History and Physical&quot; act.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The time period over which the service that is described by the document was provided.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="facilityType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The kind of facility where the patient was seen.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="practiceSetting" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">This property may convey specifics about the practice setting where the content was created, often reflecting the clinical specialty.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sourcePatientInfo" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The Patient Information as known when the document was published. May be a reference to a version specific, or contained.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="related" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Related identifiers or resources associated with the DocumentReference.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="EffectEvidenceSynthesis" type="EffectEvidenceSynthesis">
<xs:annotation>
<xs:documentation xml:lang="en">The EffectEvidenceSynthesis resource describes the difference in an outcome between exposures states in a population where the effect estimate is derived from a combination of research studies.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="EffectEvidenceSynthesis">
<xs:annotation>
<xs:documentation xml:lang="en">The EffectEvidenceSynthesis resource describes the difference in an outcome between exposures states in a population where the effect estimate is derived from a combination of research studies.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this effect evidence synthesis when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this effect evidence synthesis is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the effect evidence synthesis is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this effect evidence synthesis when it is represented in other formats, or referenced in a specification, model, design or an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the effect evidence synthesis when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the effect evidence synthesis author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the effect evidence synthesis. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the effect evidence synthesis.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this effect evidence synthesis. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the effect evidence synthesis was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the effect evidence synthesis changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the effect evidence synthesis.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the effect evidence synthesis from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">A human-readable string to clarify or explain concepts about the resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate effect evidence synthesis instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the effect evidence synthesis is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the effect evidence synthesis and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the effect evidence synthesis.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="approvalDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lastReviewDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="effectivePeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period during which the effect evidence synthesis content was or is planned to be in active use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="topic" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Descriptive topics related to the content of the EffectEvidenceSynthesis. Topics provide a high-level categorization grouping types of EffectEvidenceSynthesiss that can be useful for filtering and searching.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individiual or organization primarily involved in the creation and maintenance of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="editor" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for internal coherence of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reviewer" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for review of some aspect of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endorser" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization responsible for officially endorsing the content for use in some setting.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relatedArtifact" minOccurs="0" maxOccurs="unbounded" type="RelatedArtifact">
<xs:annotation>
<xs:documentation xml:lang="en">Related artifacts such as additional documentation, justification, or bibliographic references.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="synthesisType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of synthesis eg meta-analysis.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="studyType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of study eg randomized trial.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="population" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a EvidenceVariable resource that defines the population for the research.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="exposure" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a EvidenceVariable resource that defines the exposure for the research.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="exposureAlternative" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a EvidenceVariable resource that defines the comparison exposure for the research.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="outcome" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a EvidenceVariable resomece that defines the outcome for the research.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sampleSize" type="EffectEvidenceSynthesis.SampleSize" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A description of the size of the sample involved in the synthesis.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="resultsByExposure" type="EffectEvidenceSynthesis.ResultsByExposure" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A description of the results for each exposure considered in the effect estimate.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="effectEstimate" type="EffectEvidenceSynthesis.EffectEstimate" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The estimated effect of the exposure variant.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="certainty" type="EffectEvidenceSynthesis.Certainty" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A description of the certainty of the effect estimate.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="EffectEvidenceSynthesis.SampleSize">
<xs:annotation>
<xs:documentation xml:lang="en">The EffectEvidenceSynthesis resource describes the difference in an outcome between exposures states in a population where the effect estimate is derived from a combination of research studies.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Human-readable summary of sample size.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="numberOfStudies" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Number of studies included in this evidence synthesis.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="numberOfParticipants" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Number of participants included in this evidence synthesis.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="EffectEvidenceSynthesis.ResultsByExposure">
<xs:annotation>
<xs:documentation xml:lang="en">The EffectEvidenceSynthesis resource describes the difference in an outcome between exposures states in a population where the effect estimate is derived from a combination of research studies.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Human-readable summary of results by exposure state.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="exposureState" minOccurs="0" maxOccurs="1" type="ExposureState">
<xs:annotation>
<xs:documentation xml:lang="en">Whether these results are for the exposure state or alternative exposure state.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="variantState" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Used to define variant exposure states such as low-risk state.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="riskEvidenceSynthesis" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to a RiskEvidenceSynthesis resource.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="EffectEvidenceSynthesis.EffectEstimate">
<xs:annotation>
<xs:documentation xml:lang="en">The EffectEvidenceSynthesis resource describes the difference in an outcome between exposures states in a population where the effect estimate is derived from a combination of research studies.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Human-readable summary of effect estimate.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Examples include relative risk and mean difference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="variantState" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Used to define variant exposure states such as low-risk state.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="value" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">The point estimate of the effect estimate.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unitOfMeasure" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies the UCUM unit for the outcome.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="precisionEstimate" type="EffectEvidenceSynthesis.PrecisionEstimate" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A description of the precision of the estimate for the effect.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="EffectEvidenceSynthesis.PrecisionEstimate">
<xs:annotation>
<xs:documentation xml:lang="en">The EffectEvidenceSynthesis resource describes the difference in an outcome between exposures states in a population where the effect estimate is derived from a combination of research studies.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Examples include confidence interval and interquartile range.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="level" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Use 95 for a 95% confidence interval.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="from" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Lower bound of confidence interval.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="to" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Upper bound of confidence interval.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="EffectEvidenceSynthesis.Certainty">
<xs:annotation>
<xs:documentation xml:lang="en">The EffectEvidenceSynthesis resource describes the difference in an outcome between exposures states in a population where the effect estimate is derived from a combination of research studies.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="rating" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A rating of the certainty of the effect estimate.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">A human-readable string to clarify or explain concepts about the resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="certaintySubcomponent" type="EffectEvidenceSynthesis.CertaintySubcomponent" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A description of a component of the overall certainty.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="EffectEvidenceSynthesis.CertaintySubcomponent">
<xs:annotation>
<xs:documentation xml:lang="en">The EffectEvidenceSynthesis resource describes the difference in an outcome between exposures states in a population where the effect estimate is derived from a combination of research studies.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of subcomponent of certainty rating.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="rating" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A rating of a subcomponent of rating certainty.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">A human-readable string to clarify or explain concepts about the resource.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ExposureState-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="exposure">
<xs:annotation>
<xs:documentation xml:lang="en">Exposure</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="exposure-alternative">
<xs:annotation>
<xs:documentation xml:lang="en">Exposure Alternative</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ExposureState">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the results by exposure is describing the results for the primary exposure of interest (exposure) or the alternative state (exposureAlternative).</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ExposureState-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Encounter" type="Encounter">
<xs:annotation>
<xs:documentation xml:lang="en">An interaction between a patient and healthcare provider(s) for the purpose of providing healthcare service(s) or assessing the health status of a patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Encounter">
<xs:annotation>
<xs:documentation xml:lang="en">An interaction between a patient and healthcare provider(s) for the purpose of providing healthcare service(s) or assessing the health status of a patient.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier(s) by which this encounter is known.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="EncounterStatus">
<xs:annotation>
<xs:documentation xml:lang="en">planned | arrived | triaged | in-progress | onleave | finished | cancelled +.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="statusHistory" type="Encounter.StatusHistory" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The status history permits the encounter resource to contain the status history without needing to read through the historical versions of the resource, or even have the server store them.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="class" minOccurs="1" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">Concepts representing classification of patient encounter such as ambulatory (outpatient), inpatient, emergency, home health or others due to local variations.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="classHistory" type="Encounter.ClassHistory" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The class history permits the tracking of the encounters transitions without needing to go through the resource history. This would be used for a case where an admission starts of as an emergency encounter, then transitions into an inpatient scenario. Doing this and not restarting a new encounter ensures that any lab/diagnostic results can more easily follow the patient and not require re-processing and not get lost or cancelled during a kind of discharge from emergency to inpatient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Specific type of encounter (e.g. e-mail consultation, surgical day-care, skilled nursing, rehabilitation).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="serviceType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Broad categorization of the service that is to be provided (e.g. cardiology).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priority" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the urgency of the encounter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The patient or group present at the encounter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="episodeOfCare" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Where a specific encounter should be classified as a part of a specific episode(s) of care this field should be used. This association can facilitate grouping of related encounters together for a specific purpose, such as government reporting, issue tracking, association via a common problem. The association is recorded on the encounter as these are typically created after the episode of care and grouped on entry rather than editing the episode of care to append another encounter to it (the episode of care could span years).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basedOn" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The request this encounter satisfies (e.g. incoming referral or procedure request).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="participant" type="Encounter.Participant" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The list of people responsible for providing the service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="appointment" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The appointment that scheduled this encounter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The start and end time of the encounter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="length" minOccurs="0" maxOccurs="1" type="Duration">
<xs:annotation>
<xs:documentation xml:lang="en">Quantity of time the encounter lasted. This excludes the time during leaves of absence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Reason the encounter takes place, expressed as a code. For admissions, this can be used for a coded admission diagnosis.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reason the encounter takes place, expressed as a code. For admissions, this can be used for a coded admission diagnosis.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="diagnosis" type="Encounter.Diagnosis" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The list of diagnosis relevant to this encounter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="account" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The set of accounts that may be used for billing for this Encounter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="hospitalization" type="Encounter.Hospitalization" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Details about the admission to a healthcare service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="location" type="Encounter.Location" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">List of locations where the patient has been during this encounter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="serviceProvider" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The organization that is primarily responsible for this Encounter's services. This MAY be the same as the organization on the Patient record, however it could be different, such as if the actor performing the services was from an external organization (which may be billed seperately) for an external consultation. Refer to the example bundle showing an abbreviated set of Encounters for a colonoscopy.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partOf" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Another Encounter of which this encounter is a part of (administratively or in time).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Encounter.StatusHistory">
<xs:annotation>
<xs:documentation xml:lang="en">An interaction between a patient and healthcare provider(s) for the purpose of providing healthcare service(s) or assessing the health status of a patient.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="EncounterStatus">
<xs:annotation>
<xs:documentation xml:lang="en">planned | arrived | triaged | in-progress | onleave | finished | cancelled +.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="1" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The time that the episode was in the specified status.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Encounter.ClassHistory">
<xs:annotation>
<xs:documentation xml:lang="en">An interaction between a patient and healthcare provider(s) for the purpose of providing healthcare service(s) or assessing the health status of a patient.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="class" minOccurs="1" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">inpatient | outpatient | ambulatory | emergency +.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="1" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The time that the episode was in the specified class.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Encounter.Participant">
<xs:annotation>
<xs:documentation xml:lang="en">An interaction between a patient and healthcare provider(s) for the purpose of providing healthcare service(s) or assessing the health status of a patient.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Role of participant in encounter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period of time that the specified participant participated in the encounter. These can overlap or be sub-sets of the overall encounter's period.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="individual" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Persons involved in the encounter other than the patient.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Encounter.Diagnosis">
<xs:annotation>
<xs:documentation xml:lang="en">An interaction between a patient and healthcare provider(s) for the purpose of providing healthcare service(s) or assessing the health status of a patient.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="condition" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reason the encounter takes place, as specified using information from another resource. For admissions, this is the admission diagnosis. The indication will typically be a Condition (with other resources referenced in the evidence.detail), or a Procedure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="use" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Role that this diagnosis has within the encounter (e.g. admission, billing, discharge …).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="rank" minOccurs="0" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">Ranking of the diagnosis (for each role type).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Encounter.Hospitalization">
<xs:annotation>
<xs:documentation xml:lang="en">An interaction between a patient and healthcare provider(s) for the purpose of providing healthcare service(s) or assessing the health status of a patient.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="preAdmissionIdentifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Pre-admission identifier.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="origin" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The location/organization from which the patient came before admission.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="admitSource" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">From where patient was admitted (physician referral, transfer).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reAdmission" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Whether this hospitalization is a readmission and why if known.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dietPreference" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Diet preferences reported by the patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specialCourtesy" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Special courtesies (VIP, board member).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specialArrangement" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Any special requests that have been made for this hospitalization encounter, such as the provision of specific equipment or other things.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="destination" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Location/organization to which the patient is discharged.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dischargeDisposition" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Category or kind of location after discharge.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Encounter.Location">
<xs:annotation>
<xs:documentation xml:lang="en">An interaction between a patient and healthcare provider(s) for the purpose of providing healthcare service(s) or assessing the health status of a patient.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="location" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The location where the encounter takes place.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="EncounterLocationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the participants' presence at the specified location during the period specified. If the participant is no longer at the location, then the period will have an end date/time.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="physicalType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">This will be used to specify the required levels (bed/ward/room/etc.) desired to be recorded to simplify either messaging or query.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">Time period during which the patient was present at the location.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="EncounterLocationStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="planned">
<xs:annotation>
<xs:documentation xml:lang="en">Planned</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="active">
<xs:annotation>
<xs:documentation xml:lang="en">Active</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="reserved">
<xs:annotation>
<xs:documentation xml:lang="en">Reserved</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="completed">
<xs:annotation>
<xs:documentation xml:lang="en">Completed</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="EncounterLocationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the location.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="EncounterLocationStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="EncounterStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="planned">
<xs:annotation>
<xs:documentation xml:lang="en">Planned</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="arrived">
<xs:annotation>
<xs:documentation xml:lang="en">Arrived</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="triaged">
<xs:annotation>
<xs:documentation xml:lang="en">Triaged</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="in-progress">
<xs:annotation>
<xs:documentation xml:lang="en">In Progress</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="onleave">
<xs:annotation>
<xs:documentation xml:lang="en">On Leave</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="finished">
<xs:annotation>
<xs:documentation xml:lang="en">Finished</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cancelled">
<xs:annotation>
<xs:documentation xml:lang="en">Cancelled</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unknown">
<xs:annotation>
<xs:documentation xml:lang="en">Unknown</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="EncounterStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Current state of the encounter.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="EncounterStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Endpoint" type="Endpoint">
<xs:annotation>
<xs:documentation xml:lang="en">The technical details of an endpoint that can be used for electronic services, such as for web services providing XDS.b or a REST endpoint for another FHIR server. This may include any security context information.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Endpoint">
<xs:annotation>
<xs:documentation xml:lang="en">The technical details of an endpoint that can be used for electronic services, such as for web services providing XDS.b or a REST endpoint for another FHIR server. This may include any security context information.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier for the organization that is used to identify the endpoint across multiple disparate systems.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="EndpointStatus">
<xs:annotation>
<xs:documentation xml:lang="en">active | suspended | error | off | test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="connectionType" minOccurs="1" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">A coded value that represents the technical details of the usage of this endpoint, such as what WSDLs should be used in what way. (e.g. XDS.b/DICOM/cds-hook).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A friendly name that this endpoint can be referred to with.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="managingOrganization" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The organization that manages this endpoint (even if technically another organization is hosting this in the cloud, it is the organization associated with the data).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactPoint">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details for a human to contact about the subscription. The primary use of this for system administrator troubleshooting.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The interval during which the endpoint is expected to be operational.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="payloadType" minOccurs="1" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The payload type describes the acceptable content that can be communicated on the endpoint.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="payloadMimeType" minOccurs="0" maxOccurs="unbounded" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The mime type to send the payload in - e.g. application/fhir+xml, application/fhir+json. If the mime type is not specified, then the sender could send any content (including no content depending on the connectionType).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="address" minOccurs="1" maxOccurs="1" type="url">
<xs:annotation>
<xs:documentation xml:lang="en">The uri that describes the actual end-point to connect to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="header" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Additional headers / information to send as part of the notification.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="EndpointStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="active">
<xs:annotation>
<xs:documentation xml:lang="en">Active</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="suspended">
<xs:annotation>
<xs:documentation xml:lang="en">Suspended</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="error">
<xs:annotation>
<xs:documentation xml:lang="en">Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="off">
<xs:annotation>
<xs:documentation xml:lang="en">Off</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="test">
<xs:annotation>
<xs:documentation xml:lang="en">Test</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="EndpointStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the endpoint.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="EndpointStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="EnrollmentRequest" type="EnrollmentRequest">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the insurance enrollment details to the insurer regarding a specified coverage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="EnrollmentRequest">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the insurance enrollment details to the insurer regarding a specified coverage.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">The Response business identifier.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="FinancialResourceStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the resource instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="created" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date when this resource was created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="insurer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The Insurer who is target of the request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="provider" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The practitioner who is responsible for the services rendered to the patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="candidate" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Patient Resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="coverage" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to the program or plan identification, underwriter or payor.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="EnrollmentResponse" type="EnrollmentResponse">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides enrollment and plan details from the processing of an EnrollmentRequest resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="EnrollmentResponse">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides enrollment and plan details from the processing of an EnrollmentRequest resource.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">The Response business identifier.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="FinancialResourceStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the resource instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="request" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Original request resource reference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="outcome" minOccurs="0" maxOccurs="1" type="RemittanceOutcome">
<xs:annotation>
<xs:documentation xml:lang="en">Processing status: error, complete.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="disposition" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A description of the status of the adjudication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="created" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date when the enclosed suite of services were performed or completed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="organization" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The Insurer who produced this adjudicated response.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requestProvider" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The practitioner who is responsible for the services rendered to the patient.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="EpisodeOfCare" type="EpisodeOfCare">
<xs:annotation>
<xs:documentation xml:lang="en">An association between a patient and an organization / healthcare provider(s) during which time encounters may occur. The managing organization assumes a level of responsibility for the patient during this time.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="EpisodeOfCare">
<xs:annotation>
<xs:documentation xml:lang="en">An association between a patient and an organization / healthcare provider(s) during which time encounters may occur. The managing organization assumes a level of responsibility for the patient during this time.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">The EpisodeOfCare may be known by different identifiers for different contexts of use, such as when an external agency is tracking the Episode for funding purposes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="EpisodeOfCareStatus">
<xs:annotation>
<xs:documentation xml:lang="en">planned | waitlist | active | onhold | finished | cancelled.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="statusHistory" type="EpisodeOfCare.StatusHistory" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The history of statuses that the EpisodeOfCare has been through (without requiring processing the history of the resource).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A classification of the type of episode of care; e.g. specialist referral, disease management, type of funded care.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="diagnosis" type="EpisodeOfCare.Diagnosis" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The list of diagnosis relevant to this episode of care.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patient" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The patient who is the focus of this episode of care.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="managingOrganization" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The organization that has assumed the specific responsibilities for the specified duration.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The interval during which the managing organization assumes the defined responsibility.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referralRequest" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Referral Request(s) that are fulfilled by this EpisodeOfCare, incoming referrals.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="careManager" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The practitioner that is the care manager/care coordinator for this patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="team" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The list of practitioners that may be facilitating this episode of care for specific purposes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="account" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The set of accounts that may be used for billing for this EpisodeOfCare.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="EpisodeOfCare.StatusHistory">
<xs:annotation>
<xs:documentation xml:lang="en">An association between a patient and an organization / healthcare provider(s) during which time encounters may occur. The managing organization assumes a level of responsibility for the patient during this time.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="EpisodeOfCareStatus">
<xs:annotation>
<xs:documentation xml:lang="en">planned | waitlist | active | onhold | finished | cancelled.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="1" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period during this EpisodeOfCare that the specific status applied.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="EpisodeOfCare.Diagnosis">
<xs:annotation>
<xs:documentation xml:lang="en">An association between a patient and an organization / healthcare provider(s) during which time encounters may occur. The managing organization assumes a level of responsibility for the patient during this time.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="condition" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A list of conditions/problems/diagnoses that this episode of care is intended to be providing care for.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="role" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Role that this diagnosis has within the episode of care (e.g. admission, billing, discharge …).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="rank" minOccurs="0" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">Ranking of the diagnosis (for each role type).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="EpisodeOfCareStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="planned">
<xs:annotation>
<xs:documentation xml:lang="en">Planned</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="waitlist">
<xs:annotation>
<xs:documentation xml:lang="en">Waitlist</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="active">
<xs:annotation>
<xs:documentation xml:lang="en">Active</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="onhold">
<xs:annotation>
<xs:documentation xml:lang="en">On Hold</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="finished">
<xs:annotation>
<xs:documentation xml:lang="en">Finished</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cancelled">
<xs:annotation>
<xs:documentation xml:lang="en">Cancelled</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="EpisodeOfCareStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the episode of care.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="EpisodeOfCareStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="EventDefinition" type="EventDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">The EventDefinition resource provides a reusable description of when a particular event can occur.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="EventDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">The EventDefinition resource provides a reusable description of when a particular event can occur.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this event definition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this event definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the event definition is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this event definition when it is represented in other formats, or referenced in a specification, model, design or an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the event definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the event definition author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the event definition. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the event definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subtitle" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">An explanatory or alternate title for the event definition giving additional information about its content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this event definition. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this event definition is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">A code or group definition that describes the intended subject of the event definition.</xs:documentation>
</xs:annotation>
<xs:element name="subjectCodeableConcept" type="CodeableConcept"/>
<xs:element name="subjectReference" type="Reference"/>
</xs:choice>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the event definition was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the event definition changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the event definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the event definition from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate event definition instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the event definition is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Explanation of why this event definition is needed and why it has been designed as it has.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="usage" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A detailed description of how the event definition is used from a clinical perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the event definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the event definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="approvalDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lastReviewDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="effectivePeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period during which the event definition content was or is planned to be in active use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="topic" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Descriptive topics related to the module. Topics provide a high-level categorization of the module that can be useful for filtering and searching.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individiual or organization primarily involved in the creation and maintenance of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="editor" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for internal coherence of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reviewer" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for review of some aspect of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endorser" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization responsible for officially endorsing the content for use in some setting.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relatedArtifact" minOccurs="0" maxOccurs="unbounded" type="RelatedArtifact">
<xs:annotation>
<xs:documentation xml:lang="en">Related resources such as additional documentation, justification, or bibliographic references.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="trigger" minOccurs="1" maxOccurs="unbounded" type="TriggerDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">The trigger element defines when the event occurs. If more than one trigger condition is specified, the event fires whenever any one of the trigger conditions is met.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Evidence" type="Evidence">
<xs:annotation>
<xs:documentation xml:lang="en">The Evidence resource describes the conditional state (population and any exposures being compared within the population) and outcome (if specified) that the knowledge (evidence, assertion, recommendation) is about.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Evidence">
<xs:annotation>
<xs:documentation xml:lang="en">The Evidence resource describes the conditional state (population and any exposures being compared within the population) and outcome (if specified) that the knowledge (evidence, assertion, recommendation) is about.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this evidence when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this evidence is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the evidence is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this evidence when it is represented in other formats, or referenced in a specification, model, design or an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the evidence when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the evidence author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. To provide a version consistent with the Decision Support Service specification, use the format Major.Minor.Revision (e.g. 1.0.0). For more information on versioning knowledge assets, refer to the Decision Support Service specification. Note that a version is required for non-experimental active artifacts.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the evidence. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the evidence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="shortTitle" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The short title provides an alternate title for use in informal descriptive contexts where the full, formal title is not necessary.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subtitle" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">An explanatory or alternate title for the Evidence giving additional information about its content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this evidence. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the evidence was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the evidence changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the evidence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the evidence from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">A human-readable string to clarify or explain concepts about the resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate evidence instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the evidence is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the evidence and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the evidence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="approvalDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lastReviewDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="effectivePeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period during which the evidence content was or is planned to be in active use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="topic" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Descriptive topics related to the content of the Evidence. Topics provide a high-level categorization grouping types of Evidences that can be useful for filtering and searching.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individiual or organization primarily involved in the creation and maintenance of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="editor" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for internal coherence of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reviewer" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for review of some aspect of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endorser" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization responsible for officially endorsing the content for use in some setting.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relatedArtifact" minOccurs="0" maxOccurs="unbounded" type="RelatedArtifact">
<xs:annotation>
<xs:documentation xml:lang="en">Related artifacts such as additional documentation, justification, or bibliographic references.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="exposureBackground" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a EvidenceVariable resource that defines the population for the research.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="exposureVariant" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a EvidenceVariable resource that defines the exposure for the research.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="outcome" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a EvidenceVariable resomece that defines the outcome for the research.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="EvidenceVariable" type="EvidenceVariable">
<xs:annotation>
<xs:documentation xml:lang="en">The EvidenceVariable resource describes a &quot;PICO&quot; element that knowledge (evidence, assertion, recommendation) is about.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="EvidenceVariable">
<xs:annotation>
<xs:documentation xml:lang="en">The EvidenceVariable resource describes a &quot;PICO&quot; element that knowledge (evidence, assertion, recommendation) is about.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this evidence variable when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this evidence variable is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the evidence variable is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this evidence variable when it is represented in other formats, or referenced in a specification, model, design or an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the evidence variable when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the evidence variable author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. To provide a version consistent with the Decision Support Service specification, use the format Major.Minor.Revision (e.g. 1.0.0). For more information on versioning knowledge assets, refer to the Decision Support Service specification. Note that a version is required for non-experimental active artifacts.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the evidence variable. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the evidence variable.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="shortTitle" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The short title provides an alternate title for use in informal descriptive contexts where the full, formal title is not necessary.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subtitle" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">An explanatory or alternate title for the EvidenceVariable giving additional information about its content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this evidence variable. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the evidence variable was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the evidence variable changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the evidence variable.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the evidence variable from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">A human-readable string to clarify or explain concepts about the resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate evidence variable instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the evidence variable is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the evidence variable and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the evidence variable.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="approvalDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lastReviewDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="effectivePeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period during which the evidence variable content was or is planned to be in active use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="topic" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Descriptive topics related to the content of the EvidenceVariable. Topics provide a high-level categorization grouping types of EvidenceVariables that can be useful for filtering and searching.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individiual or organization primarily involved in the creation and maintenance of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="editor" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for internal coherence of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reviewer" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for review of some aspect of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endorser" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization responsible for officially endorsing the content for use in some setting.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relatedArtifact" minOccurs="0" maxOccurs="unbounded" type="RelatedArtifact">
<xs:annotation>
<xs:documentation xml:lang="en">Related artifacts such as additional documentation, justification, or bibliographic references.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="EvidenceVariableType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of evidence element, a population, an exposure, or an outcome.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="characteristic" type="EvidenceVariable.Characteristic" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A characteristic that defines the members of the evidence element. Multiple characteristics are applied with &quot;and&quot; semantics.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="EvidenceVariable.Characteristic">
<xs:annotation>
<xs:documentation xml:lang="en">The EvidenceVariable resource describes a &quot;PICO&quot; element that knowledge (evidence, assertion, recommendation) is about.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, natural language description of the characteristic that could be used to communicate the criteria to an end-user.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Define members of the evidence element using Codes (such as condition, medication, or observation), Expressions ( using an expression language such as FHIRPath or CQL) or DataRequirements (such as Diabetes diagnosis onset in the last year).</xs:documentation>
</xs:annotation>
<xs:element name="definitionReference" type="Reference"/>
<xs:element name="definitionCanonical" type="canonical"/>
<xs:element name="definitionCodeableConcept" type="CodeableConcept"/>
<xs:element name="definitionExpression" type="Expression"/>
<xs:element name="definitionDataRequirement" type="DataRequirement"/>
<xs:element name="definitionTriggerDefinition" type="TriggerDefinition"/>
</xs:choice>
<xs:element name="usageContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">Use UsageContext to define the members of the population, such as Age Ranges, Genders, Settings.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="exclude" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">When true, members with this characteristic are excluded from the element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Indicates what effective period the study covers.</xs:documentation>
</xs:annotation>
<xs:element name="participantEffectiveDateTime" type="dateTime"/>
<xs:element name="participantEffectivePeriod" type="Period"/>
<xs:element name="participantEffectiveDuration" type="Duration"/>
<xs:element name="participantEffectiveTiming" type="Timing"/>
</xs:choice>
<xs:element name="timeFromStart" minOccurs="0" maxOccurs="1" type="Duration">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates duration from the participant's study entry.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="groupMeasure" minOccurs="0" maxOccurs="1" type="GroupMeasure">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates how elements are aggregated within the study effective period.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="EvidenceVariableType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="dichotomous">
<xs:annotation>
<xs:documentation xml:lang="en">Dichotomous</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="continuous">
<xs:annotation>
<xs:documentation xml:lang="en">Continuous</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="descriptive">
<xs:annotation>
<xs:documentation xml:lang="en">Descriptive</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="EvidenceVariableType">
<xs:annotation>
<xs:documentation xml:lang="en">The possible types of variables for exposures or outcomes (E.g. Dichotomous, Continuous, Descriptive).</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="EvidenceVariableType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="GroupMeasure-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="mean">
<xs:annotation>
<xs:documentation xml:lang="en">Mean</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="median">
<xs:annotation>
<xs:documentation xml:lang="en">Median</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="mean-of-mean">
<xs:annotation>
<xs:documentation xml:lang="en">Mean of Study Means</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="mean-of-median">
<xs:annotation>
<xs:documentation xml:lang="en">Mean of Study Medins</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="median-of-mean">
<xs:annotation>
<xs:documentation xml:lang="en">Median of Study Means</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="median-of-median">
<xs:annotation>
<xs:documentation xml:lang="en">Median of Study Medians</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="GroupMeasure">
<xs:annotation>
<xs:documentation xml:lang="en">Possible group measure aggregates (E.g. Mean, Median).</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="GroupMeasure-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="ExampleScenario" type="ExampleScenario">
<xs:annotation>
<xs:documentation xml:lang="en">Example of workflow instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ExampleScenario">
<xs:annotation>
<xs:documentation xml:lang="en">Example of workflow instance.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this example scenario when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this example scenario is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the example scenario is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this example scenario when it is represented in other formats, or referenced in a specification, model, design or an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the example scenario when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the example scenario author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the example scenario. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this example scenario. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this example scenario is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the example scenario was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the example scenario changes. (e.g. the 'content logical definition').</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the example scenario.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate example scenario instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the example scenario is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the example scenario and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the example scenario.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">What the example scenario resource is created for. This should not be used to show the business purpose of the scenario itself, but the purpose of documenting a scenario.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="actor" type="ExampleScenario.Actor" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Actor participating in the resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instance" type="ExampleScenario.Instance" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Each resource and each version that is present in the workflow.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="process" type="ExampleScenario.Process" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Each major process - a group of operations.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="workflow" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">Another nested workflow.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExampleScenario.Actor">
<xs:annotation>
<xs:documentation xml:lang="en">Example of workflow instance.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="actorId" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">ID or acronym of actor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="ExampleScenarioActorType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of actor - person or system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the actor as shown in the page.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">The description of the actor.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExampleScenario.Instance">
<xs:annotation>
<xs:documentation xml:lang="en">Example of workflow instance.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="resourceId" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The id of the resource for referencing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="resourceType" minOccurs="1" maxOccurs="1" type="ResourceType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of the resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short name for the resource instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Human-friendly description of the resource instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" type="ExampleScenario.Version" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A specific version of the resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="containedInstance" type="ExampleScenario.ContainedInstance" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Resources contained in the instance (e.g. the observations contained in a bundle).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExampleScenario.Version">
<xs:annotation>
<xs:documentation xml:lang="en">Example of workflow instance.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="versionId" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier of a specific version of a resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="1" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">The description of the resource version.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExampleScenario.ContainedInstance">
<xs:annotation>
<xs:documentation xml:lang="en">Example of workflow instance.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="resourceId" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Each resource contained in the instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="versionId" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A specific version of a resource contained in the instance.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExampleScenario.Process">
<xs:annotation>
<xs:documentation xml:lang="en">Example of workflow instance.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="title" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The diagram title of the group of operations.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A longer description of the group of operations.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="preConditions" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Description of initial status before the process starts.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="postConditions" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Description of final status after the process ends.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="step" type="ExampleScenario.Step" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Each step of the process.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExampleScenario.Step">
<xs:annotation>
<xs:documentation xml:lang="en">Example of workflow instance.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="process" type="ExampleScenario.Process" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Nested process.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="pause" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">If there is a pause in the flow.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="operation" type="ExampleScenario.Operation" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Each interaction or action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="alternative" type="ExampleScenario.Alternative" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates an alternative step that can be taken instead of the operations on the base step in exceptional/atypical circumstances.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExampleScenario.Operation">
<xs:annotation>
<xs:documentation xml:lang="en">Example of workflow instance.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="number" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The sequential number of the interaction, e.g. 1.2.5.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The type of operation - CRUD.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The human-friendly name of the interaction.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="initiator" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Who starts the transaction.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="receiver" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Who receives the transaction.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A comment to be inserted in the diagram.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="initiatorActive" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the initiator is deactivated right after the transaction.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="receiverActive" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the receiver is deactivated right after the transaction.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="request" type="ExampleScenario.ContainedInstance" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Each resource instance used by the initiator.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="response" type="ExampleScenario.ContainedInstance" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Each resource instance used by the responder.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExampleScenario.Alternative">
<xs:annotation>
<xs:documentation xml:lang="en">Example of workflow instance.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="title" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The label to display for the alternative that gives a sense of the circumstance in which the alternative should be invoked.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A human-readable description of the alternative explaining when the alternative should occur rather than the base step.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="step" type="ExampleScenario.Step" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">What happens in each alternative option.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ExampleScenarioActorType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="person">
<xs:annotation>
<xs:documentation xml:lang="en">Person</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entity">
<xs:annotation>
<xs:documentation xml:lang="en">System</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ExampleScenarioActorType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of actor - system or human.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ExampleScenarioActorType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ResourceType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="Account">
<xs:annotation>
<xs:documentation xml:lang="en">Account</xs:documentation>
<xs:documentation xml:lang="en">Account</xs:documentation>
<xs:documentation xml:lang="es">Cuenta</xs:documentation>
<xs:documentation xml:lang="zh">账户</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ActivityDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">ActivityDefinition</xs:documentation>
<xs:documentation xml:lang="en">ActivityDefinition</xs:documentation>
<xs:documentation xml:lang="it">DefinizioneAttivita</xs:documentation>
<xs:documentation xml:lang="es">DefinicionDeActividad</xs:documentation>
<xs:documentation xml:lang="zh">活动定义</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AdverseEvent">
<xs:annotation>
<xs:documentation xml:lang="en">AdverseEvent</xs:documentation>
<xs:documentation xml:lang="en">AdverseEvent</xs:documentation>
<xs:documentation xml:lang="it">EventoAvverso</xs:documentation>
<xs:documentation xml:lang="es">EventoAdverso</xs:documentation>
<xs:documentation xml:lang="zh">不良事件</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AllergyIntolerance">
<xs:annotation>
<xs:documentation xml:lang="en">AllergyIntolerance</xs:documentation>
<xs:documentation xml:lang="en">AllergyIntolerance</xs:documentation>
<xs:documentation xml:lang="it">AllergiaIntolleranza</xs:documentation>
<xs:documentation xml:lang="fr">IntoléranceAllergique</xs:documentation>
<xs:documentation xml:lang="es">AllergiaIntolerancia</xs:documentation>
<xs:documentation xml:lang="zh">变态反应与不耐性</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Appointment">
<xs:annotation>
<xs:documentation xml:lang="en">Appointment</xs:documentation>
<xs:documentation xml:lang="en">Appointment</xs:documentation>
<xs:documentation xml:lang="it">Appuntamento</xs:documentation>
<xs:documentation xml:lang="fr">RendezVous</xs:documentation>
<xs:documentation xml:lang="es">Cita</xs:documentation>
<xs:documentation xml:lang="zh">预约</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AppointmentResponse">
<xs:annotation>
<xs:documentation xml:lang="en">AppointmentResponse</xs:documentation>
<xs:documentation xml:lang="en">AppointmentResponse</xs:documentation>
<xs:documentation xml:lang="it">RispostaAppuntamento</xs:documentation>
<xs:documentation xml:lang="fr">RéponseRendezVous</xs:documentation>
<xs:documentation xml:lang="es">CitaRespuesta</xs:documentation>
<xs:documentation xml:lang="zh">预约响应</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AuditEvent">
<xs:annotation>
<xs:documentation xml:lang="en">AuditEvent</xs:documentation>
<xs:documentation xml:lang="en">AuditEvent</xs:documentation>
<xs:documentation xml:lang="fr">ÉvènementSécurité</xs:documentation>
<xs:documentation xml:lang="es">EventoSeguridad</xs:documentation>
<xs:documentation xml:lang="zh">审计事件</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Basic">
<xs:annotation>
<xs:documentation xml:lang="en">Basic</xs:documentation>
<xs:documentation xml:lang="en">Basic</xs:documentation>
<xs:documentation xml:lang="fr">Basique</xs:documentation>
<xs:documentation xml:lang="es">Basico</xs:documentation>
<xs:documentation xml:lang="zh">初级资源</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Binary">
<xs:annotation>
<xs:documentation xml:lang="en">Binary</xs:documentation>
<xs:documentation xml:lang="en">Binary</xs:documentation>
<xs:documentation xml:lang="it">Binario</xs:documentation>
<xs:documentation xml:lang="fr">Binaire</xs:documentation>
<xs:documentation xml:lang="es">Binario</xs:documentation>
<xs:documentation xml:lang="zh">二进制资源</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="BiologicallyDerivedProduct">
<xs:annotation>
<xs:documentation xml:lang="en">BiologicallyDerivedProduct</xs:documentation>
<xs:documentation xml:lang="en">BiologicallyDerivedProduct</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="BodyStructure">
<xs:annotation>
<xs:documentation xml:lang="en">BodyStructure</xs:documentation>
<xs:documentation xml:lang="en">BodyStructure</xs:documentation>
<xs:documentation xml:lang="it">StrutturaDelCorpo</xs:documentation>
<xs:documentation xml:lang="fr">MorphologieDeCorps</xs:documentation>
<xs:documentation xml:lang="es">EstructuraDelCuerpo</xs:documentation>
<xs:documentation xml:lang="zh">身体结构</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Bundle">
<xs:annotation>
<xs:documentation xml:lang="en">Bundle</xs:documentation>
<xs:documentation xml:lang="en">Bundle</xs:documentation>
<xs:documentation xml:lang="fr">Paquet</xs:documentation>
<xs:documentation xml:lang="es">Paquete</xs:documentation>
<xs:documentation xml:lang="zh">捆束</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CapabilityStatement">
<xs:annotation>
<xs:documentation xml:lang="en">CapabilityStatement</xs:documentation>
<xs:documentation xml:lang="en">CapabilityStatement</xs:documentation>
<xs:documentation xml:lang="es">DeclaracionDeCapacidad</xs:documentation>
<xs:documentation xml:lang="zh">能力声明</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CarePlan">
<xs:annotation>
<xs:documentation xml:lang="en">CarePlan</xs:documentation>
<xs:documentation xml:lang="en">CarePlan</xs:documentation>
<xs:documentation xml:lang="it">PianoDiCura</xs:documentation>
<xs:documentation xml:lang="fr">PlanDeSoins</xs:documentation>
<xs:documentation xml:lang="es">PlanDeCuidado</xs:documentation>
<xs:documentation xml:lang="zh">照护计划</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CareTeam">
<xs:annotation>
<xs:documentation xml:lang="en">CareTeam</xs:documentation>
<xs:documentation xml:lang="en">CareTeam</xs:documentation>
<xs:documentation xml:lang="es">EquipoDeCuidado</xs:documentation>
<xs:documentation xml:lang="zh">照护团队</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CatalogEntry">
<xs:annotation>
<xs:documentation xml:lang="en">CatalogEntry</xs:documentation>
<xs:documentation xml:lang="en">CatalogEntry</xs:documentation>
<xs:documentation xml:lang="es">EntradaDeCatalogo</xs:documentation>
<xs:documentation xml:lang="zh">条目定义</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ChargeItem">
<xs:annotation>
<xs:documentation xml:lang="en">ChargeItem</xs:documentation>
<xs:documentation xml:lang="en">ChargeItem</xs:documentation>
<xs:documentation xml:lang="es">CargoDeItem</xs:documentation>
<xs:documentation xml:lang="zh">收费项目</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ChargeItemDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">ChargeItemDefinition</xs:documentation>
<xs:documentation xml:lang="en">ChargeItemDefinition</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Claim">
<xs:annotation>
<xs:documentation xml:lang="en">Claim</xs:documentation>
<xs:documentation xml:lang="en">Claim</xs:documentation>
<xs:documentation xml:lang="fr">Réclamation</xs:documentation>
<xs:documentation xml:lang="es">Reclamación / Factura</xs:documentation>
<xs:documentation xml:lang="zh">赔单</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ClaimResponse">
<xs:annotation>
<xs:documentation xml:lang="en">ClaimResponse</xs:documentation>
<xs:documentation xml:lang="en">ClaimResponse</xs:documentation>
<xs:documentation xml:lang="fr">RéponseARéclamation</xs:documentation>
<xs:documentation xml:lang="zh">赔单请求</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ClinicalImpression">
<xs:annotation>
<xs:documentation xml:lang="en">ClinicalImpression</xs:documentation>
<xs:documentation xml:lang="en">ClinicalImpression</xs:documentation>
<xs:documentation xml:lang="it">ImpressioneClinica</xs:documentation>
<xs:documentation xml:lang="fr">ImpressionClinique</xs:documentation>
<xs:documentation xml:lang="es">HallazgoClinico</xs:documentation>
<xs:documentation xml:lang="zh">临床印象</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CodeSystem">
<xs:annotation>
<xs:documentation xml:lang="en">CodeSystem</xs:documentation>
<xs:documentation xml:lang="en">CodeSystem</xs:documentation>
<xs:documentation xml:lang="it">SistemaDiCodifica</xs:documentation>
<xs:documentation xml:lang="es">SistemaDeCodigos</xs:documentation>
<xs:documentation xml:lang="zh">代码系统</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Communication">
<xs:annotation>
<xs:documentation xml:lang="en">Communication</xs:documentation>
<xs:documentation xml:lang="en">Communication</xs:documentation>
<xs:documentation xml:lang="it">Comunicazione</xs:documentation>
<xs:documentation xml:lang="fr">Communication</xs:documentation>
<xs:documentation xml:lang="es">Comunicación</xs:documentation>
<xs:documentation xml:lang="zh">通讯</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CommunicationRequest">
<xs:annotation>
<xs:documentation xml:lang="en">CommunicationRequest</xs:documentation>
<xs:documentation xml:lang="en">CommunicationRequest</xs:documentation>
<xs:documentation xml:lang="it">RichiestaDiComunicazione</xs:documentation>
<xs:documentation xml:lang="fr">DemandeDeCommunication</xs:documentation>
<xs:documentation xml:lang="es">ComunicaciónRequerimiento</xs:documentation>
<xs:documentation xml:lang="zh">通讯请求</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CompartmentDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">CompartmentDefinition</xs:documentation>
<xs:documentation xml:lang="en">CompartmentDefinition</xs:documentation>
<xs:documentation xml:lang="es">DefinicionDeCompartimento</xs:documentation>
<xs:documentation xml:lang="zh">逻辑区块定义</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Composition">
<xs:annotation>
<xs:documentation xml:lang="en">Composition</xs:documentation>
<xs:documentation xml:lang="en">Composition</xs:documentation>
<xs:documentation xml:lang="it">Composizione</xs:documentation>
<xs:documentation xml:lang="fr">Composition</xs:documentation>
<xs:documentation xml:lang="es">Composición</xs:documentation>
<xs:documentation xml:lang="zh">组合式文书</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ConceptMap">
<xs:annotation>
<xs:documentation xml:lang="en">ConceptMap</xs:documentation>
<xs:documentation xml:lang="en">ConceptMap</xs:documentation>
<xs:documentation xml:lang="it">MappaDiConcetti</xs:documentation>
<xs:documentation xml:lang="fr">CarteDeConcepts</xs:documentation>
<xs:documentation xml:lang="es">MapaDeConceptos</xs:documentation>
<xs:documentation xml:lang="zh">概念映射</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Condition">
<xs:annotation>
<xs:documentation xml:lang="en">Condition</xs:documentation>
<xs:documentation xml:lang="en">Condition</xs:documentation>
<xs:documentation xml:lang="it">Condizione</xs:documentation>
<xs:documentation xml:lang="fr">Condition</xs:documentation>
<xs:documentation xml:lang="es">Condición</xs:documentation>
<xs:documentation xml:lang="zh">情况</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Consent">
<xs:annotation>
<xs:documentation xml:lang="en">Consent</xs:documentation>
<xs:documentation xml:lang="en">Consent</xs:documentation>
<xs:documentation xml:lang="it">Consenso</xs:documentation>
<xs:documentation xml:lang="es">Consentimiento</xs:documentation>
<xs:documentation xml:lang="zh">同意书</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Contract">
<xs:annotation>
<xs:documentation xml:lang="en">Contract</xs:documentation>
<xs:documentation xml:lang="en">Contract</xs:documentation>
<xs:documentation xml:lang="it">Contratto</xs:documentation>
<xs:documentation xml:lang="fr">Contrat</xs:documentation>
<xs:documentation xml:lang="es">Contato</xs:documentation>
<xs:documentation xml:lang="zh">合同</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Coverage">
<xs:annotation>
<xs:documentation xml:lang="en">Coverage</xs:documentation>
<xs:documentation xml:lang="en">Coverage</xs:documentation>
<xs:documentation xml:lang="it">Copertura</xs:documentation>
<xs:documentation xml:lang="fr">Couverture</xs:documentation>
<xs:documentation xml:lang="es">Cobertura</xs:documentation>
<xs:documentation xml:lang="zh">保险责任</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CoverageEligibilityRequest">
<xs:annotation>
<xs:documentation xml:lang="en">CoverageEligibilityRequest</xs:documentation>
<xs:documentation xml:lang="en">CoverageEligibilityRequest</xs:documentation>
<xs:documentation xml:lang="it">RichiestaEleggibilitaCopertura</xs:documentation>
<xs:documentation xml:lang="fr">CouvertureDemandeEligibilité</xs:documentation>
<xs:documentation xml:lang="zh">资格请求</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CoverageEligibilityResponse">
<xs:annotation>
<xs:documentation xml:lang="en">CoverageEligibilityResponse</xs:documentation>
<xs:documentation xml:lang="en">CoverageEligibilityResponse</xs:documentation>
<xs:documentation xml:lang="it">RispostaEleggibilitaCopertura</xs:documentation>
<xs:documentation xml:lang="fr">RéponseEligibilitéCouverture</xs:documentation>
<xs:documentation xml:lang="zh">资格响应</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="DetectedIssue">
<xs:annotation>
<xs:documentation xml:lang="en">DetectedIssue</xs:documentation>
<xs:documentation xml:lang="en">DetectedIssue</xs:documentation>
<xs:documentation xml:lang="it">ProblemaRilevato</xs:documentation>
<xs:documentation xml:lang="fr">Problème Détecté</xs:documentation>
<xs:documentation xml:lang="es">Problema-Detectado /ProblemaDetectado</xs:documentation>
<xs:documentation xml:lang="zh">已发现问题</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Device">
<xs:annotation>
<xs:documentation xml:lang="en">Device</xs:documentation>
<xs:documentation xml:lang="en">Device</xs:documentation>
<xs:documentation xml:lang="it">Dispositivo</xs:documentation>
<xs:documentation xml:lang="fr">Dispositif</xs:documentation>
<xs:documentation xml:lang="es">Dispositivo</xs:documentation>
<xs:documentation xml:lang="zh">装置</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="DeviceDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">DeviceDefinition</xs:documentation>
<xs:documentation xml:lang="en">DeviceDefinition</xs:documentation>
<xs:documentation xml:lang="fr">DéfinitionDeDispositif</xs:documentation>
<xs:documentation xml:lang="es">DefiniciónDeDispositivo</xs:documentation>
<xs:documentation xml:lang="zh">装置组件</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="DeviceMetric">
<xs:annotation>
<xs:documentation xml:lang="en">DeviceMetric</xs:documentation>
<xs:documentation xml:lang="en">DeviceMetric</xs:documentation>
<xs:documentation xml:lang="fr">MétriqueDispositif</xs:documentation>
<xs:documentation xml:lang="es">MetricaDeDispositivo</xs:documentation>
<xs:documentation xml:lang="zh">装置指标</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="DeviceRequest">
<xs:annotation>
<xs:documentation xml:lang="en">DeviceRequest</xs:documentation>
<xs:documentation xml:lang="en">DeviceRequest</xs:documentation>
<xs:documentation xml:lang="it">RichiestaDispositivo</xs:documentation>
<xs:documentation xml:lang="fr">DemandeUtilisationDispositif</xs:documentation>
<xs:documentation xml:lang="es">SolicitudDeDispositivo</xs:documentation>
<xs:documentation xml:lang="zh">装置请求</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="DeviceUseStatement">
<xs:annotation>
<xs:documentation xml:lang="en">DeviceUseStatement</xs:documentation>
<xs:documentation xml:lang="en">DeviceUseStatement</xs:documentation>
<xs:documentation xml:lang="zh">装置使用声明</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="DiagnosticReport">
<xs:annotation>
<xs:documentation xml:lang="en">DiagnosticReport</xs:documentation>
<xs:documentation xml:lang="en">DiagnosticReport</xs:documentation>
<xs:documentation xml:lang="it">RefertoDiagnostico</xs:documentation>
<xs:documentation xml:lang="fr">RapportDiagnostique</xs:documentation>
<xs:documentation xml:lang="zh">诊断报告</xs:documentation>
<xs:documentation xml:lang="es">InformeDiagnostico</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="DocumentManifest">
<xs:annotation>
<xs:documentation xml:lang="en">DocumentManifest</xs:documentation>
<xs:documentation xml:lang="en">DocumentManifest</xs:documentation>
<xs:documentation xml:lang="fr">Manifeste</xs:documentation>
<xs:documentation xml:lang="zh">文档清单</xs:documentation>
<xs:documentation xml:lang="es">ManifestoDocumento</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="DocumentReference">
<xs:annotation>
<xs:documentation xml:lang="en">DocumentReference</xs:documentation>
<xs:documentation xml:lang="en">DocumentReference</xs:documentation>
<xs:documentation xml:lang="it">RiferimentoDocumento</xs:documentation>
<xs:documentation xml:lang="fr">RéférenceDocument</xs:documentation>
<xs:documentation xml:lang="es">ReferenciaDocumento</xs:documentation>
<xs:documentation xml:lang="zh">文档引用</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="DomainResource">
<xs:annotation>
<xs:documentation xml:lang="en">DomainResource</xs:documentation>
<xs:documentation xml:lang="en">DomainResource</xs:documentation>
<xs:documentation xml:lang="es">RecursoDeDominio</xs:documentation>
<xs:documentation xml:lang="zh">领域资源</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="EffectEvidenceSynthesis">
<xs:annotation>
<xs:documentation xml:lang="en">EffectEvidenceSynthesis</xs:documentation>
<xs:documentation xml:lang="en">EffectEvidenceSynthesis</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Encounter">
<xs:annotation>
<xs:documentation xml:lang="en">Encounter</xs:documentation>
<xs:documentation xml:lang="en">Encounter</xs:documentation>
<xs:documentation xml:lang="fr">Venue</xs:documentation>
<xs:documentation xml:lang="zh">就医过程</xs:documentation>
<xs:documentation xml:lang="es">Encuentro</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Endpoint">
<xs:annotation>
<xs:documentation xml:lang="en">Endpoint</xs:documentation>
<xs:documentation xml:lang="en">Endpoint</xs:documentation>
<xs:documentation xml:lang="es">Endpoint</xs:documentation>
<xs:documentation xml:lang="zh">端点</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="EnrollmentRequest">
<xs:annotation>
<xs:documentation xml:lang="en">EnrollmentRequest</xs:documentation>
<xs:documentation xml:lang="en">EnrollmentRequest</xs:documentation>
<xs:documentation xml:lang="it">RichiestaIscrizione</xs:documentation>
<xs:documentation xml:lang="fr">DemandeInscription</xs:documentation>
<xs:documentation xml:lang="es">SolicitudDeEnrolamiento</xs:documentation>
<xs:documentation xml:lang="zh">保险注册请求</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="EnrollmentResponse">
<xs:annotation>
<xs:documentation xml:lang="en">EnrollmentResponse</xs:documentation>
<xs:documentation xml:lang="en">EnrollmentResponse</xs:documentation>
<xs:documentation xml:lang="it">RispostaIscrizione</xs:documentation>
<xs:documentation xml:lang="fr">RéponseInscription</xs:documentation>
<xs:documentation xml:lang="es">RespuestaDeEnrolamiento</xs:documentation>
<xs:documentation xml:lang="zh">保险注册响应</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="EpisodeOfCare">
<xs:annotation>
<xs:documentation xml:lang="en">EpisodeOfCare</xs:documentation>
<xs:documentation xml:lang="en">EpisodeOfCare</xs:documentation>
<xs:documentation xml:lang="it">EpisodioDiCura</xs:documentation>
<xs:documentation xml:lang="fr">ÉpisodeDeSoins</xs:documentation>
<xs:documentation xml:lang="es">EpisodioDeCuidado</xs:documentation>
<xs:documentation xml:lang="zh">照护服务节段</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="EventDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">EventDefinition</xs:documentation>
<xs:documentation xml:lang="en">EventDefinition</xs:documentation>
<xs:documentation xml:lang="it">DefinizioneEvento</xs:documentation>
<xs:documentation xml:lang="es">DefinitionDeEvento</xs:documentation>
<xs:documentation xml:lang="zh">事件定义</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Evidence">
<xs:annotation>
<xs:documentation xml:lang="en">Evidence</xs:documentation>
<xs:documentation xml:lang="en">Evidence</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="EvidenceVariable">
<xs:annotation>
<xs:documentation xml:lang="en">EvidenceVariable</xs:documentation>
<xs:documentation xml:lang="en">EvidenceVariable</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ExampleScenario">
<xs:annotation>
<xs:documentation xml:lang="en">ExampleScenario</xs:documentation>
<xs:documentation xml:lang="en">ExampleScenario</xs:documentation>
<xs:documentation xml:lang="it">ScenarioDiEsempio</xs:documentation>
<xs:documentation xml:lang="es">EjemploDeEscenario</xs:documentation>
<xs:documentation xml:lang="zh">示例场景</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ExplanationOfBenefit">
<xs:annotation>
<xs:documentation xml:lang="en">ExplanationOfBenefit</xs:documentation>
<xs:documentation xml:lang="en">ExplanationOfBenefit</xs:documentation>
<xs:documentation xml:lang="fr">ExplicationDuBénéfice</xs:documentation>
<xs:documentation xml:lang="zh">赔付说明</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="FamilyMemberHistory">
<xs:annotation>
<xs:documentation xml:lang="en">FamilyMemberHistory</xs:documentation>
<xs:documentation xml:lang="en">FamilyMemberHistory</xs:documentation>
<xs:documentation xml:lang="fr">HistoireMembreFamille</xs:documentation>
<xs:documentation xml:lang="es">HistorialMiembroFamiliar</xs:documentation>
<xs:documentation xml:lang="zh">家族史</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Flag">
<xs:annotation>
<xs:documentation xml:lang="en">Flag</xs:documentation>
<xs:documentation xml:lang="en">Flag</xs:documentation>
<xs:documentation xml:lang="fr">Drapeau</xs:documentation>
<xs:documentation xml:lang="es">Bandera</xs:documentation>
<xs:documentation xml:lang="zh">标记</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Goal">
<xs:annotation>
<xs:documentation xml:lang="en">Goal</xs:documentation>
<xs:documentation xml:lang="en">Goal</xs:documentation>
<xs:documentation xml:lang="fr">But</xs:documentation>
<xs:documentation xml:lang="es">Objetivo</xs:documentation>
<xs:documentation xml:lang="zh">目标</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="GraphDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">GraphDefinition</xs:documentation>
<xs:documentation xml:lang="en">GraphDefinition</xs:documentation>
<xs:documentation xml:lang="es">DefinitionGrafico</xs:documentation>
<xs:documentation xml:lang="zh">图形定义</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Group">
<xs:annotation>
<xs:documentation xml:lang="en">Group</xs:documentation>
<xs:documentation xml:lang="en">Group</xs:documentation>
<xs:documentation xml:lang="it">Gruppo</xs:documentation>
<xs:documentation xml:lang="fr">Groupe</xs:documentation>
<xs:documentation xml:lang="es">Grupo</xs:documentation>
<xs:documentation xml:lang="zh">群组</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="GuidanceResponse">
<xs:annotation>
<xs:documentation xml:lang="en">GuidanceResponse</xs:documentation>
<xs:documentation xml:lang="en">GuidanceResponse</xs:documentation>
<xs:documentation xml:lang="es">RespuestaDeOrientacion</xs:documentation>
<xs:documentation xml:lang="zh">指导意见响应</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="HealthcareService">
<xs:annotation>
<xs:documentation xml:lang="en">HealthcareService</xs:documentation>
<xs:documentation xml:lang="en">HealthcareService</xs:documentation>
<xs:documentation xml:lang="it">ServizioSanitario</xs:documentation>
<xs:documentation xml:lang="fr">ServiceDeSanté</xs:documentation>
<xs:documentation xml:lang="es">ServicioDeCuidado</xs:documentation>
<xs:documentation xml:lang="zh">医疗保健服务项目</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ImagingStudy">
<xs:annotation>
<xs:documentation xml:lang="en">ImagingStudy</xs:documentation>
<xs:documentation xml:lang="en">ImagingStudy</xs:documentation>
<xs:documentation xml:lang="fr">EtudeImagerie</xs:documentation>
<xs:documentation xml:lang="es">EstudioImagen / EstudioImagen</xs:documentation>
<xs:documentation xml:lang="zh">成像检查</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Immunization">
<xs:annotation>
<xs:documentation xml:lang="en">Immunization</xs:documentation>
<xs:documentation xml:lang="en">Immunization</xs:documentation>
<xs:documentation xml:lang="it">Immunizzazione</xs:documentation>
<xs:documentation xml:lang="fr">Immunisation</xs:documentation>
<xs:documentation xml:lang="zh">免疫接种</xs:documentation>
<xs:documentation xml:lang="es">Inmunización</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ImmunizationEvaluation">
<xs:annotation>
<xs:documentation xml:lang="en">ImmunizationEvaluation</xs:documentation>
<xs:documentation xml:lang="en">ImmunizationEvaluation</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ImmunizationRecommendation">
<xs:annotation>
<xs:documentation xml:lang="en">ImmunizationRecommendation</xs:documentation>
<xs:documentation xml:lang="en">ImmunizationRecommendation</xs:documentation>
<xs:documentation xml:lang="fr">RecommendationImmunisation</xs:documentation>
<xs:documentation xml:lang="zh">免疫接种建议</xs:documentation>
<xs:documentation xml:lang="es">RecomendaciónInmunización /</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ImplementationGuide">
<xs:annotation>
<xs:documentation xml:lang="en">ImplementationGuide</xs:documentation>
<xs:documentation xml:lang="en">ImplementationGuide</xs:documentation>
<xs:documentation xml:lang="es">GuiaDeImplementacion</xs:documentation>
<xs:documentation xml:lang="zh">实施指南</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="InsurancePlan">
<xs:annotation>
<xs:documentation xml:lang="en">InsurancePlan</xs:documentation>
<xs:documentation xml:lang="en">InsurancePlan</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Invoice">
<xs:annotation>
<xs:documentation xml:lang="en">Invoice</xs:documentation>
<xs:documentation xml:lang="en">Invoice</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Library">
<xs:annotation>
<xs:documentation xml:lang="en">Library</xs:documentation>
<xs:documentation xml:lang="en">Library</xs:documentation>
<xs:documentation xml:lang="es">Librería</xs:documentation>
<xs:documentation xml:lang="zh">库</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Linkage">
<xs:annotation>
<xs:documentation xml:lang="en">Linkage</xs:documentation>
<xs:documentation xml:lang="en">Linkage</xs:documentation>
<xs:documentation xml:lang="es">Enlace / Conexión / Vinculo / Acoplamiento </xs:documentation>
<xs:documentation xml:lang="zh">链接关系</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="List">
<xs:annotation>
<xs:documentation xml:lang="en">List</xs:documentation>
<xs:documentation xml:lang="en">List</xs:documentation>
<xs:documentation xml:lang="it">Lista</xs:documentation>
<xs:documentation xml:lang="fr">Liste</xs:documentation>
<xs:documentation xml:lang="zh">列表</xs:documentation>
<xs:documentation xml:lang="es">Lista</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Location">
<xs:annotation>
<xs:documentation xml:lang="en">Location</xs:documentation>
<xs:documentation xml:lang="en">Location</xs:documentation>
<xs:documentation xml:lang="fr">Localisation</xs:documentation>
<xs:documentation xml:lang="zh">位置</xs:documentation>
<xs:documentation xml:lang="es">Locacion</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Measure">
<xs:annotation>
<xs:documentation xml:lang="en">Measure</xs:documentation>
<xs:documentation xml:lang="en">Measure</xs:documentation>
<xs:documentation xml:lang="it">Misura</xs:documentation>
<xs:documentation xml:lang="es">Medida</xs:documentation>
<xs:documentation xml:lang="zh">指标</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MeasureReport">
<xs:annotation>
<xs:documentation xml:lang="en">MeasureReport</xs:documentation>
<xs:documentation xml:lang="en">MeasureReport</xs:documentation>
<xs:documentation xml:lang="es">ReporteMedida</xs:documentation>
<xs:documentation xml:lang="zh">指标报告</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Media">
<xs:annotation>
<xs:documentation xml:lang="en">Media</xs:documentation>
<xs:documentation xml:lang="en">Media</xs:documentation>
<xs:documentation xml:lang="it">Media</xs:documentation>
<xs:documentation xml:lang="fr">Média</xs:documentation>
<xs:documentation xml:lang="es">Medio</xs:documentation>
<xs:documentation xml:lang="zh">媒体</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Medication">
<xs:annotation>
<xs:documentation xml:lang="en">Medication</xs:documentation>
<xs:documentation xml:lang="en">Medication</xs:documentation>
<xs:documentation xml:lang="fr">Médication</xs:documentation>
<xs:documentation xml:lang="zh">药物</xs:documentation>
<xs:documentation xml:lang="es">Medicación /Medicamento</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MedicationAdministration">
<xs:annotation>
<xs:documentation xml:lang="en">MedicationAdministration</xs:documentation>
<xs:documentation xml:lang="en">MedicationAdministration</xs:documentation>
<xs:documentation xml:lang="fr">AdministrationMédicaments</xs:documentation>
<xs:documentation xml:lang="zh">药物施用</xs:documentation>
<xs:documentation xml:lang="es">AdministraciónMedicación / AdministracionMedicamento</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MedicationDispense">
<xs:annotation>
<xs:documentation xml:lang="en">MedicationDispense</xs:documentation>
<xs:documentation xml:lang="en">MedicationDispense</xs:documentation>
<xs:documentation xml:lang="fr">DispensationMédicaments</xs:documentation>
<xs:documentation xml:lang="zh">药物配发</xs:documentation>
<xs:documentation xml:lang="es">DispensaciónMedicación /DispensacionMedicamento</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MedicationKnowledge">
<xs:annotation>
<xs:documentation xml:lang="en">MedicationKnowledge</xs:documentation>
<xs:documentation xml:lang="en">MedicationKnowledge</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MedicationRequest">
<xs:annotation>
<xs:documentation xml:lang="en">MedicationRequest</xs:documentation>
<xs:documentation xml:lang="en">MedicationRequest</xs:documentation>
<xs:documentation xml:lang="fr">PrescriptionMédicamenteuseTODO</xs:documentation>
<xs:documentation xml:lang="zh">药物请求</xs:documentation>
<xs:documentation xml:lang="es">PrescripciónMedicaciónTODO /PrescripcionMedicamento</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MedicationStatement">
<xs:annotation>
<xs:documentation xml:lang="en">MedicationStatement</xs:documentation>
<xs:documentation xml:lang="en">MedicationStatement</xs:documentation>
<xs:documentation xml:lang="fr">ÉtatMédication</xs:documentation>
<xs:documentation xml:lang="zh">药物声明</xs:documentation>
<xs:documentation xml:lang="es">ResumenMedicación /ResumenMedicamento</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MedicinalProduct">
<xs:annotation>
<xs:documentation xml:lang="en">MedicinalProduct</xs:documentation>
<xs:documentation xml:lang="en">MedicinalProduct</xs:documentation>
<xs:documentation xml:lang="it">ProdottoMedicinale</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MedicinalProductAuthorization">
<xs:annotation>
<xs:documentation xml:lang="en">MedicinalProductAuthorization</xs:documentation>
<xs:documentation xml:lang="en">MedicinalProductAuthorization</xs:documentation>
<xs:documentation xml:lang="it">AutorizzazioneProdottoMedicinale</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MedicinalProductContraindication">
<xs:annotation>
<xs:documentation xml:lang="en">MedicinalProductContraindication</xs:documentation>
<xs:documentation xml:lang="en">MedicinalProductContraindication</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MedicinalProductIndication">
<xs:annotation>
<xs:documentation xml:lang="en">MedicinalProductIndication</xs:documentation>
<xs:documentation xml:lang="en">MedicinalProductInteraction</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MedicinalProductIngredient">
<xs:annotation>
<xs:documentation xml:lang="en">MedicinalProductIngredient</xs:documentation>
<xs:documentation xml:lang="en">MedicinalProductIngredient</xs:documentation>
<xs:documentation xml:lang="it">IngredienteProdottoMedicinale</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MedicinalProductInteraction">
<xs:annotation>
<xs:documentation xml:lang="en">MedicinalProductInteraction</xs:documentation>
<xs:documentation xml:lang="en">MedicinalProductInteraction</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MedicinalProductManufactured">
<xs:annotation>
<xs:documentation xml:lang="en">MedicinalProductManufactured</xs:documentation>
<xs:documentation xml:lang="en">MedicinalProductManufactured</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MedicinalProductPackaged">
<xs:annotation>
<xs:documentation xml:lang="en">MedicinalProductPackaged</xs:documentation>
<xs:documentation xml:lang="en">MedicinalProductPackaged</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MedicinalProductPharmaceutical">
<xs:annotation>
<xs:documentation xml:lang="en">MedicinalProductPharmaceutical</xs:documentation>
<xs:documentation xml:lang="en">MedicinalProductPharmaceutical</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MedicinalProductUndesirableEffect">
<xs:annotation>
<xs:documentation xml:lang="en">MedicinalProductUndesirableEffect</xs:documentation>
<xs:documentation xml:lang="en">MedicinalProductUndesirableEffect</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MessageDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">MessageDefinition</xs:documentation>
<xs:documentation xml:lang="en">MessageDefinition</xs:documentation>
<xs:documentation xml:lang="it">DefinizioneMessaggio</xs:documentation>
<xs:documentation xml:lang="es">DefinicionMensaje</xs:documentation>
<xs:documentation xml:lang="zh">消息定义</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MessageHeader">
<xs:annotation>
<xs:documentation xml:lang="en">MessageHeader</xs:documentation>
<xs:documentation xml:lang="en">MessageHeader</xs:documentation>
<xs:documentation xml:lang="fr">EntêteMessage</xs:documentation>
<xs:documentation xml:lang="zh">消息标头</xs:documentation>
<xs:documentation xml:lang="es">CabeceraMensaje</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MolecularSequence">
<xs:annotation>
<xs:documentation xml:lang="en">MolecularSequence</xs:documentation>
<xs:documentation xml:lang="en">MolecularSequence</xs:documentation>
<xs:documentation xml:lang="es">SecuenciaMolecular</xs:documentation>
<xs:documentation xml:lang="zh">分子序列</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="NamingSystem">
<xs:annotation>
<xs:documentation xml:lang="en">NamingSystem</xs:documentation>
<xs:documentation xml:lang="en">NamingSystem</xs:documentation>
<xs:documentation xml:lang="fr">SystèmeDeNommage</xs:documentation>
<xs:documentation xml:lang="es">SistemaDeNombres</xs:documentation>
<xs:documentation xml:lang="zh">命名系统</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="NutritionOrder">
<xs:annotation>
<xs:documentation xml:lang="en">NutritionOrder</xs:documentation>
<xs:documentation xml:lang="en">NutritionOrder</xs:documentation>
<xs:documentation xml:lang="fr">OrdreNutrition</xs:documentation>
<xs:documentation xml:lang="es">OrdenNutrición</xs:documentation>
<xs:documentation xml:lang="zh">营养医嘱</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Observation">
<xs:annotation>
<xs:documentation xml:lang="en">Observation</xs:documentation>
<xs:documentation xml:lang="en">Observation</xs:documentation>
<xs:documentation xml:lang="it">Osservazione</xs:documentation>
<xs:documentation xml:lang="fr">Observation</xs:documentation>
<xs:documentation xml:lang="zh">观察</xs:documentation>
<xs:documentation xml:lang="es">Observación</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ObservationDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">ObservationDefinition</xs:documentation>
<xs:documentation xml:lang="en">ObservationDefinition</xs:documentation>
<xs:documentation xml:lang="it">DefinizioneOsservazione</xs:documentation>
<xs:documentation xml:lang="es">DefinicionDeEspecimen</xs:documentation>
<xs:documentation xml:lang="zh">观察定义</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OperationDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">OperationDefinition</xs:documentation>
<xs:documentation xml:lang="en">OperationDefinition</xs:documentation>
<xs:documentation xml:lang="it">DefinizioneOperazione</xs:documentation>
<xs:documentation xml:lang="fr">DéfinitionOpération</xs:documentation>
<xs:documentation xml:lang="es">DefinicionDeOperacion</xs:documentation>
<xs:documentation xml:lang="zh">操作定义</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OperationOutcome">
<xs:annotation>
<xs:documentation xml:lang="en">OperationOutcome</xs:documentation>
<xs:documentation xml:lang="en">OperationOutcome</xs:documentation>
<xs:documentation xml:lang="it">RisultatoOperazione</xs:documentation>
<xs:documentation xml:lang="fr">RésultatOpération</xs:documentation>
<xs:documentation xml:lang="zh">操作结局</xs:documentation>
<xs:documentation xml:lang="es">ResultadoOperación</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Organization">
<xs:annotation>
<xs:documentation xml:lang="en">Organization</xs:documentation>
<xs:documentation xml:lang="en">Organization</xs:documentation>
<xs:documentation xml:lang="it">Organizzazione</xs:documentation>
<xs:documentation xml:lang="fr">Organisation</xs:documentation>
<xs:documentation xml:lang="zh">组织机构</xs:documentation>
<xs:documentation xml:lang="es">Organización</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OrganizationAffiliation">
<xs:annotation>
<xs:documentation xml:lang="en">OrganizationAffiliation</xs:documentation>
<xs:documentation xml:lang="en">OrganizationAffiliation</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Parameters">
<xs:annotation>
<xs:documentation xml:lang="en">Parameters</xs:documentation>
<xs:documentation xml:lang="en">Parameters</xs:documentation>
<xs:documentation xml:lang="es">Parametros</xs:documentation>
<xs:documentation xml:lang="zh">参数</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Patient">
<xs:annotation>
<xs:documentation xml:lang="en">Patient</xs:documentation>
<xs:documentation xml:lang="en">Patient</xs:documentation>
<xs:documentation xml:lang="it">Paziente</xs:documentation>
<xs:documentation xml:lang="fr">Patient</xs:documentation>
<xs:documentation xml:lang="zh">患者</xs:documentation>
<xs:documentation xml:lang="es">Paciente</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="PaymentNotice">
<xs:annotation>
<xs:documentation xml:lang="en">PaymentNotice</xs:documentation>
<xs:documentation xml:lang="en">PaymentNotice</xs:documentation>
<xs:documentation xml:lang="it">AvvisoDiPagamento</xs:documentation>
<xs:documentation xml:lang="fr">AvisPaiement</xs:documentation>
<xs:documentation xml:lang="es">AvisoDePago</xs:documentation>
<xs:documentation xml:lang="zh">付款通知</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="PaymentReconciliation">
<xs:annotation>
<xs:documentation xml:lang="en">PaymentReconciliation</xs:documentation>
<xs:documentation xml:lang="en">PaymentReconciliation</xs:documentation>
<xs:documentation xml:lang="it">RiconciliazionePagamento</xs:documentation>
<xs:documentation xml:lang="fr">RéconciliationPaiement</xs:documentation>
<xs:documentation xml:lang="es">ConciliacionDePago</xs:documentation>
<xs:documentation xml:lang="zh">付款对账</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Person">
<xs:annotation>
<xs:documentation xml:lang="en">Person</xs:documentation>
<xs:documentation xml:lang="en">Person</xs:documentation>
<xs:documentation xml:lang="it">Persona</xs:documentation>
<xs:documentation xml:lang="fr">Personne</xs:documentation>
<xs:documentation xml:lang="es">Persona</xs:documentation>
<xs:documentation xml:lang="zh">人员</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="PlanDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">PlanDefinition</xs:documentation>
<xs:documentation xml:lang="en">PlanDefinition</xs:documentation>
<xs:documentation xml:lang="es">DefinicionDePlan</xs:documentation>
<xs:documentation xml:lang="zh">计划定义</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Practitioner">
<xs:annotation>
<xs:documentation xml:lang="en">Practitioner</xs:documentation>
<xs:documentation xml:lang="en">Practitioner</xs:documentation>
<xs:documentation xml:lang="fr">Praticien</xs:documentation>
<xs:documentation xml:lang="zh">执业人员</xs:documentation>
<xs:documentation xml:lang="es">Practicante / Profesional</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="PractitionerRole">
<xs:annotation>
<xs:documentation xml:lang="en">PractitionerRole</xs:documentation>
<xs:documentation xml:lang="en">PractitionerRole</xs:documentation>
<xs:documentation xml:lang="es">RolProfesional</xs:documentation>
<xs:documentation xml:lang="zh">执业人员角色</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Procedure">
<xs:annotation>
<xs:documentation xml:lang="en">Procedure</xs:documentation>
<xs:documentation xml:lang="en">Procedure</xs:documentation>
<xs:documentation xml:lang="it">Procedura</xs:documentation>
<xs:documentation xml:lang="fr">Procédure</xs:documentation>
<xs:documentation xml:lang="zh">操作项目</xs:documentation>
<xs:documentation xml:lang="es">Procedimiento</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Provenance">
<xs:annotation>
<xs:documentation xml:lang="en">Provenance</xs:documentation>
<xs:documentation xml:lang="en">Provenance</xs:documentation>
<xs:documentation xml:lang="it">Provenienza</xs:documentation>
<xs:documentation xml:lang="fr">Provenance</xs:documentation>
<xs:documentation xml:lang="zh">出处</xs:documentation>
<xs:documentation xml:lang="es">Procedencia</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Questionnaire">
<xs:annotation>
<xs:documentation xml:lang="en">Questionnaire</xs:documentation>
<xs:documentation xml:lang="en">Questionnaire</xs:documentation>
<xs:documentation xml:lang="it">Questionario</xs:documentation>
<xs:documentation xml:lang="fr">Questionnaire</xs:documentation>
<xs:documentation xml:lang="zh">调查问卷</xs:documentation>
<xs:documentation xml:lang="es">Cuestionario</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="QuestionnaireResponse">
<xs:annotation>
<xs:documentation xml:lang="en">QuestionnaireResponse</xs:documentation>
<xs:documentation xml:lang="en">QuestionnaireResponse</xs:documentation>
<xs:documentation xml:lang="it">RispostaQuestionario</xs:documentation>
<xs:documentation xml:lang="fr">RéponseQuestionnaire</xs:documentation>
<xs:documentation xml:lang="es">RespuestaAlCuestionario</xs:documentation>
<xs:documentation xml:lang="zh">调查问卷答复</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="RelatedPerson">
<xs:annotation>
<xs:documentation xml:lang="en">RelatedPerson</xs:documentation>
<xs:documentation xml:lang="en">RelatedPerson</xs:documentation>
<xs:documentation xml:lang="it">PersonaCorrelata</xs:documentation>
<xs:documentation xml:lang="fr">PersonneEnRelation</xs:documentation>
<xs:documentation xml:lang="es">PersonaRelacionada</xs:documentation>
<xs:documentation xml:lang="zh">相关人员</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="RequestGroup">
<xs:annotation>
<xs:documentation xml:lang="en">RequestGroup</xs:documentation>
<xs:documentation xml:lang="en">RequestGroup</xs:documentation>
<xs:documentation xml:lang="it">GruppoDiRichieste</xs:documentation>
<xs:documentation xml:lang="es">GrupoDeSolicitudes</xs:documentation>
<xs:documentation xml:lang="zh">请求分组</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ResearchDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">ResearchDefinition</xs:documentation>
<xs:documentation xml:lang="en">ResearchDefinition</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ResearchElementDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">ResearchElementDefinition</xs:documentation>
<xs:documentation xml:lang="en">ResearchElementDefinition</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ResearchStudy">
<xs:annotation>
<xs:documentation xml:lang="en">ResearchStudy</xs:documentation>
<xs:documentation xml:lang="en">ResearchStudy</xs:documentation>
<xs:documentation xml:lang="es">EstudioDeInvestigacion</xs:documentation>
<xs:documentation xml:lang="zh">调查研究</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ResearchSubject">
<xs:annotation>
<xs:documentation xml:lang="en">ResearchSubject</xs:documentation>
<xs:documentation xml:lang="en">ResearchSubject</xs:documentation>
<xs:documentation xml:lang="es">SujetoDeInvestigacion</xs:documentation>
<xs:documentation xml:lang="zh">研究主题</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Resource">
<xs:annotation>
<xs:documentation xml:lang="en">Resource</xs:documentation>
<xs:documentation xml:lang="en">Resource</xs:documentation>
<xs:documentation xml:lang="es">Recurso</xs:documentation>
<xs:documentation xml:lang="zh">资源</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="RiskAssessment">
<xs:annotation>
<xs:documentation xml:lang="en">RiskAssessment</xs:documentation>
<xs:documentation xml:lang="en">RiskAssessment</xs:documentation>
<xs:documentation xml:lang="fr">ÉvaluationRisques</xs:documentation>
<xs:documentation xml:lang="es">EvaluacionDeRiesgo</xs:documentation>
<xs:documentation xml:lang="zh">风险评估</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="RiskEvidenceSynthesis">
<xs:annotation>
<xs:documentation xml:lang="en">RiskEvidenceSynthesis</xs:documentation>
<xs:documentation xml:lang="en">RiskEvidenceSynthesis</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Schedule">
<xs:annotation>
<xs:documentation xml:lang="en">Schedule</xs:documentation>
<xs:documentation xml:lang="en">Schedule</xs:documentation>
<xs:documentation xml:lang="es">Agenda</xs:documentation>
<xs:documentation xml:lang="zh">日程安排</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SearchParameter">
<xs:annotation>
<xs:documentation xml:lang="en">SearchParameter</xs:documentation>
<xs:documentation xml:lang="en">SearchParameter</xs:documentation>
<xs:documentation xml:lang="it">ParametroDiRicerca</xs:documentation>
<xs:documentation xml:lang="fr">ParamètreRecherche</xs:documentation>
<xs:documentation xml:lang="es">ParametroDeBusqueda</xs:documentation>
<xs:documentation xml:lang="zh">搜索参数</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ServiceRequest">
<xs:annotation>
<xs:documentation xml:lang="en">ServiceRequest</xs:documentation>
<xs:documentation xml:lang="en">ServiceRequest</xs:documentation>
<xs:documentation xml:lang="it">RichiestaDiServizio</xs:documentation>
<xs:documentation xml:lang="fr">DemandeService</xs:documentation>
<xs:documentation xml:lang="es">PeticiónServicio</xs:documentation>
<xs:documentation xml:lang="zh">服务项目请求</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Slot">
<xs:annotation>
<xs:documentation xml:lang="en">Slot</xs:documentation>
<xs:documentation xml:lang="en">Slot</xs:documentation>
<xs:documentation xml:lang="fr">Slot</xs:documentation>
<xs:documentation xml:lang="zh">槽位</xs:documentation>
<xs:documentation xml:lang="es">Hueco / Zocalo / Espacio</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Specimen">
<xs:annotation>
<xs:documentation xml:lang="en">Specimen</xs:documentation>
<xs:documentation xml:lang="en">Specimen</xs:documentation>
<xs:documentation xml:lang="it">Campione</xs:documentation>
<xs:documentation xml:lang="fr">Spécimen</xs:documentation>
<xs:documentation xml:lang="zh">标本</xs:documentation>
<xs:documentation xml:lang="es">Especimen</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SpecimenDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">SpecimenDefinition</xs:documentation>
<xs:documentation xml:lang="en">SpecimenDefinition</xs:documentation>
<xs:documentation xml:lang="it">DefinizioneCampione</xs:documentation>
<xs:documentation xml:lang="es">DefinicionDeEspecimen</xs:documentation>
<xs:documentation xml:lang="zh">标本定义</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="StructureDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">StructureDefinition</xs:documentation>
<xs:documentation xml:lang="en">StructureDefinition</xs:documentation>
<xs:documentation xml:lang="it">DefinizioneStruttura</xs:documentation>
<xs:documentation xml:lang="fr">DéfinitionStructure</xs:documentation>
<xs:documentation xml:lang="es">DefinicionDeEstructura</xs:documentation>
<xs:documentation xml:lang="zh">结构定义</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="StructureMap">
<xs:annotation>
<xs:documentation xml:lang="en">StructureMap</xs:documentation>
<xs:documentation xml:lang="en">StructureMap</xs:documentation>
<xs:documentation xml:lang="es">MapaDeEstructura</xs:documentation>
<xs:documentation xml:lang="zh">结构映射</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Subscription">
<xs:annotation>
<xs:documentation xml:lang="en">Subscription</xs:documentation>
<xs:documentation xml:lang="en">Subscription</xs:documentation>
<xs:documentation xml:lang="it">Sottoscrizione</xs:documentation>
<xs:documentation xml:lang="fr">Souscription</xs:documentation>
<xs:documentation xml:lang="zh">订阅</xs:documentation>
<xs:documentation xml:lang="es">Suscripción</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Substance">
<xs:annotation>
<xs:documentation xml:lang="en">Substance</xs:documentation>
<xs:documentation xml:lang="en">Substance</xs:documentation>
<xs:documentation xml:lang="it">Sostanza</xs:documentation>
<xs:documentation xml:lang="fr">Substance</xs:documentation>
<xs:documentation xml:lang="zh">物质</xs:documentation>
<xs:documentation xml:lang="es">Sustancia</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SubstanceNucleicAcid">
<xs:annotation>
<xs:documentation xml:lang="en">SubstanceNucleicAcid</xs:documentation>
<xs:documentation xml:lang="en">SubstanceNucleicAcid</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SubstancePolymer">
<xs:annotation>
<xs:documentation xml:lang="en">SubstancePolymer</xs:documentation>
<xs:documentation xml:lang="en">SubstancePolymer</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SubstanceProtein">
<xs:annotation>
<xs:documentation xml:lang="en">SubstanceProtein</xs:documentation>
<xs:documentation xml:lang="en">SubstanceProtein</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SubstanceReferenceInformation">
<xs:annotation>
<xs:documentation xml:lang="en">SubstanceReferenceInformation</xs:documentation>
<xs:documentation xml:lang="en">SubstanceReferenceInformation</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SubstanceSourceMaterial">
<xs:annotation>
<xs:documentation xml:lang="en">SubstanceSourceMaterial</xs:documentation>
<xs:documentation xml:lang="en">SubstanceSourceMaterial</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SubstanceSpecification">
<xs:annotation>
<xs:documentation xml:lang="en">SubstanceSpecification</xs:documentation>
<xs:documentation xml:lang="en">SubstanceSpecification</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SupplyDelivery">
<xs:annotation>
<xs:documentation xml:lang="en">SupplyDelivery</xs:documentation>
<xs:documentation xml:lang="en">SupplyDelivery</xs:documentation>
<xs:documentation xml:lang="fr">Supply Livraison</xs:documentation>
<xs:documentation xml:lang="zh">供应交付</xs:documentation>
<xs:documentation xml:lang="es">Entrega de Suministro</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SupplyRequest">
<xs:annotation>
<xs:documentation xml:lang="en">SupplyRequest</xs:documentation>
<xs:documentation xml:lang="en">SupplyRequest</xs:documentation>
<xs:documentation xml:lang="fr">Demande d'approvisionnement</xs:documentation>
<xs:documentation xml:lang="zh">供应请求</xs:documentation>
<xs:documentation xml:lang="es">Solicitud de Suministro</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Task">
<xs:annotation>
<xs:documentation xml:lang="en">Task</xs:documentation>
<xs:documentation xml:lang="en">Task</xs:documentation>
<xs:documentation xml:lang="es">Tarea</xs:documentation>
<xs:documentation xml:lang="zh">任务</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="TerminologyCapabilities">
<xs:annotation>
<xs:documentation xml:lang="en">TerminologyCapabilities</xs:documentation>
<xs:documentation xml:lang="en">TerminologyCapabilities</xs:documentation>
<xs:documentation xml:lang="es">CapacidadTerminologica</xs:documentation>
<xs:documentation xml:lang="zh">术语服务能力</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="TestReport">
<xs:annotation>
<xs:documentation xml:lang="en">TestReport</xs:documentation>
<xs:documentation xml:lang="en">TestReport</xs:documentation>
<xs:documentation xml:lang="fr">RapportTest</xs:documentation>
<xs:documentation xml:lang="es">ReporteDePrueba</xs:documentation>
<xs:documentation xml:lang="zh">测试报告</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="TestScript">
<xs:annotation>
<xs:documentation xml:lang="en">TestScript</xs:documentation>
<xs:documentation xml:lang="en">TestScript</xs:documentation>
<xs:documentation xml:lang="fr">ScriptTest</xs:documentation>
<xs:documentation xml:lang="es">ScriptDePrueba</xs:documentation>
<xs:documentation xml:lang="zh">测试脚本</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ValueSet">
<xs:annotation>
<xs:documentation xml:lang="en">ValueSet</xs:documentation>
<xs:documentation xml:lang="en">ValueSet</xs:documentation>
<xs:documentation xml:lang="fr">EnsembleValeurs</xs:documentation>
<xs:documentation xml:lang="zh">取值集合</xs:documentation>
<xs:documentation xml:lang="es">ConjuntoValores / ConjuntoDeValores</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="VerificationResult">
<xs:annotation>
<xs:documentation xml:lang="en">VerificationResult</xs:documentation>
<xs:documentation xml:lang="en">VerificationResult</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="VisionPrescription">
<xs:annotation>
<xs:documentation xml:lang="en">VisionPrescription</xs:documentation>
<xs:documentation xml:lang="en">VisionPrescription</xs:documentation>
<xs:documentation xml:lang="fr">PrescriptionVision</xs:documentation>
<xs:documentation xml:lang="es">PrescripcionDeVision</xs:documentation>
<xs:documentation xml:lang="zh">视力处方</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ResourceType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of resource.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ResourceType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="ExplanationOfBenefit" type="ExplanationOfBenefit">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ExplanationOfBenefit">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A unique identifier assigned to this explanation of benefit.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="ExplanationOfBenefitStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the resource instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The category of claim, e.g. oral, pharmacy, vision, institutional, professional.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A finer grained suite of claim type codes which may convey additional information such as Inpatient vs Outpatient and/or a specialty service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="use" minOccurs="1" maxOccurs="1" type="Use">
<xs:annotation>
<xs:documentation xml:lang="en">A code to indicate whether the nature of the request is: to request adjudication of products and services previously rendered; or requesting authorization and adjudication for provision in the future; or requesting the non-binding adjudication of the listed products and services which could be provided in the future.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patient" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The party to whom the professional services and/or products have been supplied or are being considered and for whom actual for forecast reimbursement is sought.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="billablePeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period for which charges are being submitted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="created" minOccurs="1" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date this resource was created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="enterer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Individual who created the claim, predetermination or preauthorization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="insurer" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The party responsible for authorization, adjudication and reimbursement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="provider" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The provider which is responsible for the claim, predetermination or preauthorization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priority" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The provider-required urgency of processing the request. Typical values include: stat, routine deferred.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="fundsReserveRequested" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code to indicate whether and for whom funds are to be reserved for future claims.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="fundsReserve" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code, used only on a response to a preauthorization, to indicate whether the benefits payable have been reserved and for whom.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="related" type="ExplanationOfBenefit.Related" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Other claims which are related to this claim such as prior submissions or claims for related services or for the same event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="prescription" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Prescription to support the dispensing of pharmacy, device or vision products.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="originalPrescription" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Original prescription which has been superseded by this prescription to support the dispensing of pharmacy services, medications or products.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="payee" type="ExplanationOfBenefit.Payee" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The party to be reimbursed for cost of the products and services according to the terms of the policy.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referral" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a referral resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="facility" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Facility where the services were provided.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="claim" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The business identifier for the instance of the adjudication request: claim predetermination or preauthorization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="claimResponse" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The business identifier for the instance of the adjudication response: claim, predetermination or preauthorization response.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="outcome" minOccurs="1" maxOccurs="1" type="ClaimProcessingCodes">
<xs:annotation>
<xs:documentation xml:lang="en">The outcome of the claim, predetermination, or preauthorization processing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="disposition" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A human readable description of the status of the adjudication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="preAuthRef" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Reference from the Insurer which is used in later communications which refers to this adjudication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="preAuthRefPeriod" minOccurs="0" maxOccurs="unbounded" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The timeframe during which the supplied preauthorization reference may be quoted on claims to obtain the adjudication as provided.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="careTeam" type="ExplanationOfBenefit.CareTeam" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The members of the team who provided the products and services.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="supportingInfo" type="ExplanationOfBenefit.SupportingInfo" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Additional information codes regarding exceptions, special considerations, the condition, situation, prior or concurrent issues.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="diagnosis" type="ExplanationOfBenefit.Diagnosis" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Information about diagnoses relevant to the claim items.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="procedure" type="ExplanationOfBenefit.Procedure" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Procedures performed on the patient relevant to the billing items with the claim.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="precedence" minOccurs="0" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">This indicates the relative order of a series of EOBs related to different coverages for the same suite of services.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="insurance" type="ExplanationOfBenefit.Insurance" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Financial instruments for reimbursement for the health care products and services specified on the claim.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="accident" type="ExplanationOfBenefit.Accident" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Details of a accident which resulted in injuries which required the products and services listed in the claim.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="item" type="ExplanationOfBenefit.Item" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A claim line. Either a simple (a product or service) or a 'group' of details which can also be a simple items or groups of sub-details.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="addItem" type="ExplanationOfBenefit.AddItem" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The first-tier service adjudications for payor added product or service lines.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="adjudication" type="ExplanationOfBenefit.Adjudication" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The adjudication results which are presented at the header level rather than at the line-item or add-item levels.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="total" type="ExplanationOfBenefit.Total" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Categorized monetary totals for the adjudication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="payment" type="ExplanationOfBenefit.Payment" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Payment details for the adjudication of the claim.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="formCode" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code for the form to be used for printing the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="form" minOccurs="0" maxOccurs="1" type="Attachment">
<xs:annotation>
<xs:documentation xml:lang="en">The actual form, by reference or inclusion, for printing the content or an EOB.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="processNote" type="ExplanationOfBenefit.ProcessNote" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A note that describes or explains adjudication results in a human readable form.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="benefitPeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The term of the benefits documented in this response.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="benefitBalance" type="ExplanationOfBenefit.BenefitBalance" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Balance by Benefit Category.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExplanationOfBenefit.Related">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="claim" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to a related claim.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relationship" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code to convey how the claims are related.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reference" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">An alternate organizational reference to the case or file to which this particular claim pertains.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExplanationOfBenefit.Payee">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of Party to be reimbursed: Subscriber, provider, other.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="party" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to the individual or organization to whom any payment will be made.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExplanationOfBenefit.CareTeam">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="sequence" minOccurs="1" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A number to uniquely identify care team entries.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="provider" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Member of the team who provided the product or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="responsible" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">The party who is billing and/or responsible for the claimed products or services.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="role" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The lead, assisting or supervising practitioner and their discipline if a multidisciplinary team.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="qualification" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The qualification of the practitioner which is applicable for this service.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExplanationOfBenefit.SupportingInfo">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="sequence" minOccurs="1" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A number to uniquely identify supporting information entries.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The general class of the information supplied: information; exception; accident, employment; onset, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">System and code pertaining to the specific information regarding special conditions relating to the setting, treatment or patient for which care is sought.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The date when or period to which this information refers.</xs:documentation>
</xs:annotation>
<xs:element name="timingDate" type="date"/>
<xs:element name="timingPeriod" type="Period"/>
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Additional data or information such as resources, documents, images etc. including references to the data or the actual inclusion of the data.</xs:documentation>
</xs:annotation>
<xs:element name="valueBoolean" type="boolean"/>
<xs:element name="valueString" type="string"/>
<xs:element name="valueQuantity" type="Quantity"/>
<xs:element name="valueAttachment" type="Attachment"/>
<xs:element name="valueReference" type="Reference"/>
</xs:choice>
<xs:element name="reason" minOccurs="0" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">Provides the reason in the situation where a reason code is required in addition to the content.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExplanationOfBenefit.Diagnosis">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="sequence" minOccurs="1" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A number to uniquely identify diagnosis entries.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The nature of illness or problem in a coded form or as a reference to an external defined Condition.</xs:documentation>
</xs:annotation>
<xs:element name="diagnosisCodeableConcept" type="CodeableConcept"/>
<xs:element name="diagnosisReference" type="Reference"/>
</xs:choice>
<xs:element name="type" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">When the condition was observed or the relative ranking.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="onAdmission" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indication of whether the diagnosis was present on admission to a facility.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="packageCode" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A package billing code or bundle code used to group products and services to a particular health condition (such as heart attack) which is based on a predetermined grouping code system.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExplanationOfBenefit.Procedure">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="sequence" minOccurs="1" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A number to uniquely identify procedure entries.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">When the condition was observed or the relative ranking.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Date and optionally time the procedure was performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The code or reference to a Procedure resource which identifies the clinical intervention performed.</xs:documentation>
</xs:annotation>
<xs:element name="procedureCodeableConcept" type="CodeableConcept"/>
<xs:element name="procedureReference" type="Reference"/>
</xs:choice>
<xs:element name="udi" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Unique Device Identifiers associated with this line item.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExplanationOfBenefit.Insurance">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="focal" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A flag to indicate that this Coverage is to be used for adjudication of this claim when set to true.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="coverage" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to the insurance card level information contained in the Coverage resource. The coverage issuing insurer will use these details to locate the patient's actual coverage within the insurer's information system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="preAuthRef" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Reference numbers previously provided by the insurer to the provider to be quoted on subsequent claims containing services or products related to the prior authorization.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExplanationOfBenefit.Accident">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">Date of an accident event related to the products and services contained in the claim.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type or context of the accident event for the purposes of selection of potential insurance coverages and determination of coordination between insurers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The physical location of the accident event.</xs:documentation>
</xs:annotation>
<xs:element name="locationAddress" type="Address"/>
<xs:element name="locationReference" type="Reference"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExplanationOfBenefit.Item">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="sequence" minOccurs="1" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A number to uniquely identify item entries.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="careTeamSequence" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">Care team members related to this service or product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="diagnosisSequence" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">Diagnoses applicable for this service or product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="procedureSequence" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">Procedures applicable for this service or product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="informationSequence" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">Exceptions, special conditions and supporting information applicable for this service or product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="revenue" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of revenue or cost center providing the product and/or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Code to identify the general type of benefits under which products and services are provided.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="productOrService" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">When the value is a group code then this item collects a set of related claim details, otherwise this contains the product, service, drug or other billing code for the item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modifier" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Item typification or modifiers codes to convey additional context for the product or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="programCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the program under which this may be recovered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The date or dates when the service or product was supplied, performed or completed.</xs:documentation>
</xs:annotation>
<xs:element name="servicedDate" type="date"/>
<xs:element name="servicedPeriod" type="Period"/>
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Where the product or service was provided.</xs:documentation>
</xs:annotation>
<xs:element name="locationCodeableConcept" type="CodeableConcept"/>
<xs:element name="locationAddress" type="Address"/>
<xs:element name="locationReference" type="Reference"/>
</xs:choice>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The number of repetitions of a service or product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unitPrice" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">If the item is not a group then this is the fee for the product or service, otherwise this is the total of the fees for the details of the group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="factor" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">A real number that represents a multiplier used in determining the overall value of services delivered and/or goods received. The concept of a Factor allows for a discount or surcharge multiplier to be applied to a monetary amount.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="net" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">The quantity times the unit price for an additional service or product or charge.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="udi" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Unique Device Identifiers associated with this line item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="bodySite" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Physical service site on the patient (limb, tooth, etc.).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subSite" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A region or surface of the bodySite, e.g. limb region or tooth surface(s).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A billed item may include goods or services provided in multiple encounters.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="noteNumber" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The numbers associated with notes below which apply to the adjudication of this item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="adjudication" type="ExplanationOfBenefit.Adjudication" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">If this item is a group then the values here are a summary of the adjudication of the detail items. If this item is a simple product or service then this is the result of the adjudication of this item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detail" type="ExplanationOfBenefit.Detail" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Second-tier of goods and services.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExplanationOfBenefit.Adjudication">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="category" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code to indicate the information type of this adjudication record. Information types may include: the value submitted, maximum values or percentages allowed or payable under the plan, amounts that the patient is responsible for in-aggregate or pertaining to this item, amounts paid by other coverages, and the benefit payable for this item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reason" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code supporting the understanding of the adjudication result and explaining variance from expected amount.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="amount" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">Monetary amount associated with the category.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="value" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">A non-monetary value associated with the category. Mutually exclusive to the amount element above.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExplanationOfBenefit.Detail">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="sequence" minOccurs="1" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A claim detail line. Either a simple (a product or service) or a 'group' of sub-details which are simple items.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="revenue" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of revenue or cost center providing the product and/or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Code to identify the general type of benefits under which products and services are provided.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="productOrService" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">When the value is a group code then this item collects a set of related claim details, otherwise this contains the product, service, drug or other billing code for the item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modifier" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Item typification or modifiers codes to convey additional context for the product or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="programCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the program under which this may be recovered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The number of repetitions of a service or product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unitPrice" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">If the item is not a group then this is the fee for the product or service, otherwise this is the total of the fees for the details of the group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="factor" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">A real number that represents a multiplier used in determining the overall value of services delivered and/or goods received. The concept of a Factor allows for a discount or surcharge multiplier to be applied to a monetary amount.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="net" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">The quantity times the unit price for an additional service or product or charge.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="udi" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Unique Device Identifiers associated with this line item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="noteNumber" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The numbers associated with notes below which apply to the adjudication of this item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="adjudication" type="ExplanationOfBenefit.Adjudication" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The adjudication results.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subDetail" type="ExplanationOfBenefit.SubDetail" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Third-tier of goods and services.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExplanationOfBenefit.SubDetail">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="sequence" minOccurs="1" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A claim detail line. Either a simple (a product or service) or a 'group' of sub-details which are simple items.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="revenue" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of revenue or cost center providing the product and/or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Code to identify the general type of benefits under which products and services are provided.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="productOrService" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">When the value is a group code then this item collects a set of related claim details, otherwise this contains the product, service, drug or other billing code for the item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modifier" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Item typification or modifiers codes to convey additional context for the product or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="programCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the program under which this may be recovered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The number of repetitions of a service or product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unitPrice" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">If the item is not a group then this is the fee for the product or service, otherwise this is the total of the fees for the details of the group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="factor" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">A real number that represents a multiplier used in determining the overall value of services delivered and/or goods received. The concept of a Factor allows for a discount or surcharge multiplier to be applied to a monetary amount.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="net" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">The quantity times the unit price for an additional service or product or charge.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="udi" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Unique Device Identifiers associated with this line item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="noteNumber" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The numbers associated with notes below which apply to the adjudication of this item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="adjudication" type="ExplanationOfBenefit.Adjudication" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The adjudication results.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExplanationOfBenefit.AddItem">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="itemSequence" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">Claim items which this service line is intended to replace.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detailSequence" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The sequence number of the details within the claim item which this line is intended to replace.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subDetailSequence" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The sequence number of the sub-details woithin the details within the claim item which this line is intended to replace.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="provider" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The providers who are authorized for the services rendered to the patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="productOrService" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">When the value is a group code then this item collects a set of related claim details, otherwise this contains the product, service, drug or other billing code for the item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modifier" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Item typification or modifiers codes to convey additional context for the product or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="programCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the program under which this may be recovered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The date or dates when the service or product was supplied, performed or completed.</xs:documentation>
</xs:annotation>
<xs:element name="servicedDate" type="date"/>
<xs:element name="servicedPeriod" type="Period"/>
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Where the product or service was provided.</xs:documentation>
</xs:annotation>
<xs:element name="locationCodeableConcept" type="CodeableConcept"/>
<xs:element name="locationAddress" type="Address"/>
<xs:element name="locationReference" type="Reference"/>
</xs:choice>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The number of repetitions of a service or product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unitPrice" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">If the item is not a group then this is the fee for the product or service, otherwise this is the total of the fees for the details of the group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="factor" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">A real number that represents a multiplier used in determining the overall value of services delivered and/or goods received. The concept of a Factor allows for a discount or surcharge multiplier to be applied to a monetary amount.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="net" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">The quantity times the unit price for an additional service or product or charge.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="bodySite" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Physical service site on the patient (limb, tooth, etc.).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subSite" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A region or surface of the bodySite, e.g. limb region or tooth surface(s).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="noteNumber" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The numbers associated with notes below which apply to the adjudication of this item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="adjudication" type="ExplanationOfBenefit.Adjudication" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The adjudication results.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detail" type="ExplanationOfBenefit.Detail1" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The second-tier service adjudications for payor added services.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExplanationOfBenefit.Detail1">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="productOrService" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">When the value is a group code then this item collects a set of related claim details, otherwise this contains the product, service, drug or other billing code for the item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modifier" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Item typification or modifiers codes to convey additional context for the product or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The number of repetitions of a service or product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unitPrice" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">If the item is not a group then this is the fee for the product or service, otherwise this is the total of the fees for the details of the group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="factor" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">A real number that represents a multiplier used in determining the overall value of services delivered and/or goods received. The concept of a Factor allows for a discount or surcharge multiplier to be applied to a monetary amount.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="net" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">The quantity times the unit price for an additional service or product or charge.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="noteNumber" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The numbers associated with notes below which apply to the adjudication of this item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="adjudication" type="ExplanationOfBenefit.Adjudication" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The adjudication results.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subDetail" type="ExplanationOfBenefit.SubDetail1" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The third-tier service adjudications for payor added services.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExplanationOfBenefit.SubDetail1">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="productOrService" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">When the value is a group code then this item collects a set of related claim details, otherwise this contains the product, service, drug or other billing code for the item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modifier" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Item typification or modifiers codes to convey additional context for the product or service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The number of repetitions of a service or product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unitPrice" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">If the item is not a group then this is the fee for the product or service, otherwise this is the total of the fees for the details of the group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="factor" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">A real number that represents a multiplier used in determining the overall value of services delivered and/or goods received. The concept of a Factor allows for a discount or surcharge multiplier to be applied to a monetary amount.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="net" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">The quantity times the unit price for an additional service or product or charge.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="noteNumber" minOccurs="0" maxOccurs="unbounded" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The numbers associated with notes below which apply to the adjudication of this item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="adjudication" type="ExplanationOfBenefit.Adjudication" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The adjudication results.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExplanationOfBenefit.Total">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="category" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code to indicate the information type of this adjudication record. Information types may include: the value submitted, maximum values or percentages allowed or payable under the plan, amounts that the patient is responsible for in aggregate or pertaining to this item, amounts paid by other coverages, and the benefit payable for this item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="amount" minOccurs="1" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">Monetary total amount associated with the category.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExplanationOfBenefit.Payment">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Whether this represents partial or complete payment of the benefits payable.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="adjustment" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">Total amount of all adjustments to this payment included in this transaction which are not related to this claim's adjudication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="adjustmentReason" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Reason for the payment adjustment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">Estimated date the payment will be issued or the actual issue date of payment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="amount" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">Benefits payable less any payment adjustment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Issuer's unique identifier for the payment instrument.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExplanationOfBenefit.ProcessNote">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="number" minOccurs="0" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">A number to uniquely identify a note entry.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="NoteType">
<xs:annotation>
<xs:documentation xml:lang="en">The business purpose of the note text.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="text" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The explanation or description associated with the processing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="language" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code to define the language used in the text of the note.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExplanationOfBenefit.BenefitBalance">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="category" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Code to identify the general type of benefits under which products and services are provided.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="excluded" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">True if the indicated class of service is excluded from the plan, missing or False indicates the product or service is included in the coverage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short name or tag for the benefit.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A richer description of the benefit or services covered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="network" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Is a flag to indicate whether the benefits refer to in-network providers or out-of-network providers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unit" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates if the benefits apply to an individual or to the family.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="term" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The term or period of the values such as 'maximum lifetime benefit' or 'maximum annual visits'.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="financial" type="ExplanationOfBenefit.Financial" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Benefits Used to date.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExplanationOfBenefit.Financial">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Classification of benefit being provided.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The quantity of the benefit which is permitted under the coverage.</xs:documentation>
</xs:annotation>
<xs:element name="allowedUnsignedInt" type="unsignedInt"/>
<xs:element name="allowedString" type="string"/>
<xs:element name="allowedMoney" type="Money"/>
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The quantity of the benefit which have been consumed to date.</xs:documentation>
</xs:annotation>
<xs:element name="usedUnsignedInt" type="unsignedInt"/>
<xs:element name="usedMoney" type="Money"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ExplanationOfBenefitStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="active">
<xs:annotation>
<xs:documentation xml:lang="en">Active</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cancelled">
<xs:annotation>
<xs:documentation xml:lang="en">Cancelled</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="draft">
<xs:annotation>
<xs:documentation xml:lang="en">Draft</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered In Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ExplanationOfBenefitStatus">
<xs:annotation>
<xs:documentation xml:lang="en">A code specifying the state of the resource instance.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ExplanationOfBenefitStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="FamilyMemberHistory" type="FamilyMemberHistory">
<xs:annotation>
<xs:documentation xml:lang="en">Significant health conditions for a person related to the patient relevant in the context of care for the patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="FamilyMemberHistory">
<xs:annotation>
<xs:documentation xml:lang="en">Significant health conditions for a person related to the patient relevant in the context of care for the patient.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business identifiers assigned to this family member history by the performer or other systems which remain constant as the resource is updated and propagates from server to server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesCanonical" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to a FHIR-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this FamilyMemberHistory.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesUri" minOccurs="0" maxOccurs="unbounded" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to an externally maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this FamilyMemberHistory.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="FamilyHistoryStatus">
<xs:annotation>
<xs:documentation xml:lang="en">A code specifying the status of the record of the family history of a specific family member.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dataAbsentReason" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes why the family member's history is not available.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patient" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The person who this history concerns.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and possibly time) when the family member history was recorded or last updated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">This will either be a name or a description; e.g. &quot;Aunt Susan&quot;, &quot;my cousin with the red hair&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relationship" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of relationship this person has to the patient (father, mother, brother etc.).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sex" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The birth sex of the family member.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The actual or approximate date of birth of the relative.</xs:documentation>
</xs:annotation>
<xs:element name="bornPeriod" type="Period"/>
<xs:element name="bornDate" type="date"/>
<xs:element name="bornString" type="string"/>
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The age of the relative at the time the family member history is recorded.</xs:documentation>
</xs:annotation>
<xs:element name="ageAge" type="Age"/>
<xs:element name="ageRange" type="Range"/>
<xs:element name="ageString" type="string"/>
</xs:choice>
<xs:element name="estimatedAge" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">If true, indicates that the age value specified is an estimated value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Deceased flag or the actual or approximate age of the relative at the time of death for the family member history record.</xs:documentation>
</xs:annotation>
<xs:element name="deceasedBoolean" type="boolean"/>
<xs:element name="deceasedAge" type="Age"/>
<xs:element name="deceasedRange" type="Range"/>
<xs:element name="deceasedDate" type="date"/>
<xs:element name="deceasedString" type="string"/>
</xs:choice>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes why the family member history occurred in coded or textual form.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates a Condition, Observation, AllergyIntolerance, or QuestionnaireResponse that justifies this family member history event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">This property allows a non condition-specific note to the made about the related person. Ideally, the note would be in the condition property, but this is not always possible.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="condition" type="FamilyMemberHistory.Condition" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The significant Conditions (or condition) that the family member had. This is a repeating section to allow a system to represent more than one condition per resource, though there is nothing stopping multiple resources - one per condition.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="FamilyMemberHistory.Condition">
<xs:annotation>
<xs:documentation xml:lang="en">Significant health conditions for a person related to the patient relevant in the context of care for the patient.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The actual condition specified. Could be a coded condition (like MI or Diabetes) or a less specific string like 'cancer' depending on how much is known about the condition and the capabilities of the creating system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="outcome" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates what happened following the condition. If the condition resulted in death, deceased date is captured on the relation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contributedToDeath" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">This condition contributed to the cause of death of the related person. If contributedToDeath is not populated, then it is unknown.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Either the age of onset, range of approximate age or descriptive string can be recorded. For conditions with multiple occurrences, this describes the first known occurrence.</xs:documentation>
</xs:annotation>
<xs:element name="onsetAge" type="Age"/>
<xs:element name="onsetRange" type="Range"/>
<xs:element name="onsetPeriod" type="Period"/>
<xs:element name="onsetString" type="string"/>
</xs:choice>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">An area where general notes can be placed about this specific condition.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="FamilyHistoryStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="partial">
<xs:annotation>
<xs:documentation xml:lang="en">Partial</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="completed">
<xs:annotation>
<xs:documentation xml:lang="en">Completed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="health-unknown">
<xs:annotation>
<xs:documentation xml:lang="en">Health Unknown</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="FamilyHistoryStatus">
<xs:annotation>
<xs:documentation xml:lang="en">A code that identifies the status of the family history record.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="FamilyHistoryStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Flag" type="Flag">
<xs:annotation>
<xs:documentation xml:lang="en">Prospective warnings of potential issues when providing care to the patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Flag">
<xs:annotation>
<xs:documentation xml:lang="en">Prospective warnings of potential issues when providing care to the patient.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business identifiers assigned to this flag by the performer or other systems which remain constant as the resource is updated and propagates from server to server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="FlagStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Supports basic workflow.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Allows a flag to be divided into different categories like clinical, administrative etc. Intended to be used as a means of filtering which flags are displayed to particular user or in a given context.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The coded value or textual component of the flag to display to the user.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The patient, location, group, organization, or practitioner etc. this is about record this flag is associated with.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period of time from the activation of the flag to inactivation of the flag. If the flag is active, the end of the period should be unspecified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">This alert is only relevant during the encounter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The person, organization or device that created the flag.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="FlagStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="active">
<xs:annotation>
<xs:documentation xml:lang="en">Active</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="inactive">
<xs:annotation>
<xs:documentation xml:lang="en">Inactive</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="FlagStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether this flag is active and needs to be displayed to a user, or whether it is no longer needed or was entered in error.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="FlagStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Goal" type="Goal">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the intended objective(s) for a patient, group or organization care, for example, weight loss, restoring an activity of daily living, obtaining herd immunity via immunization, meeting a process improvement objective, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Goal">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the intended objective(s) for a patient, group or organization care, for example, weight loss, restoring an activity of daily living, obtaining herd immunity via immunization, meeting a process improvement objective, etc.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business identifiers assigned to this goal by the performer or other systems which remain constant as the resource is updated and propagates from server to server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lifecycleStatus" minOccurs="1" maxOccurs="1" type="GoalLifecycleStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The state of the goal throughout its lifecycle.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="achievementStatus" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the progression, or lack thereof, towards the goal against the target.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates a category the goal falls within.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priority" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the mutually agreed level of importance associated with reaching/sustaining the goal.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Human-readable and/or coded description of a specific desired objective of care, such as &quot;control blood pressure&quot; or &quot;negotiate an obstacle course&quot; or &quot;dance with child at wedding&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the patient, group or organization for whom the goal is being established.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The date or event after which the goal should begin being pursued.</xs:documentation>
</xs:annotation>
<xs:element name="startDate" type="date"/>
<xs:element name="startCodeableConcept" type="CodeableConcept"/>
</xs:choice>
<xs:element name="target" type="Goal.Target" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates what should be done by when.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="statusDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies when the current status. I.e. When initially created, when achieved, when cancelled, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="statusReason" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Captures the reason for the current status.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expressedBy" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whose goal this is - patient goal, practitioner goal, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="addresses" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The identified conditions and other health record elements that are intended to be addressed by the goal.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Any comments related to the goal.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="outcomeCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the change (or lack of change) at the point when the status of the goal is assessed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="outcomeReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Details of what's changed (or not changed).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Goal.Target">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the intended objective(s) for a patient, group or organization care, for example, weight loss, restoring an activity of daily living, obtaining herd immunity via immunization, meeting a process improvement objective, etc.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="measure" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The parameter whose value is being tracked, e.g. body weight, blood pressure, or hemoglobin A1c level.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The target value of the focus to be achieved to signify the fulfillment of the goal, e.g. 150 pounds, 7.0%. Either the high or low or both values of the range can be specified. When a low value is missing, it indicates that the goal is achieved at any focus value at or below the high value. Similarly, if the high value is missing, it indicates that the goal is achieved at any focus value at or above the low value.</xs:documentation>
</xs:annotation>
<xs:element name="detailQuantity" type="Quantity"/>
<xs:element name="detailRange" type="Range"/>
<xs:element name="detailCodeableConcept" type="CodeableConcept"/>
<xs:element name="detailString" type="string"/>
<xs:element name="detailBoolean" type="boolean"/>
<xs:element name="detailInteger" type="integer"/>
<xs:element name="detailRatio" type="Ratio"/>
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Indicates either the date or the duration after start by which the goal should be met.</xs:documentation>
</xs:annotation>
<xs:element name="dueDate" type="date"/>
<xs:element name="dueDuration" type="Duration"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="GoalLifecycleStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="proposed">
<xs:annotation>
<xs:documentation xml:lang="en">Proposed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="planned">
<xs:annotation>
<xs:documentation xml:lang="en">Planned</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="accepted">
<xs:annotation>
<xs:documentation xml:lang="en">Accepted</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="active">
<xs:annotation>
<xs:documentation xml:lang="en">Active</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="on-hold">
<xs:annotation>
<xs:documentation xml:lang="en">On Hold</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="completed">
<xs:annotation>
<xs:documentation xml:lang="en">Completed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cancelled">
<xs:annotation>
<xs:documentation xml:lang="en">Cancelled</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="rejected">
<xs:annotation>
<xs:documentation xml:lang="en">Rejected</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="GoalLifecycleStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Codes that reflect the current state of a goal and whether the goal is still being targeted.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="GoalLifecycleStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="GraphDefinition" type="GraphDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">A formal computable definition of a graph of resources - that is, a coherent set of resources that form a graph by following references. The Graph Definition resource defines a set and makes rules about the set.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="GraphDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">A formal computable definition of a graph of resources - that is, a coherent set of resources that form a graph by following references. The Graph Definition resource defines a set and makes rules about the set.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this graph definition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this graph definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the graph definition is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the graph definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the graph definition author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the graph definition. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this graph definition. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this graph definition is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the graph definition was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the graph definition changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the graph definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the graph definition from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate graph definition instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the graph definition is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Explanation of why this graph definition is needed and why it has been designed as it has.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="start" minOccurs="1" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The type of FHIR resource at which instances of this graph start.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="profile" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">The profile that describes the use of the base resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="link" type="GraphDefinition.Link" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Links this graph makes rules about.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="GraphDefinition.Link">
<xs:annotation>
<xs:documentation xml:lang="en">A formal computable definition of a graph of resources - that is, a coherent set of resources that form a graph by following references. The Graph Definition resource defines a set and makes rules about the set.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="path" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A FHIR expression that identifies one of FHIR References to other resources.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sliceName" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Which slice (if profiled).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="min" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Minimum occurrences for this link.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="max" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Maximum occurrences for this link.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Information about why this link is of interest in this graph definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="target" type="GraphDefinition.Target" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Potential target for the link.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="GraphDefinition.Target">
<xs:annotation>
<xs:documentation xml:lang="en">A formal computable definition of a graph of resources - that is, a coherent set of resources that form a graph by following references. The Graph Definition resource defines a set and makes rules about the set.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">Type of resource this link refers to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="params" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A set of parameters to look up.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="profile" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">Profile for the target resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="compartment" type="GraphDefinition.Compartment" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Compartment Consistency Rules.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="link" type="GraphDefinition.Link" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Additional links from target resource.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="GraphDefinition.Compartment">
<xs:annotation>
<xs:documentation xml:lang="en">A formal computable definition of a graph of resources - that is, a coherent set of resources that form a graph by following references. The Graph Definition resource defines a set and makes rules about the set.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="use" minOccurs="1" maxOccurs="1" type="GraphCompartmentUse">
<xs:annotation>
<xs:documentation xml:lang="en">Defines how the compartment rule is used - whether it it is used to test whether resources are subject to the rule, or whether it is a rule that must be followed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CompartmentType">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the compartment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="rule" minOccurs="1" maxOccurs="1" type="GraphCompartmentRule">
<xs:annotation>
<xs:documentation xml:lang="en">identical | matching | different | no-rule | custom.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expression" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Custom rule, as a FHIRPath expression.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Documentation for FHIRPath expression.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="GraphCompartmentUse-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="condition">
<xs:annotation>
<xs:documentation xml:lang="en">Condition</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="requirement">
<xs:annotation>
<xs:documentation xml:lang="en">Requirement</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="GraphCompartmentUse">
<xs:annotation>
<xs:documentation xml:lang="en">Defines how a compartment rule is used.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="GraphCompartmentUse-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="GraphCompartmentRule-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="identical">
<xs:annotation>
<xs:documentation xml:lang="en">Identical</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="matching">
<xs:annotation>
<xs:documentation xml:lang="en">Matching</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="different">
<xs:annotation>
<xs:documentation xml:lang="en">Different</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="custom">
<xs:annotation>
<xs:documentation xml:lang="en">Custom</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="GraphCompartmentRule">
<xs:annotation>
<xs:documentation xml:lang="en">How a compartment must be linked.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="GraphCompartmentRule-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Group" type="Group">
<xs:annotation>
<xs:documentation xml:lang="en">Represents a defined collection of entities that may be discussed or acted upon collectively but which are not expected to act collectively, and are not formally or legally recognized; i.e. a collection of entities that isn't an Organization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Group">
<xs:annotation>
<xs:documentation xml:lang="en">Represents a defined collection of entities that may be discussed or acted upon collectively but which are not expected to act collectively, and are not formally or legally recognized; i.e. a collection of entities that isn't an Organization.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A unique business identifier for this group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="active" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether the record for the group is available for use or is merely being retained for historical purposes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="GroupType">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the broad classification of the kind of resources the group includes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="actual" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">If true, indicates that the resource refers to a specific group of real individuals. If false, the group defines a set of intended individuals.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Provides a specific type of resource the group includes; e.g. &quot;cow&quot;, &quot;syringe&quot;, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A label assigned to the group for human identification and communication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="unsignedInt">
<xs:annotation>
<xs:documentation xml:lang="en">A count of the number of resource instances that are part of the group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="managingEntity" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Entity responsible for defining and maintaining Group characteristics and/or registered members.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="characteristic" type="Group.Characteristic" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies traits whose presence r absence is shared by members of the group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="member" type="Group.Member" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the resource instances that are members of the group.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Group.Characteristic">
<xs:annotation>
<xs:documentation xml:lang="en">Represents a defined collection of entities that may be discussed or acted upon collectively but which are not expected to act collectively, and are not formally or legally recognized; i.e. a collection of entities that isn't an Organization.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code that identifies the kind of trait being asserted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The value of the trait that holds (or does not hold - see 'exclude') for members of the group.</xs:documentation>
</xs:annotation>
<xs:element name="valueCodeableConcept" type="CodeableConcept"/>
<xs:element name="valueBoolean" type="boolean"/>
<xs:element name="valueQuantity" type="Quantity"/>
<xs:element name="valueRange" type="Range"/>
<xs:element name="valueReference" type="Reference"/>
</xs:choice>
<xs:element name="exclude" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">If true, indicates the characteristic is one that is NOT held by members of the group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period over which the characteristic is tested; e.g. the patient had an operation during the month of June.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Group.Member">
<xs:annotation>
<xs:documentation xml:lang="en">Represents a defined collection of entities that may be discussed or acted upon collectively but which are not expected to act collectively, and are not formally or legally recognized; i.e. a collection of entities that isn't an Organization.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="entity" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to the entity that is a member of the group. Must be consistent with Group.type. If the entity is another group, then the type must be the same.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period that the member was in the group, if known.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="inactive" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A flag to indicate that the member is no longer in the group, but previously may have been a member.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="GroupType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="person">
<xs:annotation>
<xs:documentation xml:lang="en">Person</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="animal">
<xs:annotation>
<xs:documentation xml:lang="en">Animal</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="practitioner">
<xs:annotation>
<xs:documentation xml:lang="en">Practitioner</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="device">
<xs:annotation>
<xs:documentation xml:lang="en">Device</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="medication">
<xs:annotation>
<xs:documentation xml:lang="en">Medication</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="substance">
<xs:annotation>
<xs:documentation xml:lang="en">Substance</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="GroupType">
<xs:annotation>
<xs:documentation xml:lang="en">Types of resources that are part of group.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="GroupType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="GuidanceResponse" type="GuidanceResponse">
<xs:annotation>
<xs:documentation xml:lang="en">A guidance response is the formal response to a guidance request, including any output parameters returned by the evaluation, as well as the description of any proposed actions to be taken.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="GuidanceResponse">
<xs:annotation>
<xs:documentation xml:lang="en">A guidance response is the formal response to a guidance request, including any output parameters returned by the evaluation, as well as the description of any proposed actions to be taken.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="requestIdentifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier of the request associated with this response. If an identifier was given as part of the request, it will be reproduced here to enable the requester to more easily identify the response in a multi-request scenario.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Allows a service to provide unique, business identifiers for the response.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">An identifier, CodeableConcept or canonical reference to the guidance that was requested.</xs:documentation>
</xs:annotation>
<xs:element name="moduleUri" type="uri"/>
<xs:element name="moduleCanonical" type="canonical"/>
<xs:element name="moduleCodeableConcept" type="CodeableConcept"/>
</xs:choice>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="GuidanceResponseStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the response. If the evaluation is completed successfully, the status will indicate success. However, in order to complete the evaluation, the engine may require more information. In this case, the status will be data-required, and the response will contain a description of the additional required information. If the evaluation completed successfully, but the engine determines that a potentially more accurate response could be provided if more data was available, the status will be data-requested, and the response will contain a description of the additional requested information.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The patient for which the request was processed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The encounter during which this response was created or to which the creation of this record is tightly associated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="occurrenceDateTime" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates when the guidance response was processed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Provides a reference to the device that performed the guidance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the reason for the guidance response in coded or textual form.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the reason the request was initiated. This is typically provided as a parameter to the evaluation and echoed by the service, although for some use cases, such as subscription- or event-based scenarios, it may provide an indication of the cause for the response.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Provides a mechanism to communicate additional information about the response.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="evaluationMessage" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Messages resulting from the evaluation of the artifact or artifacts. As part of evaluating the request, the engine may produce informational or warning messages. These messages will be provided by this element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="outputParameters" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The output parameters of the evaluation, if any. Many modules will result in the return of specific resources such as procedure or communication requests that are returned as part of the operation result. However, modules may define specific outputs that would be returned as the result of the evaluation, and these would be returned in this element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="result" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The actions, if any, produced by the evaluation of the artifact.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dataRequirement" minOccurs="0" maxOccurs="unbounded" type="DataRequirement">
<xs:annotation>
<xs:documentation xml:lang="en">If the evaluation could not be completed due to lack of information, or additional information would potentially result in a more accurate response, this element will a description of the data required in order to proceed with the evaluation. A subsequent request to the service should include this data.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="GuidanceResponseStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="success">
<xs:annotation>
<xs:documentation xml:lang="en">Success</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="data-requested">
<xs:annotation>
<xs:documentation xml:lang="en">Data Requested</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="data-required">
<xs:annotation>
<xs:documentation xml:lang="en">Data Required</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="in-progress">
<xs:annotation>
<xs:documentation xml:lang="en">In Progress</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="failure">
<xs:annotation>
<xs:documentation xml:lang="en">Failure</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered In Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="GuidanceResponseStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of a guidance response.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="GuidanceResponseStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="HealthcareService" type="HealthcareService">
<xs:annotation>
<xs:documentation xml:lang="en">The details of a healthcare service available at a location.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="HealthcareService">
<xs:annotation>
<xs:documentation xml:lang="en">The details of a healthcare service available at a location.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">External identifiers for this item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="active" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">This flag is used to mark the record to not be used. This is not used when a center is closed for maintenance, or for holidays, the notAvailable period is to be used for this.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="providedBy" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The organization that provides this healthcare service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the broad category of service being performed or delivered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The specific type of service that may be delivered or performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specialty" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Collection of specialties handled by the service site. This is more of a medical term.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="location" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The location(s) where this healthcare service may be provided.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Further description of the service as it would be presented to a consumer while searching.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comment" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Any additional description of the service and/or any specific issues not covered by the other attributes, which can be displayed as further detail under the serviceName.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="extraDetails" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Extra details about the service that can't be placed in the other fields.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="photo" minOccurs="0" maxOccurs="1" type="Attachment">
<xs:annotation>
<xs:documentation xml:lang="en">If there is a photo/symbol associated with this HealthcareService, it may be included here to facilitate quick identification of the service in a list.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="telecom" minOccurs="0" maxOccurs="unbounded" type="ContactPoint">
<xs:annotation>
<xs:documentation xml:lang="en">List of contacts related to this specific healthcare service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="coverageArea" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The location(s) that this service is available to (not where the service is provided).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="serviceProvisionCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The code(s) that detail the conditions under which the healthcare service is available/offered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="eligibility" type="HealthcareService.Eligibility" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Does this service have specific eligibility requirements that need to be met in order to use the service?</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="program" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Programs that this service is applicable to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="characteristic" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Collection of characteristics (attributes).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="communication" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Some services are specifically made available in multiple languages, this property permits a directory to declare the languages this is offered in. Typically this is only provided where a service operates in communities with mixed languages used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referralMethod" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Ways that the service accepts referrals, if this is not provided then it is implied that no referral is required.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="appointmentRequired" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether or not a prospective consumer will require an appointment for a particular service at a site to be provided by the Organization. Indicates if an appointment is required for access to this service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="availableTime" type="HealthcareService.AvailableTime" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A collection of times that the Service Site is available.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="notAvailable" type="HealthcareService.NotAvailable" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The HealthcareService is not available during this period of time due to the provided reason.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="availabilityExceptions" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A description of site availability exceptions, e.g. public holiday availability. Succinctly describing all possible exceptions to normal site availability as details in the available Times and not available Times.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endpoint" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Technical endpoints providing access to services operated for the specific healthcare services defined at this resource.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="HealthcareService.Eligibility">
<xs:annotation>
<xs:documentation xml:lang="en">The details of a healthcare service available at a location.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Coded value for the eligibility.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comment" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the eligibility conditions for the service.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="HealthcareService.AvailableTime">
<xs:annotation>
<xs:documentation xml:lang="en">The details of a healthcare service available at a location.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="daysOfWeek" minOccurs="0" maxOccurs="unbounded" type="DaysOfWeek">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates which days of the week are available between the start and end Times.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="allDay" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Is this always available? (hence times are irrelevant) e.g. 24 hour service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="availableStartTime" minOccurs="0" maxOccurs="1" type="time">
<xs:annotation>
<xs:documentation xml:lang="en">The opening time of day. Note: If the AllDay flag is set, then this time is ignored.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="availableEndTime" minOccurs="0" maxOccurs="1" type="time">
<xs:annotation>
<xs:documentation xml:lang="en">The closing time of day. Note: If the AllDay flag is set, then this time is ignored.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="HealthcareService.NotAvailable">
<xs:annotation>
<xs:documentation xml:lang="en">The details of a healthcare service available at a location.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="description" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The reason that can be presented to the user as to why this time is not available.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="during" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">Service is not available (seasonally or for a public holiday) from this date.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="DaysOfWeek-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="mon">
<xs:annotation>
<xs:documentation xml:lang="en">Monday</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="tue">
<xs:annotation>
<xs:documentation xml:lang="en">Tuesday</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="wed">
<xs:annotation>
<xs:documentation xml:lang="en">Wednesday</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="thu">
<xs:annotation>
<xs:documentation xml:lang="en">Thursday</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="fri">
<xs:annotation>
<xs:documentation xml:lang="en">Friday</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="sat">
<xs:annotation>
<xs:documentation xml:lang="en">Saturday</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="sun">
<xs:annotation>
<xs:documentation xml:lang="en">Sunday</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="DaysOfWeek">
<xs:annotation>
<xs:documentation xml:lang="en">The days of the week.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="DaysOfWeek-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="ImagingStudy" type="ImagingStudy">
<xs:annotation>
<xs:documentation xml:lang="en">Representation of the content produced in a DICOM imaging study. A study comprises a set of series, each of which includes a set of Service-Object Pair Instances (SOP Instances - images or other data) acquired or produced in a common context. A series is of only one modality (e.g. X-ray, CT, MR, ultrasound), but a study may have multiple series of different modalities.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ImagingStudy">
<xs:annotation>
<xs:documentation xml:lang="en">Representation of the content produced in a DICOM imaging study. A study comprises a set of series, each of which includes a set of Service-Object Pair Instances (SOP Instances - images or other data) acquired or produced in a common context. A series is of only one modality (e.g. X-ray, CT, MR, ultrasound), but a study may have multiple series of different modalities.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifiers for the ImagingStudy such as DICOM Study Instance UID, and Accession Number.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="ImagingStudyStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The current state of the ImagingStudy.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modality" minOccurs="0" maxOccurs="unbounded" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">A list of all the series.modality values that are actual acquisition modalities, i.e. those in the DICOM Context Group 29 (value set OID 1.2.840.10008.6.1.19).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The subject, typically a patient, of the imaging study.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The healthcare event (e.g. a patient and healthcare provider interaction) during which this ImagingStudy is made.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="started" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Date and time the study started.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basedOn" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A list of the diagnostic requests that resulted in this imaging study being performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referrer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The requesting/referring physician.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="interpreter" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Who read the study and interpreted the images or other content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endpoint" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The network service providing access (e.g., query, view, or retrieval) for the study. See implementation notes for information about using DICOM endpoints. A study-level endpoint applies to each series in the study, unless overridden by a series-level endpoint with the same Endpoint.connectionType.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="numberOfSeries" minOccurs="0" maxOccurs="1" type="unsignedInt">
<xs:annotation>
<xs:documentation xml:lang="en">Number of Series in the Study. This value given may be larger than the number of series elements this Resource contains due to resource availability, security, or other factors. This element should be present if any series elements are present.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="numberOfInstances" minOccurs="0" maxOccurs="1" type="unsignedInt">
<xs:annotation>
<xs:documentation xml:lang="en">Number of SOP Instances in Study. This value given may be larger than the number of instance elements this resource contains due to resource availability, security, or other factors. This element should be present if any instance elements are present.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="procedureReference" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The procedure which this ImagingStudy was part of.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="procedureCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The code for the performed procedure type.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="location" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The principal physical location where the ImagingStudy was performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Description of clinical condition indicating why the ImagingStudy was requested.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates another resource whose existence justifies this Study.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Per the recommended DICOM mapping, this element is derived from the Study Description attribute (0008,1030). Observations or findings about the imaging study should be recorded in another resource, e.g. Observation, and not in this element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The Imaging Manager description of the study. Institution-generated description or classification of the Study (component) performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="series" type="ImagingStudy.Series" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Each study has one or more series of images or other content.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ImagingStudy.Series">
<xs:annotation>
<xs:documentation xml:lang="en">Representation of the content produced in a DICOM imaging study. A study comprises a set of series, each of which includes a set of Service-Object Pair Instances (SOP Instances - images or other data) acquired or produced in a common context. A series is of only one modality (e.g. X-ray, CT, MR, ultrasound), but a study may have multiple series of different modalities.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="uid" minOccurs="1" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">The DICOM Series Instance UID for the series.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="number" minOccurs="0" maxOccurs="1" type="unsignedInt">
<xs:annotation>
<xs:documentation xml:lang="en">The numeric identifier of this series in the study.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modality" minOccurs="1" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">The modality of this series sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A description of the series.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="numberOfInstances" minOccurs="0" maxOccurs="1" type="unsignedInt">
<xs:annotation>
<xs:documentation xml:lang="en">Number of SOP Instances in the Study. The value given may be larger than the number of instance elements this resource contains due to resource availability, security, or other factors. This element should be present if any instance elements are present.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endpoint" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The network service providing access (e.g., query, view, or retrieval) for this series. See implementation notes for information about using DICOM endpoints. A series-level endpoint, if present, has precedence over a study-level endpoint with the same Endpoint.connectionType.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="bodySite" minOccurs="0" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">The anatomic structures examined. See DICOM Part 16 Annex L (http://dicom.nema.org/medical/dicom/current/output/chtml/part16/chapter_L.html) for DICOM to SNOMED-CT mappings. The bodySite may indicate the laterality of body part imaged; if so, it shall be consistent with any content of ImagingStudy.series.laterality.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="laterality" minOccurs="0" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">The laterality of the (possibly paired) anatomic structures examined. E.g., the left knee, both lungs, or unpaired abdomen. If present, shall be consistent with any laterality information indicated in ImagingStudy.series.bodySite.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specimen" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The specimen imaged, e.g., for whole slide imaging of a biopsy.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="started" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date and time the series was started.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performer" type="ImagingStudy.Performer" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates who or what performed the series and how they were involved.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instance" type="ImagingStudy.Instance" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A single SOP instance within the series, e.g. an image, or presentation state.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ImagingStudy.Performer">
<xs:annotation>
<xs:documentation xml:lang="en">Representation of the content produced in a DICOM imaging study. A study comprises a set of series, each of which includes a set of Service-Object Pair Instances (SOP Instances - images or other data) acquired or produced in a common context. A series is of only one modality (e.g. X-ray, CT, MR, ultrasound), but a study may have multiple series of different modalities.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="function" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Distinguishes the type of involvement of the performer in the series.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="actor" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates who or what performed the series.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ImagingStudy.Instance">
<xs:annotation>
<xs:documentation xml:lang="en">Representation of the content produced in a DICOM imaging study. A study comprises a set of series, each of which includes a set of Service-Object Pair Instances (SOP Instances - images or other data) acquired or produced in a common context. A series is of only one modality (e.g. X-ray, CT, MR, ultrasound), but a study may have multiple series of different modalities.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="uid" minOccurs="1" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">The DICOM SOP Instance UID for this image or other DICOM content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sopClass" minOccurs="1" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">DICOM instance type.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="number" minOccurs="0" maxOccurs="1" type="unsignedInt">
<xs:annotation>
<xs:documentation xml:lang="en">The number of instance in the series.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The description of the instance.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ImagingStudyStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="registered">
<xs:annotation>
<xs:documentation xml:lang="en">Registered</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="available">
<xs:annotation>
<xs:documentation xml:lang="en">Available</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cancelled">
<xs:annotation>
<xs:documentation xml:lang="en">Cancelled</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unknown">
<xs:annotation>
<xs:documentation xml:lang="en">Unknown</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ImagingStudyStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the ImagingStudy.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ImagingStudyStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Immunization" type="Immunization">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the event of a patient being administered a vaccine or a record of an immunization as reported by a patient, a clinician or another party.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Immunization">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the event of a patient being administered a vaccine or a record of an immunization as reported by a patient, a clinician or another party.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A unique identifier assigned to this immunization record.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="ImmunizationStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the current status of the immunization event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="statusReason" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the reason the immunization event was not performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="vaccineCode" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Vaccine that was administered or was to be administered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patient" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The patient who either received or did not receive the immunization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The visit or admission or other contact between patient and health care provider the immunization was performed as part of.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Date vaccine administered or was to be administered.</xs:documentation>
</xs:annotation>
<xs:element name="occurrenceDateTime" type="dateTime"/>
<xs:element name="occurrenceString" type="string"/>
</xs:choice>
<xs:element name="recorded" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date the occurrence of the immunization was first captured in the record - potentially significantly after the occurrence of the event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="primarySource" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">An indication that the content of the record is based on information from the person who administered the vaccine. This reflects the context under which the data was originally recorded.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reportOrigin" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The source of the data when the report of the immunization event is not based on information from the person who administered the vaccine.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="location" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The service delivery location where the vaccine administration occurred.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="manufacturer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Name of vaccine manufacturer.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lotNumber" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Lot number of the vaccine product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expirationDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">Date vaccine batch expires.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="site" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Body site where vaccine was administered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="route" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The path by which the vaccine product is taken into the body.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="doseQuantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The quantity of vaccine product that was administered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performer" type="Immunization.Performer" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates who performed the immunization event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Extra information about the immunization that is not conveyed by the other attributes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Reasons why the vaccine was administered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Condition, Observation or DiagnosticReport that supports why the immunization was administered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="isSubpotent" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Indication if a dose is considered to be subpotent. By default, a dose should be considered to be potent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subpotentReason" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Reason why a dose is considered to be subpotent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="education" type="Immunization.Education" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Educational material presented to the patient (or guardian) at the time of vaccine administration.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="programEligibility" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates a patient's eligibility for a funding program.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="fundingSource" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the source of the vaccine actually administered. This may be different than the patient eligibility (e.g. the patient may be eligible for a publically purchased vaccine but due to inventory issues, vaccine purchased with private funds was actually administered).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reaction" type="Immunization.Reaction" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Categorical data indicating that an adverse event is associated in time to an immunization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="protocolApplied" type="Immunization.ProtocolApplied" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The protocol (set of recommendations) being followed by the provider who administered the dose.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Immunization.Performer">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the event of a patient being administered a vaccine or a record of an immunization as reported by a patient, a clinician or another party.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="function" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the type of performance (e.g. ordering provider, administering provider, etc.).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="actor" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The practitioner or organization who performed the action.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Immunization.Education">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the event of a patient being administered a vaccine or a record of an immunization as reported by a patient, a clinician or another party.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="documentType" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier of the material presented to the patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reference" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">Reference pointer to the educational material given to the patient if the information was on line.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publicationDate" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Date the educational material was published.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="presentationDate" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Date the educational material was given to the patient.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Immunization.Reaction">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the event of a patient being administered a vaccine or a record of an immunization as reported by a patient, a clinician or another party.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Date of reaction to the immunization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detail" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Details of the reaction.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reported" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Self-reported indicator.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Immunization.ProtocolApplied">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the event of a patient being administered a vaccine or a record of an immunization as reported by a patient, a clinician or another party.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="series" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">One possible path to achieve presumed immunity against a disease - within the context of an authority.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="authority" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the authority who published the protocol (e.g. ACIP) that is being followed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="targetDisease" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The vaccine preventable disease the dose is being administered against.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Nominal position in a series.</xs:documentation>
</xs:annotation>
<xs:element name="doseNumberPositiveInt" type="positiveInt"/>
<xs:element name="doseNumberString" type="string"/>
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The recommended number of doses to achieve immunity.</xs:documentation>
</xs:annotation>
<xs:element name="seriesDosesPositiveInt" type="positiveInt"/>
<xs:element name="seriesDosesString" type="string"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ImmunizationStatusCodes-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="completed">
<xs:annotation>
<xs:documentation xml:lang="en">Completed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="not-done">
<xs:annotation>
<xs:documentation xml:lang="en">Not Done</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ImmunizationStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">A set of codes indicating the current status of an Immunization.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ImmunizationStatusCodes-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="ImmunizationEvaluation" type="ImmunizationEvaluation">
<xs:annotation>
<xs:documentation xml:lang="en">Describes a comparison of an immunization event against published recommendations to determine if the administration is &quot;valid&quot; in relation to those recommendations.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ImmunizationEvaluation">
<xs:annotation>
<xs:documentation xml:lang="en">Describes a comparison of an immunization event against published recommendations to determine if the administration is &quot;valid&quot; in relation to those recommendations.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A unique identifier assigned to this immunization evaluation record.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="ImmunizationEvaluationStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the current status of the evaluation of the vaccination administration event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patient" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The individual for whom the evaluation is being done.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date the evaluation of the vaccine administration event was performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="authority" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the authority who published the protocol (e.g. ACIP).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="targetDisease" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The vaccine preventable disease the dose is being evaluated against.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="immunizationEvent" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The vaccine administration event being evaluated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="doseStatus" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates if the dose is valid or not valid with respect to the published recommendations.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="doseStatusReason" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Provides an explanation as to why the vaccine administration event is valid or not relative to the published recommendations.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Additional information about the evaluation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="series" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">One possible path to achieve presumed immunity against a disease - within the context of an authority.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Nominal position in a series.</xs:documentation>
</xs:annotation>
<xs:element name="doseNumberPositiveInt" type="positiveInt"/>
<xs:element name="doseNumberString" type="string"/>
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The recommended number of doses to achieve immunity.</xs:documentation>
</xs:annotation>
<xs:element name="seriesDosesPositiveInt" type="positiveInt"/>
<xs:element name="seriesDosesString" type="string"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ImmunizationEvaluationStatusCodes-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="completed">
<xs:annotation>
<xs:documentation xml:lang="en">Completed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ImmunizationEvaluationStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the evaluation being done.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ImmunizationEvaluationStatusCodes-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="ImmunizationRecommendation" type="ImmunizationRecommendation">
<xs:annotation>
<xs:documentation xml:lang="en">A patient's point-in-time set of recommendations (i.e. forecasting) according to a published schedule with optional supporting justification.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ImmunizationRecommendation">
<xs:annotation>
<xs:documentation xml:lang="en">A patient's point-in-time set of recommendations (i.e. forecasting) according to a published schedule with optional supporting justification.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A unique identifier assigned to this particular recommendation record.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patient" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The patient the recommendation(s) are for.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="1" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date the immunization recommendation(s) were created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="authority" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the authority who published the protocol (e.g. ACIP).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="recommendation" type="ImmunizationRecommendation.Recommendation" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Vaccine administration recommendations.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ImmunizationRecommendation.Recommendation">
<xs:annotation>
<xs:documentation xml:lang="en">A patient's point-in-time set of recommendations (i.e. forecasting) according to a published schedule with optional supporting justification.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="vaccineCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Vaccine(s) or vaccine group that pertain to the recommendation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="targetDisease" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The targeted disease for the recommendation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contraindicatedVaccineCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Vaccine(s) which should not be used to fulfill the recommendation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="forecastStatus" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the patient status with respect to the path to immunity for the target disease.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="forecastReason" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The reason for the assigned forecast status.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dateCriterion" type="ImmunizationRecommendation.DateCriterion" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Vaccine date recommendations. For example, earliest date to administer, latest date to administer, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Contains the description about the protocol under which the vaccine was administered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="series" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">One possible path to achieve presumed immunity against a disease - within the context of an authority.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Nominal position of the recommended dose in a series (e.g. dose 2 is the next recommended dose).</xs:documentation>
</xs:annotation>
<xs:element name="doseNumberPositiveInt" type="positiveInt"/>
<xs:element name="doseNumberString" type="string"/>
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The recommended number of doses to achieve immunity.</xs:documentation>
</xs:annotation>
<xs:element name="seriesDosesPositiveInt" type="positiveInt"/>
<xs:element name="seriesDosesString" type="string"/>
</xs:choice>
<xs:element name="supportingImmunization" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Immunization event history and/or evaluation that supports the status and recommendation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="supportingPatientInformation" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Patient Information that supports the status and recommendation. This includes patient observations, adverse reactions and allergy/intolerance information.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ImmunizationRecommendation.DateCriterion">
<xs:annotation>
<xs:documentation xml:lang="en">A patient's point-in-time set of recommendations (i.e. forecasting) according to a published schedule with optional supporting justification.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Date classification of recommendation. For example, earliest date to give, latest date to give, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="value" minOccurs="1" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date whose meaning is specified by dateCriterion.code.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="ImplementationGuide" type="ImplementationGuide">
<xs:annotation>
<xs:documentation xml:lang="en">A set of rules of how a particular interoperability or standards problem is solved - typically through the use of FHIR resources. This resource is used to gather all the parts of an implementation guide into a logical whole and to publish a computable definition of all the parts.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ImplementationGuide">
<xs:annotation>
<xs:documentation xml:lang="en">A set of rules of how a particular interoperability or standards problem is solved - typically through the use of FHIR resources. This resource is used to gather all the parts of an implementation guide into a logical whole and to publish a computable definition of all the parts.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="1" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this implementation guide when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this implementation guide is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the implementation guide is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the implementation guide when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the implementation guide author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the implementation guide. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the implementation guide.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this implementation guide. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this implementation guide is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the implementation guide was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the implementation guide changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the implementation guide.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the implementation guide from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate implementation guide instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the implementation guide is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the implementation guide and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the implementation guide.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="packageId" minOccurs="1" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">The NPM package name for this Implementation Guide, used in the NPM package distribution, which is the primary mechanism by which FHIR based tooling manages IG dependencies. This value must be globally unique, and should be assigned with care.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="license" minOccurs="0" maxOccurs="1" type="SPDXLicense">
<xs:annotation>
<xs:documentation xml:lang="en">The license that applies to this Implementation Guide, using an SPDX license code, or 'not-open-source'.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="fhirVersion" minOccurs="1" maxOccurs="unbounded" type="FHIRVersion">
<xs:annotation>
<xs:documentation xml:lang="en">The version(s) of the FHIR specification that this ImplementationGuide targets - e.g. describes how to use. The value of this element is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.0.1. for this version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dependsOn" type="ImplementationGuide.DependsOn" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Another implementation guide that this implementation depends on. Typically, an implementation guide uses value sets, profiles etc.defined in other implementation guides.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="global" type="ImplementationGuide.Global" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A set of profiles that all resources covered by this implementation guide must conform to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="definition" type="ImplementationGuide.Definition" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The information needed by an IG publisher tool to publish the whole implementation guide.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="manifest" type="ImplementationGuide.Manifest" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Information about an assembled implementation guide, created by the publication tooling.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ImplementationGuide.DependsOn">
<xs:annotation>
<xs:documentation xml:lang="en">A set of rules of how a particular interoperability or standards problem is solved - typically through the use of FHIR resources. This resource is used to gather all the parts of an implementation guide into a logical whole and to publish a computable definition of all the parts.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="uri" minOccurs="1" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A canonical reference to the Implementation guide for the dependency.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="packageId" minOccurs="0" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">The NPM package name for the Implementation Guide that this IG depends on.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The version of the IG that is depended on, when the correct version is required to understand the IG correctly.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ImplementationGuide.Global">
<xs:annotation>
<xs:documentation xml:lang="en">A set of rules of how a particular interoperability or standards problem is solved - typically through the use of FHIR resources. This resource is used to gather all the parts of an implementation guide into a logical whole and to publish a computable definition of all the parts.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The type of resource that all instances must conform to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="profile" minOccurs="1" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to the profile that all instances must conform to.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ImplementationGuide.Definition">
<xs:annotation>
<xs:documentation xml:lang="en">A set of rules of how a particular interoperability or standards problem is solved - typically through the use of FHIR resources. This resource is used to gather all the parts of an implementation guide into a logical whole and to publish a computable definition of all the parts.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="grouping" type="ImplementationGuide.Grouping" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A logical group of resources. Logical groups can be used when building pages.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="resource" type="ImplementationGuide.Resource" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A resource that is part of the implementation guide. Conformance resources (value set, structure definition, capability statements etc.) are obvious candidates for inclusion, but any kind of resource can be included as an example resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="page" type="ImplementationGuide.Page" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A page / section in the implementation guide. The root page is the implementation guide home page.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="parameter" type="ImplementationGuide.Parameter" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Defines how IG is built by tools.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="template" type="ImplementationGuide.Template" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A template for building resources.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ImplementationGuide.Grouping">
<xs:annotation>
<xs:documentation xml:lang="en">A set of rules of how a particular interoperability or standards problem is solved - typically through the use of FHIR resources. This resource is used to gather all the parts of an implementation guide into a logical whole and to publish a computable definition of all the parts.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The human-readable title to display for the package of resources when rendering the implementation guide.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Human readable text describing the package.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ImplementationGuide.Resource">
<xs:annotation>
<xs:documentation xml:lang="en">A set of rules of how a particular interoperability or standards problem is solved - typically through the use of FHIR resources. This resource is used to gather all the parts of an implementation guide into a logical whole and to publish a computable definition of all the parts.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="reference" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Where this resource is found.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="fhirVersion" minOccurs="0" maxOccurs="unbounded" type="FHIRVersion">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the FHIR Version(s) this artifact is intended to apply to. If no versions are specified, the resource is assumed to apply to all the versions stated in ImplementationGuide.fhirVersion.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A human assigned name for the resource. All resources SHOULD have a name, but the name may be extracted from the resource (e.g. ValueSet.name).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A description of the reason that a resource has been included in the implementation guide.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">If true or a reference, indicates the resource is an example instance. If a reference is present, indicates that the example is an example of the specified profile.</xs:documentation>
</xs:annotation>
<xs:element name="exampleBoolean" type="boolean"/>
<xs:element name="exampleCanonical" type="canonical"/>
</xs:choice>
<xs:element name="groupingId" minOccurs="0" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to the id of the grouping this resource appears in.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ImplementationGuide.Page">
<xs:annotation>
<xs:documentation xml:lang="en">A set of rules of how a particular interoperability or standards problem is solved - typically through the use of FHIR resources. This resource is used to gather all the parts of an implementation guide into a logical whole and to publish a computable definition of all the parts.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The source address for the page.</xs:documentation>
</xs:annotation>
<xs:element name="nameUrl" type="url"/>
<xs:element name="nameReference" type="Reference"/>
</xs:choice>
<xs:element name="title" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short title used to represent this page in navigational structures such as table of contents, bread crumbs, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="generation" minOccurs="1" maxOccurs="1" type="GuidePageGeneration">
<xs:annotation>
<xs:documentation xml:lang="en">A code that indicates how the page is generated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="page" type="ImplementationGuide.Page" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Nested Pages/Sections under this page.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ImplementationGuide.Parameter">
<xs:annotation>
<xs:documentation xml:lang="en">A set of rules of how a particular interoperability or standards problem is solved - typically through the use of FHIR resources. This resource is used to gather all the parts of an implementation guide into a logical whole and to publish a computable definition of all the parts.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="GuideParameterCode">
<xs:annotation>
<xs:documentation xml:lang="en">apply | path-resource | path-pages | path-tx-cache | expansion-parameter | rule-broken-links | generate-xml | generate-json | generate-turtle | html-template.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="value" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Value for named type.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ImplementationGuide.Template">
<xs:annotation>
<xs:documentation xml:lang="en">A set of rules of how a particular interoperability or standards problem is solved - typically through the use of FHIR resources. This resource is used to gather all the parts of an implementation guide into a logical whole and to publish a computable definition of all the parts.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">Type of template specified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The source location for the template.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="scope" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The scope in which the template applies.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ImplementationGuide.Manifest">
<xs:annotation>
<xs:documentation xml:lang="en">A set of rules of how a particular interoperability or standards problem is solved - typically through the use of FHIR resources. This resource is used to gather all the parts of an implementation guide into a logical whole and to publish a computable definition of all the parts.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="rendering" minOccurs="0" maxOccurs="1" type="url">
<xs:annotation>
<xs:documentation xml:lang="en">A pointer to official web page, PDF or other rendering of the implementation guide.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="resource" type="ImplementationGuide.Resource1" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A resource that is part of the implementation guide. Conformance resources (value set, structure definition, capability statements etc.) are obvious candidates for inclusion, but any kind of resource can be included as an example resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="page" type="ImplementationGuide.Page1" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a page within the IG.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="image" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates a relative path to an image that exists within the IG.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="other" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the relative path of an additional non-page, non-image file that is part of the IG - e.g. zip, jar and similar files that could be the target of a hyperlink in a derived IG.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ImplementationGuide.Resource1">
<xs:annotation>
<xs:documentation xml:lang="en">A set of rules of how a particular interoperability or standards problem is solved - typically through the use of FHIR resources. This resource is used to gather all the parts of an implementation guide into a logical whole and to publish a computable definition of all the parts.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="reference" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Where this resource is found.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">If true or a reference, indicates the resource is an example instance. If a reference is present, indicates that the example is an example of the specified profile.</xs:documentation>
</xs:annotation>
<xs:element name="exampleBoolean" type="boolean"/>
<xs:element name="exampleCanonical" type="canonical"/>
</xs:choice>
<xs:element name="relativePath" minOccurs="0" maxOccurs="1" type="url">
<xs:annotation>
<xs:documentation xml:lang="en">The relative path for primary page for this resource within the IG.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ImplementationGuide.Page1">
<xs:annotation>
<xs:documentation xml:lang="en">A set of rules of how a particular interoperability or standards problem is solved - typically through the use of FHIR resources. This resource is used to gather all the parts of an implementation guide into a logical whole and to publish a computable definition of all the parts.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Relative path to the page.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Label for the page intended for human display.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="anchor" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of an anchor available on the page.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="GuideParameterCode-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="apply">
<xs:annotation>
<xs:documentation xml:lang="en">Apply Metadata Value</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="path-resource">
<xs:annotation>
<xs:documentation xml:lang="en">Resource Path</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="path-pages">
<xs:annotation>
<xs:documentation xml:lang="en">Pages Path</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="path-tx-cache">
<xs:annotation>
<xs:documentation xml:lang="en">Terminology Cache Path</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="expansion-parameter">
<xs:annotation>
<xs:documentation xml:lang="en">Expansion Profile</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="rule-broken-links">
<xs:annotation>
<xs:documentation xml:lang="en">Broken Links Rule</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="generate-xml">
<xs:annotation>
<xs:documentation xml:lang="en">Generate XML</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="generate-json">
<xs:annotation>
<xs:documentation xml:lang="en">Generate JSON</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="generate-turtle">
<xs:annotation>
<xs:documentation xml:lang="en">Generate Turtle</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="html-template">
<xs:annotation>
<xs:documentation xml:lang="en">HTML Template</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="GuideParameterCode">
<xs:annotation>
<xs:documentation xml:lang="en">Code of parameter that is input to the guide.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="GuideParameterCode-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="SPDXLicense-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="not-open-source">
<xs:annotation>
<xs:documentation xml:lang="en">Not open source</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="0BSD">
<xs:annotation>
<xs:documentation xml:lang="en">BSD Zero Clause License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AAL">
<xs:annotation>
<xs:documentation xml:lang="en">Attribution Assurance License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Abstyles">
<xs:annotation>
<xs:documentation xml:lang="en">Abstyles License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Adobe-2006">
<xs:annotation>
<xs:documentation xml:lang="en">Adobe Systems Incorporated Source Code License Agreement</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Adobe-Glyph">
<xs:annotation>
<xs:documentation xml:lang="en">Adobe Glyph List License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ADSL">
<xs:annotation>
<xs:documentation xml:lang="en">Amazon Digital Services License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AFL-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">Academic Free License v1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AFL-1.2">
<xs:annotation>
<xs:documentation xml:lang="en">Academic Free License v1.2</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AFL-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">Academic Free License v2.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AFL-2.1">
<xs:annotation>
<xs:documentation xml:lang="en">Academic Free License v2.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AFL-3.0">
<xs:annotation>
<xs:documentation xml:lang="en">Academic Free License v3.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Afmparse">
<xs:annotation>
<xs:documentation xml:lang="en">Afmparse License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AGPL-1.0-only">
<xs:annotation>
<xs:documentation xml:lang="en">Affero General Public License v1.0 only</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AGPL-1.0-or-later">
<xs:annotation>
<xs:documentation xml:lang="en">Affero General Public License v1.0 or later</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AGPL-3.0-only">
<xs:annotation>
<xs:documentation xml:lang="en">GNU Affero General Public License v3.0 only</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AGPL-3.0-or-later">
<xs:annotation>
<xs:documentation xml:lang="en">GNU Affero General Public License v3.0 or later</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Aladdin">
<xs:annotation>
<xs:documentation xml:lang="en">Aladdin Free Public License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AMDPLPA">
<xs:annotation>
<xs:documentation xml:lang="en">AMD's plpa_map.c License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AML">
<xs:annotation>
<xs:documentation xml:lang="en">Apple MIT License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="AMPAS">
<xs:annotation>
<xs:documentation xml:lang="en">Academy of Motion Picture Arts and Sciences BSD</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ANTLR-PD">
<xs:annotation>
<xs:documentation xml:lang="en">ANTLR Software Rights Notice</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Apache-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Apache License 1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Apache-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">Apache License 1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Apache-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">Apache License 2.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="APAFML">
<xs:annotation>
<xs:documentation xml:lang="en">Adobe Postscript AFM License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="APL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Adaptive Public License 1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="APSL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Apple Public Source License 1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="APSL-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">Apple Public Source License 1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="APSL-1.2">
<xs:annotation>
<xs:documentation xml:lang="en">Apple Public Source License 1.2</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="APSL-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">Apple Public Source License 2.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Artistic-1.0-cl8">
<xs:annotation>
<xs:documentation xml:lang="en">Artistic License 1.0 w/clause 8</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Artistic-1.0-Perl">
<xs:annotation>
<xs:documentation xml:lang="en">Artistic License 1.0 (Perl)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Artistic-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Artistic License 1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Artistic-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">Artistic License 2.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Bahyph">
<xs:annotation>
<xs:documentation xml:lang="en">Bahyph License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Barr">
<xs:annotation>
<xs:documentation xml:lang="en">Barr License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Beerware">
<xs:annotation>
<xs:documentation xml:lang="en">Beerware License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="BitTorrent-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">BitTorrent Open Source License v1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="BitTorrent-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">BitTorrent Open Source License v1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Borceux">
<xs:annotation>
<xs:documentation xml:lang="en">Borceux license</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="BSD-1-Clause">
<xs:annotation>
<xs:documentation xml:lang="en">BSD 1-Clause License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="BSD-2-Clause-FreeBSD">
<xs:annotation>
<xs:documentation xml:lang="en">BSD 2-Clause FreeBSD License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="BSD-2-Clause-NetBSD">
<xs:annotation>
<xs:documentation xml:lang="en">BSD 2-Clause NetBSD License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="BSD-2-Clause-Patent">
<xs:annotation>
<xs:documentation xml:lang="en">BSD-2-Clause Plus Patent License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="BSD-2-Clause">
<xs:annotation>
<xs:documentation xml:lang="en">BSD 2-Clause &quot;Simplified&quot; License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="BSD-3-Clause-Attribution">
<xs:annotation>
<xs:documentation xml:lang="en">BSD with attribution</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="BSD-3-Clause-Clear">
<xs:annotation>
<xs:documentation xml:lang="en">BSD 3-Clause Clear License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="BSD-3-Clause-LBNL">
<xs:annotation>
<xs:documentation xml:lang="en">Lawrence Berkeley National Labs BSD variant license</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="BSD-3-Clause-No-Nuclear-License-2014">
<xs:annotation>
<xs:documentation xml:lang="en">BSD 3-Clause No Nuclear License 2014</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="BSD-3-Clause-No-Nuclear-License">
<xs:annotation>
<xs:documentation xml:lang="en">BSD 3-Clause No Nuclear License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="BSD-3-Clause-No-Nuclear-Warranty">
<xs:annotation>
<xs:documentation xml:lang="en">BSD 3-Clause No Nuclear Warranty</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="BSD-3-Clause">
<xs:annotation>
<xs:documentation xml:lang="en">BSD 3-Clause &quot;New&quot; or &quot;Revised&quot; License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="BSD-4-Clause-UC">
<xs:annotation>
<xs:documentation xml:lang="en">BSD-4-Clause (University of California-Specific)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="BSD-4-Clause">
<xs:annotation>
<xs:documentation xml:lang="en">BSD 4-Clause &quot;Original&quot; or &quot;Old&quot; License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="BSD-Protection">
<xs:annotation>
<xs:documentation xml:lang="en">BSD Protection License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="BSD-Source-Code">
<xs:annotation>
<xs:documentation xml:lang="en">BSD Source Code Attribution</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="BSL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Boost Software License 1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="bzip2-1.0.5">
<xs:annotation>
<xs:documentation xml:lang="en">bzip2 and libbzip2 License v1.0.5</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="bzip2-1.0.6">
<xs:annotation>
<xs:documentation xml:lang="en">bzip2 and libbzip2 License v1.0.6</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Caldera">
<xs:annotation>
<xs:documentation xml:lang="en">Caldera License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CATOSL-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">Computer Associates Trusted Open Source License 1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution 1.0 Generic</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution 2.0 Generic</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-2.5">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution 2.5 Generic</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-3.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution 3.0 Unported</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-4.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution 4.0 International</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-NC-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution Non Commercial 1.0 Generic</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-NC-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution Non Commercial 2.0 Generic</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-NC-2.5">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution Non Commercial 2.5 Generic</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-NC-3.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution Non Commercial 3.0 Unported</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-NC-4.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution Non Commercial 4.0 International</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-NC-ND-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution Non Commercial No Derivatives 1.0 Generic</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-NC-ND-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution Non Commercial No Derivatives 2.0 Generic</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-NC-ND-2.5">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution Non Commercial No Derivatives 2.5 Generic</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-NC-ND-3.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution Non Commercial No Derivatives 3.0 Unported</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-NC-ND-4.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution Non Commercial No Derivatives 4.0 International</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-NC-SA-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution Non Commercial Share Alike 1.0 Generic</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-NC-SA-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution Non Commercial Share Alike 2.0 Generic</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-NC-SA-2.5">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution Non Commercial Share Alike 2.5 Generic</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-NC-SA-3.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution Non Commercial Share Alike 3.0 Unported</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-NC-SA-4.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution Non Commercial Share Alike 4.0 International</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-ND-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution No Derivatives 1.0 Generic</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-ND-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution No Derivatives 2.0 Generic</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-ND-2.5">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution No Derivatives 2.5 Generic</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-ND-3.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution No Derivatives 3.0 Unported</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-ND-4.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution No Derivatives 4.0 International</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-SA-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution Share Alike 1.0 Generic</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-SA-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution Share Alike 2.0 Generic</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-SA-2.5">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution Share Alike 2.5 Generic</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-SA-3.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution Share Alike 3.0 Unported</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC-BY-SA-4.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Attribution Share Alike 4.0 International</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CC0-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Creative Commons Zero v1.0 Universal</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CDDL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Common Development and Distribution License 1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CDDL-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">Common Development and Distribution License 1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CDLA-Permissive-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Community Data License Agreement Permissive 1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CDLA-Sharing-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Community Data License Agreement Sharing 1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CECILL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">CeCILL Free Software License Agreement v1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CECILL-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">CeCILL Free Software License Agreement v1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CECILL-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">CeCILL Free Software License Agreement v2.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CECILL-2.1">
<xs:annotation>
<xs:documentation xml:lang="en">CeCILL Free Software License Agreement v2.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CECILL-B">
<xs:annotation>
<xs:documentation xml:lang="en">CeCILL-B Free Software License Agreement</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CECILL-C">
<xs:annotation>
<xs:documentation xml:lang="en">CeCILL-C Free Software License Agreement</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ClArtistic">
<xs:annotation>
<xs:documentation xml:lang="en">Clarified Artistic License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CNRI-Jython">
<xs:annotation>
<xs:documentation xml:lang="en">CNRI Jython License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CNRI-Python-GPL-Compatible">
<xs:annotation>
<xs:documentation xml:lang="en">CNRI Python Open Source GPL Compatible License Agreement</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CNRI-Python">
<xs:annotation>
<xs:documentation xml:lang="en">CNRI Python License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Condor-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">Condor Public License v1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CPAL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Common Public Attribution License 1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CPL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Common Public License 1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CPOL-1.02">
<xs:annotation>
<xs:documentation xml:lang="en">Code Project Open License 1.02</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Crossword">
<xs:annotation>
<xs:documentation xml:lang="en">Crossword License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CrystalStacker">
<xs:annotation>
<xs:documentation xml:lang="en">CrystalStacker License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CUA-OPL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">CUA Office Public License v1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Cube">
<xs:annotation>
<xs:documentation xml:lang="en">Cube License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="curl">
<xs:annotation>
<xs:documentation xml:lang="en">curl License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="D-FSL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Deutsche Freie Software Lizenz</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="diffmark">
<xs:annotation>
<xs:documentation xml:lang="en">diffmark license</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="DOC">
<xs:annotation>
<xs:documentation xml:lang="en">DOC License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Dotseqn">
<xs:annotation>
<xs:documentation xml:lang="en">Dotseqn License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="DSDP">
<xs:annotation>
<xs:documentation xml:lang="en">DSDP License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="dvipdfm">
<xs:annotation>
<xs:documentation xml:lang="en">dvipdfm License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ECL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Educational Community License v1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ECL-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">Educational Community License v2.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="EFL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Eiffel Forum License v1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="EFL-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">Eiffel Forum License v2.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="eGenix">
<xs:annotation>
<xs:documentation xml:lang="en">eGenix.com Public License 1.1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Entessa">
<xs:annotation>
<xs:documentation xml:lang="en">Entessa Public License v1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="EPL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Eclipse Public License 1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="EPL-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">Eclipse Public License 2.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ErlPL-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">Erlang Public License v1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="EUDatagrid">
<xs:annotation>
<xs:documentation xml:lang="en">EU DataGrid Software License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="EUPL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">European Union Public License 1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="EUPL-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">European Union Public License 1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="EUPL-1.2">
<xs:annotation>
<xs:documentation xml:lang="en">European Union Public License 1.2</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Eurosym">
<xs:annotation>
<xs:documentation xml:lang="en">Eurosym License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Fair">
<xs:annotation>
<xs:documentation xml:lang="en">Fair License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Frameworx-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Frameworx Open License 1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="FreeImage">
<xs:annotation>
<xs:documentation xml:lang="en">FreeImage Public License v1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="FSFAP">
<xs:annotation>
<xs:documentation xml:lang="en">FSF All Permissive License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="FSFUL">
<xs:annotation>
<xs:documentation xml:lang="en">FSF Unlimited License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="FSFULLR">
<xs:annotation>
<xs:documentation xml:lang="en">FSF Unlimited License (with License Retention)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="FTL">
<xs:annotation>
<xs:documentation xml:lang="en">Freetype Project License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="GFDL-1.1-only">
<xs:annotation>
<xs:documentation xml:lang="en">GNU Free Documentation License v1.1 only</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="GFDL-1.1-or-later">
<xs:annotation>
<xs:documentation xml:lang="en">GNU Free Documentation License v1.1 or later</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="GFDL-1.2-only">
<xs:annotation>
<xs:documentation xml:lang="en">GNU Free Documentation License v1.2 only</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="GFDL-1.2-or-later">
<xs:annotation>
<xs:documentation xml:lang="en">GNU Free Documentation License v1.2 or later</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="GFDL-1.3-only">
<xs:annotation>
<xs:documentation xml:lang="en">GNU Free Documentation License v1.3 only</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="GFDL-1.3-or-later">
<xs:annotation>
<xs:documentation xml:lang="en">GNU Free Documentation License v1.3 or later</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Giftware">
<xs:annotation>
<xs:documentation xml:lang="en">Giftware License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="GL2PS">
<xs:annotation>
<xs:documentation xml:lang="en">GL2PS License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Glide">
<xs:annotation>
<xs:documentation xml:lang="en">3dfx Glide License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Glulxe">
<xs:annotation>
<xs:documentation xml:lang="en">Glulxe License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="gnuplot">
<xs:annotation>
<xs:documentation xml:lang="en">gnuplot License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="GPL-1.0-only">
<xs:annotation>
<xs:documentation xml:lang="en">GNU General Public License v1.0 only</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="GPL-1.0-or-later">
<xs:annotation>
<xs:documentation xml:lang="en">GNU General Public License v1.0 or later</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="GPL-2.0-only">
<xs:annotation>
<xs:documentation xml:lang="en">GNU General Public License v2.0 only</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="GPL-2.0-or-later">
<xs:annotation>
<xs:documentation xml:lang="en">GNU General Public License v2.0 or later</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="GPL-3.0-only">
<xs:annotation>
<xs:documentation xml:lang="en">GNU General Public License v3.0 only</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="GPL-3.0-or-later">
<xs:annotation>
<xs:documentation xml:lang="en">GNU General Public License v3.0 or later</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="gSOAP-1.3b">
<xs:annotation>
<xs:documentation xml:lang="en">gSOAP Public License v1.3b</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="HaskellReport">
<xs:annotation>
<xs:documentation xml:lang="en">Haskell Language Report License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="HPND">
<xs:annotation>
<xs:documentation xml:lang="en">Historical Permission Notice and Disclaimer</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="IBM-pibs">
<xs:annotation>
<xs:documentation xml:lang="en">IBM PowerPC Initialization and Boot Software</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ICU">
<xs:annotation>
<xs:documentation xml:lang="en">ICU License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="IJG">
<xs:annotation>
<xs:documentation xml:lang="en">Independent JPEG Group License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ImageMagick">
<xs:annotation>
<xs:documentation xml:lang="en">ImageMagick License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="iMatix">
<xs:annotation>
<xs:documentation xml:lang="en">iMatix Standard Function Library Agreement</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Imlib2">
<xs:annotation>
<xs:documentation xml:lang="en">Imlib2 License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Info-ZIP">
<xs:annotation>
<xs:documentation xml:lang="en">Info-ZIP License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Intel-ACPI">
<xs:annotation>
<xs:documentation xml:lang="en">Intel ACPI Software License Agreement</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Intel">
<xs:annotation>
<xs:documentation xml:lang="en">Intel Open Source License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Interbase-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Interbase Public License v1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="IPA">
<xs:annotation>
<xs:documentation xml:lang="en">IPA Font License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="IPL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">IBM Public License v1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ISC">
<xs:annotation>
<xs:documentation xml:lang="en">ISC License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="JasPer-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">JasPer License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="JSON">
<xs:annotation>
<xs:documentation xml:lang="en">JSON License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="LAL-1.2">
<xs:annotation>
<xs:documentation xml:lang="en">Licence Art Libre 1.2</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="LAL-1.3">
<xs:annotation>
<xs:documentation xml:lang="en">Licence Art Libre 1.3</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Latex2e">
<xs:annotation>
<xs:documentation xml:lang="en">Latex2e License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Leptonica">
<xs:annotation>
<xs:documentation xml:lang="en">Leptonica License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="LGPL-2.0-only">
<xs:annotation>
<xs:documentation xml:lang="en">GNU Library General Public License v2 only</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="LGPL-2.0-or-later">
<xs:annotation>
<xs:documentation xml:lang="en">GNU Library General Public License v2 or later</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="LGPL-2.1-only">
<xs:annotation>
<xs:documentation xml:lang="en">GNU Lesser General Public License v2.1 only</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="LGPL-2.1-or-later">
<xs:annotation>
<xs:documentation xml:lang="en">GNU Lesser General Public License v2.1 or later</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="LGPL-3.0-only">
<xs:annotation>
<xs:documentation xml:lang="en">GNU Lesser General Public License v3.0 only</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="LGPL-3.0-or-later">
<xs:annotation>
<xs:documentation xml:lang="en">GNU Lesser General Public License v3.0 or later</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="LGPLLR">
<xs:annotation>
<xs:documentation xml:lang="en">Lesser General Public License For Linguistic Resources</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Libpng">
<xs:annotation>
<xs:documentation xml:lang="en">libpng License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="libtiff">
<xs:annotation>
<xs:documentation xml:lang="en">libtiff License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="LiLiQ-P-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">Licence Libre du Québec Permissive version 1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="LiLiQ-R-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">Licence Libre du Québec Réciprocité version 1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="LiLiQ-Rplus-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">Licence Libre du Québec Réciprocité forte version 1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Linux-OpenIB">
<xs:annotation>
<xs:documentation xml:lang="en">Linux Kernel Variant of OpenIB.org license</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="LPL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Lucent Public License Version 1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="LPL-1.02">
<xs:annotation>
<xs:documentation xml:lang="en">Lucent Public License v1.02</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="LPPL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">LaTeX Project Public License v1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="LPPL-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">LaTeX Project Public License v1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="LPPL-1.2">
<xs:annotation>
<xs:documentation xml:lang="en">LaTeX Project Public License v1.2</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="LPPL-1.3a">
<xs:annotation>
<xs:documentation xml:lang="en">LaTeX Project Public License v1.3a</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="LPPL-1.3c">
<xs:annotation>
<xs:documentation xml:lang="en">LaTeX Project Public License v1.3c</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MakeIndex">
<xs:annotation>
<xs:documentation xml:lang="en">MakeIndex License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MirOS">
<xs:annotation>
<xs:documentation xml:lang="en">MirOS License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MIT-0">
<xs:annotation>
<xs:documentation xml:lang="en">MIT No Attribution</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MIT-advertising">
<xs:annotation>
<xs:documentation xml:lang="en">Enlightenment License (e16)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MIT-CMU">
<xs:annotation>
<xs:documentation xml:lang="en">CMU License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MIT-enna">
<xs:annotation>
<xs:documentation xml:lang="en">enna License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MIT-feh">
<xs:annotation>
<xs:documentation xml:lang="en">feh License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MIT">
<xs:annotation>
<xs:documentation xml:lang="en">MIT License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MITNFA">
<xs:annotation>
<xs:documentation xml:lang="en">MIT +no-false-attribs license</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Motosoto">
<xs:annotation>
<xs:documentation xml:lang="en">Motosoto License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="mpich2">
<xs:annotation>
<xs:documentation xml:lang="en">mpich2 License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MPL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Mozilla Public License 1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MPL-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">Mozilla Public License 1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MPL-2.0-no-copyleft-exception">
<xs:annotation>
<xs:documentation xml:lang="en">Mozilla Public License 2.0 (no copyleft exception)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MPL-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">Mozilla Public License 2.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MS-PL">
<xs:annotation>
<xs:documentation xml:lang="en">Microsoft Public License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MS-RL">
<xs:annotation>
<xs:documentation xml:lang="en">Microsoft Reciprocal License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="MTLL">
<xs:annotation>
<xs:documentation xml:lang="en">Matrix Template Library License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Multics">
<xs:annotation>
<xs:documentation xml:lang="en">Multics License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Mup">
<xs:annotation>
<xs:documentation xml:lang="en">Mup License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="NASA-1.3">
<xs:annotation>
<xs:documentation xml:lang="en">NASA Open Source Agreement 1.3</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Naumen">
<xs:annotation>
<xs:documentation xml:lang="en">Naumen Public License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="NBPL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Net Boolean Public License v1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="NCSA">
<xs:annotation>
<xs:documentation xml:lang="en">University of Illinois/NCSA Open Source License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Net-SNMP">
<xs:annotation>
<xs:documentation xml:lang="en">Net-SNMP License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="NetCDF">
<xs:annotation>
<xs:documentation xml:lang="en">NetCDF license</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Newsletr">
<xs:annotation>
<xs:documentation xml:lang="en">Newsletr License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="NGPL">
<xs:annotation>
<xs:documentation xml:lang="en">Nethack General Public License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="NLOD-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Norwegian Licence for Open Government Data</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="NLPL">
<xs:annotation>
<xs:documentation xml:lang="en">No Limit Public License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Nokia">
<xs:annotation>
<xs:documentation xml:lang="en">Nokia Open Source License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="NOSL">
<xs:annotation>
<xs:documentation xml:lang="en">Netizen Open Source License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Noweb">
<xs:annotation>
<xs:documentation xml:lang="en">Noweb License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="NPL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Netscape Public License v1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="NPL-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">Netscape Public License v1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="NPOSL-3.0">
<xs:annotation>
<xs:documentation xml:lang="en">Non-Profit Open Software License 3.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="NRL">
<xs:annotation>
<xs:documentation xml:lang="en">NRL License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="NTP">
<xs:annotation>
<xs:documentation xml:lang="en">NTP License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OCCT-PL">
<xs:annotation>
<xs:documentation xml:lang="en">Open CASCADE Technology Public License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OCLC-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">OCLC Research Public License 2.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ODbL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">ODC Open Database License v1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OFL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">SIL Open Font License 1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OFL-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">SIL Open Font License 1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OGTSL">
<xs:annotation>
<xs:documentation xml:lang="en">Open Group Test Suite License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OLDAP-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">Open LDAP Public License v1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OLDAP-1.2">
<xs:annotation>
<xs:documentation xml:lang="en">Open LDAP Public License v1.2</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OLDAP-1.3">
<xs:annotation>
<xs:documentation xml:lang="en">Open LDAP Public License v1.3</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OLDAP-1.4">
<xs:annotation>
<xs:documentation xml:lang="en">Open LDAP Public License v1.4</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OLDAP-2.0.1">
<xs:annotation>
<xs:documentation xml:lang="en">Open LDAP Public License v2.0.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OLDAP-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">Open LDAP Public License v2.0 (or possibly 2.0A and 2.0B)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OLDAP-2.1">
<xs:annotation>
<xs:documentation xml:lang="en">Open LDAP Public License v2.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OLDAP-2.2.1">
<xs:annotation>
<xs:documentation xml:lang="en">Open LDAP Public License v2.2.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OLDAP-2.2.2">
<xs:annotation>
<xs:documentation xml:lang="en">Open LDAP Public License 2.2.2</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OLDAP-2.2">
<xs:annotation>
<xs:documentation xml:lang="en">Open LDAP Public License v2.2</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OLDAP-2.3">
<xs:annotation>
<xs:documentation xml:lang="en">Open LDAP Public License v2.3</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OLDAP-2.4">
<xs:annotation>
<xs:documentation xml:lang="en">Open LDAP Public License v2.4</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OLDAP-2.5">
<xs:annotation>
<xs:documentation xml:lang="en">Open LDAP Public License v2.5</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OLDAP-2.6">
<xs:annotation>
<xs:documentation xml:lang="en">Open LDAP Public License v2.6</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OLDAP-2.7">
<xs:annotation>
<xs:documentation xml:lang="en">Open LDAP Public License v2.7</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OLDAP-2.8">
<xs:annotation>
<xs:documentation xml:lang="en">Open LDAP Public License v2.8</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OML">
<xs:annotation>
<xs:documentation xml:lang="en">Open Market License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OpenSSL">
<xs:annotation>
<xs:documentation xml:lang="en">OpenSSL License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OPL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Open Public License v1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OSET-PL-2.1">
<xs:annotation>
<xs:documentation xml:lang="en">OSET Public License version 2.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OSL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Open Software License 1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OSL-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">Open Software License 1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OSL-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">Open Software License 2.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OSL-2.1">
<xs:annotation>
<xs:documentation xml:lang="en">Open Software License 2.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OSL-3.0">
<xs:annotation>
<xs:documentation xml:lang="en">Open Software License 3.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="PDDL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">ODC Public Domain Dedication &amp; License 1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="PHP-3.0">
<xs:annotation>
<xs:documentation xml:lang="en">PHP License v3.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="PHP-3.01">
<xs:annotation>
<xs:documentation xml:lang="en">PHP License v3.01</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Plexus">
<xs:annotation>
<xs:documentation xml:lang="en">Plexus Classworlds License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="PostgreSQL">
<xs:annotation>
<xs:documentation xml:lang="en">PostgreSQL License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="psfrag">
<xs:annotation>
<xs:documentation xml:lang="en">psfrag License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="psutils">
<xs:annotation>
<xs:documentation xml:lang="en">psutils License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Python-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">Python License 2.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Qhull">
<xs:annotation>
<xs:documentation xml:lang="en">Qhull License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="QPL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Q Public License 1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Rdisc">
<xs:annotation>
<xs:documentation xml:lang="en">Rdisc License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="RHeCos-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">Red Hat eCos Public License v1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="RPL-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">Reciprocal Public License 1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="RPL-1.5">
<xs:annotation>
<xs:documentation xml:lang="en">Reciprocal Public License 1.5</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="RPSL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">RealNetworks Public Source License v1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="RSA-MD">
<xs:annotation>
<xs:documentation xml:lang="en">RSA Message-Digest License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="RSCPL">
<xs:annotation>
<xs:documentation xml:lang="en">Ricoh Source Code Public License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Ruby">
<xs:annotation>
<xs:documentation xml:lang="en">Ruby License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SAX-PD">
<xs:annotation>
<xs:documentation xml:lang="en">Sax Public Domain Notice</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Saxpath">
<xs:annotation>
<xs:documentation xml:lang="en">Saxpath License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SCEA">
<xs:annotation>
<xs:documentation xml:lang="en">SCEA Shared Source License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Sendmail">
<xs:annotation>
<xs:documentation xml:lang="en">Sendmail License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SGI-B-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">SGI Free Software License B v1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SGI-B-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">SGI Free Software License B v1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SGI-B-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">SGI Free Software License B v2.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SimPL-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">Simple Public License 2.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SISSL-1.2">
<xs:annotation>
<xs:documentation xml:lang="en">Sun Industry Standards Source License v1.2</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SISSL">
<xs:annotation>
<xs:documentation xml:lang="en">Sun Industry Standards Source License v1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Sleepycat">
<xs:annotation>
<xs:documentation xml:lang="en">Sleepycat License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SMLNJ">
<xs:annotation>
<xs:documentation xml:lang="en">Standard ML of New Jersey License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SMPPL">
<xs:annotation>
<xs:documentation xml:lang="en">Secure Messaging Protocol Public License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SNIA">
<xs:annotation>
<xs:documentation xml:lang="en">SNIA Public License 1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Spencer-86">
<xs:annotation>
<xs:documentation xml:lang="en">Spencer License 86</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Spencer-94">
<xs:annotation>
<xs:documentation xml:lang="en">Spencer License 94</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Spencer-99">
<xs:annotation>
<xs:documentation xml:lang="en">Spencer License 99</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SPL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Sun Public License v1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SugarCRM-1.1.3">
<xs:annotation>
<xs:documentation xml:lang="en">SugarCRM Public License v1.1.3</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SWL">
<xs:annotation>
<xs:documentation xml:lang="en">Scheme Widget Library (SWL) Software License Agreement</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="TCL">
<xs:annotation>
<xs:documentation xml:lang="en">TCL/TK License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="TCP-wrappers">
<xs:annotation>
<xs:documentation xml:lang="en">TCP Wrappers License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="TMate">
<xs:annotation>
<xs:documentation xml:lang="en">TMate Open Source License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="TORQUE-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">TORQUE v2.5+ Software License v1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="TOSL">
<xs:annotation>
<xs:documentation xml:lang="en">Trusster Open Source License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Unicode-DFS-2015">
<xs:annotation>
<xs:documentation xml:lang="en">Unicode License Agreement - Data Files and Software (2015)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Unicode-DFS-2016">
<xs:annotation>
<xs:documentation xml:lang="en">Unicode License Agreement - Data Files and Software (2016)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Unicode-TOU">
<xs:annotation>
<xs:documentation xml:lang="en">Unicode Terms of Use</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Unlicense">
<xs:annotation>
<xs:documentation xml:lang="en">The Unlicense</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="UPL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Universal Permissive License v1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Vim">
<xs:annotation>
<xs:documentation xml:lang="en">Vim License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="VOSTROM">
<xs:annotation>
<xs:documentation xml:lang="en">VOSTROM Public License for Open Source</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="VSL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Vovida Software License v1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="W3C-19980720">
<xs:annotation>
<xs:documentation xml:lang="en">W3C Software Notice and License (1998-07-20)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="W3C-20150513">
<xs:annotation>
<xs:documentation xml:lang="en">W3C Software Notice and Document License (2015-05-13)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="W3C">
<xs:annotation>
<xs:documentation xml:lang="en">W3C Software Notice and License (2002-12-31)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Watcom-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Sybase Open Watcom Public License 1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Wsuipa">
<xs:annotation>
<xs:documentation xml:lang="en">Wsuipa License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="WTFPL">
<xs:annotation>
<xs:documentation xml:lang="en">Do What The F*ck You Want To Public License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="X11">
<xs:annotation>
<xs:documentation xml:lang="en">X11 License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Xerox">
<xs:annotation>
<xs:documentation xml:lang="en">Xerox License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="XFree86-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">XFree86 License 1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="xinetd">
<xs:annotation>
<xs:documentation xml:lang="en">xinetd License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Xnet">
<xs:annotation>
<xs:documentation xml:lang="en">X.Net License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="xpp">
<xs:annotation>
<xs:documentation xml:lang="en">XPP License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="XSkat">
<xs:annotation>
<xs:documentation xml:lang="en">XSkat License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="YPL-1.0">
<xs:annotation>
<xs:documentation xml:lang="en">Yahoo! Public License v1.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="YPL-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">Yahoo! Public License v1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Zed">
<xs:annotation>
<xs:documentation xml:lang="en">Zed License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Zend-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">Zend License v2.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Zimbra-1.3">
<xs:annotation>
<xs:documentation xml:lang="en">Zimbra Public License v1.3</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Zimbra-1.4">
<xs:annotation>
<xs:documentation xml:lang="en">Zimbra Public License v1.4</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="zlib-acknowledgement">
<xs:annotation>
<xs:documentation xml:lang="en">zlib/libpng License with Acknowledgement</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Zlib">
<xs:annotation>
<xs:documentation xml:lang="en">zlib License</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ZPL-1.1">
<xs:annotation>
<xs:documentation xml:lang="en">Zope Public License 1.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ZPL-2.0">
<xs:annotation>
<xs:documentation xml:lang="en">Zope Public License 2.0</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ZPL-2.1">
<xs:annotation>
<xs:documentation xml:lang="en">Zope Public License 2.1</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="SPDXLicense">
<xs:annotation>
<xs:documentation xml:lang="en">The license that applies to an Implementation Guide (using an SPDX license Identifiers, or 'not-open-source'). The binding is required but new SPDX license Identifiers are allowed to be used (https://spdx.org/licenses/).</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="SPDXLicense-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="GuidePageGeneration-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="html">
<xs:annotation>
<xs:documentation xml:lang="en">HTML</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Markdown</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="xml">
<xs:annotation>
<xs:documentation xml:lang="en">XML</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="generated">
<xs:annotation>
<xs:documentation xml:lang="en">Generated</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="GuidePageGeneration">
<xs:annotation>
<xs:documentation xml:lang="en">A code that indicates how the page is generated.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="GuidePageGeneration-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="InsurancePlan" type="InsurancePlan">
<xs:annotation>
<xs:documentation xml:lang="en">Details of a Health Insurance product/plan provided by an organization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="InsurancePlan">
<xs:annotation>
<xs:documentation xml:lang="en">Details of a Health Insurance product/plan provided by an organization.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business identifiers assigned to this health insurance product which remain constant as the resource is updated and propagates from server to server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The current state of the health insurance product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The kind of health insurance product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Official name of the health insurance product as designated by the owner.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="alias" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A list of alternate names that the product is known as, or was known as in the past.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period of time that the health insurance product is available.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ownedBy" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The entity that is providing the health insurance product and underwriting the risk. This is typically an insurance carriers, other third-party payers, or health plan sponsors comonly referred to as 'payers'.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="administeredBy" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">An organization which administer other services such as underwriting, customer service and/or claims processing on behalf of the health insurance product owner.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="coverageArea" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The geographic region in which a health insurance product's benefits apply.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" type="InsurancePlan.Contact" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The contact for the health insurance product for a certain purpose.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endpoint" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The technical endpoints providing access to services operated for the health insurance product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="network" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to the network included in the health insurance product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="coverage" type="InsurancePlan.Coverage" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Details about the coverage offered by the insurance product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="plan" type="InsurancePlan.Plan" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Details about an insurance plan.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="InsurancePlan.Contact">
<xs:annotation>
<xs:documentation xml:lang="en">Details of a Health Insurance product/plan provided by an organization.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates a purpose for which the contact can be reached.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="HumanName">
<xs:annotation>
<xs:documentation xml:lang="en">A name associated with the contact.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="telecom" minOccurs="0" maxOccurs="unbounded" type="ContactPoint">
<xs:annotation>
<xs:documentation xml:lang="en">A contact detail (e.g. a telephone number or an email address) by which the party may be contacted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="address" minOccurs="0" maxOccurs="1" type="Address">
<xs:annotation>
<xs:documentation xml:lang="en">Visiting or postal addresses for the contact.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="InsurancePlan.Coverage">
<xs:annotation>
<xs:documentation xml:lang="en">Details of a Health Insurance product/plan provided by an organization.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of coverage (Medical; Dental; Mental Health; Substance Abuse; Vision; Drug; Short Term; Long Term Care; Hospice; Home Health).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="network" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to the network that providing the type of coverage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="benefit" type="InsurancePlan.Benefit" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Specific benefits under this type of coverage.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="InsurancePlan.Benefit">
<xs:annotation>
<xs:documentation xml:lang="en">Details of a Health Insurance product/plan provided by an organization.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of benefit (primary care; speciality care; inpatient; outpatient).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requirement" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The referral requirements to have access/coverage for this benefit.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="limit" type="InsurancePlan.Limit" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The specific limits on the benefit.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="InsurancePlan.Limit">
<xs:annotation>
<xs:documentation xml:lang="en">Details of a Health Insurance product/plan provided by an organization.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="value" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The maximum amount of a service item a plan will pay for a covered benefit. For examples. wellness visits, or eyeglasses.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The specific limit on the benefit.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="InsurancePlan.Plan">
<xs:annotation>
<xs:documentation xml:lang="en">Details of a Health Insurance product/plan provided by an organization.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business identifiers assigned to this health insurance plan which remain constant as the resource is updated and propagates from server to server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of plan. For example, &quot;Platinum&quot; or &quot;High Deductable&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="coverageArea" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The geographic region in which a health insurance plan's benefits apply.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="network" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to the network that providing the type of coverage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="generalCost" type="InsurancePlan.GeneralCost" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Overall costs associated with the plan.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specificCost" type="InsurancePlan.SpecificCost" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Costs associated with the coverage provided by the product.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="InsurancePlan.GeneralCost">
<xs:annotation>
<xs:documentation xml:lang="en">Details of a Health Insurance product/plan provided by an organization.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of cost.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="groupSize" minOccurs="0" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">Number of participants enrolled in the plan.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="cost" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">Value of the cost.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comment" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Additional information about the general costs associated with this plan.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="InsurancePlan.SpecificCost">
<xs:annotation>
<xs:documentation xml:lang="en">Details of a Health Insurance product/plan provided by an organization.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="category" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">General category of benefit (Medical; Dental; Vision; Drug; Mental Health; Substance Abuse; Hospice, Home Health).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="benefit" type="InsurancePlan.Benefit1" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">List of the specific benefits under this category of benefit.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="InsurancePlan.Benefit1">
<xs:annotation>
<xs:documentation xml:lang="en">Details of a Health Insurance product/plan provided by an organization.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of specific benefit (preventative; primary care office visit; speciality office visit; hospitalization; emergency room; urgent care).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="cost" type="InsurancePlan.Cost" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">List of the costs associated with a specific benefit.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="InsurancePlan.Cost">
<xs:annotation>
<xs:documentation xml:lang="en">Details of a Health Insurance product/plan provided by an organization.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of cost (copay; individual cap; family cap; coinsurance; deductible).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="applicability" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the cost applies to in-network or out-of-network providers (in-network; out-of-network; other).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="qualifiers" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Additional information about the cost, such as information about funding sources (e.g. HSA, HRA, FSA, RRA).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="value" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The actual cost value. (some of the costs may be represented as percentages rather than currency, e.g. 10% coinsurance).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Invoice" type="Invoice">
<xs:annotation>
<xs:documentation xml:lang="en">Invoice containing collected ChargeItems from an Account with calculated individual and total price for Billing purpose.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Invoice">
<xs:annotation>
<xs:documentation xml:lang="en">Invoice containing collected ChargeItems from an Account with calculated individual and total price for Billing purpose.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier of this Invoice, often used for reference in correspondence about this invoice or for tracking of payments.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="InvoiceStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The current state of the Invoice.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="cancelledReason" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">In case of Invoice cancellation a reason must be given (entered in error, superseded by corrected invoice etc.).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of Invoice depending on domain, realm an usage (e.g. internal/external, dental, preliminary).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The individual or set of individuals receiving the goods and services billed in this invoice.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="recipient" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The individual or Organization responsible for balancing of this invoice.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Date/time(s) of when this Invoice was posted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="participant" type="Invoice.Participant" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates who or what performed or participated in the charged service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="issuer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The organizationissuing the Invoice.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="account" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Account which is supposed to be balanced with this Invoice.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lineItem" type="Invoice.LineItem" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Each line item represents one charge for goods and services rendered. Details such as date, code and amount are found in the referenced ChargeItem resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="totalPriceComponent" type="Invoice.PriceComponent" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The total amount for the Invoice may be calculated as the sum of the line items with surcharges/deductions that apply in certain conditions. The priceComponent element can be used to offer transparency to the recipient of the Invoice of how the total price was calculated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="totalNet" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">Invoice total , taxes excluded.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="totalGross" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">Invoice total, tax included.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="paymentTerms" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Payment details such as banking details, period of payment, deductibles, methods of payment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Comments made about the invoice by the issuer, subject, or other participants.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Invoice.Participant">
<xs:annotation>
<xs:documentation xml:lang="en">Invoice containing collected ChargeItems from an Account with calculated individual and total price for Billing purpose.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="role" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the type of involvement (e.g. transcriptionist, creator etc.). If the invoice has been created automatically, the Participant may be a billing engine or another kind of device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="actor" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The device, practitioner, etc. who performed or participated in the service.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Invoice.LineItem">
<xs:annotation>
<xs:documentation xml:lang="en">Invoice containing collected ChargeItems from an Account with calculated individual and total price for Billing purpose.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="sequence" minOccurs="0" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">Sequence in which the items appear on the invoice.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The ChargeItem contains information such as the billing code, date, amount etc. If no further details are required for the lineItem, inline billing codes can be added using the CodeableConcept data type instead of the Reference.</xs:documentation>
</xs:annotation>
<xs:element name="chargeItemReference" type="Reference"/>
<xs:element name="chargeItemCodeableConcept" type="CodeableConcept"/>
</xs:choice>
<xs:element name="priceComponent" type="Invoice.PriceComponent" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The price for a ChargeItem may be calculated as a base price with surcharges/deductions that apply in certain conditions. A ChargeItemDefinition resource that defines the prices, factors and conditions that apply to a billing code is currently under development. The priceComponent element can be used to offer transparency to the recipient of the Invoice as to how the prices have been calculated.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Invoice.PriceComponent">
<xs:annotation>
<xs:documentation xml:lang="en">Invoice containing collected ChargeItems from an Account with calculated individual and total price for Billing purpose.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="InvoicePriceComponentType">
<xs:annotation>
<xs:documentation xml:lang="en">This code identifies the type of the component.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code that identifies the component. Codes may be used to differentiate between kinds of taxes, surcharges, discounts etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="factor" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">The factor that has been applied on the base price for calculating this component.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="amount" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">The amount calculated for this component.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="InvoiceStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="draft">
<xs:annotation>
<xs:documentation xml:lang="en">draft</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="issued">
<xs:annotation>
<xs:documentation xml:lang="en">issued</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="balanced">
<xs:annotation>
<xs:documentation xml:lang="en">balanced</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cancelled">
<xs:annotation>
<xs:documentation xml:lang="en">cancelled</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">entered in error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="InvoiceStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Codes identifying the lifecycle stage of an Invoice.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="InvoiceStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Library" type="Library">
<xs:annotation>
<xs:documentation xml:lang="en">The Library resource is a general-purpose container for knowledge asset definitions. It can be used to describe and expose existing knowledge assets such as logic libraries and information model descriptions, as well as to describe a collection of knowledge assets.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Library">
<xs:annotation>
<xs:documentation xml:lang="en">The Library resource is a general-purpose container for knowledge asset definitions. It can be used to describe and expose existing knowledge assets such as logic libraries and information model descriptions, as well as to describe a collection of knowledge assets.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this library when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this library is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the library is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this library when it is represented in other formats, or referenced in a specification, model, design or an instance. e.g. CMS or NQF identifiers for a measure artifact. Note that at least one identifier is required for non-experimental active artifacts.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the library when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the library author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. To provide a version consistent with the Decision Support Service specification, use the format Major.Minor.Revision (e.g. 1.0.0). For more information on versioning knowledge assets, refer to the Decision Support Service specification. Note that a version is required for non-experimental active artifacts.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the library. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the library.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subtitle" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">An explanatory or alternate title for the library giving additional information about its content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this library. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this library is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the type of library such as a Logic Library, Model Definition, Asset Collection, or Module Definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">A code or group definition that describes the intended subject of the contents of the library.</xs:documentation>
</xs:annotation>
<xs:element name="subjectCodeableConcept" type="CodeableConcept"/>
<xs:element name="subjectReference" type="Reference"/>
</xs:choice>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the library was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the library changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the library.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the library from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate library instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the library is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Explanation of why this library is needed and why it has been designed as it has.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="usage" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A detailed description of how the library is used from a clinical perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the library and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the library.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="approvalDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lastReviewDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="effectivePeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period during which the library content was or is planned to be in active use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="topic" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Descriptive topics related to the content of the library. Topics provide a high-level categorization of the library that can be useful for filtering and searching.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individiual or organization primarily involved in the creation and maintenance of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="editor" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for internal coherence of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reviewer" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for review of some aspect of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endorser" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization responsible for officially endorsing the content for use in some setting.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relatedArtifact" minOccurs="0" maxOccurs="unbounded" type="RelatedArtifact">
<xs:annotation>
<xs:documentation xml:lang="en">Related artifacts such as additional documentation, justification, or bibliographic references.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="parameter" minOccurs="0" maxOccurs="unbounded" type="ParameterDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">The parameter element defines parameters used by the library.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dataRequirement" minOccurs="0" maxOccurs="unbounded" type="DataRequirement">
<xs:annotation>
<xs:documentation xml:lang="en">Describes a set of data that must be provided in order to be able to successfully perform the computations defined by the library.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="content" minOccurs="0" maxOccurs="unbounded" type="Attachment">
<xs:annotation>
<xs:documentation xml:lang="en">The content of the library as an Attachment. The content may be a reference to a url, or may be directly embedded as a base-64 string. Either way, the contentType of the attachment determines how to interpret the content.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Linkage" type="Linkage">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies two or more records (resource instances) that refer to the same real-world &quot;occurrence&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Linkage">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies two or more records (resource instances) that refer to the same real-world &quot;occurrence&quot;.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="active" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether the asserted set of linkages are considered to be &quot;in effect&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the user or organization responsible for asserting the linkages as well as the user or organization who establishes the context in which the nature of each linkage is evaluated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="item" type="Linkage.Item" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies which record considered as the reference to the same real-world occurrence as well as how the items should be evaluated within the collection of linked items.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Linkage.Item">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies two or more records (resource instances) that refer to the same real-world &quot;occurrence&quot;.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="LinkageType">
<xs:annotation>
<xs:documentation xml:lang="en">Distinguishes which item is &quot;source of truth&quot; (if any) and which items are no longer considered to be current representations.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="resource" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The resource instance being linked as part of the group.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="LinkageType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="source">
<xs:annotation>
<xs:documentation xml:lang="en">Source of Truth</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="alternate">
<xs:annotation>
<xs:documentation xml:lang="en">Alternate Record</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="historical">
<xs:annotation>
<xs:documentation xml:lang="en">Historical/Obsolete Record</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="LinkageType">
<xs:annotation>
<xs:documentation xml:lang="en">Used to distinguish different roles a resource can play within a set of linked resources.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="LinkageType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="List" type="List">
<xs:annotation>
<xs:documentation xml:lang="en">A list is a curated collection of resources.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="List">
<xs:annotation>
<xs:documentation xml:lang="en">A list is a curated collection of resources.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier for the List assigned for business purposes outside the context of FHIR.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="ListStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the current state of this list.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="mode" minOccurs="1" maxOccurs="1" type="ListMode">
<xs:annotation>
<xs:documentation xml:lang="en">How this list was prepared - whether it is a working list that is suitable for being maintained on an ongoing basis, or if it represents a snapshot of a list of items from another source, or whether it is a prepared list where items may be marked as added, modified or deleted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A label for the list assigned by the author.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">This code defines the purpose of the list - why it was created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The common subject (or patient) of the resources that are in the list if there is one.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The encounter that is the context in which this list was created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date that the list was prepared.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The entity responsible for deciding what the contents of the list were. Where the list was created by a human, this is the same as the author of the list.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="orderedBy" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">What order applies to the items in the list.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Comments that apply to the overall list.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="entry" type="List.Entry" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Entries in this list.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="emptyReason" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">If the list is empty, why the list is empty.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="List.Entry">
<xs:annotation>
<xs:documentation xml:lang="en">A list is a curated collection of resources.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="flag" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The flag allows the system constructing the list to indicate the role and significance of the item in the list.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="deleted" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">True if this item is marked as deleted in the list.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">When this item was added to the list.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="item" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to the actual resource from which data was derived.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ListStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="current">
<xs:annotation>
<xs:documentation xml:lang="en">Current</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="retired">
<xs:annotation>
<xs:documentation xml:lang="en">Retired</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered In Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ListStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The current state of the list.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ListStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Location" type="Location">
<xs:annotation>
<xs:documentation xml:lang="en">Details and position information for a physical place where services are provided and resources and participants may be stored, found, contained, or accommodated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Location">
<xs:annotation>
<xs:documentation xml:lang="en">Details and position information for a physical place where services are provided and resources and participants may be stored, found, contained, or accommodated.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Unique code or number identifying the location to its users.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="LocationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status property covers the general availability of the resource, not the current value which may be covered by the operationStatus, or by a schedule/slots if they are configured for the location.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="operationalStatus" minOccurs="0" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">The operational status covers operation values most relevant to beds (but can also apply to rooms/units/chairs/etc. such as an isolation unit/dialysis chair). This typically covers concepts such as contamination, housekeeping, and other activities like maintenance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Name of the location as used by humans. Does not need to be unique.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="alias" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A list of alternate names that the location is known as, or was known as, in the past.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Description of the Location, which helps in finding or referencing the place.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="mode" minOccurs="0" maxOccurs="1" type="LocationMode">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether a resource instance represents a specific location or a class of locations.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the type of function performed at the location.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="telecom" minOccurs="0" maxOccurs="unbounded" type="ContactPoint">
<xs:annotation>
<xs:documentation xml:lang="en">The contact details of communication devices available at the location. This can include phone numbers, fax numbers, mobile numbers, email addresses and web sites.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="address" minOccurs="0" maxOccurs="1" type="Address">
<xs:annotation>
<xs:documentation xml:lang="en">Physical location.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="physicalType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Physical form of the location, e.g. building, room, vehicle, road.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="position" type="Location.Position" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The absolute geographic location of the Location, expressed using the WGS84 datum (This is the same co-ordinate system used in KML).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="managingOrganization" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The organization responsible for the provisioning and upkeep of the location.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partOf" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Another Location of which this Location is physically a part of.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="hoursOfOperation" type="Location.HoursOfOperation" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">What days/times during a week is this location usually open.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="availabilityExceptions" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A description of when the locations opening ours are different to normal, e.g. public holiday availability. Succinctly describing all possible exceptions to normal site availability as detailed in the opening hours Times.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endpoint" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Technical endpoints providing access to services operated for the location.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Location.Position">
<xs:annotation>
<xs:documentation xml:lang="en">Details and position information for a physical place where services are provided and resources and participants may be stored, found, contained, or accommodated.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="longitude" minOccurs="1" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Longitude. The value domain and the interpretation are the same as for the text of the longitude element in KML (see notes below).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="latitude" minOccurs="1" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Latitude. The value domain and the interpretation are the same as for the text of the latitude element in KML (see notes below).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="altitude" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Altitude. The value domain and the interpretation are the same as for the text of the altitude element in KML (see notes below).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Location.HoursOfOperation">
<xs:annotation>
<xs:documentation xml:lang="en">Details and position information for a physical place where services are provided and resources and participants may be stored, found, contained, or accommodated.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="daysOfWeek" minOccurs="0" maxOccurs="unbounded" type="DaysOfWeek">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates which days of the week are available between the start and end Times.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="allDay" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">The Location is open all day.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="openingTime" minOccurs="0" maxOccurs="1" type="time">
<xs:annotation>
<xs:documentation xml:lang="en">Time that the Location opens.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="closingTime" minOccurs="0" maxOccurs="1" type="time">
<xs:annotation>
<xs:documentation xml:lang="en">Time that the Location closes.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="LocationMode-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="instance">
<xs:annotation>
<xs:documentation xml:lang="en">Instance</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="kind">
<xs:annotation>
<xs:documentation xml:lang="en">Kind</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="LocationMode">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether a resource instance represents a specific location or a class of locations.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="LocationMode-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="LocationStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="active">
<xs:annotation>
<xs:documentation xml:lang="en">Active</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="suspended">
<xs:annotation>
<xs:documentation xml:lang="en">Suspended</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="inactive">
<xs:annotation>
<xs:documentation xml:lang="en">Inactive</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="LocationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether the location is still in use.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="LocationStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Measure" type="Measure">
<xs:annotation>
<xs:documentation xml:lang="en">The Measure resource provides the definition of a quality measure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Measure">
<xs:annotation>
<xs:documentation xml:lang="en">The Measure resource provides the definition of a quality measure.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this measure when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this measure is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the measure is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this measure when it is represented in other formats, or referenced in a specification, model, design or an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the measure when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the measure author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. To provide a version consistent with the Decision Support Service specification, use the format Major.Minor.Revision (e.g. 1.0.0). For more information on versioning knowledge assets, refer to the Decision Support Service specification. Note that a version is required for non-experimental active artifacts.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the measure. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the measure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subtitle" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">An explanatory or alternate title for the measure giving additional information about its content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this measure. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this measure is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The intended subjects for the measure. If this element is not provided, a Patient subject is assumed, but the subject of the measure can be anything.</xs:documentation>
</xs:annotation>
<xs:element name="subjectCodeableConcept" type="CodeableConcept"/>
<xs:element name="subjectReference" type="Reference"/>
</xs:choice>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the measure was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the measure changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the measure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the measure from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate measure instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the measure is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Explanation of why this measure is needed and why it has been designed as it has.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="usage" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A detailed description, from a clinical perspective, of how the measure is used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the measure and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the measure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="approvalDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lastReviewDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="effectivePeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period during which the measure content was or is planned to be in active use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="topic" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Descriptive topics related to the content of the measure. Topics provide a high-level categorization grouping types of measures that can be useful for filtering and searching.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individiual or organization primarily involved in the creation and maintenance of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="editor" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for internal coherence of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reviewer" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for review of some aspect of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endorser" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization responsible for officially endorsing the content for use in some setting.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relatedArtifact" minOccurs="0" maxOccurs="unbounded" type="RelatedArtifact">
<xs:annotation>
<xs:documentation xml:lang="en">Related artifacts such as additional documentation, justification, or bibliographic references.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="library" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a Library resource containing the formal logic used by the measure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="disclaimer" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Notices and disclaimers regarding the use of the measure or related to intellectual property (such as code systems) referenced by the measure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="scoring" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates how the calculation is performed for the measure, including proportion, ratio, continuous-variable, and cohort. The value set is extensible, allowing additional measure scoring types to be represented.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="compositeScoring" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">If this is a composite measure, the scoring method used to combine the component measures to determine the composite score.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether the measure is used to examine a process, an outcome over time, a patient-reported outcome, or a structure measure such as utilization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="riskAdjustment" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A description of the risk adjustment factors that may impact the resulting score for the measure and how they may be accounted for when computing and reporting measure results.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="rateAggregation" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Describes how to combine the information calculated, based on logic in each of several populations, into one summarized result.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="rationale" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Provides a succinct statement of the need for the measure. Usually includes statements pertaining to importance criterion: impact, gap in care, and evidence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="clinicalRecommendationStatement" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Provides a summary of relevant clinical guidelines or other clinical recommendations supporting the measure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="improvementNotation" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Information on whether an increase or decrease in score is the preferred result (e.g., a higher score indicates better quality OR a lower score indicates better quality OR quality is within a range).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="definition" minOccurs="0" maxOccurs="unbounded" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Provides a description of an individual term used within the measure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="guidance" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Additional guidance for the measure including how it can be used in a clinical context, and the intent of the measure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="group" type="Measure.Group" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A group of population criteria for the measure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="supplementalData" type="Measure.SupplementalData" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The supplemental data criteria for the measure report, specified as either the name of a valid CQL expression within a referenced library, or a valid FHIR Resource Path.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Measure.Group">
<xs:annotation>
<xs:documentation xml:lang="en">The Measure resource provides the definition of a quality measure.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates a meaning for the group. This can be as simple as a unique identifier, or it can establish meaning in a broader context by drawing from a terminology, allowing groups to be correlated across measures.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The human readable description of this population group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="population" type="Measure.Population" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A population criteria for the measure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="stratifier" type="Measure.Stratifier" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The stratifier criteria for the measure report, specified as either the name of a valid CQL expression defined within a referenced library or a valid FHIR Resource Path.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Measure.Population">
<xs:annotation>
<xs:documentation xml:lang="en">The Measure resource provides the definition of a quality measure.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of population criteria.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The human readable description of this population criteria.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="criteria" minOccurs="1" maxOccurs="1" type="Expression">
<xs:annotation>
<xs:documentation xml:lang="en">An expression that specifies the criteria for the population, typically the name of an expression in a library.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Measure.Stratifier">
<xs:annotation>
<xs:documentation xml:lang="en">The Measure resource provides the definition of a quality measure.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates a meaning for the stratifier. This can be as simple as a unique identifier, or it can establish meaning in a broader context by drawing from a terminology, allowing stratifiers to be correlated across measures.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The human readable description of this stratifier criteria.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="criteria" minOccurs="0" maxOccurs="1" type="Expression">
<xs:annotation>
<xs:documentation xml:lang="en">An expression that specifies the criteria for the stratifier. This is typically the name of an expression defined within a referenced library, but it may also be a path to a stratifier element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="component" type="Measure.Component" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A component of the stratifier criteria for the measure report, specified as either the name of a valid CQL expression defined within a referenced library or a valid FHIR Resource Path.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Measure.Component">
<xs:annotation>
<xs:documentation xml:lang="en">The Measure resource provides the definition of a quality measure.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates a meaning for the stratifier component. This can be as simple as a unique identifier, or it can establish meaning in a broader context by drawing from a terminology, allowing stratifiers to be correlated across measures.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The human readable description of this stratifier criteria component.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="criteria" minOccurs="1" maxOccurs="1" type="Expression">
<xs:annotation>
<xs:documentation xml:lang="en">An expression that specifies the criteria for this component of the stratifier. This is typically the name of an expression defined within a referenced library, but it may also be a path to a stratifier element.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Measure.SupplementalData">
<xs:annotation>
<xs:documentation xml:lang="en">The Measure resource provides the definition of a quality measure.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates a meaning for the supplemental data. This can be as simple as a unique identifier, or it can establish meaning in a broader context by drawing from a terminology, allowing supplemental data to be correlated across measures.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="usage" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">An indicator of the intended usage for the supplemental data element. Supplemental data indicates the data is additional information requested to augment the measure information. Risk adjustment factor indicates the data is additional information used to calculate risk adjustment factors when applying a risk model to the measure calculation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The human readable description of this supplemental data.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="criteria" minOccurs="1" maxOccurs="1" type="Expression">
<xs:annotation>
<xs:documentation xml:lang="en">The criteria for the supplemental data. This is typically the name of a valid expression defined within a referenced library, but it may also be a path to a specific data element. The criteria defines the data to be returned for this element.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="MeasureReport" type="MeasureReport">
<xs:annotation>
<xs:documentation xml:lang="en">The MeasureReport resource contains the results of the calculation of a measure; and optionally a reference to the resources involved in that calculation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="MeasureReport">
<xs:annotation>
<xs:documentation xml:lang="en">The MeasureReport resource contains the results of the calculation of a measure; and optionally a reference to the resources involved in that calculation.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this MeasureReport when it is represented in other formats or referenced in a specification, model, design or an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="MeasureReportStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The MeasureReport status. No data will be available until the MeasureReport status is complete.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="MeasureReportType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of measure report. This may be an individual report, which provides the score for the measure for an individual member of the population; a subject-listing, which returns the list of members that meet the various criteria in the measure; a summary report, which returns a population count for each of the criteria in the measure; or a data-collection, which enables the MeasureReport to be used to exchange the data-of-interest for a quality measure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="measure" minOccurs="1" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to the Measure that was calculated to produce this report.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Optional subject identifying the individual or individuals the report is for.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date this measure report was generated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reporter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The individual, location, or organization that is reporting the data.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="1" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The reporting period for which the report was calculated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="improvementNotation" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Whether improvement in the measure is noted by an increase or decrease in the measure score.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="group" type="MeasureReport.Group" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The results of the calculation, one for each population group in the measure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="evaluatedResource" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a Bundle containing the Resources that were used in the calculation of this measure.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MeasureReport.Group">
<xs:annotation>
<xs:documentation xml:lang="en">The MeasureReport resource contains the results of the calculation of a measure; and optionally a reference to the resources involved in that calculation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The meaning of the population group as defined in the measure definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="population" type="MeasureReport.Population" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The populations that make up the population group, one for each type of population appropriate for the measure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="measureScore" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The measure score for this population group, calculated as appropriate for the measure type and scoring method, and based on the contents of the populations defined in the group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="stratifier" type="MeasureReport.Stratifier" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">When a measure includes multiple stratifiers, there will be a stratifier group for each stratifier defined by the measure.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MeasureReport.Population">
<xs:annotation>
<xs:documentation xml:lang="en">The MeasureReport resource contains the results of the calculation of a measure; and optionally a reference to the resources involved in that calculation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of the population.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="count" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">The number of members of the population.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subjectResults" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">This element refers to a List of subject level MeasureReport resources, one for each subject in this population.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MeasureReport.Stratifier">
<xs:annotation>
<xs:documentation xml:lang="en">The MeasureReport resource contains the results of the calculation of a measure; and optionally a reference to the resources involved in that calculation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The meaning of this stratifier, as defined in the measure definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="stratum" type="MeasureReport.Stratum" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">This element contains the results for a single stratum within the stratifier. For example, when stratifying on administrative gender, there will be four strata, one for each possible gender value.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MeasureReport.Stratum">
<xs:annotation>
<xs:documentation xml:lang="en">The MeasureReport resource contains the results of the calculation of a measure; and optionally a reference to the resources involved in that calculation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="value" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The value for this stratum, expressed as a CodeableConcept. When defining stratifiers on complex values, the value must be rendered such that the value for each stratum within the stratifier is unique.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="component" type="MeasureReport.Component" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A stratifier component value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="population" type="MeasureReport.Population1" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The populations that make up the stratum, one for each type of population appropriate to the measure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="measureScore" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The measure score for this stratum, calculated as appropriate for the measure type and scoring method, and based on only the members of this stratum.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MeasureReport.Component">
<xs:annotation>
<xs:documentation xml:lang="en">The MeasureReport resource contains the results of the calculation of a measure; and optionally a reference to the resources involved in that calculation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The code for the stratum component value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="value" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The stratum component value.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MeasureReport.Population1">
<xs:annotation>
<xs:documentation xml:lang="en">The MeasureReport resource contains the results of the calculation of a measure; and optionally a reference to the resources involved in that calculation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of the population.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="count" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">The number of members of the population in this stratum.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subjectResults" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">This element refers to a List of subject level MeasureReport resources, one for each subject in this population in this stratum.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="MeasureReportStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="complete">
<xs:annotation>
<xs:documentation xml:lang="en">Complete</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="pending">
<xs:annotation>
<xs:documentation xml:lang="en">Pending</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="error">
<xs:annotation>
<xs:documentation xml:lang="en">Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="MeasureReportStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the measure report.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="MeasureReportStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="MeasureReportType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="individual">
<xs:annotation>
<xs:documentation xml:lang="en">Individual</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="subject-list">
<xs:annotation>
<xs:documentation xml:lang="en">Subject List</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="summary">
<xs:annotation>
<xs:documentation xml:lang="en">Summary</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="data-collection">
<xs:annotation>
<xs:documentation xml:lang="en">Data Collection</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="MeasureReportType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of the measure report.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="MeasureReportType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Media" type="Media">
<xs:annotation>
<xs:documentation xml:lang="en">A photo, video, or audio recording acquired or used in healthcare. The actual content may be inline or provided by direct reference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Media">
<xs:annotation>
<xs:documentation xml:lang="en">A photo, video, or audio recording acquired or used in healthcare. The actual content may be inline or provided by direct reference.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifiers associated with the image - these may include identifiers for the image itself, identifiers for the context of its collection (e.g. series ids) and context ids such as accession numbers or other workflow identifiers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basedOn" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A procedure that is fulfilled in whole or in part by the creation of this media.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partOf" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A larger event of which this particular event is a component or step.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="EventStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The current state of the {{title}}.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code that classifies whether the media is an image, video or audio recording or some other media category.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modality" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Details of the type of the media - usually, how it was acquired (what type of device). If images sourced from a DICOM system, are wrapped in a Media resource, then this is the modality.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="view" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the imaging view e.g. Lateral or Antero-posterior (AP).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Who/What this Media is a record of.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The encounter that establishes the context for this media.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The date and time(s) at which the media was collected.</xs:documentation>
</xs:annotation>
<xs:element name="createdDateTime" type="dateTime"/>
<xs:element name="createdPeriod" type="Period"/>
</xs:choice>
<xs:element name="issued" minOccurs="0" maxOccurs="1" type="instant">
<xs:annotation>
<xs:documentation xml:lang="en">The date and time this version of the media was made available to providers, typically after having been reviewed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="operator" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The person who administered the collection of the image.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes why the event occurred in coded or textual form.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="bodySite" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the site on the subject's body where the observation was made (i.e. the target site).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="deviceName" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the device / manufacturer of the device that was used to make the recording.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="device" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The device used to collect the media.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="height" minOccurs="0" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">Height of the image in pixels (photo/video).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="width" minOccurs="0" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">Width of the image in pixels (photo/video).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="frames" minOccurs="0" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">The number of frames in a photo. This is used with a multi-page fax, or an imaging acquisition context that takes multiple slices in a single image, or an animated gif. If there is more than one frame, this SHALL have a value in order to alert interface software that a multi-frame capable rendering widget is required.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="duration" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">The duration of the recording in seconds - for audio and video.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="content" minOccurs="1" maxOccurs="1" type="Attachment">
<xs:annotation>
<xs:documentation xml:lang="en">The actual content of the media - inline or by direct reference to the media source file.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Comments made about the media by the performer, subject or other participants.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Medication" type="Medication">
<xs:annotation>
<xs:documentation xml:lang="en">This resource is primarily used for the identification and definition of a medication for the purposes of prescribing, dispensing, and administering a medication as well as for making statements about medication use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Medication">
<xs:annotation>
<xs:documentation xml:lang="en">This resource is primarily used for the identification and definition of a medication for the purposes of prescribing, dispensing, and administering a medication as well as for making statements about medication use.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business identifier for this medication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code (or set of codes) that specify this medication, or a textual description if no code is available. Usage note: This could be a standard medication code such as a code from RxNorm, SNOMED CT, IDMP etc. It could also be a national or local formulary code, optionally with translations to other code systems.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="MedicationStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">A code to indicate if the medication is in active use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="manufacturer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the details of the manufacturer of the medication product. This is not intended to represent the distributor of a medication product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="form" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the form of the item. Powder; tablets; capsule.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="amount" minOccurs="0" maxOccurs="1" type="Ratio">
<xs:annotation>
<xs:documentation xml:lang="en">Specific amount of the drug in the packaged product. For example, when specifying a product that has the same strength (For example, Insulin glargine 100 unit per mL solution for injection), this attribute provides additional clarification of the package amount (For example, 3 mL, 10mL, etc.).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ingredient" type="Medication.Ingredient" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies a particular constituent of interest in the product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="batch" type="Medication.Batch" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Information that only applies to packages (not products).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Medication.Ingredient">
<xs:annotation>
<xs:documentation xml:lang="en">This resource is primarily used for the identification and definition of a medication for the purposes of prescribing, dispensing, and administering a medication as well as for making statements about medication use.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The actual ingredient - either a substance (simple ingredient) or another medication of a medication.</xs:documentation>
</xs:annotation>
<xs:element name="itemCodeableConcept" type="CodeableConcept"/>
<xs:element name="itemReference" type="Reference"/>
</xs:choice>
<xs:element name="isActive" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Indication of whether this ingredient affects the therapeutic action of the drug.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="strength" minOccurs="0" maxOccurs="1" type="Ratio">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Medication.Batch">
<xs:annotation>
<xs:documentation xml:lang="en">This resource is primarily used for the identification and definition of a medication for the purposes of prescribing, dispensing, and administering a medication as well as for making statements about medication use.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="lotNumber" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The assigned lot number of a batch of the specified product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expirationDate" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">When this specific batch of product will expire.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="MedicationStatusCodes-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="active">
<xs:annotation>
<xs:documentation xml:lang="en">Active</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="inactive">
<xs:annotation>
<xs:documentation xml:lang="en">Inactive</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="MedicationStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">A coded concept defining if the medication is in active use.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="MedicationStatusCodes-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="MedicationAdministration" type="MedicationAdministration">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the event of a patient consuming or otherwise being administered a medication. This may be as simple as swallowing a tablet or it may be a long running infusion. Related resources tie this event to the authorizing prescription, and the specific encounter between patient and health care practitioner.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="MedicationAdministration">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the event of a patient consuming or otherwise being administered a medication. This may be as simple as swallowing a tablet or it may be a long running infusion. Related resources tie this event to the authorizing prescription, and the specific encounter between patient and health care practitioner.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifiers associated with this Medication Administration that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate. They are business identifiers assigned to this resource by the performer or other systems and remain constant as the resource is updated and propagates from server to server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiates" minOccurs="0" maxOccurs="unbounded" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">A protocol, guideline, orderset, or other definition that was adhered to in whole or in part by this event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partOf" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A larger event of which this particular event is a component or step.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">Will generally be set to show that the administration has been completed. For some long running administrations such as infusions, it is possible for an administration to be started but not completed or it may be paused while some other process is under way.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="statusReason" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code indicating why the administration was not performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates where the medication is expected to be consumed or administered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the medication that was administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.</xs:documentation>
</xs:annotation>
<xs:element name="medicationCodeableConcept" type="CodeableConcept"/>
<xs:element name="medicationReference" type="Reference"/>
</xs:choice>
<xs:element name="subject" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The person or animal or group receiving the medication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="context" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The visit, admission, or other contact between patient and health care provider during which the medication administration was performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="supportingInformation" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Additional information (for example, patient height and weight) that supports the administration of the medication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">A specific date/time or interval of time during which the administration took place (or did not take place, when the 'notGiven' attribute is true). For many administrations, such as swallowing a tablet the use of dateTime is more appropriate.</xs:documentation>
</xs:annotation>
<xs:element name="effectiveDateTime" type="dateTime"/>
<xs:element name="effectivePeriod" type="Period"/>
</xs:choice>
<xs:element name="performer" type="MedicationAdministration.Performer" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates who or what performed the medication administration and how they were involved.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code indicating why the medication was given.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Condition or observation that supports why the medication was administered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="request" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The original request, instruction or authority to perform the administration.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="device" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The device used in administering the medication to the patient. For example, a particular infusion pump.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Extra information about the medication administration that is not conveyed by the other attributes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dosage" type="MedicationAdministration.Dosage" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the medication dosage information details e.g. dose, rate, site, route, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="eventHistory" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A summary of the events of interest that have occurred, such as when the administration was verified.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationAdministration.Performer">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the event of a patient consuming or otherwise being administered a medication. This may be as simple as swallowing a tablet or it may be a long running infusion. Related resources tie this event to the authorizing prescription, and the specific encounter between patient and health care practitioner.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="function" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Distinguishes the type of involvement of the performer in the medication administration.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="actor" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates who or what performed the medication administration.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationAdministration.Dosage">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the event of a patient consuming or otherwise being administered a medication. This may be as simple as swallowing a tablet or it may be a long running infusion. Related resources tie this event to the authorizing prescription, and the specific encounter between patient and health care practitioner.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="text" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Free text dosage can be used for cases where the dosage administered is too complex to code. When coded dosage is present, the free text dosage may still be present for display to humans. The dosage instructions should reflect the dosage of the medication that was administered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="site" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A coded specification of the anatomic site where the medication first entered the body. For example, &quot;left arm&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="route" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code specifying the route or physiological path of administration of a therapeutic agent into or onto the patient. For example, topical, intravenous, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="method" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A coded value indicating the method by which the medication is intended to be or was introduced into or on the body. This attribute will most often NOT be populated. It is most commonly used for injections. For example, Slow Push, Deep IV.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dose" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The amount of the medication given at one administration event. Use this value when the administration is essentially an instantaneous event such as a swallowing a tablet or giving an injection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the speed with which the medication was or will be introduced into the patient. Typically, the rate for an infusion e.g. 100 ml per 1 hour or 100 ml/hr. May also be expressed as a rate per unit of time, e.g. 500 ml per 2 hours. Other examples: 200 mcg/min or 200 mcg/1 minute; 1 liter/8 hours.</xs:documentation>
</xs:annotation>
<xs:element name="rateRatio" type="Ratio"/>
<xs:element name="rateQuantity" type="Quantity"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="MedicationDispense" type="MedicationDispense">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates that a medication product is to be or has been dispensed for a named person/patient. This includes a description of the medication product (supply) provided and the instructions for administering the medication. The medication dispense is the result of a pharmacy system responding to a medication order.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="MedicationDispense">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates that a medication product is to be or has been dispensed for a named person/patient. This includes a description of the medication product (supply) provided and the instructions for administering the medication. The medication dispense is the result of a pharmacy system responding to a medication order.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifiers associated with this Medication Dispense that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate. They are business identifiers assigned to this resource by the performer or other systems and remain constant as the resource is updated and propagates from server to server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partOf" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The procedure that trigger the dispense.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">A code specifying the state of the set of dispense events.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the reason why a dispense was not performed.</xs:documentation>
</xs:annotation>
<xs:element name="statusReasonCodeableConcept" type="CodeableConcept"/>
<xs:element name="statusReasonReference" type="Reference"/>
</xs:choice>
<xs:element name="category" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the type of medication dispense (for example, where the medication is expected to be consumed or administered (i.e. inpatient or outpatient)).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.</xs:documentation>
</xs:annotation>
<xs:element name="medicationCodeableConcept" type="CodeableConcept"/>
<xs:element name="medicationReference" type="Reference"/>
</xs:choice>
<xs:element name="subject" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A link to a resource representing the person or the group to whom the medication will be given.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="context" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The encounter or episode of care that establishes the context for this event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="supportingInformation" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Additional information that supports the medication being dispensed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performer" type="MedicationDispense.Performer" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates who or what performed the event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="location" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The principal physical location where the dispense was performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="authorizingPrescription" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the medication order that is being dispensed against.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the type of dispensing event that is performed. For example, Trial Fill, Completion of Trial, Partial Fill, Emergency Fill, Samples, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The amount of medication that has been dispensed. Includes unit of measure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="daysSupply" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The amount of medication expressed as a timing amount.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="whenPrepared" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The time when the dispensed product was packaged and reviewed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="whenHandedOver" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The time the dispensed product was provided to the patient or their representative.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="destination" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identification of the facility/location where the medication was shipped to, as part of the dispense event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="receiver" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the person who picked up the medication. This will usually be a patient or their caregiver, but some cases exist where it can be a healthcare professional.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Extra information about the dispense that could not be conveyed in the other attributes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dosageInstruction" minOccurs="0" maxOccurs="unbounded" type="Dosage">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates how the medication is to be used by the patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="substitution" type="MedicationDispense.Substitution" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether or not substitution was made as part of the dispense. In some cases, substitution will be expected but does not happen, in other cases substitution is not expected but does happen. This block explains what substitution did or did not happen and why. If nothing is specified, substitution was not done.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detectedIssue" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates an actual or potential clinical issue with or between one or more active or proposed clinical actions for a patient; e.g. drug-drug interaction, duplicate therapy, dosage alert etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="eventHistory" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A summary of the events of interest that have occurred, such as when the dispense was verified.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationDispense.Performer">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates that a medication product is to be or has been dispensed for a named person/patient. This includes a description of the medication product (supply) provided and the instructions for administering the medication. The medication dispense is the result of a pharmacy system responding to a medication order.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="function" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Distinguishes the type of performer in the dispense. For example, date enterer, packager, final checker.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="actor" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The device, practitioner, etc. who performed the action. It should be assumed that the actor is the dispenser of the medication.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationDispense.Substitution">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates that a medication product is to be or has been dispensed for a named person/patient. This includes a description of the medication product (supply) provided and the instructions for administering the medication. The medication dispense is the result of a pharmacy system responding to a medication order.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="wasSubstituted" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">True if the dispenser dispensed a different drug or product from what was prescribed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code signifying whether a different drug was dispensed from what was prescribed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reason" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the reason for the substitution (or lack of substitution) from what was prescribed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="responsibleParty" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The person or organization that has primary responsibility for the substitution.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="MedicationKnowledge" type="MedicationKnowledge">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a medication that is used to support knowledge.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="MedicationKnowledge">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a medication that is used to support knowledge.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code that specifies this medication, or a textual description if no code is available. Usage note: This could be a standard medication code such as a code from RxNorm, SNOMED CT, IDMP etc. It could also be a national or local formulary code, optionally with translations to other code systems.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">A code to indicate if the medication is in active use. The status refers to the validity about the information of the medication and not to its medicinal properties.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="manufacturer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the details of the manufacturer of the medication product. This is not intended to represent the distributor of a medication product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="doseForm" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the form of the item. Powder; tablets; capsule.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="amount" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">Specific amount of the drug in the packaged product. For example, when specifying a product that has the same strength (For example, Insulin glargine 100 unit per mL solution for injection), this attribute provides additional clarification of the package amount (For example, 3 mL, 10mL, etc.).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="synonym" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Additional names for a medication, for example, the name(s) given to a medication in different countries. For example, acetaminophen and paracetamol or salbutamol and albuterol.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relatedMedicationKnowledge" type="MedicationKnowledge.RelatedMedicationKnowledge" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Associated or related knowledge about a medication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="associatedMedication" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Associated or related medications. For example, if the medication is a branded product (e.g. Crestor), this is the Therapeutic Moeity (e.g. Rosuvastatin) or if this is a generic medication (e.g. Rosuvastatin), this would link to a branded product (e.g. Crestor).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="productType" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Category of the medication or product (e.g. branded product, therapeutic moeity, generic product, innovator product, etc.).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="monograph" type="MedicationKnowledge.Monograph" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Associated documentation about the medication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ingredient" type="MedicationKnowledge.Ingredient" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies a particular constituent of interest in the product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="preparationInstruction" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">The instructions for preparing the medication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="intendedRoute" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The intended or approved route of administration.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="cost" type="MedicationKnowledge.Cost" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The price of the medication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="monitoringProgram" type="MedicationKnowledge.MonitoringProgram" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The program under which the medication is reviewed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="administrationGuidelines" type="MedicationKnowledge.AdministrationGuidelines" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Guidelines for the administration of the medication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="medicineClassification" type="MedicationKnowledge.MedicineClassification" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Categorization of the medication within a formulary or classification system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="packaging" type="MedicationKnowledge.Packaging" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Information that only applies to packages (not products).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="drugCharacteristic" type="MedicationKnowledge.DrugCharacteristic" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies descriptive properties of the medicine, such as color, shape, imprints, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contraindication" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Potential clinical issue with or between medication(s) (for example, drug-drug interaction, drug-disease contraindication, drug-allergy interaction, etc.).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="regulatory" type="MedicationKnowledge.Regulatory" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Regulatory information about a medication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="kinetics" type="MedicationKnowledge.Kinetics" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The time course of drug absorption, distribution, metabolism and excretion of a medication from the body.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationKnowledge.RelatedMedicationKnowledge">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a medication that is used to support knowledge.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The category of the associated medication knowledge reference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reference" minOccurs="1" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Associated documentation about the associated medication knowledge.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationKnowledge.Monograph">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a medication that is used to support knowledge.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The category of documentation about the medication. (e.g. professional monograph, patient education monograph).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Associated documentation about the medication.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationKnowledge.Ingredient">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a medication that is used to support knowledge.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The actual ingredient - either a substance (simple ingredient) or another medication.</xs:documentation>
</xs:annotation>
<xs:element name="itemCodeableConcept" type="CodeableConcept"/>
<xs:element name="itemReference" type="Reference"/>
</xs:choice>
<xs:element name="isActive" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Indication of whether this ingredient affects the therapeutic action of the drug.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="strength" minOccurs="0" maxOccurs="1" type="Ratio">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationKnowledge.Cost">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a medication that is used to support knowledge.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The category of the cost information. For example, manufacturers' cost, patient cost, claim reimbursement cost, actual acquisition cost.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The source or owner that assigns the price to the medication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="cost" minOccurs="1" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">The price of the medication.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationKnowledge.MonitoringProgram">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a medication that is used to support knowledge.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of program under which the medication is monitored.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Name of the reviewing program.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationKnowledge.AdministrationGuidelines">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a medication that is used to support knowledge.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="dosage" type="MedicationKnowledge.Dosage" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Dosage for the medication for the specific guidelines.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Indication for use that apply to the specific administration guidelines.</xs:documentation>
</xs:annotation>
<xs:element name="indicationCodeableConcept" type="CodeableConcept"/>
<xs:element name="indicationReference" type="Reference"/>
</xs:choice>
<xs:element name="patientCharacteristics" type="MedicationKnowledge.PatientCharacteristics" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Characteristics of the patient that are relevant to the administration guidelines (for example, height, weight, gender, etc.).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationKnowledge.Dosage">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a medication that is used to support knowledge.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of dosage (for example, prophylaxis, maintenance, therapeutic, etc.).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dosage" minOccurs="1" maxOccurs="unbounded" type="Dosage">
<xs:annotation>
<xs:documentation xml:lang="en">Dosage for the medication for the specific guidelines.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationKnowledge.PatientCharacteristics">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a medication that is used to support knowledge.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Specific characteristic that is relevant to the administration guideline (e.g. height, weight, gender).</xs:documentation>
</xs:annotation>
<xs:element name="characteristicCodeableConcept" type="CodeableConcept"/>
<xs:element name="characteristicQuantity" type="Quantity"/>
</xs:choice>
<xs:element name="value" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The specific characteristic (e.g. height, weight, gender, etc.).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationKnowledge.MedicineClassification">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a medication that is used to support knowledge.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of category for the medication (for example, therapeutic classification, therapeutic sub-classification).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="classification" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Specific category assigned to the medication (e.g. anti-infective, anti-hypertensive, antibiotic, etc.).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationKnowledge.Packaging">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a medication that is used to support knowledge.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code that defines the specific type of packaging that the medication can be found in (e.g. blister sleeve, tube, bottle).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The number of product units the package would contain if fully loaded.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationKnowledge.DrugCharacteristic">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a medication that is used to support knowledge.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code specifying which characteristic of the medicine is being described (for example, colour, shape, imprint).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Description of the characteristic.</xs:documentation>
</xs:annotation>
<xs:element name="valueCodeableConcept" type="CodeableConcept"/>
<xs:element name="valueString" type="string"/>
<xs:element name="valueQuantity" type="Quantity"/>
<xs:element name="valueBase64Binary" type="base64Binary"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationKnowledge.Regulatory">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a medication that is used to support knowledge.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="regulatoryAuthority" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The authority that is specifying the regulations.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="substitution" type="MedicationKnowledge.Substitution" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies if changes are allowed when dispensing a medication from a regulatory perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="schedule" type="MedicationKnowledge.Schedule" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies the schedule of a medication in jurisdiction.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="maxDispense" type="MedicationKnowledge.MaxDispense" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The maximum number of units of the medication that can be dispensed in a period.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationKnowledge.Substitution">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a medication that is used to support knowledge.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies the type of substitution allowed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="allowed" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies if regulation allows for changes in the medication when dispensing.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationKnowledge.Schedule">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a medication that is used to support knowledge.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="schedule" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies the specific drug schedule.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationKnowledge.MaxDispense">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a medication that is used to support knowledge.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="quantity" minOccurs="1" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The maximum number of units of the medication that can be dispensed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Duration">
<xs:annotation>
<xs:documentation xml:lang="en">The period that applies to the maximum number of units.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationKnowledge.Kinetics">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a medication that is used to support knowledge.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="areaUnderCurve" minOccurs="0" maxOccurs="unbounded" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The drug concentration measured at certain discrete points in time.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lethalDose50" minOccurs="0" maxOccurs="unbounded" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The median lethal dose of a drug.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="halfLifePeriod" minOccurs="0" maxOccurs="1" type="Duration">
<xs:annotation>
<xs:documentation xml:lang="en">The time required for any specified property (e.g., the concentration of a substance in the body) to decrease by half.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="MedicationRequest" type="MedicationRequest">
<xs:annotation>
<xs:documentation xml:lang="en">An order or request for both supply of the medication and the instructions for administration of the medication to a patient. The resource is called &quot;MedicationRequest&quot; rather than &quot;MedicationPrescription&quot; or &quot;MedicationOrder&quot; to generalize the use across inpatient and outpatient settings, including care plans, etc., and to harmonize with workflow patterns.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="MedicationRequest">
<xs:annotation>
<xs:documentation xml:lang="en">An order or request for both supply of the medication and the instructions for administration of the medication to a patient. The resource is called &quot;MedicationRequest&quot; rather than &quot;MedicationPrescription&quot; or &quot;MedicationOrder&quot; to generalize the use across inpatient and outpatient settings, including care plans, etc., and to harmonize with workflow patterns.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifiers associated with this medication request that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate. They are business identifiers assigned to this resource by the performer or other systems and remain constant as the resource is updated and propagates from server to server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="medicationrequestStatus">
<xs:annotation>
<xs:documentation xml:lang="en">A code specifying the current state of the order. Generally, this will be active or completed state.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="statusReason" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Captures the reason for the current state of the MedicationRequest.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="intent" minOccurs="1" maxOccurs="1" type="medicationRequestIntent">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the request is a proposal, plan, or an original order.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the type of medication request (for example, where the medication is expected to be consumed or administered (i.e. inpatient or outpatient)).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priority" minOccurs="0" maxOccurs="1" type="RequestPriority">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates how quickly the Medication Request should be addressed with respect to other requests.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="doNotPerform" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">If true indicates that the provider is asking for the medication request not to occur.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Indicates if this record was captured as a secondary 'reported' record rather than as an original primary source-of-truth record. It may also indicate the source of the report.</xs:documentation>
</xs:annotation>
<xs:element name="reportedBoolean" type="boolean"/>
<xs:element name="reportedReference" type="Reference"/>
</xs:choice>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the medication being requested. This is a link to a resource that represents the medication which may be the details of the medication or simply an attribute carrying a code that identifies the medication from a known list of medications.</xs:documentation>
</xs:annotation>
<xs:element name="medicationCodeableConcept" type="CodeableConcept"/>
<xs:element name="medicationReference" type="Reference"/>
</xs:choice>
<xs:element name="subject" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A link to a resource representing the person or set of individuals to whom the medication will be given.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The Encounter during which this [x] was created or to which the creation of this record is tightly associated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="supportingInformation" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Include additional information (for example, patient height and weight) that supports the ordering of the medication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="authoredOn" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and perhaps time) when the prescription was initially written or authored on.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requester" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The individual, organization, or device that initiated the request and has responsibility for its activation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The specified desired performer of the medication treatment (e.g. the performer of the medication administration).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performerType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the type of performer of the administration of the medication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="recorder" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The person who entered the order on behalf of another individual for example in the case of a verbal or a telephone order.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The reason or the indication for ordering or not ordering the medication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Condition or observation that supports why the medication was ordered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesCanonical" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to a protocol, guideline, orderset, or other definition that is adhered to in whole or in part by this MedicationRequest.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesUri" minOccurs="0" maxOccurs="unbounded" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to an externally maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this MedicationRequest.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basedOn" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A plan or request that is fulfilled in whole or in part by this medication request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="groupIdentifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A shared identifier common to all requests that were authorized more or less simultaneously by a single author, representing the identifier of the requisition or prescription.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="courseOfTherapyType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The description of the overall patte3rn of the administration of the medication to the patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="insurance" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Insurance plans, coverage extensions, pre-authorizations and/or pre-determinations that may be required for delivering the requested service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Extra information about the prescription that could not be conveyed by the other attributes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dosageInstruction" minOccurs="0" maxOccurs="unbounded" type="Dosage">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates how the medication is to be used by the patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dispenseRequest" type="MedicationRequest.DispenseRequest" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the specific details for the dispense or medication supply part of a medication request (also known as a Medication Prescription or Medication Order). Note that this information is not always sent with the order. There may be in some settings (e.g. hospitals) institutional or system support for completing the dispense details in the pharmacy department.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="substitution" type="MedicationRequest.Substitution" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether or not substitution can or should be part of the dispense. In some cases, substitution must happen, in other cases substitution must not happen. This block explains the prescriber's intent. If nothing is specified substitution may be done.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priorPrescription" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A link to a resource representing an earlier order related order or prescription.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detectedIssue" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates an actual or potential clinical issue with or between one or more active or proposed clinical actions for a patient; e.g. Drug-drug interaction, duplicate therapy, dosage alert etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="eventHistory" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Links to Provenance records for past versions of this resource or fulfilling request or event resources that identify key state transitions or updates that are likely to be relevant to a user looking at the current version of the resource.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationRequest.DispenseRequest">
<xs:annotation>
<xs:documentation xml:lang="en">An order or request for both supply of the medication and the instructions for administration of the medication to a patient. The resource is called &quot;MedicationRequest&quot; rather than &quot;MedicationPrescription&quot; or &quot;MedicationOrder&quot; to generalize the use across inpatient and outpatient settings, including care plans, etc., and to harmonize with workflow patterns.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="initialFill" type="MedicationRequest.InitialFill" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the quantity or duration for the first dispense of the medication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dispenseInterval" minOccurs="0" maxOccurs="1" type="Duration">
<xs:annotation>
<xs:documentation xml:lang="en">The minimum period of time that must occur between dispenses of the medication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="validityPeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">This indicates the validity period of a prescription (stale dating the Prescription).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="numberOfRepeatsAllowed" minOccurs="0" maxOccurs="1" type="unsignedInt">
<xs:annotation>
<xs:documentation xml:lang="en">An integer indicating the number of times, in addition to the original dispense, (aka refills or repeats) that the patient can receive the prescribed medication. Usage Notes: This integer does not include the original order dispense. This means that if an order indicates dispense 30 tablets plus &quot;3 repeats&quot;, then the order can be dispensed a total of 4 times and the patient can receive a total of 120 tablets. A prescriber may explicitly say that zero refills are permitted after the initial dispense.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The amount that is to be dispensed for one fill.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expectedSupplyDuration" minOccurs="0" maxOccurs="1" type="Duration">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the period time over which the supplied product is expected to be used, or the length of time the dispense is expected to last.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the intended dispensing Organization specified by the prescriber.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationRequest.InitialFill">
<xs:annotation>
<xs:documentation xml:lang="en">An order or request for both supply of the medication and the instructions for administration of the medication to a patient. The resource is called &quot;MedicationRequest&quot; rather than &quot;MedicationPrescription&quot; or &quot;MedicationOrder&quot; to generalize the use across inpatient and outpatient settings, including care plans, etc., and to harmonize with workflow patterns.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The amount or quantity to provide as part of the first dispense.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="duration" minOccurs="0" maxOccurs="1" type="Duration">
<xs:annotation>
<xs:documentation xml:lang="en">The length of time that the first dispense is expected to last.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicationRequest.Substitution">
<xs:annotation>
<xs:documentation xml:lang="en">An order or request for both supply of the medication and the instructions for administration of the medication to a patient. The resource is called &quot;MedicationRequest&quot; rather than &quot;MedicationPrescription&quot; or &quot;MedicationOrder&quot; to generalize the use across inpatient and outpatient settings, including care plans, etc., and to harmonize with workflow patterns.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">True if the prescriber allows a different drug to be dispensed from what was prescribed.</xs:documentation>
</xs:annotation>
<xs:element name="allowedBoolean" type="boolean"/>
<xs:element name="allowedCodeableConcept" type="CodeableConcept"/>
</xs:choice>
<xs:element name="reason" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the reason for the substitution, or why substitution must or must not be performed.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="medicationrequestStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="active">
<xs:annotation>
<xs:documentation xml:lang="en">Active</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="on-hold">
<xs:annotation>
<xs:documentation xml:lang="en">On Hold</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cancelled">
<xs:annotation>
<xs:documentation xml:lang="en">Cancelled</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="completed">
<xs:annotation>
<xs:documentation xml:lang="en">Completed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="stopped">
<xs:annotation>
<xs:documentation xml:lang="en">Stopped</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="draft">
<xs:annotation>
<xs:documentation xml:lang="en">Draft</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unknown">
<xs:annotation>
<xs:documentation xml:lang="en">Unknown</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="medicationrequestStatus">
<xs:annotation>
<xs:documentation xml:lang="en">A coded concept specifying the state of the prescribing event. Describes the lifecycle of the prescription.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="medicationrequestStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="medicationRequestIntent-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="proposal">
<xs:annotation>
<xs:documentation xml:lang="en">Proposal</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="plan">
<xs:annotation>
<xs:documentation xml:lang="en">Plan</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="order">
<xs:annotation>
<xs:documentation xml:lang="en">Order</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="original-order">
<xs:annotation>
<xs:documentation xml:lang="en">Original Order</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="reflex-order">
<xs:annotation>
<xs:documentation xml:lang="en">Reflex Order</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="filler-order">
<xs:annotation>
<xs:documentation xml:lang="en">Filler Order</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="instance-order">
<xs:annotation>
<xs:documentation xml:lang="en">Instance Order</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="option">
<xs:annotation>
<xs:documentation xml:lang="en">Option</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="medicationRequestIntent">
<xs:annotation>
<xs:documentation xml:lang="en">The kind of medication order.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="medicationRequestIntent-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="MedicationStatement" type="MedicationStatement">
<xs:annotation>
<xs:documentation xml:lang="en">A record of a medication that is being consumed by a patient. A MedicationStatement may indicate that the patient may be taking the medication now or has taken the medication in the past or will be taking the medication in the future. The source of this information can be the patient, significant other (such as a family member or spouse), or a clinician. A common scenario where this information is captured is during the history taking process during a patient visit or stay. The medication information may come from sources such as the patient's memory, from a prescription bottle, or from a list of medications the patient, clinician or other party maintains.
The primary difference between a medication statement and a medication administration is that the medication administration has complete administration information and is based on actual administration information from the person who administered the medication. A medication statement is often, if not always, less specific. There is no required date/time when the medication was administered, in fact we only know that a source has reported the patient is taking this medication, where details such as time, quantity, or rate or even medication product may be incomplete or missing or less precise. As stated earlier, the medication statement information may come from the patient's memory, from a prescription bottle or from a list of medications the patient, clinician or other party maintains. Medication administration is more formal and is not missing detailed information.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="MedicationStatement">
<xs:annotation>
<xs:documentation xml:lang="en">A record of a medication that is being consumed by a patient. A MedicationStatement may indicate that the patient may be taking the medication now or has taken the medication in the past or will be taking the medication in the future. The source of this information can be the patient, significant other (such as a family member or spouse), or a clinician. A common scenario where this information is captured is during the history taking process during a patient visit or stay. The medication information may come from sources such as the patient's memory, from a prescription bottle, or from a list of medications the patient, clinician or other party maintains.
The primary difference between a medication statement and a medication administration is that the medication administration has complete administration information and is based on actual administration information from the person who administered the medication. A medication statement is often, if not always, less specific. There is no required date/time when the medication was administered, in fact we only know that a source has reported the patient is taking this medication, where details such as time, quantity, or rate or even medication product may be incomplete or missing or less precise. As stated earlier, the medication statement information may come from the patient's memory, from a prescription bottle or from a list of medications the patient, clinician or other party maintains. Medication administration is more formal and is not missing detailed information.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifiers associated with this Medication Statement that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate. They are business identifiers assigned to this resource by the performer or other systems and remain constant as the resource is updated and propagates from server to server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basedOn" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A plan, proposal or order that is fulfilled in whole or in part by this event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partOf" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A larger event of which this particular event is a component or step.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="MedicationStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">A code representing the patient or other source's judgment about the state of the medication used that this statement is about. Generally, this will be active or completed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="statusReason" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Captures the reason for the current state of the MedicationStatement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates where the medication is expected to be consumed or administered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.</xs:documentation>
</xs:annotation>
<xs:element name="medicationCodeableConcept" type="CodeableConcept"/>
<xs:element name="medicationReference" type="Reference"/>
</xs:choice>
<xs:element name="subject" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The person, animal or group who is/was taking the medication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="context" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The encounter or episode of care that establishes the context for this MedicationStatement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The interval of time during which it is being asserted that the patient is/was/will be taking the medication (or was not taking, when the MedicationStatement.taken element is No).</xs:documentation>
</xs:annotation>
<xs:element name="effectiveDateTime" type="dateTime"/>
<xs:element name="effectivePeriod" type="Period"/>
</xs:choice>
<xs:element name="dateAsserted" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date when the medication statement was asserted by the information source.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="informationSource" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The person or organization that provided the information about the taking of this medication. Note: Use derivedFrom when a MedicationStatement is derived from other resources, e.g. Claim or MedicationRequest.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="derivedFrom" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Allows linking the MedicationStatement to the underlying MedicationRequest, or to other information that supports or is used to derive the MedicationStatement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A reason for why the medication is being/was taken.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Condition or observation that supports why the medication is being/was taken.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Provides extra information about the medication statement that is not conveyed by the other attributes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dosage" minOccurs="0" maxOccurs="unbounded" type="Dosage">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates how the medication is/was or should be taken by the patient.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="MedicinalProduct" type="MedicinalProduct">
<xs:annotation>
<xs:documentation xml:lang="en">Detailed definition of a medicinal product, typically for uses other than direct patient care (e.g. regulatory use).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="MedicinalProduct">
<xs:annotation>
<xs:documentation xml:lang="en">Detailed definition of a medicinal product, typically for uses other than direct patient care (e.g. regulatory use).</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business identifier for this product. Could be an MPID.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Regulatory type, e.g. Investigational or Authorized.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="domain" minOccurs="0" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">If this medicine applies to human or veterinary uses.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="combinedPharmaceuticalDoseForm" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The dose form for a single part product, or combined form of a multiple part product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="legalStatusOfSupply" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The legal status of supply of the medicinal product as classified by the regulator.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="additionalMonitoringIndicator" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the Medicinal Product is subject to additional monitoring for regulatory reasons.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specialMeasures" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the Medicinal Product is subject to special measures for regulatory reasons.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="paediatricUseIndicator" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">If authorised for use in children.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="productClassification" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Allows the product to be classified by various systems.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="marketingStatus" minOccurs="0" maxOccurs="unbounded" type="MarketingStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Marketing status of the medicinal product, in contrast to marketing authorizaton.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="pharmaceuticalProduct" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Pharmaceutical aspects of product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="packagedMedicinalProduct" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Package representation for the product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="attachedDocument" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Supporting documentation, typically for regulatory submission.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="masterFile" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A master file for to the medicinal product (e.g. Pharmacovigilance System Master File).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A product specific contact, person (in a role), or an organization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="clinicalTrial" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Clinical trials or studies that this product is involved in.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" type="MedicinalProduct.Name" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The product's name, including full name and possibly coded parts.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="crossReference" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to another product, e.g. for linking authorised to investigational product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="manufacturingBusinessOperation" type="MedicinalProduct.ManufacturingBusinessOperation" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">An operation applied to the product, for manufacturing or adminsitrative purpose.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specialDesignation" type="MedicinalProduct.SpecialDesignation" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates if the medicinal product has an orphan designation for the treatment of a rare disease.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicinalProduct.Name">
<xs:annotation>
<xs:documentation xml:lang="en">Detailed definition of a medicinal product, typically for uses other than direct patient care (e.g. regulatory use).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="productName" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The full product name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="namePart" type="MedicinalProduct.NamePart" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Coding words or phrases of the name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="countryLanguage" type="MedicinalProduct.CountryLanguage" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Country where the name applies.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicinalProduct.NamePart">
<xs:annotation>
<xs:documentation xml:lang="en">Detailed definition of a medicinal product, typically for uses other than direct patient care (e.g. regulatory use).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="part" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A fragment of a product name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">Idenifying type for this part of the name (e.g. strength part).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicinalProduct.CountryLanguage">
<xs:annotation>
<xs:documentation xml:lang="en">Detailed definition of a medicinal product, typically for uses other than direct patient care (e.g. regulatory use).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="country" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Country code for where this name applies.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Jurisdiction code for where this name applies.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="language" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Language code for this name.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicinalProduct.ManufacturingBusinessOperation">
<xs:annotation>
<xs:documentation xml:lang="en">Detailed definition of a medicinal product, typically for uses other than direct patient care (e.g. regulatory use).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="operationType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of manufacturing operation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="authorisationReferenceNumber" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Regulatory authorization reference number.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="effectiveDate" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Regulatory authorization date.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="confidentialityIndicator" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">To indicate if this proces is commercially confidential.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="manufacturer" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The manufacturer or establishment associated with the process.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="regulator" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A regulator which oversees the operation.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicinalProduct.SpecialDesignation">
<xs:annotation>
<xs:documentation xml:lang="en">Detailed definition of a medicinal product, typically for uses other than direct patient care (e.g. regulatory use).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier for the designation, or procedure number.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of special designation, e.g. orphan drug, minor use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="intendedUse" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The intended use of the product, e.g. prevention, treatment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Condition for which the medicinal use applies.</xs:documentation>
</xs:annotation>
<xs:element name="indicationCodeableConcept" type="CodeableConcept"/>
<xs:element name="indicationReference" type="Reference"/>
</xs:choice>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">For example granted, pending, expired or withdrawn.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Date when the designation was granted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="species" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Animal species for which this applies.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="MedicinalProductAuthorization" type="MedicinalProductAuthorization">
<xs:annotation>
<xs:documentation xml:lang="en">The regulatory authorization of a medicinal product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="MedicinalProductAuthorization">
<xs:annotation>
<xs:documentation xml:lang="en">The regulatory authorization of a medicinal product.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business identifier for the marketing authorization, as assigned by a regulator.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The medicinal product that is being authorized.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="country" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The country in which the marketing authorization has been granted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Jurisdiction within a country.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the marketing authorization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="statusDate" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date at which the given status has become applicable.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="restoreDate" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date when a suspended the marketing or the marketing authorization of the product is anticipated to be restored.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="validityPeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The beginning of the time period in which the marketing authorization is in the specific status shall be specified A complete date consisting of day, month and year shall be specified using the ISO 8601 date format.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dataExclusivityPeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">A period of time after authorization before generic product applicatiosn can be submitted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dateOfFirstAuthorization" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date when the first authorization was granted by a Medicines Regulatory Agency.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="internationalBirthDate" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Date of first marketing authorization for a company's new medicinal product in any country in the World.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="legalBasis" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The legal framework against which this authorization is granted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdictionalAuthorization" type="MedicinalProductAuthorization.JurisdictionalAuthorization" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Authorization in areas within a country.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="holder" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Marketing Authorization Holder.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="regulator" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Medicines Regulatory Agency.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="procedure" type="MedicinalProductAuthorization.Procedure" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The regulatory procedure for granting or amending a marketing authorization.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicinalProductAuthorization.JurisdictionalAuthorization">
<xs:annotation>
<xs:documentation xml:lang="en">The regulatory authorization of a medicinal product.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">The assigned number for the marketing authorization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="country" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Country of authorization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Jurisdiction within a country.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="legalStatusOfSupply" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The legal status of supply in a jurisdiction or region.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="validityPeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The start and expected end date of the authorization.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicinalProductAuthorization.Procedure">
<xs:annotation>
<xs:documentation xml:lang="en">The regulatory authorization of a medicinal product.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier for this procedure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of procedure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Date of procedure.</xs:documentation>
</xs:annotation>
<xs:element name="datePeriod" type="Period"/>
<xs:element name="dateDateTime" type="dateTime"/>
</xs:choice>
<xs:element name="application" type="MedicinalProductAuthorization.Procedure" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Applcations submitted to obtain a marketing authorization.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="MedicinalProductContraindication" type="MedicinalProductContraindication">
<xs:annotation>
<xs:documentation xml:lang="en">The clinical particulars - indications, contraindications etc. of a medicinal product, including for regulatory purposes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="MedicinalProductContraindication">
<xs:annotation>
<xs:documentation xml:lang="en">The clinical particulars - indications, contraindications etc. of a medicinal product, including for regulatory purposes.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="subject" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The medication for which this is an indication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="disease" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The disease, symptom or procedure for the contraindication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="diseaseStatus" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the disease or symptom for the contraindication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comorbidity" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A comorbidity (concurrent condition) or coinfection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="therapeuticIndication" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Information about the use of the medicinal product in relation to other therapies as part of the indication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="otherTherapy" type="MedicinalProductContraindication.OtherTherapy" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Information about the use of the medicinal product in relation to other therapies described as part of the indication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="population" minOccurs="0" maxOccurs="unbounded" type="Population">
<xs:annotation>
<xs:documentation xml:lang="en">The population group to which this applies.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicinalProductContraindication.OtherTherapy">
<xs:annotation>
<xs:documentation xml:lang="en">The clinical particulars - indications, contraindications etc. of a medicinal product, including for regulatory purposes.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="therapyRelationshipType" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of relationship between the medicinal product indication or contraindication and another therapy.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Reference to a specific medication (active substance, medicinal product or class of products) as part of an indication or contraindication.</xs:documentation>
</xs:annotation>
<xs:element name="medicationCodeableConcept" type="CodeableConcept"/>
<xs:element name="medicationReference" type="Reference"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="MedicinalProductIndication" type="MedicinalProductIndication">
<xs:annotation>
<xs:documentation xml:lang="en">Indication for the Medicinal Product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="MedicinalProductIndication">
<xs:annotation>
<xs:documentation xml:lang="en">Indication for the Medicinal Product.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="subject" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The medication for which this is an indication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="diseaseSymptomProcedure" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The disease, symptom or procedure that is the indication for treatment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="diseaseStatus" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the disease or symptom for which the indication applies.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comorbidity" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Comorbidity (concurrent condition) or co-infection as part of the indication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="intendedEffect" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The intended effect, aim or strategy to be achieved by the indication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="duration" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">Timing or duration information as part of the indication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="otherTherapy" type="MedicinalProductIndication.OtherTherapy" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Information about the use of the medicinal product in relation to other therapies described as part of the indication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="undesirableEffect" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Describe the undesirable effects of the medicinal product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="population" minOccurs="0" maxOccurs="unbounded" type="Population">
<xs:annotation>
<xs:documentation xml:lang="en">The population group to which this applies.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicinalProductIndication.OtherTherapy">
<xs:annotation>
<xs:documentation xml:lang="en">Indication for the Medicinal Product.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="therapyRelationshipType" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of relationship between the medicinal product indication or contraindication and another therapy.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Reference to a specific medication (active substance, medicinal product or class of products) as part of an indication or contraindication.</xs:documentation>
</xs:annotation>
<xs:element name="medicationCodeableConcept" type="CodeableConcept"/>
<xs:element name="medicationReference" type="Reference"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="MedicinalProductIngredient" type="MedicinalProductIngredient">
<xs:annotation>
<xs:documentation xml:lang="en">An ingredient of a manufactured item or pharmaceutical product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="MedicinalProductIngredient">
<xs:annotation>
<xs:documentation xml:lang="en">An ingredient of a manufactured item or pharmaceutical product.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier(s) of this Ingredient that are assigned by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="role" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Ingredient role e.g. Active ingredient, excipient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="allergenicIndicator" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">If the ingredient is a known or suspected allergen.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="manufacturer" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Manufacturer of this Ingredient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specifiedSubstance" type="MedicinalProductIngredient.SpecifiedSubstance" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A specified substance that comprises this ingredient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="substance" type="MedicinalProductIngredient.Substance" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The ingredient substance.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicinalProductIngredient.SpecifiedSubstance">
<xs:annotation>
<xs:documentation xml:lang="en">An ingredient of a manufactured item or pharmaceutical product.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The specified substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="group" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The group of specified substance, e.g. group 1 to 4.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="confidentiality" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Confidentiality level of the specified substance as the ingredient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="strength" type="MedicinalProductIngredient.Strength" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Quantity of the substance or specified substance present in the manufactured item or pharmaceutical product.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicinalProductIngredient.Strength">
<xs:annotation>
<xs:documentation xml:lang="en">An ingredient of a manufactured item or pharmaceutical product.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="presentation" minOccurs="1" maxOccurs="1" type="Ratio">
<xs:annotation>
<xs:documentation xml:lang="en">The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="presentationLowLimit" minOccurs="0" maxOccurs="1" type="Ratio">
<xs:annotation>
<xs:documentation xml:lang="en">A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="concentration" minOccurs="0" maxOccurs="1" type="Ratio">
<xs:annotation>
<xs:documentation xml:lang="en">The strength per unitary volume (or mass).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="concentrationLowLimit" minOccurs="0" maxOccurs="1" type="Ratio">
<xs:annotation>
<xs:documentation xml:lang="en">A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="measurementPoint" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">For when strength is measured at a particular point or distance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="country" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The country or countries for which the strength range applies.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referenceStrength" type="MedicinalProductIngredient.ReferenceStrength" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Strength expressed in terms of a reference substance.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicinalProductIngredient.ReferenceStrength">
<xs:annotation>
<xs:documentation xml:lang="en">An ingredient of a manufactured item or pharmaceutical product.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="substance" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Relevant reference substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="strength" minOccurs="1" maxOccurs="1" type="Ratio">
<xs:annotation>
<xs:documentation xml:lang="en">Strength expressed in terms of a reference substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="strengthLowLimit" minOccurs="0" maxOccurs="1" type="Ratio">
<xs:annotation>
<xs:documentation xml:lang="en">Strength expressed in terms of a reference substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="measurementPoint" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">For when strength is measured at a particular point or distance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="country" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The country or countries for which the strength range applies.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicinalProductIngredient.Substance">
<xs:annotation>
<xs:documentation xml:lang="en">An ingredient of a manufactured item or pharmaceutical product.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The ingredient substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="strength" type="MedicinalProductIngredient.Strength" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Quantity of the substance or specified substance present in the manufactured item or pharmaceutical product.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="MedicinalProductInteraction" type="MedicinalProductInteraction">
<xs:annotation>
<xs:documentation xml:lang="en">The interactions of the medicinal product with other medicinal products, or other forms of interactions.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="MedicinalProductInteraction">
<xs:annotation>
<xs:documentation xml:lang="en">The interactions of the medicinal product with other medicinal products, or other forms of interactions.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="subject" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The medication for which this is a described interaction.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The interaction described.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="interactant" type="MedicinalProductInteraction.Interactant" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The specific medication, food or laboratory test that interacts.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of the interaction e.g. drug-drug interaction, drug-food interaction, drug-lab test interaction.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="effect" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The effect of the interaction, for example &quot;reduced gastric absorption of primary medication&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="incidence" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The incidence of the interaction, e.g. theoretical, observed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="management" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Actions for managing the interaction.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicinalProductInteraction.Interactant">
<xs:annotation>
<xs:documentation xml:lang="en">The interactions of the medicinal product with other medicinal products, or other forms of interactions.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The specific medication, food or laboratory test that interacts.</xs:documentation>
</xs:annotation>
<xs:element name="itemReference" type="Reference"/>
<xs:element name="itemCodeableConcept" type="CodeableConcept"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="MedicinalProductManufactured" type="MedicinalProductManufactured">
<xs:annotation>
<xs:documentation xml:lang="en">The manufactured item as contained in the packaged medicinal product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="MedicinalProductManufactured">
<xs:annotation>
<xs:documentation xml:lang="en">The manufactured item as contained in the packaged medicinal product.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="manufacturedDoseForm" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Dose form as manufactured and before any transformation into the pharmaceutical product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unitOfPresentation" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The “real world” units in which the quantity of the manufactured item is described.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="1" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The quantity or &quot;count number&quot; of the manufactured item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="manufacturer" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Manufacturer of the item (Note that this should be named &quot;manufacturer&quot; but it currently causes technical issues).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ingredient" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Ingredient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="physicalCharacteristics" minOccurs="0" maxOccurs="1" type="ProdCharacteristic">
<xs:annotation>
<xs:documentation xml:lang="en">Dimensions, color etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="otherCharacteristics" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Other codeable characteristics.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="MedicinalProductPackaged" type="MedicinalProductPackaged">
<xs:annotation>
<xs:documentation xml:lang="en">A medicinal product in a container or package.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="MedicinalProductPackaged">
<xs:annotation>
<xs:documentation xml:lang="en">A medicinal product in a container or package.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Unique identifier.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The product with this is a pack for.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Textual description.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="legalStatusOfSupply" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The legal status of supply of the medicinal product as classified by the regulator.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="marketingStatus" minOccurs="0" maxOccurs="unbounded" type="MarketingStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Marketing information.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="marketingAuthorization" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Manufacturer of this Package Item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="manufacturer" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Manufacturer of this Package Item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="batchIdentifier" type="MedicinalProductPackaged.BatchIdentifier" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Batch numbering.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="packageItem" type="MedicinalProductPackaged.PackageItem" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A packaging item, as a contained for medicine, possibly with other packaging items within.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicinalProductPackaged.BatchIdentifier">
<xs:annotation>
<xs:documentation xml:lang="en">A medicinal product in a container or package.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="outerPackaging" minOccurs="1" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A number appearing on the outer packaging of a specific batch.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="immediatePackaging" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A number appearing on the immediate packaging (and not the outer packaging).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicinalProductPackaged.PackageItem">
<xs:annotation>
<xs:documentation xml:lang="en">A medicinal product in a container or package.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Including possibly Data Carrier Identifier.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The physical type of the container of the medicine.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="1" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The quantity of this package in the medicinal product, at the current level of packaging. The outermost is always 1.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="material" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Material type of the package item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="alternateMaterial" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A possible alternate material for the packaging.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="device" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A device accompanying a medicinal product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="manufacturedItem" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The manufactured item as contained in the packaged medicinal product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="packageItem" type="MedicinalProductPackaged.PackageItem" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Allows containers within containers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="physicalCharacteristics" minOccurs="0" maxOccurs="1" type="ProdCharacteristic">
<xs:annotation>
<xs:documentation xml:lang="en">Dimensions, color etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="otherCharacteristics" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Other codeable characteristics.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="shelfLifeStorage" minOccurs="0" maxOccurs="unbounded" type="ProductShelfLife">
<xs:annotation>
<xs:documentation xml:lang="en">Shelf Life and storage information.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="manufacturer" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Manufacturer of this Package Item.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="MedicinalProductPharmaceutical" type="MedicinalProductPharmaceutical">
<xs:annotation>
<xs:documentation xml:lang="en">A pharmaceutical product described in terms of its composition and dose form.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="MedicinalProductPharmaceutical">
<xs:annotation>
<xs:documentation xml:lang="en">A pharmaceutical product described in terms of its composition and dose form.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">An identifier for the pharmaceutical medicinal product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="administrableDoseForm" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The administrable dose form, after necessary reconstitution.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unitOfPresentation" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ingredient" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Ingredient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="device" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Accompanying device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="characteristics" type="MedicinalProductPharmaceutical.Characteristics" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Characteristics e.g. a products onset of action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="routeOfAdministration" type="MedicinalProductPharmaceutical.RouteOfAdministration" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The path by which the pharmaceutical product is taken into or makes contact with the body.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicinalProductPharmaceutical.Characteristics">
<xs:annotation>
<xs:documentation xml:lang="en">A pharmaceutical product described in terms of its composition and dose form.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A coded characteristic.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The status of characteristic e.g. assigned or pending.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicinalProductPharmaceutical.RouteOfAdministration">
<xs:annotation>
<xs:documentation xml:lang="en">A pharmaceutical product described in terms of its composition and dose form.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Coded expression for the route.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="firstDose" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The first dose (dose quantity) administered in humans can be specified, for a product under investigation, using a numerical value and its unit of measurement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="maxSingleDose" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The maximum single dose that can be administered as per the protocol of a clinical trial can be specified using a numerical value and its unit of measurement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="maxDosePerDay" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The maximum dose per day (maximum dose quantity to be administered in any one 24-h period) that can be administered as per the protocol referenced in the clinical trial authorisation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="maxDosePerTreatmentPeriod" minOccurs="0" maxOccurs="1" type="Ratio">
<xs:annotation>
<xs:documentation xml:lang="en">The maximum dose per treatment period that can be administered as per the protocol referenced in the clinical trial authorisation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="maxTreatmentPeriod" minOccurs="0" maxOccurs="1" type="Duration">
<xs:annotation>
<xs:documentation xml:lang="en">The maximum treatment period during which an Investigational Medicinal Product can be administered as per the protocol referenced in the clinical trial authorisation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="targetSpecies" type="MedicinalProductPharmaceutical.TargetSpecies" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A species for which this route applies.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicinalProductPharmaceutical.TargetSpecies">
<xs:annotation>
<xs:documentation xml:lang="en">A pharmaceutical product described in terms of its composition and dose form.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Coded expression for the species.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="withdrawalPeriod" type="MedicinalProductPharmaceutical.WithdrawalPeriod" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A species specific time during which consumption of animal product is not appropriate.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MedicinalProductPharmaceutical.WithdrawalPeriod">
<xs:annotation>
<xs:documentation xml:lang="en">A pharmaceutical product described in terms of its composition and dose form.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="tissue" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Coded expression for the type of tissue for which the withdrawal period applues, e.g. meat, milk.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="value" minOccurs="1" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">A value for the time.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="supportingInformation" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Extra information about the withdrawal period.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="MedicinalProductUndesirableEffect" type="MedicinalProductUndesirableEffect">
<xs:annotation>
<xs:documentation xml:lang="en">Describe the undesirable effects of the medicinal product.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="MedicinalProductUndesirableEffect">
<xs:annotation>
<xs:documentation xml:lang="en">Describe the undesirable effects of the medicinal product.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="subject" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The medication for which this is an indication.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="symptomConditionEffect" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The symptom, condition or undesirable effect.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="classification" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Classification of the effect.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="frequencyOfOccurrence" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The frequency of occurrence of the effect.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="population" minOccurs="0" maxOccurs="unbounded" type="Population">
<xs:annotation>
<xs:documentation xml:lang="en">The population group to which this applies.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="MessageDefinition" type="MessageDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">Defines the characteristics of a message that can be shared between systems, including the type of event that initiates the message, the content to be transmitted and what response(s), if any, are permitted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="MessageDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">Defines the characteristics of a message that can be shared between systems, including the type of event that initiates the message, the content to be transmitted and what response(s), if any, are permitted.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The business identifier that is used to reference the MessageDefinition and *is* expected to be consistent from server to server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this message definition when it is represented in other formats, or referenced in a specification, model, design or an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the message definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the message definition author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the message definition. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the message definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="replaces" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A MessageDefinition that is superseded by this definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this message definition. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this message definition is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="1" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the message definition was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the message definition changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the message definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the message definition from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate message definition instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the message definition is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Explanation of why this message definition is needed and why it has been designed as it has.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the message definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the message definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="base" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">The MessageDefinition that is the basis for the contents of this resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="parent" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies a protocol or workflow that this MessageDefinition represents a step in.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Event code or link to the EventDefinition.</xs:documentation>
</xs:annotation>
<xs:element name="eventCoding" type="Coding"/>
<xs:element name="eventUri" type="uri"/>
</xs:choice>
<xs:element name="category" minOccurs="0" maxOccurs="1" type="MessageSignificanceCategory">
<xs:annotation>
<xs:documentation xml:lang="en">The impact of the content of the message.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="focus" type="MessageDefinition.Focus" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the resource (or resources) that are being addressed by the event. For example, the Encounter for an admit message or two Account records for a merge.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="responseRequired" minOccurs="0" maxOccurs="1" type="messageheaderResponseRequest">
<xs:annotation>
<xs:documentation xml:lang="en">Declare at a message definition level whether a response is required or only upon error or success, or never.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="allowedResponse" type="MessageDefinition.AllowedResponse" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates what types of messages may be sent as an application-level response to this message.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="graph" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">Canonical reference to a GraphDefinition. If a URL is provided, it is the canonical reference to a [[[GraphDefinition]]] that it controls what resources are to be added to the bundle when building the document. The GraphDefinition can also specify profiles that apply to the various resources.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MessageDefinition.Focus">
<xs:annotation>
<xs:documentation xml:lang="en">Defines the characteristics of a message that can be shared between systems, including the type of event that initiates the message, the content to be transmitted and what response(s), if any, are permitted.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The kind of resource that must be the focus for this message.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="profile" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A profile that reflects constraints for the focal resource (and potentially for related resources).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="min" minOccurs="1" maxOccurs="1" type="unsignedInt">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the minimum number of resources of this type that must be pointed to by a message in order for it to be valid against this MessageDefinition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="max" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the maximum number of resources of this type that must be pointed to by a message in order for it to be valid against this MessageDefinition.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MessageDefinition.AllowedResponse">
<xs:annotation>
<xs:documentation xml:lang="en">Defines the characteristics of a message that can be shared between systems, including the type of event that initiates the message, the content to be transmitted and what response(s), if any, are permitted.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="message" minOccurs="1" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to the message definition that must be adhered to by this supported response.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="situation" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Provides a description of the circumstances in which this response should be used (as opposed to one of the alternative responses).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="MessageSignificanceCategory-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="consequence">
<xs:annotation>
<xs:documentation xml:lang="en">Consequence</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="currency">
<xs:annotation>
<xs:documentation xml:lang="en">Currency</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="notification">
<xs:annotation>
<xs:documentation xml:lang="en">Notification</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="MessageSignificanceCategory">
<xs:annotation>
<xs:documentation xml:lang="en">The impact of the content of a message.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="MessageSignificanceCategory-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="messageheaderResponseRequest-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="always">
<xs:annotation>
<xs:documentation xml:lang="en">Always</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="on-error">
<xs:annotation>
<xs:documentation xml:lang="en">Error/reject conditions only</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="never">
<xs:annotation>
<xs:documentation xml:lang="en">Never</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="on-success">
<xs:annotation>
<xs:documentation xml:lang="en">Successful completion only</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="messageheaderResponseRequest">
<xs:annotation>
<xs:documentation xml:lang="en">HL7-defined table of codes which identify conditions under which acknowledgments are required to be returned in response to a message.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="messageheaderResponseRequest-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="MessageHeader" type="MessageHeader">
<xs:annotation>
<xs:documentation xml:lang="en">The header for a message exchange that is either requesting or responding to an action. The reference(s) that are the subject of the action as well as other information related to the action are typically transmitted in a bundle in which the MessageHeader resource instance is the first resource in the bundle.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="MessageHeader">
<xs:annotation>
<xs:documentation xml:lang="en">The header for a message exchange that is either requesting or responding to an action. The reference(s) that are the subject of the action as well as other information related to the action are typically transmitted in a bundle in which the MessageHeader resource instance is the first resource in the bundle.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Code that identifies the event this message represents and connects it with its definition. Events defined as part of the FHIR specification have the system value &quot;http://terminology.hl7.org/CodeSystem/message-events&quot;. Alternatively uri to the EventDefinition.</xs:documentation>
</xs:annotation>
<xs:element name="eventCoding" type="Coding"/>
<xs:element name="eventUri" type="uri"/>
</xs:choice>
<xs:element name="destination" type="MessageHeader.Destination" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The destination application which the message is intended for.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sender" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the sending system to allow the use of a trust relationship.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="enterer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The person or device that performed the data entry leading to this message. When there is more than one candidate, pick the most proximal to the message. Can provide other enterers in extensions.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The logical author of the message - the person or device that decided the described event should happen. When there is more than one candidate, pick the most proximal to the MessageHeader. Can provide other authors in extensions.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" type="MessageHeader.Source" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The source application from which this message originated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="responsible" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The person or organization that accepts overall responsibility for the contents of the message. The implication is that the message event happened under the policies of the responsible party.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reason" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Coded indication of the cause for the event - indicates a reason for the occurrence of the event that is a focus of this message.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="response" type="MessageHeader.Response" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Information about the message that this message is a response to. Only present if this message is a response.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="focus" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The actual data of the message - a reference to the root/focus class of the event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="definition" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">Permanent link to the MessageDefinition for this message.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MessageHeader.Destination">
<xs:annotation>
<xs:documentation xml:lang="en">The header for a message exchange that is either requesting or responding to an action. The reference(s) that are the subject of the action as well as other information related to the action are typically transmitted in a bundle in which the MessageHeader resource instance is the first resource in the bundle.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Human-readable name for the target system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="target" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the target end system in situations where the initial message transmission is to an intermediary system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endpoint" minOccurs="1" maxOccurs="1" type="url">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates where the message should be routed to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="receiver" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Allows data conveyed by a message to be addressed to a particular person or department when routing to a specific application isn't sufficient.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MessageHeader.Source">
<xs:annotation>
<xs:documentation xml:lang="en">The header for a message exchange that is either requesting or responding to an action. The reference(s) that are the subject of the action as well as other information related to the action are typically transmitted in a bundle in which the MessageHeader resource instance is the first resource in the bundle.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Human-readable name for the source system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="software" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">May include configuration or other information useful in debugging.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Can convey versions of multiple systems in situations where a message passes through multiple hands.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="1" type="ContactPoint">
<xs:annotation>
<xs:documentation xml:lang="en">An e-mail, phone, website or other contact point to use to resolve issues with message communications.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endpoint" minOccurs="1" maxOccurs="1" type="url">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the routing target to send acknowledgements to.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MessageHeader.Response">
<xs:annotation>
<xs:documentation xml:lang="en">The header for a message exchange that is either requesting or responding to an action. The reference(s) that are the subject of the action as well as other information related to the action are typically transmitted in a bundle in which the MessageHeader resource instance is the first resource in the bundle.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="identifier" minOccurs="1" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">The MessageHeader.id of the message to which this message is a response.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="ResponseType">
<xs:annotation>
<xs:documentation xml:lang="en">Code that identifies the type of response to the message - whether it was successful or not, and whether it should be resent or not.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="details" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Full details of any issues found in the message.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ResponseType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="ok">
<xs:annotation>
<xs:documentation xml:lang="en">OK</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="transient-error">
<xs:annotation>
<xs:documentation xml:lang="en">Transient Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="fatal-error">
<xs:annotation>
<xs:documentation xml:lang="en">Fatal Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ResponseType">
<xs:annotation>
<xs:documentation xml:lang="en">The kind of response to a message.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ResponseType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="MolecularSequence" type="MolecularSequence">
<xs:annotation>
<xs:documentation xml:lang="en">Raw data describing a biological sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="MolecularSequence">
<xs:annotation>
<xs:documentation xml:lang="en">Raw data describing a biological sequence.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A unique identifier for this particular sequence instance. This is a FHIR-defined id.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="sequenceType">
<xs:annotation>
<xs:documentation xml:lang="en">Amino Acid Sequence/ DNA Sequence / RNA Sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="coordinateSystem" minOccurs="1" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the sequence is numbered starting at 0 (0-based numbering or coordinates, inclusive start, exclusive end) or starting at 1 (1-based numbering, inclusive start and inclusive end).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patient" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The patient whose sequencing results are described by this resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specimen" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Specimen used for sequencing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="device" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The method for sequencing, for example, chip information.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The organization or lab that should be responsible for this result.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The number of copies of the sequence of interest. (RNASeq).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referenceSeq" type="MolecularSequence.ReferenceSeq" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A sequence that is used as a reference to describe variants that are present in a sequence analyzed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="variant" type="MolecularSequence.Variant" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The definition of variant here originates from Sequence ontology ([variant_of](http://www.sequenceontology.org/browser/current_svn/term/variant_of)). This element can represent amino acid or nucleic sequence change(including insertion,deletion,SNP,etc.) It can represent some complex mutation or segment variation with the assist of CIGAR string.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="observedSeq" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Sequence that was observed. It is the result marked by referenceSeq along with variant records on referenceSeq. This shall start from referenceSeq.windowStart and end by referenceSeq.windowEnd.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quality" type="MolecularSequence.Quality" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">An experimental feature attribute that defines the quality of the feature in a quantitative way, such as a phred quality score ([SO:0001686](http://www.sequenceontology.org/browser/current_svn/term/SO:0001686)).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="readCoverage" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Coverage (read depth or depth) is the average number of reads representing a given nucleotide in the reconstructed sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="repository" type="MolecularSequence.Repository" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Configurations of the external repository. The repository shall store target's observedSeq or records related with target's observedSeq.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="pointer" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Pointer to next atomic sequence which at most contains one variant.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="structureVariant" type="MolecularSequence.StructureVariant" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Information about chromosome structure variation.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MolecularSequence.ReferenceSeq">
<xs:annotation>
<xs:documentation xml:lang="en">Raw data describing a biological sequence.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="chromosome" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Structural unit composed of a nucleic acid molecule which controls its own replication through the interaction of specific proteins at one or more origins of replication ([SO:0000340](http://www.sequenceontology.org/browser/current_svn/term/SO:0000340)).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="genomeBuild" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The Genome Build used for reference, following GRCh build versions e.g. 'GRCh 37'. Version number must be included if a versioned release of a primary build was used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="orientation" minOccurs="0" maxOccurs="1" type="orientationType">
<xs:annotation>
<xs:documentation xml:lang="en">A relative reference to a DNA strand based on gene orientation. The strand that contains the open reading frame of the gene is the &quot;sense&quot; strand, and the opposite complementary strand is the &quot;antisense&quot; strand.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referenceSeqId" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Reference identifier of reference sequence submitted to NCBI. It must match the type in the MolecularSequence.type field. For example, the prefix, “NG_” identifies reference sequence for genes, “NM_” for messenger RNA transcripts, and “NP_” for amino acid sequences.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referenceSeqPointer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A pointer to another MolecularSequence entity as reference sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referenceSeqString" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A string like &quot;ACGT&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="strand" minOccurs="0" maxOccurs="1" type="strandType">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute reference to a strand. The Watson strand is the strand whose 5'-end is on the short arm of the chromosome, and the Crick strand as the one whose 5'-end is on the long arm.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="windowStart" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Start position of the window on the reference sequence. If the coordinate system is either 0-based or 1-based, then start position is inclusive.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="windowEnd" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">End position of the window on the reference sequence. If the coordinate system is 0-based then end is exclusive and does not include the last position. If the coordinate system is 1-base, then end is inclusive and includes the last position.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MolecularSequence.Variant">
<xs:annotation>
<xs:documentation xml:lang="en">Raw data describing a biological sequence.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="start" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Start position of the variant on the reference sequence. If the coordinate system is either 0-based or 1-based, then start position is inclusive.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="end" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">End position of the variant on the reference sequence. If the coordinate system is 0-based then end is exclusive and does not include the last position. If the coordinate system is 1-base, then end is inclusive and includes the last position.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="observedAllele" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">An allele is one of a set of coexisting sequence variants of a gene ([SO:0001023](http://www.sequenceontology.org/browser/current_svn/term/SO:0001023)). Nucleotide(s)/amino acids from start position of sequence to stop position of sequence on the positive (+) strand of the observed sequence. When the sequence type is DNA, it should be the sequence on the positive (+) strand. This will lay in the range between variant.start and variant.end.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referenceAllele" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">An allele is one of a set of coexisting sequence variants of a gene ([SO:0001023](http://www.sequenceontology.org/browser/current_svn/term/SO:0001023)). Nucleotide(s)/amino acids from start position of sequence to stop position of sequence on the positive (+) strand of the reference sequence. When the sequence type is DNA, it should be the sequence on the positive (+) strand. This will lay in the range between variant.start and variant.end.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="cigar" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Extended CIGAR string for aligning the sequence with reference bases. See detailed documentation [here](http://support.illumina.com/help/SequencingAnalysisWorkflow/Content/Vault/Informatics/Sequencing_Analysis/CASAVA/swSEQ_mCA_ExtendedCIGARFormat.htm).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="variantPointer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A pointer to an Observation containing variant information.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MolecularSequence.Quality">
<xs:annotation>
<xs:documentation xml:lang="en">Raw data describing a biological sequence.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="qualityType">
<xs:annotation>
<xs:documentation xml:lang="en">INDEL / SNP / Undefined variant.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="standardSequence" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Gold standard sequence used for comparing against.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="start" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Start position of the sequence. If the coordinate system is either 0-based or 1-based, then start position is inclusive.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="end" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">End position of the sequence. If the coordinate system is 0-based then end is exclusive and does not include the last position. If the coordinate system is 1-base, then end is inclusive and includes the last position.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="score" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The score of an experimentally derived feature such as a p-value ([SO:0001685](http://www.sequenceontology.org/browser/current_svn/term/SO:0001685)).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="method" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Which method is used to get sequence quality.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="truthTP" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">True positives, from the perspective of the truth data, i.e. the number of sites in the Truth Call Set for which there are paths through the Query Call Set that are consistent with all of the alleles at this site, and for which there is an accurate genotype call for the event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="queryTP" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">True positives, from the perspective of the query data, i.e. the number of sites in the Query Call Set for which there are paths through the Truth Call Set that are consistent with all of the alleles at this site, and for which there is an accurate genotype call for the event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="truthFN" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">False negatives, i.e. the number of sites in the Truth Call Set for which there is no path through the Query Call Set that is consistent with all of the alleles at this site, or sites for which there is an inaccurate genotype call for the event. Sites with correct variant but incorrect genotype are counted here.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="queryFP" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">False positives, i.e. the number of sites in the Query Call Set for which there is no path through the Truth Call Set that is consistent with this site. Sites with correct variant but incorrect genotype are counted here.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="gtFP" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">The number of false positives where the non-REF alleles in the Truth and Query Call Sets match (i.e. cases where the truth is 1/1 and the query is 0/1 or similar).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="precision" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">QUERY.TP / (QUERY.TP + QUERY.FP).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="recall" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">TRUTH.TP / (TRUTH.TP + TRUTH.FN).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="fScore" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Harmonic mean of Recall and Precision, computed as: 2 * precision * recall / (precision + recall).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="roc" type="MolecularSequence.Roc" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Receiver Operator Characteristic (ROC) Curve to give sensitivity/specificity tradeoff.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MolecularSequence.Roc">
<xs:annotation>
<xs:documentation xml:lang="en">Raw data describing a biological sequence.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="score" minOccurs="0" maxOccurs="unbounded" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Invidual data point representing the GQ (genotype quality) score threshold.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="numTP" minOccurs="0" maxOccurs="unbounded" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">The number of true positives if the GQ score threshold was set to &quot;score&quot; field value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="numFP" minOccurs="0" maxOccurs="unbounded" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">The number of false positives if the GQ score threshold was set to &quot;score&quot; field value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="numFN" minOccurs="0" maxOccurs="unbounded" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">The number of false negatives if the GQ score threshold was set to &quot;score&quot; field value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="precision" minOccurs="0" maxOccurs="unbounded" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Calculated precision if the GQ score threshold was set to &quot;score&quot; field value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sensitivity" minOccurs="0" maxOccurs="unbounded" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Calculated sensitivity if the GQ score threshold was set to &quot;score&quot; field value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="fMeasure" minOccurs="0" maxOccurs="unbounded" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Calculated fScore if the GQ score threshold was set to &quot;score&quot; field value.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MolecularSequence.Repository">
<xs:annotation>
<xs:documentation xml:lang="en">Raw data describing a biological sequence.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="repositoryType">
<xs:annotation>
<xs:documentation xml:lang="en">Click and see / RESTful API / Need login to see / RESTful API with authentication / Other ways to see resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">URI of an external repository which contains further details about the genetics data.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">URI of an external repository which contains further details about the genetics data.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="datasetId" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Id of the variant in this external repository. The server will understand how to use this id to call for more info about datasets in external repository.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="variantsetId" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Id of the variantset in this external repository. The server will understand how to use this id to call for more info about variantsets in external repository.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="readsetId" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Id of the read in this external repository.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MolecularSequence.StructureVariant">
<xs:annotation>
<xs:documentation xml:lang="en">Raw data describing a biological sequence.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="variantType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Information about chromosome structure variation DNA change type.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="exact" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Used to indicate if the outer and inner start-end values have the same meaning.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="length" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Length of the variant chromosome.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="outer" type="MolecularSequence.Outer" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Structural variant outer.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="inner" type="MolecularSequence.Inner" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Structural variant inner.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MolecularSequence.Outer">
<xs:annotation>
<xs:documentation xml:lang="en">Raw data describing a biological sequence.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="start" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Structural variant outer start. If the coordinate system is either 0-based or 1-based, then start position is inclusive.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="end" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Structural variant outer end. If the coordinate system is 0-based then end is exclusive and does not include the last position. If the coordinate system is 1-base, then end is inclusive and includes the last position.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="MolecularSequence.Inner">
<xs:annotation>
<xs:documentation xml:lang="en">Raw data describing a biological sequence.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="start" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Structural variant inner start. If the coordinate system is either 0-based or 1-based, then start position is inclusive.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="end" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Structural variant inner end. If the coordinate system is 0-based then end is exclusive and does not include the last position. If the coordinate system is 1-base, then end is inclusive and includes the last position.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="strandType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="watson">
<xs:annotation>
<xs:documentation xml:lang="en">Watson strand of referenceSeq</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="crick">
<xs:annotation>
<xs:documentation xml:lang="en">Crick strand of referenceSeq</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="strandType">
<xs:annotation>
<xs:documentation xml:lang="en">Type for strand.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="strandType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="orientationType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="sense">
<xs:annotation>
<xs:documentation xml:lang="en">Sense orientation of referenceSeq</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="antisense">
<xs:annotation>
<xs:documentation xml:lang="en">Antisense orientation of referenceSeq</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="orientationType">
<xs:annotation>
<xs:documentation xml:lang="en">Type for orientation.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="orientationType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="repositoryType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="directlink">
<xs:annotation>
<xs:documentation xml:lang="en">Click and see</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="openapi">
<xs:annotation>
<xs:documentation xml:lang="en">The URL is the RESTful or other kind of API that can access to the result.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="login">
<xs:annotation>
<xs:documentation xml:lang="en">Result cannot be access unless an account is logged in</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="oauth">
<xs:annotation>
<xs:documentation xml:lang="en">Result need to be fetched with API and need LOGIN( or cookies are required when visiting the link of resource)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="other">
<xs:annotation>
<xs:documentation xml:lang="en">Some other complicated or particular way to get resource from URL.</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="repositoryType">
<xs:annotation>
<xs:documentation xml:lang="en">Type for access of external URI.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="repositoryType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="qualityType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="indel">
<xs:annotation>
<xs:documentation xml:lang="en">INDEL Comparison</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="snp">
<xs:annotation>
<xs:documentation xml:lang="en">SNP Comparison</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unknown">
<xs:annotation>
<xs:documentation xml:lang="en">UNKNOWN Comparison</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="qualityType">
<xs:annotation>
<xs:documentation xml:lang="en">Type for quality report.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="qualityType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="sequenceType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="aa">
<xs:annotation>
<xs:documentation xml:lang="en">AA Sequence</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="dna">
<xs:annotation>
<xs:documentation xml:lang="en">DNA Sequence</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="rna">
<xs:annotation>
<xs:documentation xml:lang="en">RNA Sequence</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="sequenceType">
<xs:annotation>
<xs:documentation xml:lang="en">Type if a sequence -- DNA, RNA, or amino acid sequence.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="sequenceType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="NamingSystem" type="NamingSystem">
<xs:annotation>
<xs:documentation xml:lang="en">A curated namespace that issues unique symbols within that namespace for the identification of concepts, people, devices, etc. Represents a &quot;System&quot; used within the Identifier and Coding data types.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="NamingSystem">
<xs:annotation>
<xs:documentation xml:lang="en">A curated namespace that issues unique symbols within that namespace for the identification of concepts, people, devices, etc. Represents a &quot;System&quot; used within the Identifier and Coding data types.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the naming system. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this naming system. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="kind" minOccurs="1" maxOccurs="1" type="NamingSystemType">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the purpose for the naming system - what kinds of things does it make unique?</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="1" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the naming system was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the naming system changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the naming system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="responsible" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization that is responsible for issuing identifiers or codes for this namespace and ensuring their non-collision.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Categorizes a naming system for easier search by grouping related naming systems.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the naming system from a consumer's perspective. Details about what the namespace identifies including scope, granularity, version labeling, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate naming system instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the naming system is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="usage" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Provides guidance on the use of the namespace, including the handling of formatting characters, use of upper vs. lower case, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="uniqueId" type="NamingSystem.UniqueId" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates how the system may be identified when referenced in electronic exchange.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="NamingSystem.UniqueId">
<xs:annotation>
<xs:documentation xml:lang="en">A curated namespace that issues unique symbols within that namespace for the identification of concepts, people, devices, etc. Represents a &quot;System&quot; used within the Identifier and Coding data types.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="NamingSystemIdentifierType">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the unique identifier scheme used for this particular identifier.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="value" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The string that should be sent over the wire to identify the code system or identifier system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="preferred" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether this identifier is the &quot;preferred&quot; identifier of this type.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comment" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Notes about the past or intended usage of this identifier.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the period of time over which this identifier is considered appropriate to refer to the naming system. Outside of this window, the identifier might be non-deterministic.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="NamingSystemIdentifierType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="oid">
<xs:annotation>
<xs:documentation xml:lang="en">OID</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="uuid">
<xs:annotation>
<xs:documentation xml:lang="en">UUID</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="uri">
<xs:annotation>
<xs:documentation xml:lang="en">URI</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="other">
<xs:annotation>
<xs:documentation xml:lang="en">Other</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="NamingSystemIdentifierType">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the style of unique identifier used to identify a namespace.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="NamingSystemIdentifierType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="NamingSystemType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="codesystem">
<xs:annotation>
<xs:documentation xml:lang="en">Code System</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="root">
<xs:annotation>
<xs:documentation xml:lang="en">Root</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="NamingSystemType">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the purpose of the naming system.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="NamingSystemType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="NutritionOrder" type="NutritionOrder">
<xs:annotation>
<xs:documentation xml:lang="en">A request to supply a diet, formula feeding (enteral) or oral nutritional supplement to a patient/resident.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="NutritionOrder">
<xs:annotation>
<xs:documentation xml:lang="en">A request to supply a diet, formula feeding (enteral) or oral nutritional supplement to a patient/resident.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifiers assigned to this order by the order sender or by the order receiver.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesCanonical" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to a FHIR-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this NutritionOrder.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesUri" minOccurs="0" maxOccurs="unbounded" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to an externally maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this NutritionOrder.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiates" minOccurs="0" maxOccurs="unbounded" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to a protocol, guideline, orderset or other definition that is adhered to in whole or in part by this NutritionOrder.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="RequestStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The workflow status of the nutrition order/request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="intent" minOccurs="1" maxOccurs="1" type="RequestIntent">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the level of authority/intentionality associated with the NutrionOrder and where the request fits into the workflow chain.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patient" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The person (patient) who needs the nutrition order for an oral diet, nutritional supplement and/or enteral or formula feeding.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">An encounter that provides additional information about the healthcare context in which this request is made.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dateTime" minOccurs="1" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date and time that this nutrition order was requested.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="orderer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The practitioner that holds legal responsibility for ordering the diet, nutritional supplement, or formula feedings.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="allergyIntolerance" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A link to a record of allergies or intolerances which should be included in the nutrition order.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="foodPreferenceModifier" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">This modifier is used to convey order-specific modifiers about the type of food that should be given. These can be derived from patient allergies, intolerances, or preferences such as Halal, Vegan or Kosher. This modifier applies to the entire nutrition order inclusive of the oral diet, nutritional supplements and enteral formula feedings.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="excludeFoodModifier" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">This modifier is used to convey Order-specific modifier about the type of oral food or oral fluids that should not be given. These can be derived from patient allergies, intolerances, or preferences such as No Red Meat, No Soy or No Wheat or Gluten-Free. While it should not be necessary to repeat allergy or intolerance information captured in the referenced AllergyIntolerance resource in the excludeFoodModifier, this element may be used to convey additional specificity related to foods that should be eliminated from the patients diet for any reason. This modifier applies to the entire nutrition order inclusive of the oral diet, nutritional supplements and enteral formula feedings.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="oralDiet" type="NutritionOrder.OralDiet" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Diet given orally in contrast to enteral (tube) feeding.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="supplement" type="NutritionOrder.Supplement" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Oral nutritional products given in order to add further nutritional value to the patient's diet.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="enteralFormula" type="NutritionOrder.EnteralFormula" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Feeding provided through the gastrointestinal tract via a tube, catheter, or stoma that delivers nutrition distal to the oral cavity.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Comments made about the {{title}} by the requester, performer, subject or other participants.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="NutritionOrder.OralDiet">
<xs:annotation>
<xs:documentation xml:lang="en">A request to supply a diet, formula feeding (enteral) or oral nutritional supplement to a patient/resident.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The kind of diet or dietary restriction such as fiber restricted diet or diabetic diet.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="schedule" minOccurs="0" maxOccurs="unbounded" type="Timing">
<xs:annotation>
<xs:documentation xml:lang="en">The time period and frequency at which the diet should be given. The diet should be given for the combination of all schedules if more than one schedule is present.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="nutrient" type="NutritionOrder.Nutrient" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Class that defines the quantity and type of nutrient modifications (for example carbohydrate, fiber or sodium) required for the oral diet.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="texture" type="NutritionOrder.Texture" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Class that describes any texture modifications required for the patient to safely consume various types of solid foods.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="fluidConsistencyType" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The required consistency (e.g. honey-thick, nectar-thick, thin, thickened.) of liquids or fluids served to the patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instruction" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Free text or additional instructions or information pertaining to the oral diet.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="NutritionOrder.Nutrient">
<xs:annotation>
<xs:documentation xml:lang="en">A request to supply a diet, formula feeding (enteral) or oral nutritional supplement to a patient/resident.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="modifier" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The nutrient that is being modified such as carbohydrate or sodium.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="amount" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The quantity of the specified nutrient to include in diet.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="NutritionOrder.Texture">
<xs:annotation>
<xs:documentation xml:lang="en">A request to supply a diet, formula feeding (enteral) or oral nutritional supplement to a patient/resident.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="modifier" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Any texture modifications (for solid foods) that should be made, e.g. easy to chew, chopped, ground, and pureed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="foodType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The food type(s) (e.g. meats, all foods) that the texture modification applies to. This could be all foods types.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="NutritionOrder.Supplement">
<xs:annotation>
<xs:documentation xml:lang="en">A request to supply a diet, formula feeding (enteral) or oral nutritional supplement to a patient/resident.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The kind of nutritional supplement product required such as a high protein or pediatric clear liquid supplement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="productName" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The product or brand name of the nutritional supplement such as &quot;Acme Protein Shake&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="schedule" minOccurs="0" maxOccurs="unbounded" type="Timing">
<xs:annotation>
<xs:documentation xml:lang="en">The time period and frequency at which the supplement(s) should be given. The supplement should be given for the combination of all schedules if more than one schedule is present.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The amount of the nutritional supplement to be given.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instruction" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Free text or additional instructions or information pertaining to the oral supplement.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="NutritionOrder.EnteralFormula">
<xs:annotation>
<xs:documentation xml:lang="en">A request to supply a diet, formula feeding (enteral) or oral nutritional supplement to a patient/resident.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="baseFormulaType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of enteral or infant formula such as an adult standard formula with fiber or a soy-based infant formula.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="baseFormulaProductName" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The product or brand name of the enteral or infant formula product such as &quot;ACME Adult Standard Formula&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="additiveType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the type of modular component such as protein, carbohydrate, fat or fiber to be provided in addition to or mixed with the base formula.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="additiveProductName" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The product or brand name of the type of modular component to be added to the formula.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="caloricDensity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The amount of energy (calories) that the formula should provide per specified volume, typically per mL or fluid oz. For example, an infant may require a formula that provides 24 calories per fluid ounce or an adult may require an enteral formula that provides 1.5 calorie/mL.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="routeofAdministration" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The route or physiological path of administration into the patient's gastrointestinal tract for purposes of providing the formula feeding, e.g. nasogastric tube.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="administration" type="NutritionOrder.Administration" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Formula administration instructions as structured data. This repeating structure allows for changing the administration rate or volume over time for both bolus and continuous feeding. An example of this would be an instruction to increase the rate of continuous feeding every 2 hours.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="maxVolumeToDeliver" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The maximum total quantity of formula that may be administered to a subject over the period of time, e.g. 1440 mL over 24 hours.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="administrationInstruction" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Free text formula administration, feeding instructions or additional instructions or information.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="NutritionOrder.Administration">
<xs:annotation>
<xs:documentation xml:lang="en">A request to supply a diet, formula feeding (enteral) or oral nutritional supplement to a patient/resident.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="schedule" minOccurs="0" maxOccurs="1" type="Timing">
<xs:annotation>
<xs:documentation xml:lang="en">The time period and frequency at which the enteral formula should be delivered to the patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The volume of formula to provide to the patient per the specified administration schedule.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The rate of administration of formula via a feeding pump, e.g. 60 mL per hour, according to the specified schedule.</xs:documentation>
</xs:annotation>
<xs:element name="rateQuantity" type="Quantity"/>
<xs:element name="rateRatio" type="Ratio"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Observation" type="Observation">
<xs:annotation>
<xs:documentation xml:lang="en">Measurements and simple assertions made about a patient, device or other subject.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Observation">
<xs:annotation>
<xs:documentation xml:lang="en">Measurements and simple assertions made about a patient, device or other subject.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A unique identifier assigned to this observation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basedOn" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A plan, proposal or order that is fulfilled in whole or in part by this event. For example, a MedicationRequest may require a patient to have laboratory test performed before it is dispensed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partOf" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A larger event of which this particular Observation is a component or step. For example, an observation as part of a procedure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="ObservationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the result value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code that classifies the general type of observation being made.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes what was observed. Sometimes this is called the observation &quot;name&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The patient, or group of patients, location, or device this observation is about and into whose record the observation is placed. If the actual focus of the observation is different from the subject (or a sample of, part, or region of the subject), the `focus` element or the `code` itself specifies the actual focus of the observation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="focus" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The actual focus of an observation when it is not the patient of record representing something or someone associated with the patient such as a spouse, parent, fetus, or donor. For example, fetus observations in a mother's record. The focus of an observation could also be an existing condition, an intervention, the subject's diet, another observation of the subject, or a body structure such as tumor or implanted device. An example use case would be using the Observation resource to capture whether the mother is trained to change her child's tracheostomy tube. In this example, the child is the patient of record and the mother is the focus.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The healthcare event (e.g. a patient and healthcare provider interaction) during which this observation is made.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The time or time-period the observed value is asserted as being true. For biological subjects - e.g. human patients - this is usually called the &quot;physiologically relevant time&quot;. This is usually either the time of the procedure or of specimen collection, but very often the source of the date/time is not known, only the date/time itself.</xs:documentation>
</xs:annotation>
<xs:element name="effectiveDateTime" type="dateTime"/>
<xs:element name="effectivePeriod" type="Period"/>
<xs:element name="effectiveTiming" type="Timing"/>
<xs:element name="effectiveInstant" type="instant"/>
</xs:choice>
<xs:element name="issued" minOccurs="0" maxOccurs="1" type="instant">
<xs:annotation>
<xs:documentation xml:lang="en">The date and time this version of the observation was made available to providers, typically after the results have been reviewed and verified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performer" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Who was responsible for asserting the observed value as &quot;true&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The information determined as a result of making the observation, if the information has a simple value.</xs:documentation>
</xs:annotation>
<xs:element name="valueQuantity" type="Quantity"/>
<xs:element name="valueCodeableConcept" type="CodeableConcept"/>
<xs:element name="valueString" type="string"/>
<xs:element name="valueBoolean" type="boolean"/>
<xs:element name="valueInteger" type="integer"/>
<xs:element name="valueRange" type="Range"/>
<xs:element name="valueRatio" type="Ratio"/>
<xs:element name="valueSampledData" type="SampledData"/>
<xs:element name="valueTime" type="time"/>
<xs:element name="valueDateTime" type="dateTime"/>
<xs:element name="valuePeriod" type="Period"/>
</xs:choice>
<xs:element name="dataAbsentReason" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Provides a reason why the expected value in the element Observation.value[x] is missing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="interpretation" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A categorical assessment of an observation value. For example, high, low, normal.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Comments about the observation or the results.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="bodySite" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the site on the subject's body where the observation was made (i.e. the target site).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="method" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the mechanism used to perform the observation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specimen" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The specimen that was used when this observation was made.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="device" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The device used to generate the observation data.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referenceRange" type="Observation.ReferenceRange" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Guidance on how to interpret the value by comparison to a normal or recommended range. Multiple reference ranges are interpreted as an &quot;OR&quot;. In other words, to represent two distinct target populations, two `referenceRange` elements would be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="hasMember" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">This observation is a group observation (e.g. a battery, a panel of tests, a set of vital sign measurements) that includes the target as a member of the group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="derivedFrom" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The target resource that represents a measurement from which this observation value is derived. For example, a calculated anion gap or a fetal measurement based on an ultrasound image.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="component" type="Observation.Component" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Some observations have multiple component observations. These component observations are expressed as separate code value pairs that share the same attributes. Examples include systolic and diastolic component observations for blood pressure measurement and multiple component observations for genetics observations.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Observation.ReferenceRange">
<xs:annotation>
<xs:documentation xml:lang="en">Measurements and simple assertions made about a patient, device or other subject.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="low" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The value of the low bound of the reference range. The low bound of the reference range endpoint is inclusive of the value (e.g. reference range is &gt;=5 - &lt;=9). If the low bound is omitted, it is assumed to be meaningless (e.g. reference range is &lt;=2.3).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="high" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The value of the high bound of the reference range. The high bound of the reference range endpoint is inclusive of the value (e.g. reference range is &gt;=5 - &lt;=9). If the high bound is omitted, it is assumed to be meaningless (e.g. reference range is &gt;= 2.3).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Codes to indicate the what part of the targeted reference population it applies to. For example, the normal or therapeutic range.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="appliesTo" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Codes to indicate the target population this reference range applies to. For example, a reference range may be based on the normal population or a particular sex or race. Multiple `appliesTo` are interpreted as an &quot;AND&quot; of the target populations. For example, to represent a target population of African American females, both a code of female and a code for African American would be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="age" minOccurs="0" maxOccurs="1" type="Range">
<xs:annotation>
<xs:documentation xml:lang="en">The age at which this reference range is applicable. This is a neonatal age (e.g. number of weeks at term) if the meaning says so.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="text" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Text based reference range in an observation which may be used when a quantitative range is not appropriate for an observation. An example would be a reference value of &quot;Negative&quot; or a list or table of &quot;normals&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Observation.Component">
<xs:annotation>
<xs:documentation xml:lang="en">Measurements and simple assertions made about a patient, device or other subject.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes what was observed. Sometimes this is called the observation &quot;code&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The information determined as a result of making the observation, if the information has a simple value.</xs:documentation>
</xs:annotation>
<xs:element name="valueQuantity" type="Quantity"/>
<xs:element name="valueCodeableConcept" type="CodeableConcept"/>
<xs:element name="valueString" type="string"/>
<xs:element name="valueBoolean" type="boolean"/>
<xs:element name="valueInteger" type="integer"/>
<xs:element name="valueRange" type="Range"/>
<xs:element name="valueRatio" type="Ratio"/>
<xs:element name="valueSampledData" type="SampledData"/>
<xs:element name="valueTime" type="time"/>
<xs:element name="valueDateTime" type="dateTime"/>
<xs:element name="valuePeriod" type="Period"/>
</xs:choice>
<xs:element name="dataAbsentReason" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Provides a reason why the expected value in the element Observation.component.value[x] is missing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="interpretation" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A categorical assessment of an observation value. For example, high, low, normal.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referenceRange" type="Observation.ReferenceRange" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Guidance on how to interpret the value by comparison to a normal or recommended range.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="ObservationDefinition" type="ObservationDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">Set of definitional characteristics for a kind of observation or measurement produced or consumed by an orderable health care service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ObservationDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">Set of definitional characteristics for a kind of observation or measurement produced or consumed by an orderable health care service.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="category" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code that classifies the general type of observation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes what will be observed. Sometimes this is called the observation &quot;name&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A unique identifier assigned to this ObservationDefinition artifact.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="permittedDataType" minOccurs="0" maxOccurs="unbounded" type="ObservationDataType">
<xs:annotation>
<xs:documentation xml:lang="en">The data types allowed for the value element of the instance observations conforming to this ObservationDefinition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="multipleResultsAllowed" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Multiple results allowed for observations conforming to this ObservationDefinition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="method" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The method or technique used to perform the observation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="preferredReportName" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The preferred name to be used when reporting the results of observations conforming to this ObservationDefinition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantitativeDetails" type="ObservationDefinition.QuantitativeDetails" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Characteristics for quantitative results of this observation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="qualifiedInterval" type="ObservationDefinition.QualifiedInterval" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Multiple ranges of results qualified by different contexts for ordinal or continuous observations conforming to this ObservationDefinition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="validCodedValueSet" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The set of valid coded results for the observations conforming to this ObservationDefinition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="normalCodedValueSet" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The set of normal coded results for the observations conforming to this ObservationDefinition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="abnormalCodedValueSet" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The set of abnormal coded results for the observation conforming to this ObservationDefinition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="criticalCodedValueSet" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The set of critical coded results for the observation conforming to this ObservationDefinition.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ObservationDefinition.QuantitativeDetails">
<xs:annotation>
<xs:documentation xml:lang="en">Set of definitional characteristics for a kind of observation or measurement produced or consumed by an orderable health care service.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="customaryUnit" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Customary unit used to report quantitative results of observations conforming to this ObservationDefinition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unit" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">SI unit used to report quantitative results of observations conforming to this ObservationDefinition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="conversionFactor" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Factor for converting value expressed with SI unit to value expressed with customary unit.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="decimalPrecision" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Number of digits after decimal separator when the results of such observations are of type Quantity.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ObservationDefinition.QualifiedInterval">
<xs:annotation>
<xs:documentation xml:lang="en">Set of definitional characteristics for a kind of observation or measurement produced or consumed by an orderable health care service.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="category" minOccurs="0" maxOccurs="1" type="ObservationRangeCategory">
<xs:annotation>
<xs:documentation xml:lang="en">The category of interval of values for continuous or ordinal observations conforming to this ObservationDefinition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="range" minOccurs="0" maxOccurs="1" type="Range">
<xs:annotation>
<xs:documentation xml:lang="en">The low and high values determining the interval. There may be only one of the two.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="context" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Codes to indicate the health context the range applies to. For example, the normal or therapeutic range.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="appliesTo" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Codes to indicate the target population this reference range applies to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="gender" minOccurs="0" maxOccurs="1" type="AdministrativeGender">
<xs:annotation>
<xs:documentation xml:lang="en">Sex of the population the range applies to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="age" minOccurs="0" maxOccurs="1" type="Range">
<xs:annotation>
<xs:documentation xml:lang="en">The age at which this reference range is applicable. This is a neonatal age (e.g. number of weeks at term) if the meaning says so.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="gestationalAge" minOccurs="0" maxOccurs="1" type="Range">
<xs:annotation>
<xs:documentation xml:lang="en">The gestational age to which this reference range is applicable, in the context of pregnancy.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="condition" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Text based condition for which the reference range is valid.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ObservationDataType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">Quantity</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">CodeableConcept</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="string">
<xs:annotation>
<xs:documentation xml:lang="en">string</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">boolean</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="integer">
<xs:annotation>
<xs:documentation xml:lang="en">integer</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Range">
<xs:annotation>
<xs:documentation xml:lang="en">Range</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Ratio">
<xs:annotation>
<xs:documentation xml:lang="en">Ratio</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="SampledData">
<xs:annotation>
<xs:documentation xml:lang="en">SampledData</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="time">
<xs:annotation>
<xs:documentation xml:lang="en">time</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">dateTime</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Period">
<xs:annotation>
<xs:documentation xml:lang="en">Period</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ObservationDataType">
<xs:annotation>
<xs:documentation xml:lang="en">Permitted data type for observation value.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ObservationDataType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ObservationRangeCategory-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="reference">
<xs:annotation>
<xs:documentation xml:lang="en">reference range</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="critical">
<xs:annotation>
<xs:documentation xml:lang="en">critical range</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="absolute">
<xs:annotation>
<xs:documentation xml:lang="en">absolute range</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ObservationRangeCategory">
<xs:annotation>
<xs:documentation xml:lang="en">Codes identifying the category of observation range.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ObservationRangeCategory-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="OperationDefinition" type="OperationDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">A formal computable definition of an operation (on the RESTful interface) or a named query (using the search interaction).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="OperationDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">A formal computable definition of an operation (on the RESTful interface) or a named query (using the search interaction).</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this operation definition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this operation definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the operation definition is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the operation definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the operation definition author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the operation definition. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the operation definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this operation definition. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="kind" minOccurs="1" maxOccurs="1" type="OperationKind">
<xs:annotation>
<xs:documentation xml:lang="en">Whether this is an operation or a named query.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this operation definition is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the operation definition was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the operation definition changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the operation definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the operation definition from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate operation definition instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the operation definition is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Explanation of why this operation definition is needed and why it has been designed as it has.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="affectsState" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the operation affects state. Side effects such as producing audit trail entries do not count as 'affecting state'.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The name used to invoke the operation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comment" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Additional information about how to use this operation or named query.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="base" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates that this operation definition is a constraining profile on the base.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="resource" minOccurs="0" maxOccurs="unbounded" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The types on which this operation can be executed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="system" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether this operation or named query can be invoked at the system level (e.g. without needing to choose a resource type for the context).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether this operation or named query can be invoked at the resource type level for any given resource type level (e.g. without needing to choose a specific resource id for the context).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instance" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether this operation can be invoked on a particular instance of one of the given types.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="inputProfile" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">Additional validation information for the in parameters - a single profile that covers all the parameters. The profile is a constraint on the parameters resource as a whole.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="outputProfile" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">Additional validation information for the out parameters - a single profile that covers all the parameters. The profile is a constraint on the parameters resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="parameter" type="OperationDefinition.Parameter" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The parameters for the operation/query.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="overload" type="OperationDefinition.Overload" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Defines an appropriate combination of parameters to use when invoking this operation, to help code generators when generating overloaded parameter sets for this operation.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="OperationDefinition.Parameter">
<xs:annotation>
<xs:documentation xml:lang="en">A formal computable definition of an operation (on the RESTful interface) or a named query (using the search interaction).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The name of used to identify the parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="use" minOccurs="1" maxOccurs="1" type="OperationParameterUse">
<xs:annotation>
<xs:documentation xml:lang="en">Whether this is an input or an output parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="min" minOccurs="1" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">The minimum number of times this parameter SHALL appear in the request or response.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="max" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The maximum number of times this element is permitted to appear in the request or response.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="documentation" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the meaning or use of this parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The type for this parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="targetProfile" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">Used when the type is &quot;Reference&quot; or &quot;canonical&quot;, and identifies a profile structure or implementation Guide that applies to the target of the reference this parameter refers to. If any profiles are specified, then the content must conform to at least one of them. The URL can be a local reference - to a contained StructureDefinition, or a reference to another StructureDefinition or Implementation Guide by a canonical URL. When an implementation guide is specified, the target resource SHALL conform to at least one profile defined in the implementation guide.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="searchType" minOccurs="0" maxOccurs="1" type="SearchParamType">
<xs:annotation>
<xs:documentation xml:lang="en">How the parameter is understood as a search parameter. This is only used if the parameter type is 'string'.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="binding" type="OperationDefinition.Binding" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Binds to a value set if this parameter is coded (code, Coding, CodeableConcept).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referencedFrom" type="OperationDefinition.ReferencedFrom" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies other resource parameters within the operation invocation that are expected to resolve to this resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="part" type="OperationDefinition.Parameter" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The parts of a nested Parameter.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="OperationDefinition.Binding">
<xs:annotation>
<xs:documentation xml:lang="en">A formal computable definition of an operation (on the RESTful interface) or a named query (using the search interaction).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="strength" minOccurs="1" maxOccurs="1" type="BindingStrength">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the degree of conformance expectations associated with this binding - that is, the degree to which the provided value set must be adhered to in the instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="valueSet" minOccurs="1" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">Points to the value set or external definition (e.g. implicit value set) that identifies the set of codes to be used.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="OperationDefinition.ReferencedFrom">
<xs:annotation>
<xs:documentation xml:lang="en">A formal computable definition of an operation (on the RESTful interface) or a named query (using the search interaction).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="source" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the parameter or dot-separated path of parameter names pointing to the resource parameter that is expected to contain a reference to this resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sourceId" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The id of the element in the referencing resource that is expected to resolve to this resource.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="OperationDefinition.Overload">
<xs:annotation>
<xs:documentation xml:lang="en">A formal computable definition of an operation (on the RESTful interface) or a named query (using the search interaction).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="parameterName" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Name of parameter to include in overload.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comment" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Comments to go on overload.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="OperationParameterUse-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="in">
<xs:annotation>
<xs:documentation xml:lang="en">In</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="out">
<xs:annotation>
<xs:documentation xml:lang="en">Out</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="OperationParameterUse">
<xs:annotation>
<xs:documentation xml:lang="en">Whether an operation parameter is an input or an output parameter.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="OperationParameterUse-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="OperationKind-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="operation">
<xs:annotation>
<xs:documentation xml:lang="en">Operation</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="query">
<xs:annotation>
<xs:documentation xml:lang="en">Query</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="OperationKind">
<xs:annotation>
<xs:documentation xml:lang="en">Whether an operation is a normal operation or a query.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="OperationKind-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="OperationOutcome" type="OperationOutcome">
<xs:annotation>
<xs:documentation xml:lang="en">A collection of error, warning, or information messages that result from a system action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="OperationOutcome">
<xs:annotation>
<xs:documentation xml:lang="en">A collection of error, warning, or information messages that result from a system action.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="issue" type="OperationOutcome.Issue" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">An error, warning, or information message that results from a system action.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="OperationOutcome.Issue">
<xs:annotation>
<xs:documentation xml:lang="en">A collection of error, warning, or information messages that result from a system action.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="severity" minOccurs="1" maxOccurs="1" type="IssueSeverity">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether the issue indicates a variation from successful processing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="IssueType">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the type of the issue. The system that creates an OperationOutcome SHALL choose the most applicable code from the IssueType value set, and may additional provide its own code for the error in the details element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="details" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Additional details about the error. This may be a text description of the error or a system code that identifies the error.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="diagnostics" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Additional diagnostic information about the issue.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="location" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">This element is deprecated because it is XML specific. It is replaced by issue.expression, which is format independent, and simpler to parse.
For resource issues, this will be a simple XPath limited to element names, repetition indicators and the default child accessor that identifies one of the elements in the resource that caused this issue to be raised. For HTTP errors, will be &quot;http.&quot; + the parameter name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expression" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A [simple subset of FHIRPath](fhirpath.html#simple) limited to element names, repetition indicators and the default child accessor that identifies one of the elements in the resource that caused this issue to be raised.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="IssueType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="invalid">
<xs:annotation>
<xs:documentation xml:lang="en">Invalid Content</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="structure">
<xs:annotation>
<xs:documentation xml:lang="en">Structural Issue</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="required">
<xs:annotation>
<xs:documentation xml:lang="en">Required element missing</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="value">
<xs:annotation>
<xs:documentation xml:lang="en">Element value invalid</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="invariant">
<xs:annotation>
<xs:documentation xml:lang="en">Validation rule failed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="security">
<xs:annotation>
<xs:documentation xml:lang="en">Security Problem</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="login">
<xs:annotation>
<xs:documentation xml:lang="en">Login Required</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unknown">
<xs:annotation>
<xs:documentation xml:lang="en">Unknown User</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="expired">
<xs:annotation>
<xs:documentation xml:lang="en">Session Expired</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="forbidden">
<xs:annotation>
<xs:documentation xml:lang="en">Forbidden</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="suppressed">
<xs:annotation>
<xs:documentation xml:lang="en">Information Suppressed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="processing">
<xs:annotation>
<xs:documentation xml:lang="en">Processing Failure</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="not-supported">
<xs:annotation>
<xs:documentation xml:lang="en">Content not supported</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="duplicate">
<xs:annotation>
<xs:documentation xml:lang="en">Duplicate</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="multiple-matches">
<xs:annotation>
<xs:documentation xml:lang="en">Multiple Matches</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="not-found">
<xs:annotation>
<xs:documentation xml:lang="en">Not Found</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="deleted">
<xs:annotation>
<xs:documentation xml:lang="en">Deleted</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="too-long">
<xs:annotation>
<xs:documentation xml:lang="en">Content Too Long</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="code-invalid">
<xs:annotation>
<xs:documentation xml:lang="en">Invalid Code</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="extension">
<xs:annotation>
<xs:documentation xml:lang="en">Unacceptable Extension</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="too-costly">
<xs:annotation>
<xs:documentation xml:lang="en">Operation Too Costly</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="business-rule">
<xs:annotation>
<xs:documentation xml:lang="en">Business Rule Violation</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="conflict">
<xs:annotation>
<xs:documentation xml:lang="en">Edit Version Conflict</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="transient">
<xs:annotation>
<xs:documentation xml:lang="en">Transient Issue</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="lock-error">
<xs:annotation>
<xs:documentation xml:lang="en">Lock Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="no-store">
<xs:annotation>
<xs:documentation xml:lang="en">No Store Available</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="exception">
<xs:annotation>
<xs:documentation xml:lang="en">Exception</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="timeout">
<xs:annotation>
<xs:documentation xml:lang="en">Timeout</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="incomplete">
<xs:annotation>
<xs:documentation xml:lang="en">Incomplete Results</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="throttled">
<xs:annotation>
<xs:documentation xml:lang="en">Throttled</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="informational">
<xs:annotation>
<xs:documentation xml:lang="en">Informational Note</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="IssueType">
<xs:annotation>
<xs:documentation xml:lang="en">A code that describes the type of issue.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="IssueType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="IssueSeverity-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="fatal">
<xs:annotation>
<xs:documentation xml:lang="en">Fatal</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="error">
<xs:annotation>
<xs:documentation xml:lang="en">Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="warning">
<xs:annotation>
<xs:documentation xml:lang="en">Warning</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="information">
<xs:annotation>
<xs:documentation xml:lang="en">Information</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="IssueSeverity">
<xs:annotation>
<xs:documentation xml:lang="en">How the issue affects the success of the action.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="IssueSeverity-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Organization" type="Organization">
<xs:annotation>
<xs:documentation xml:lang="en">A formally or informally recognized grouping of people or organizations formed for the purpose of achieving some form of collective action. Includes companies, institutions, corporations, departments, community groups, healthcare practice groups, payer/insurer, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Organization">
<xs:annotation>
<xs:documentation xml:lang="en">A formally or informally recognized grouping of people or organizations formed for the purpose of achieving some form of collective action. Includes companies, institutions, corporations, departments, community groups, healthcare practice groups, payer/insurer, etc.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier for the organization that is used to identify the organization across multiple disparate systems.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="active" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the organization's record is still in active use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The kind(s) of organization that this is.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A name associated with the organization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="alias" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A list of alternate names that the organization is known as, or was known as in the past.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="telecom" minOccurs="0" maxOccurs="unbounded" type="ContactPoint">
<xs:annotation>
<xs:documentation xml:lang="en">A contact detail for the organization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="address" minOccurs="0" maxOccurs="unbounded" type="Address">
<xs:annotation>
<xs:documentation xml:lang="en">An address for the organization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partOf" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The organization of which this organization forms a part.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" type="Organization.Contact" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Contact for the organization for a certain purpose.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endpoint" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Technical endpoints providing access to services operated for the organization.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Organization.Contact">
<xs:annotation>
<xs:documentation xml:lang="en">A formally or informally recognized grouping of people or organizations formed for the purpose of achieving some form of collective action. Includes companies, institutions, corporations, departments, community groups, healthcare practice groups, payer/insurer, etc.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates a purpose for which the contact can be reached.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="HumanName">
<xs:annotation>
<xs:documentation xml:lang="en">A name associated with the contact.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="telecom" minOccurs="0" maxOccurs="unbounded" type="ContactPoint">
<xs:annotation>
<xs:documentation xml:lang="en">A contact detail (e.g. a telephone number or an email address) by which the party may be contacted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="address" minOccurs="0" maxOccurs="1" type="Address">
<xs:annotation>
<xs:documentation xml:lang="en">Visiting or postal addresses for the contact.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="OrganizationAffiliation" type="OrganizationAffiliation">
<xs:annotation>
<xs:documentation xml:lang="en">Defines an affiliation/assotiation/relationship between 2 distinct oganizations, that is not a part-of relationship/sub-division relationship.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="OrganizationAffiliation">
<xs:annotation>
<xs:documentation xml:lang="en">Defines an affiliation/assotiation/relationship between 2 distinct oganizations, that is not a part-of relationship/sub-division relationship.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business identifiers that are specific to this role.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="active" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether this organization affiliation record is in active use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period during which the participatingOrganization is affiliated with the primary organization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="organization" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Organization where the role is available (primary organization/has members).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="participatingOrganization" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The Participating Organization provides/performs the role(s) defined by the code to the Primary Organization (e.g. providing services or is a member of).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="network" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Health insurance provider network in which the participatingOrganization provides the role's services (if defined) at the indicated locations (if defined).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Definition of the role the participatingOrganization plays in the association.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specialty" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Specific specialty of the participatingOrganization in the context of the role.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="location" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The location(s) at which the role occurs.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="healthcareService" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Healthcare services provided through the role.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="telecom" minOccurs="0" maxOccurs="unbounded" type="ContactPoint">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details at the participatingOrganization relevant to this Affiliation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endpoint" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Technical endpoints providing access to services operated for this role.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Parameters" type="Parameters">
<xs:annotation>
<xs:documentation xml:lang="en">This resource is a non-persisted resource used to pass information into and back from an [operation](operations.html). It has no other use, and there is no RESTful endpoint associated with it.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Parameters">
<xs:annotation>
<xs:documentation xml:lang="en">This resource is a non-persisted resource used to pass information into and back from an [operation](operations.html). It has no other use, and there is no RESTful endpoint associated with it.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Resource">
<xs:sequence>
<xs:element name="parameter" type="Parameters.Parameter" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A parameter passed to or received from the operation.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Parameters.Parameter">
<xs:annotation>
<xs:documentation xml:lang="en">This resource is a non-persisted resource used to pass information into and back from an [operation](operations.html). It has no other use, and there is no RESTful endpoint associated with it.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the parameter (reference to the operation definition).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">If the parameter is a data type.</xs:documentation>
</xs:annotation>
<xs:element name="valueBase64Binary" type="base64Binary"/>
<xs:element name="valueBoolean" type="boolean"/>
<xs:element name="valueCanonical" type="canonical"/>
<xs:element name="valueCode" type="code"/>
<xs:element name="valueDate" type="date"/>
<xs:element name="valueDateTime" type="dateTime"/>
<xs:element name="valueDecimal" type="decimal"/>
<xs:element name="valueId" type="id"/>
<xs:element name="valueInstant" type="instant"/>
<xs:element name="valueInteger" type="integer"/>
<xs:element name="valueMarkdown" type="markdown"/>
<xs:element name="valueOid" type="oid"/>
<xs:element name="valuePositiveInt" type="positiveInt"/>
<xs:element name="valueString" type="string"/>
<xs:element name="valueTime" type="time"/>
<xs:element name="valueUnsignedInt" type="unsignedInt"/>
<xs:element name="valueUri" type="uri"/>
<xs:element name="valueUrl" type="url"/>
<xs:element name="valueUuid" type="uuid"/>
<xs:element name="valueAddress" type="Address"/>
<xs:element name="valueAge" type="Age"/>
<xs:element name="valueAnnotation" type="Annotation"/>
<xs:element name="valueAttachment" type="Attachment"/>
<xs:element name="valueCodeableConcept" type="CodeableConcept"/>
<xs:element name="valueCoding" type="Coding"/>
<xs:element name="valueContactPoint" type="ContactPoint"/>
<xs:element name="valueCount" type="Count"/>
<xs:element name="valueDistance" type="Distance"/>
<xs:element name="valueDuration" type="Duration"/>
<xs:element name="valueHumanName" type="HumanName"/>
<xs:element name="valueIdentifier" type="Identifier"/>
<xs:element name="valueMoney" type="Money"/>
<xs:element name="valuePeriod" type="Period"/>
<xs:element name="valueQuantity" type="Quantity"/>
<xs:element name="valueRange" type="Range"/>
<xs:element name="valueRatio" type="Ratio"/>
<xs:element name="valueReference" type="Reference"/>
<xs:element name="valueSampledData" type="SampledData"/>
<xs:element name="valueSignature" type="Signature"/>
<xs:element name="valueTiming" type="Timing"/>
<xs:element name="valueContactDetail" type="ContactDetail"/>
<xs:element name="valueContributor" type="Contributor"/>
<xs:element name="valueDataRequirement" type="DataRequirement"/>
<xs:element name="valueExpression" type="Expression"/>
<xs:element name="valueParameterDefinition" type="ParameterDefinition"/>
<xs:element name="valueRelatedArtifact" type="RelatedArtifact"/>
<xs:element name="valueTriggerDefinition" type="TriggerDefinition"/>
<xs:element name="valueUsageContext" type="UsageContext"/>
<xs:element name="valueDosage" type="Dosage"/>
<xs:element name="valueMeta" type="Meta"/>
</xs:choice>
<xs:element name="resource" minOccurs="0" maxOccurs="1" type="ResourceContainer">
<xs:annotation>
<xs:documentation xml:lang="en">If the parameter is a whole resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="part" type="Parameters.Parameter" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A named part of a multi-part parameter.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Patient" type="Patient">
<xs:annotation>
<xs:documentation xml:lang="en">Demographics and other administrative information about an individual or animal receiving care or other health-related services.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Patient">
<xs:annotation>
<xs:documentation xml:lang="en">Demographics and other administrative information about an individual or animal receiving care or other health-related services.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">An identifier for this patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="active" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether this patient record is in active use.
Many systems use this property to mark as non-current patients, such as those that have not been seen for a period of time based on an organization's business rules.
It is often used to filter patient lists to exclude inactive patients
Deceased patients may also be marked as inactive for the same reasons, but may be active for some time after death.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="unbounded" type="HumanName">
<xs:annotation>
<xs:documentation xml:lang="en">A name associated with the individual.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="telecom" minOccurs="0" maxOccurs="unbounded" type="ContactPoint">
<xs:annotation>
<xs:documentation xml:lang="en">A contact detail (e.g. a telephone number or an email address) by which the individual may be contacted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="gender" minOccurs="0" maxOccurs="1" type="AdministrativeGender">
<xs:annotation>
<xs:documentation xml:lang="en">Administrative Gender - the gender that the patient is considered to have for administration and record keeping purposes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="birthDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date of birth for the individual.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Indicates if the individual is deceased or not.</xs:documentation>
</xs:annotation>
<xs:element name="deceasedBoolean" type="boolean"/>
<xs:element name="deceasedDateTime" type="dateTime"/>
</xs:choice>
<xs:element name="address" minOccurs="0" maxOccurs="unbounded" type="Address">
<xs:annotation>
<xs:documentation xml:lang="en">An address for the individual.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="maritalStatus" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">This field contains a patient's most recent marital (civil) status.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether the patient is part of a multiple (boolean) or indicates the actual birth order (integer).</xs:documentation>
</xs:annotation>
<xs:element name="multipleBirthBoolean" type="boolean"/>
<xs:element name="multipleBirthInteger" type="integer"/>
</xs:choice>
<xs:element name="photo" minOccurs="0" maxOccurs="unbounded" type="Attachment">
<xs:annotation>
<xs:documentation xml:lang="en">Image of the patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" type="Patient.Contact" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A contact party (e.g. guardian, partner, friend) for the patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="communication" type="Patient.Communication" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A language which may be used to communicate with the patient about his or her health.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="generalPractitioner" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Patient's nominated care provider.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="managingOrganization" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Organization that is the custodian of the patient record.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="link" type="Patient.Link" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Link to another patient resource that concerns the same actual patient.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Patient.Contact">
<xs:annotation>
<xs:documentation xml:lang="en">Demographics and other administrative information about an individual or animal receiving care or other health-related services.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="relationship" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The nature of the relationship between the patient and the contact person.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="HumanName">
<xs:annotation>
<xs:documentation xml:lang="en">A name associated with the contact person.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="telecom" minOccurs="0" maxOccurs="unbounded" type="ContactPoint">
<xs:annotation>
<xs:documentation xml:lang="en">A contact detail for the person, e.g. a telephone number or an email address.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="address" minOccurs="0" maxOccurs="1" type="Address">
<xs:annotation>
<xs:documentation xml:lang="en">Address for the contact person.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="gender" minOccurs="0" maxOccurs="1" type="AdministrativeGender">
<xs:annotation>
<xs:documentation xml:lang="en">Administrative Gender - the gender that the contact person is considered to have for administration and record keeping purposes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="organization" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Organization on behalf of which the contact is acting or for which the contact is working.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period during which this contact person or organization is valid to be contacted relating to this patient.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Patient.Communication">
<xs:annotation>
<xs:documentation xml:lang="en">Demographics and other administrative information about an individual or animal receiving care or other health-related services.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="language" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The ISO-639-1 alpha 2 code in lower case for the language, optionally followed by a hyphen and the ISO-3166-1 alpha 2 code for the region in upper case; e.g. &quot;en&quot; for English, or &quot;en-US&quot; for American English versus &quot;en-EN&quot; for England English.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="preferred" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether or not the patient prefers this language (over other languages he masters up a certain level).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Patient.Link">
<xs:annotation>
<xs:documentation xml:lang="en">Demographics and other administrative information about an individual or animal receiving care or other health-related services.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="other" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The other patient resource that the link refers to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="LinkType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of link between this patient resource and another patient resource.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="LinkType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="replaced-by">
<xs:annotation>
<xs:documentation xml:lang="en">Replaced-by</xs:documentation>
<xs:documentation xml:lang="nl">Vervangen door</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="replaces">
<xs:annotation>
<xs:documentation xml:lang="en">Replaces</xs:documentation>
<xs:documentation xml:lang="nl">Vervangt</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="refer">
<xs:annotation>
<xs:documentation xml:lang="en">Refer</xs:documentation>
<xs:documentation xml:lang="nl">Verwijzing</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="seealso">
<xs:annotation>
<xs:documentation xml:lang="en">See also</xs:documentation>
<xs:documentation xml:lang="nl">Zie ook</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="LinkType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of link between this patient resource and another patient resource.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="LinkType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="PaymentNotice" type="PaymentNotice">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the status of the payment for goods and services rendered, and the request and response resource references.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="PaymentNotice">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the status of the payment for goods and services rendered, and the request and response resource references.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A unique identifier assigned to this payment notice.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="FinancialResourceStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the resource instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="request" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference of resource for which payment is being made.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="response" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference of response to resource for which payment is being made.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="created" minOccurs="1" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date when this resource was created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="provider" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The practitioner who is responsible for the services rendered to the patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="payment" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to the payment which is the subject of this notice.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="paymentDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date when the above payment action occurred.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="payee" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The party who will receive or has received payment that is the subject of this notification.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="recipient" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The party who is notified of the payment status.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="amount" minOccurs="1" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">The amount sent to the payee.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="paymentStatus" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code indicating whether payment has been sent or cleared.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="PaymentReconciliation" type="PaymentReconciliation">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the details including amount of a payment and allocates the payment items being paid.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="PaymentReconciliation">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the details including amount of a payment and allocates the payment items being paid.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A unique identifier assigned to this payment reconciliation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="FinancialResourceStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the resource instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period of time for which payments have been gathered into this bulk payment for settlement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="created" minOccurs="1" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date when the resource was created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="paymentIssuer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The party who generated the payment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="request" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Original request resource reference.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requestor" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The practitioner who is responsible for the services rendered to the patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="outcome" minOccurs="0" maxOccurs="1" type="RemittanceOutcome">
<xs:annotation>
<xs:documentation xml:lang="en">The outcome of a request for a reconciliation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="disposition" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A human readable description of the status of the request for the reconciliation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="paymentDate" minOccurs="1" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date of payment as indicated on the financial instrument.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="paymentAmount" minOccurs="1" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">Total payment amount as indicated on the financial instrument.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="paymentIdentifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Issuer's unique identifier for the payment instrument.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detail" type="PaymentReconciliation.Detail" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Distribution of the payment amount for a previously acknowledged payable.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="formCode" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code for the form to be used for printing the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="processNote" type="PaymentReconciliation.ProcessNote" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A note that describes or explains the processing in a human readable form.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="PaymentReconciliation.Detail">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the details including amount of a payment and allocates the payment items being paid.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Unique identifier for the current payment item for the referenced payable.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="predecessor" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Unique identifier for the prior payment item for the referenced payable.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Code to indicate the nature of the payment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="request" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A resource, such as a Claim, the evaluation of which could lead to payment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="submitter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The party which submitted the claim or financial transaction.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="response" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A resource, such as a ClaimResponse, which contains a commitment to payment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date from the response resource containing a commitment to pay.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="responsible" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to the individual who is responsible for inquiries regarding the response and its payment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="payee" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The party which is receiving the payment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="amount" minOccurs="0" maxOccurs="1" type="Money">
<xs:annotation>
<xs:documentation xml:lang="en">The monetary amount allocated from the total payment to the payable.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="PaymentReconciliation.ProcessNote">
<xs:annotation>
<xs:documentation xml:lang="en">This resource provides the details including amount of a payment and allocates the payment items being paid.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="NoteType">
<xs:annotation>
<xs:documentation xml:lang="en">The business purpose of the note text.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="text" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The explanation or description associated with the processing.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Person" type="Person">
<xs:annotation>
<xs:documentation xml:lang="en">Demographics and administrative information about a person independent of a specific health-related context.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Person">
<xs:annotation>
<xs:documentation xml:lang="en">Demographics and administrative information about a person independent of a specific health-related context.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier for a person within a particular scope.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="unbounded" type="HumanName">
<xs:annotation>
<xs:documentation xml:lang="en">A name associated with the person.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="telecom" minOccurs="0" maxOccurs="unbounded" type="ContactPoint">
<xs:annotation>
<xs:documentation xml:lang="en">A contact detail for the person, e.g. a telephone number or an email address.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="gender" minOccurs="0" maxOccurs="1" type="AdministrativeGender">
<xs:annotation>
<xs:documentation xml:lang="en">Administrative Gender.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="birthDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The birth date for the person.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="address" minOccurs="0" maxOccurs="unbounded" type="Address">
<xs:annotation>
<xs:documentation xml:lang="en">One or more addresses for the person.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="photo" minOccurs="0" maxOccurs="1" type="Attachment">
<xs:annotation>
<xs:documentation xml:lang="en">An image that can be displayed as a thumbnail of the person to enhance the identification of the individual.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="managingOrganization" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The organization that is the custodian of the person record.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="active" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether this person's record is in active use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="link" type="Person.Link" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Link to a resource that concerns the same actual person.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Person.Link">
<xs:annotation>
<xs:documentation xml:lang="en">Demographics and administrative information about a person independent of a specific health-related context.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="target" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The resource to which this actual person is associated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="assurance" minOccurs="0" maxOccurs="1" type="IdentityAssuranceLevel">
<xs:annotation>
<xs:documentation xml:lang="en">Level of assurance that this link is associated with the target resource.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="IdentityAssuranceLevel-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="level1">
<xs:annotation>
<xs:documentation xml:lang="en">Level 1</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="level2">
<xs:annotation>
<xs:documentation xml:lang="en">Level 2</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="level3">
<xs:annotation>
<xs:documentation xml:lang="en">Level 3</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="level4">
<xs:annotation>
<xs:documentation xml:lang="en">Level 4</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="IdentityAssuranceLevel">
<xs:annotation>
<xs:documentation xml:lang="en">The level of confidence that this link represents the same actual person, based on NIST Authentication Levels.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="IdentityAssuranceLevel-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="PlanDefinition" type="PlanDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">This resource allows for the definition of various types of plans as a sharable, consumable, and executable artifact. The resource is general enough to support the description of a broad range of clinical artifacts such as clinical decision support rules, order sets and protocols.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="PlanDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">This resource allows for the definition of various types of plans as a sharable, consumable, and executable artifact. The resource is general enough to support the description of a broad range of clinical artifacts such as clinical decision support rules, order sets and protocols.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this plan definition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this plan definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the plan definition is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this plan definition when it is represented in other formats, or referenced in a specification, model, design or an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the plan definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the plan definition author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. To provide a version consistent with the Decision Support Service specification, use the format Major.Minor.Revision (e.g. 1.0.0). For more information on versioning knowledge assets, refer to the Decision Support Service specification. Note that a version is required for non-experimental active artifacts.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the plan definition. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the plan definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subtitle" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">An explanatory or alternate title for the plan definition giving additional information about its content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A high-level category for the plan definition that distinguishes the kinds of systems that would be interested in the plan definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this plan definition. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this plan definition is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">A code or group definition that describes the intended subject of the plan definition.</xs:documentation>
</xs:annotation>
<xs:element name="subjectCodeableConcept" type="CodeableConcept"/>
<xs:element name="subjectReference" type="Reference"/>
</xs:choice>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the plan definition was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the plan definition changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the plan definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the plan definition from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate plan definition instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the plan definition is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Explanation of why this plan definition is needed and why it has been designed as it has.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="usage" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A detailed description of how the plan definition is used from a clinical perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the plan definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the plan definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="approvalDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lastReviewDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="effectivePeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period during which the plan definition content was or is planned to be in active use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="topic" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Descriptive topics related to the content of the plan definition. Topics provide a high-level categorization of the definition that can be useful for filtering and searching.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individiual or organization primarily involved in the creation and maintenance of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="editor" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for internal coherence of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reviewer" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for review of some aspect of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endorser" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization responsible for officially endorsing the content for use in some setting.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relatedArtifact" minOccurs="0" maxOccurs="unbounded" type="RelatedArtifact">
<xs:annotation>
<xs:documentation xml:lang="en">Related artifacts such as additional documentation, justification, or bibliographic references.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="library" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a Library resource containing any formal logic used by the plan definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="goal" type="PlanDefinition.Goal" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Goals that describe what the activities within the plan are intended to achieve. For example, weight loss, restoring an activity of daily living, obtaining herd immunity via immunization, meeting a process improvement objective, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="action" type="PlanDefinition.Action" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">An action or group of actions to be taken as part of the plan.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="PlanDefinition.Goal">
<xs:annotation>
<xs:documentation xml:lang="en">This resource allows for the definition of various types of plans as a sharable, consumable, and executable artifact. The resource is general enough to support the description of a broad range of clinical artifacts such as clinical decision support rules, order sets and protocols.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="category" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates a category the goal falls within.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Human-readable and/or coded description of a specific desired objective of care, such as &quot;control blood pressure&quot; or &quot;negotiate an obstacle course&quot; or &quot;dance with child at wedding&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priority" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the expected level of importance associated with reaching/sustaining the defined goal.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="start" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The event after which the goal should begin being pursued.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="addresses" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies problems, conditions, issues, or concerns the goal is intended to address.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="documentation" minOccurs="0" maxOccurs="unbounded" type="RelatedArtifact">
<xs:annotation>
<xs:documentation xml:lang="en">Didactic or other informational resources associated with the goal that provide further supporting information about the goal. Information resources can include inline text commentary and links to web resources.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="target" type="PlanDefinition.Target" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates what should be done and within what timeframe.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="PlanDefinition.Target">
<xs:annotation>
<xs:documentation xml:lang="en">This resource allows for the definition of various types of plans as a sharable, consumable, and executable artifact. The resource is general enough to support the description of a broad range of clinical artifacts such as clinical decision support rules, order sets and protocols.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="measure" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The parameter whose value is to be tracked, e.g. body weight, blood pressure, or hemoglobin A1c level.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The target value of the measure to be achieved to signify fulfillment of the goal, e.g. 150 pounds or 7.0%. Either the high or low or both values of the range can be specified. When a low value is missing, it indicates that the goal is achieved at any value at or below the high value. Similarly, if the high value is missing, it indicates that the goal is achieved at any value at or above the low value.</xs:documentation>
</xs:annotation>
<xs:element name="detailQuantity" type="Quantity"/>
<xs:element name="detailRange" type="Range"/>
<xs:element name="detailCodeableConcept" type="CodeableConcept"/>
</xs:choice>
<xs:element name="due" minOccurs="0" maxOccurs="1" type="Duration">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the timeframe after the start of the goal in which the goal should be met.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="PlanDefinition.Action">
<xs:annotation>
<xs:documentation xml:lang="en">This resource allows for the definition of various types of plans as a sharable, consumable, and executable artifact. The resource is general enough to support the description of a broad range of clinical artifacts such as clinical decision support rules, order sets and protocols.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="prefix" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A user-visible prefix for the action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The title of the action displayed to a user.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A brief description of the action used to provide a summary to display to the user.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="textEquivalent" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A text equivalent of the action to be performed. This provides a human-interpretable description of the action when the definition is consumed by a system that might not be capable of interpreting it dynamically.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priority" minOccurs="0" maxOccurs="1" type="RequestPriority">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates how quickly the action should be addressed with respect to other actions.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code that provides meaning for the action or action group. For example, a section may have a LOINC code for the section of a documentation template.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reason" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A description of why this action is necessary or appropriate.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="documentation" minOccurs="0" maxOccurs="unbounded" type="RelatedArtifact">
<xs:annotation>
<xs:documentation xml:lang="en">Didactic or other informational resources associated with the action that can be provided to the CDS recipient. Information resources can include inline text commentary and links to web resources.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="goalId" minOccurs="0" maxOccurs="unbounded" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies goals that this action supports. The reference must be to a goal element defined within this plan definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">A code or group definition that describes the intended subject of the action and its children, if any.</xs:documentation>
</xs:annotation>
<xs:element name="subjectCodeableConcept" type="CodeableConcept"/>
<xs:element name="subjectReference" type="Reference"/>
</xs:choice>
<xs:element name="trigger" minOccurs="0" maxOccurs="unbounded" type="TriggerDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">A description of when the action should be triggered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="condition" type="PlanDefinition.Condition" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">An expression that describes applicability criteria or start/stop conditions for the action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="input" minOccurs="0" maxOccurs="unbounded" type="DataRequirement">
<xs:annotation>
<xs:documentation xml:lang="en">Defines input data requirements for the action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="output" minOccurs="0" maxOccurs="unbounded" type="DataRequirement">
<xs:annotation>
<xs:documentation xml:lang="en">Defines the outputs of the action, if any.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relatedAction" type="PlanDefinition.RelatedAction" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A relationship to another action such as &quot;before&quot; or &quot;30-60 minutes after start of&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">An optional value describing when the action should be performed.</xs:documentation>
</xs:annotation>
<xs:element name="timingDateTime" type="dateTime"/>
<xs:element name="timingAge" type="Age"/>
<xs:element name="timingPeriod" type="Period"/>
<xs:element name="timingDuration" type="Duration"/>
<xs:element name="timingRange" type="Range"/>
<xs:element name="timingTiming" type="Timing"/>
</xs:choice>
<xs:element name="participant" type="PlanDefinition.Participant" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates who should participate in performing the action described.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of action to perform (create, update, remove).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="groupingBehavior" minOccurs="0" maxOccurs="1" type="ActionGroupingBehavior">
<xs:annotation>
<xs:documentation xml:lang="en">Defines the grouping behavior for the action and its children.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="selectionBehavior" minOccurs="0" maxOccurs="1" type="ActionSelectionBehavior">
<xs:annotation>
<xs:documentation xml:lang="en">Defines the selection behavior for the action and its children.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requiredBehavior" minOccurs="0" maxOccurs="1" type="ActionRequiredBehavior">
<xs:annotation>
<xs:documentation xml:lang="en">Defines the required behavior for the action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="precheckBehavior" minOccurs="0" maxOccurs="1" type="ActionPrecheckBehavior">
<xs:annotation>
<xs:documentation xml:lang="en">Defines whether the action should usually be preselected.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="cardinalityBehavior" minOccurs="0" maxOccurs="1" type="ActionCardinalityBehavior">
<xs:annotation>
<xs:documentation xml:lang="en">Defines whether the action can be selected multiple times.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">A reference to an ActivityDefinition that describes the action to be taken in detail, or a PlanDefinition that describes a series of actions to be taken.</xs:documentation>
</xs:annotation>
<xs:element name="definitionCanonical" type="canonical"/>
<xs:element name="definitionUri" type="uri"/>
</xs:choice>
<xs:element name="transform" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a StructureMap resource that defines a transform that can be executed to produce the intent resource using the ActivityDefinition instance as the input.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dynamicValue" type="PlanDefinition.DynamicValue" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Customizations that should be applied to the statically defined resource. For example, if the dosage of a medication must be computed based on the patient's weight, a customization would be used to specify an expression that calculated the weight, and the path on the resource that would contain the result.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="action" type="PlanDefinition.Action" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Sub actions that are contained within the action. The behavior of this action determines the functionality of the sub-actions. For example, a selection behavior of at-most-one indicates that of the sub-actions, at most one may be chosen as part of realizing the action definition.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="PlanDefinition.Condition">
<xs:annotation>
<xs:documentation xml:lang="en">This resource allows for the definition of various types of plans as a sharable, consumable, and executable artifact. The resource is general enough to support the description of a broad range of clinical artifacts such as clinical decision support rules, order sets and protocols.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="kind" minOccurs="1" maxOccurs="1" type="ActionConditionKind">
<xs:annotation>
<xs:documentation xml:lang="en">The kind of condition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expression" minOccurs="0" maxOccurs="1" type="Expression">
<xs:annotation>
<xs:documentation xml:lang="en">An expression that returns true or false, indicating whether the condition is satisfied.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="PlanDefinition.RelatedAction">
<xs:annotation>
<xs:documentation xml:lang="en">This resource allows for the definition of various types of plans as a sharable, consumable, and executable artifact. The resource is general enough to support the description of a broad range of clinical artifacts such as clinical decision support rules, order sets and protocols.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="actionId" minOccurs="1" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">The element id of the related action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relationship" minOccurs="1" maxOccurs="1" type="ActionRelationshipType">
<xs:annotation>
<xs:documentation xml:lang="en">The relationship of this action to the related action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">A duration or range of durations to apply to the relationship. For example, 30-60 minutes before.</xs:documentation>
</xs:annotation>
<xs:element name="offsetDuration" type="Duration"/>
<xs:element name="offsetRange" type="Range"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="PlanDefinition.Participant">
<xs:annotation>
<xs:documentation xml:lang="en">This resource allows for the definition of various types of plans as a sharable, consumable, and executable artifact. The resource is general enough to support the description of a broad range of clinical artifacts such as clinical decision support rules, order sets and protocols.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="ActionParticipantType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of participant in the action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="role" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The role the participant should play in performing the described action.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="PlanDefinition.DynamicValue">
<xs:annotation>
<xs:documentation xml:lang="en">This resource allows for the definition of various types of plans as a sharable, consumable, and executable artifact. The resource is general enough to support the description of a broad range of clinical artifacts such as clinical decision support rules, order sets and protocols.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="path" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The path to the element to be customized. This is the path on the resource that will hold the result of the calculation defined by the expression. The specified path SHALL be a FHIRPath resolveable on the specified target type of the ActivityDefinition, and SHALL consist only of identifiers, constant indexers, and a restricted subset of functions. The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements (see the [Simple FHIRPath Profile](fhirpath.html#simple) for full details).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expression" minOccurs="0" maxOccurs="1" type="Expression">
<xs:annotation>
<xs:documentation xml:lang="en">An expression specifying the value of the customized element.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ActionRequiredBehavior-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="must">
<xs:annotation>
<xs:documentation xml:lang="en">Must</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="could">
<xs:annotation>
<xs:documentation xml:lang="en">Could</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="must-unless-documented">
<xs:annotation>
<xs:documentation xml:lang="en">Must Unless Documented</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ActionRequiredBehavior">
<xs:annotation>
<xs:documentation xml:lang="en">Defines expectations around whether an action or action group is required.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ActionRequiredBehavior-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ActionRelationshipType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="before-start">
<xs:annotation>
<xs:documentation xml:lang="en">Before Start</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="before">
<xs:annotation>
<xs:documentation xml:lang="en">Before</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="before-end">
<xs:annotation>
<xs:documentation xml:lang="en">Before End</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="concurrent-with-start">
<xs:annotation>
<xs:documentation xml:lang="en">Concurrent With Start</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="concurrent">
<xs:annotation>
<xs:documentation xml:lang="en">Concurrent</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="concurrent-with-end">
<xs:annotation>
<xs:documentation xml:lang="en">Concurrent With End</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="after-start">
<xs:annotation>
<xs:documentation xml:lang="en">After Start</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="after">
<xs:annotation>
<xs:documentation xml:lang="en">After</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="after-end">
<xs:annotation>
<xs:documentation xml:lang="en">After End</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ActionRelationshipType">
<xs:annotation>
<xs:documentation xml:lang="en">Defines the types of relationships between actions.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ActionRelationshipType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ActionGroupingBehavior-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="visual-group">
<xs:annotation>
<xs:documentation xml:lang="en">Visual Group</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="logical-group">
<xs:annotation>
<xs:documentation xml:lang="en">Logical Group</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="sentence-group">
<xs:annotation>
<xs:documentation xml:lang="en">Sentence Group</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ActionGroupingBehavior">
<xs:annotation>
<xs:documentation xml:lang="en">Defines organization behavior of a group.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ActionGroupingBehavior-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ActionSelectionBehavior-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="any">
<xs:annotation>
<xs:documentation xml:lang="en">Any</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="all">
<xs:annotation>
<xs:documentation xml:lang="en">All</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="all-or-none">
<xs:annotation>
<xs:documentation xml:lang="en">All Or None</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="exactly-one">
<xs:annotation>
<xs:documentation xml:lang="en">Exactly One</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="at-most-one">
<xs:annotation>
<xs:documentation xml:lang="en">At Most One</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="one-or-more">
<xs:annotation>
<xs:documentation xml:lang="en">One Or More</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ActionSelectionBehavior">
<xs:annotation>
<xs:documentation xml:lang="en">Defines selection behavior of a group.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ActionSelectionBehavior-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ActionCardinalityBehavior-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="single">
<xs:annotation>
<xs:documentation xml:lang="en">Single</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="multiple">
<xs:annotation>
<xs:documentation xml:lang="en">Multiple</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ActionCardinalityBehavior">
<xs:annotation>
<xs:documentation xml:lang="en">Defines behavior for an action or a group for how many times that item may be repeated.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ActionCardinalityBehavior-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ActionPrecheckBehavior-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="yes">
<xs:annotation>
<xs:documentation xml:lang="en">Yes</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="no">
<xs:annotation>
<xs:documentation xml:lang="en">No</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ActionPrecheckBehavior">
<xs:annotation>
<xs:documentation xml:lang="en">Defines selection frequency behavior for an action or group.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ActionPrecheckBehavior-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ActionConditionKind-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="applicability">
<xs:annotation>
<xs:documentation xml:lang="en">Applicability</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="start">
<xs:annotation>
<xs:documentation xml:lang="en">Start</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="stop">
<xs:annotation>
<xs:documentation xml:lang="en">Stop</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ActionConditionKind">
<xs:annotation>
<xs:documentation xml:lang="en">Defines the kinds of conditions that can appear on actions.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ActionConditionKind-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Practitioner" type="Practitioner">
<xs:annotation>
<xs:documentation xml:lang="en">A person who is directly or indirectly involved in the provisioning of healthcare.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Practitioner">
<xs:annotation>
<xs:documentation xml:lang="en">A person who is directly or indirectly involved in the provisioning of healthcare.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">An identifier that applies to this person in this role.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="active" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether this practitioner's record is in active use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="unbounded" type="HumanName">
<xs:annotation>
<xs:documentation xml:lang="en">The name(s) associated with the practitioner.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="telecom" minOccurs="0" maxOccurs="unbounded" type="ContactPoint">
<xs:annotation>
<xs:documentation xml:lang="en">A contact detail for the practitioner, e.g. a telephone number or an email address.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="address" minOccurs="0" maxOccurs="unbounded" type="Address">
<xs:annotation>
<xs:documentation xml:lang="en">Address(es) of the practitioner that are not role specific (typically home address). Work addresses are not typically entered in this property as they are usually role dependent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="gender" minOccurs="0" maxOccurs="1" type="AdministrativeGender">
<xs:annotation>
<xs:documentation xml:lang="en">Administrative Gender - the gender that the person is considered to have for administration and record keeping purposes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="birthDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date of birth for the practitioner.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="photo" minOccurs="0" maxOccurs="unbounded" type="Attachment">
<xs:annotation>
<xs:documentation xml:lang="en">Image of the person.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="qualification" type="Practitioner.Qualification" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The official certifications, training, and licenses that authorize or otherwise pertain to the provision of care by the practitioner. For example, a medical license issued by a medical board authorizing the practitioner to practice medicine within a certian locality.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="communication" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A language the practitioner can use in patient communication.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Practitioner.Qualification">
<xs:annotation>
<xs:documentation xml:lang="en">A person who is directly or indirectly involved in the provisioning of healthcare.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">An identifier that applies to this person's qualification in this role.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Coded representation of the qualification.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">Period during which the qualification is valid.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="issuer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Organization that regulates and issues the qualification.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="PractitionerRole" type="PractitionerRole">
<xs:annotation>
<xs:documentation xml:lang="en">A specific set of Roles/Locations/specialties/services that a practitioner may perform at an organization for a period of time.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="PractitionerRole">
<xs:annotation>
<xs:documentation xml:lang="en">A specific set of Roles/Locations/specialties/services that a practitioner may perform at an organization for a period of time.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business Identifiers that are specific to a role/location.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="active" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether this practitioner role record is in active use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period during which the person is authorized to act as a practitioner in these role(s) for the organization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="practitioner" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Practitioner that is able to provide the defined services for the organization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="organization" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The organization where the Practitioner performs the roles associated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Roles which this practitioner is authorized to perform for the organization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specialty" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Specific specialty of the practitioner.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="location" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The location(s) at which this practitioner provides care.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="healthcareService" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The list of healthcare services that this worker provides for this role's Organization/Location(s).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="telecom" minOccurs="0" maxOccurs="unbounded" type="ContactPoint">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details that are specific to the role/location/service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="availableTime" type="PractitionerRole.AvailableTime" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A collection of times the practitioner is available or performing this role at the location and/or healthcareservice.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="notAvailable" type="PractitionerRole.NotAvailable" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The practitioner is not available or performing this role during this period of time due to the provided reason.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="availabilityExceptions" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A description of site availability exceptions, e.g. public holiday availability. Succinctly describing all possible exceptions to normal site availability as details in the available Times and not available Times.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endpoint" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Technical endpoints providing access to services operated for the practitioner with this role.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="PractitionerRole.AvailableTime">
<xs:annotation>
<xs:documentation xml:lang="en">A specific set of Roles/Locations/specialties/services that a practitioner may perform at an organization for a period of time.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="daysOfWeek" minOccurs="0" maxOccurs="unbounded" type="DaysOfWeek">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates which days of the week are available between the start and end Times.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="allDay" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Is this always available? (hence times are irrelevant) e.g. 24 hour service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="availableStartTime" minOccurs="0" maxOccurs="1" type="time">
<xs:annotation>
<xs:documentation xml:lang="en">The opening time of day. Note: If the AllDay flag is set, then this time is ignored.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="availableEndTime" minOccurs="0" maxOccurs="1" type="time">
<xs:annotation>
<xs:documentation xml:lang="en">The closing time of day. Note: If the AllDay flag is set, then this time is ignored.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="PractitionerRole.NotAvailable">
<xs:annotation>
<xs:documentation xml:lang="en">A specific set of Roles/Locations/specialties/services that a practitioner may perform at an organization for a period of time.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="description" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The reason that can be presented to the user as to why this time is not available.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="during" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">Service is not available (seasonally or for a public holiday) from this date.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Procedure" type="Procedure">
<xs:annotation>
<xs:documentation xml:lang="en">An action that is or was performed on or for a patient. This can be a physical intervention like an operation, or less invasive like long term services, counseling, or hypnotherapy.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Procedure">
<xs:annotation>
<xs:documentation xml:lang="en">An action that is or was performed on or for a patient. This can be a physical intervention like an operation, or less invasive like long term services, counseling, or hypnotherapy.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business identifiers assigned to this procedure by the performer or other systems which remain constant as the resource is updated and is propagated from server to server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesCanonical" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to a FHIR-defined protocol, guideline, order set or other definition that is adhered to in whole or in part by this Procedure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesUri" minOccurs="0" maxOccurs="unbounded" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to an externally maintained protocol, guideline, order set or other definition that is adhered to in whole or in part by this Procedure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basedOn" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a resource that contains details of the request for this procedure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partOf" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A larger event of which this particular procedure is a component or step.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="EventStatus">
<xs:annotation>
<xs:documentation xml:lang="en">A code specifying the state of the procedure. Generally, this will be the in-progress or completed state.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="statusReason" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Captures the reason for the current state of the procedure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code that classifies the procedure for searching, sorting and display purposes (e.g. &quot;Surgical Procedure&quot;).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The specific procedure that is performed. Use text if the exact nature of the procedure cannot be coded (e.g. &quot;Laparoscopic Appendectomy&quot;).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The person, animal or group on which the procedure was performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The Encounter during which this Procedure was created or performed or to which the creation of this record is tightly associated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Estimated or actual date, date-time, period, or age when the procedure was performed. Allows a period to support complex procedures that span more than one date, and also allows for the length of the procedure to be captured.</xs:documentation>
</xs:annotation>
<xs:element name="performedDateTime" type="dateTime"/>
<xs:element name="performedPeriod" type="Period"/>
<xs:element name="performedString" type="string"/>
<xs:element name="performedAge" type="Age"/>
<xs:element name="performedRange" type="Range"/>
</xs:choice>
<xs:element name="recorder" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Individual who recorded the record and takes responsibility for its content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="asserter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Individual who is making the procedure statement.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performer" type="Procedure.Performer" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Limited to &quot;real&quot; people rather than equipment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="location" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The location where the procedure actually happened. E.g. a newborn at home, a tracheostomy at a restaurant.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The coded reason why the procedure was performed. This may be a coded entity of some type, or may simply be present as text.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The justification of why the procedure was performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="bodySite" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Detailed and structured anatomical location information. Multiple locations are allowed - e.g. multiple punch biopsies of a lesion.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="outcome" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The outcome of the procedure - did it resolve the reasons for the procedure being performed?</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="report" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">This could be a histology result, pathology report, surgical report, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="complication" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Any complications that occurred during the procedure, or in the immediate post-performance period. These are generally tracked separately from the notes, which will typically describe the procedure itself rather than any 'post procedure' issues.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="complicationDetail" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Any complications that occurred during the procedure, or in the immediate post-performance period.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="followUp" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">If the procedure required specific follow up - e.g. removal of sutures. The follow up may be represented as a simple note or could potentially be more complex, in which case the CarePlan resource can be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Any other notes and comments about the procedure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="focalDevice" type="Procedure.FocalDevice" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A device that is implanted, removed or otherwise manipulated (calibration, battery replacement, fitting a prosthesis, attaching a wound-vac, etc.) as a focal portion of the Procedure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="usedReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies medications, devices and any other substance used as part of the procedure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="usedCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies coded items that were used as part of the procedure.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Procedure.Performer">
<xs:annotation>
<xs:documentation xml:lang="en">An action that is or was performed on or for a patient. This can be a physical intervention like an operation, or less invasive like long term services, counseling, or hypnotherapy.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="function" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Distinguishes the type of involvement of the performer in the procedure. For example, surgeon, anaesthetist, endoscopist.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="actor" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The practitioner who was involved in the procedure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="onBehalfOf" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The organization the device or practitioner was acting on behalf of.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Procedure.FocalDevice">
<xs:annotation>
<xs:documentation xml:lang="en">An action that is or was performed on or for a patient. This can be a physical intervention like an operation, or less invasive like long term services, counseling, or hypnotherapy.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="action" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The kind of change that happened to the device during the procedure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="manipulated" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The device that was manipulated (changed) during the procedure.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Provenance" type="Provenance">
<xs:annotation>
<xs:documentation xml:lang="en">Provenance of a resource is a record that describes entities and processes involved in producing and delivering or otherwise influencing that resource. Provenance provides a critical foundation for assessing authenticity, enabling trust, and allowing reproducibility. Provenance assertions are a form of contextual metadata and can themselves become important records with their own provenance. Provenance statement indicates clinical significance in terms of confidence in authenticity, reliability, and trustworthiness, integrity, and stage in lifecycle (e.g. Document Completion - has the artifact been legally authenticated), all of which may impact security, privacy, and trust policies.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Provenance">
<xs:annotation>
<xs:documentation xml:lang="en">Provenance of a resource is a record that describes entities and processes involved in producing and delivering or otherwise influencing that resource. Provenance provides a critical foundation for assessing authenticity, enabling trust, and allowing reproducibility. Provenance assertions are a form of contextual metadata and can themselves become important records with their own provenance. Provenance statement indicates clinical significance in terms of confidence in authenticity, reliability, and trustworthiness, integrity, and stage in lifecycle (e.g. Document Completion - has the artifact been legally authenticated), all of which may impact security, privacy, and trust policies.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="target" minOccurs="1" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The Reference(s) that were generated or updated by the activity described in this resource. A provenance can point to more than one target if multiple resources were created/updated by the same activity.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The period during which the activity occurred.</xs:documentation>
</xs:annotation>
<xs:element name="occurredPeriod" type="Period"/>
<xs:element name="occurredDateTime" type="dateTime"/>
</xs:choice>
<xs:element name="recorded" minOccurs="1" maxOccurs="1" type="instant">
<xs:annotation>
<xs:documentation xml:lang="en">The instant of time at which the activity was recorded.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="policy" minOccurs="0" maxOccurs="unbounded" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">Policy or plan the activity was defined by. Typically, a single activity may have multiple applicable policy documents, such as patient consent, guarantor funding, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="location" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Where the activity occurred, if relevant.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reason" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The reason that the activity was taking place.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="activity" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">An activity is something that occurs over a period of time and acts upon or with entities; it may include consuming, processing, transforming, modifying, relocating, using, or generating entities.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="agent" type="Provenance.Agent" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">An actor taking a role in an activity for which it can be assigned some degree of responsibility for the activity taking place.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="entity" type="Provenance.Entity" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">An entity used in this activity.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="signature" minOccurs="0" maxOccurs="unbounded" type="Signature">
<xs:annotation>
<xs:documentation xml:lang="en">A digital signature on the target Reference(s). The signer should match a Provenance.agent. The purpose of the signature is indicated.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Provenance.Agent">
<xs:annotation>
<xs:documentation xml:lang="en">Provenance of a resource is a record that describes entities and processes involved in producing and delivering or otherwise influencing that resource. Provenance provides a critical foundation for assessing authenticity, enabling trust, and allowing reproducibility. Provenance assertions are a form of contextual metadata and can themselves become important records with their own provenance. Provenance statement indicates clinical significance in terms of confidence in authenticity, reliability, and trustworthiness, integrity, and stage in lifecycle (e.g. Document Completion - has the artifact been legally authenticated), all of which may impact security, privacy, and trust policies.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The participation the agent had with respect to the activity.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="role" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The function of the agent with respect to the activity. The security role enabling the agent with respect to the activity.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="who" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The individual, device or organization that participated in the event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="onBehalfOf" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The individual, device, or organization for whom the change was made.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Provenance.Entity">
<xs:annotation>
<xs:documentation xml:lang="en">Provenance of a resource is a record that describes entities and processes involved in producing and delivering or otherwise influencing that resource. Provenance provides a critical foundation for assessing authenticity, enabling trust, and allowing reproducibility. Provenance assertions are a form of contextual metadata and can themselves become important records with their own provenance. Provenance statement indicates clinical significance in terms of confidence in authenticity, reliability, and trustworthiness, integrity, and stage in lifecycle (e.g. Document Completion - has the artifact been legally authenticated), all of which may impact security, privacy, and trust policies.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="role" minOccurs="1" maxOccurs="1" type="ProvenanceEntityRole">
<xs:annotation>
<xs:documentation xml:lang="en">How the entity was used during the activity.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="what" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identity of the Entity used. May be a logical or physical uri and maybe absolute or relative.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="agent" type="Provenance.Agent" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The entity is attributed to an agent to express the agent's responsibility for that entity, possibly along with other agents. This description can be understood as shorthand for saying that the agent was responsible for the activity which generated the entity.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ProvenanceEntityRole-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="derivation">
<xs:annotation>
<xs:documentation xml:lang="en">Derivation</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="revision">
<xs:annotation>
<xs:documentation xml:lang="en">Revision</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="quotation">
<xs:annotation>
<xs:documentation xml:lang="en">Quotation</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="source">
<xs:annotation>
<xs:documentation xml:lang="en">Source</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="removal">
<xs:annotation>
<xs:documentation xml:lang="en">Removal</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ProvenanceEntityRole">
<xs:annotation>
<xs:documentation xml:lang="en">How an entity was used in an activity.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ProvenanceEntityRole-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Questionnaire" type="Questionnaire">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of questions intended to guide the collection of answers from end-users. Questionnaires provide detailed control over order, presentation, phraseology and grouping to allow coherent, consistent data collection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Questionnaire">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of questions intended to guide the collection of answers from end-users. Questionnaires provide detailed control over order, presentation, phraseology and grouping to allow coherent, consistent data collection.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this questionnaire when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this questionnaire is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the questionnaire is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this questionnaire when it is represented in other formats, or referenced in a specification, model, design or an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the questionnaire when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the questionnaire author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the questionnaire. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the questionnaire.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="derivedFrom" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">The URL of a Questionnaire that this Questionnaire is based on.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this questionnaire. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this questionnaire is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subjectType" minOccurs="0" maxOccurs="unbounded" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The types of subjects that can be the subject of responses created for the questionnaire.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the questionnaire was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the questionnaire changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the questionnaire.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the questionnaire from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate questionnaire instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the questionnaire is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Explanation of why this questionnaire is needed and why it has been designed as it has.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the questionnaire and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the questionnaire.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="approvalDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lastReviewDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="effectivePeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period during which the questionnaire content was or is planned to be in active use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="unbounded" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">An identifier for this question or group of questions in a particular terminology such as LOINC.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="item" type="Questionnaire.Item" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A particular question, question grouping or display text that is part of the questionnaire.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Questionnaire.Item">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of questions intended to guide the collection of answers from end-users. Questionnaires provide detailed control over order, presentation, phraseology and grouping to allow coherent, consistent data collection.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="linkId" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">An identifier that is unique within the Questionnaire allowing linkage to the equivalent item in a QuestionnaireResponse resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="definition" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">This element is a URI that refers to an [[[ElementDefinition]]] that provides information about this item, including information that might otherwise be included in the instance of the Questionnaire resource. A detailed description of the construction of the URI is shown in Comments, below. If this element is present then the following element values MAY be derived from the Element Definition if the corresponding elements of this Questionnaire resource instance have no value:
* code (ElementDefinition.code)
* type (ElementDefinition.type)
* required (ElementDefinition.min)
* repeats (ElementDefinition.max)
* maxLength (ElementDefinition.maxLength)
* answerValueSet (ElementDefinition.binding)
* options (ElementDefinition.binding).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="unbounded" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">A terminology code that corresponds to this group or question (e.g. a code from LOINC, which defines many questions and answers).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="prefix" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short label for a particular group, question or set of display text within the questionnaire used for reference by the individual completing the questionnaire.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="text" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of a section, the text of a question or text content for a display item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="QuestionnaireItemType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of questionnaire item this is - whether text for display, a grouping of other items or a particular type of data to be captured (string, integer, coded choice, etc.).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="enableWhen" type="Questionnaire.EnableWhen" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A constraint indicating that this item should only be enabled (displayed/allow answers to be captured) when the specified condition is true.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="enableBehavior" minOccurs="0" maxOccurs="1" type="EnableWhenBehavior">
<xs:annotation>
<xs:documentation xml:lang="en">Controls how multiple enableWhen values are interpreted - whether all or any must be true.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="required" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">An indication, if true, that the item must be present in a &quot;completed&quot; QuestionnaireResponse. If false, the item may be skipped when answering the questionnaire.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="repeats" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">An indication, if true, that the item may occur multiple times in the response, collecting multiple answers for questions or multiple sets of answers for groups.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="readOnly" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">An indication, when true, that the value cannot be changed by a human respondent to the Questionnaire.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="maxLength" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">The maximum number of characters that are permitted in the answer to be considered a &quot;valid&quot; QuestionnaireResponse.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="answerValueSet" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a value set containing a list of codes representing permitted answers for a &quot;choice&quot; or &quot;open-choice&quot; question.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="answerOption" type="Questionnaire.AnswerOption" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">One of the permitted answers for a &quot;choice&quot; or &quot;open-choice&quot; question.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="initial" type="Questionnaire.Initial" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">One or more values that should be pre-populated in the answer when initially rendering the questionnaire for user input.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="item" type="Questionnaire.Item" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Text, questions and other groups to be nested beneath a question or group.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Questionnaire.EnableWhen">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of questions intended to guide the collection of answers from end-users. Questionnaires provide detailed control over order, presentation, phraseology and grouping to allow coherent, consistent data collection.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="question" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The linkId for the question whose answer (or lack of answer) governs whether this item is enabled.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="operator" minOccurs="1" maxOccurs="1" type="QuestionnaireItemOperator">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies the criteria by which the question is enabled.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">A value that the referenced question is tested using the specified operator in order for the item to be enabled.</xs:documentation>
</xs:annotation>
<xs:element name="answerBoolean" type="boolean"/>
<xs:element name="answerDecimal" type="decimal"/>
<xs:element name="answerInteger" type="integer"/>
<xs:element name="answerDate" type="date"/>
<xs:element name="answerDateTime" type="dateTime"/>
<xs:element name="answerTime" type="time"/>
<xs:element name="answerString" type="string"/>
<xs:element name="answerCoding" type="Coding"/>
<xs:element name="answerQuantity" type="Quantity"/>
<xs:element name="answerReference" type="Reference"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Questionnaire.AnswerOption">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of questions intended to guide the collection of answers from end-users. Questionnaires provide detailed control over order, presentation, phraseology and grouping to allow coherent, consistent data collection.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">A potential answer that's allowed as the answer to this question.</xs:documentation>
</xs:annotation>
<xs:element name="valueInteger" type="integer"/>
<xs:element name="valueDate" type="date"/>
<xs:element name="valueTime" type="time"/>
<xs:element name="valueString" type="string"/>
<xs:element name="valueCoding" type="Coding"/>
<xs:element name="valueReference" type="Reference"/>
</xs:choice>
<xs:element name="initialSelected" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether the answer value is selected when the list of possible answers is initially shown.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Questionnaire.Initial">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of questions intended to guide the collection of answers from end-users. Questionnaires provide detailed control over order, presentation, phraseology and grouping to allow coherent, consistent data collection.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The actual value to for an initial answer.</xs:documentation>
</xs:annotation>
<xs:element name="valueBoolean" type="boolean"/>
<xs:element name="valueDecimal" type="decimal"/>
<xs:element name="valueInteger" type="integer"/>
<xs:element name="valueDate" type="date"/>
<xs:element name="valueDateTime" type="dateTime"/>
<xs:element name="valueTime" type="time"/>
<xs:element name="valueString" type="string"/>
<xs:element name="valueUri" type="uri"/>
<xs:element name="valueAttachment" type="Attachment"/>
<xs:element name="valueCoding" type="Coding"/>
<xs:element name="valueQuantity" type="Quantity"/>
<xs:element name="valueReference" type="Reference"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="QuestionnaireItemType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="group">
<xs:annotation>
<xs:documentation xml:lang="en">Group</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="display">
<xs:annotation>
<xs:documentation xml:lang="en">Display</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Boolean</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Decimal</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Integer</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="date">
<xs:annotation>
<xs:documentation xml:lang="en">Date</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Date Time</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="time">
<xs:annotation>
<xs:documentation xml:lang="en">Time</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="string">
<xs:annotation>
<xs:documentation xml:lang="en">String</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="text">
<xs:annotation>
<xs:documentation xml:lang="en">Text</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="url">
<xs:annotation>
<xs:documentation xml:lang="en">Url</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="choice">
<xs:annotation>
<xs:documentation xml:lang="en">Choice</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="open-choice">
<xs:annotation>
<xs:documentation xml:lang="en">Open Choice</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="attachment">
<xs:annotation>
<xs:documentation xml:lang="en">Attachment</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="quantity">
<xs:annotation>
<xs:documentation xml:lang="en">Quantity</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="QuestionnaireItemType">
<xs:annotation>
<xs:documentation xml:lang="en">Distinguishes groups from questions and display text and indicates data type for questions.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="QuestionnaireItemType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="EnableWhenBehavior-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="all">
<xs:annotation>
<xs:documentation xml:lang="en">All</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="any">
<xs:annotation>
<xs:documentation xml:lang="en">Any</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="EnableWhenBehavior">
<xs:annotation>
<xs:documentation xml:lang="en">Controls how multiple enableWhen values are interpreted - whether all or any must be true.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="EnableWhenBehavior-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="QuestionnaireItemOperator-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="exists">
<xs:annotation>
<xs:documentation xml:lang="en">Exists</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="=">
<xs:annotation>
<xs:documentation xml:lang="en">Equals</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="!=">
<xs:annotation>
<xs:documentation xml:lang="en">Not Equals</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="&gt;">
<xs:annotation>
<xs:documentation xml:lang="en">Greater Than</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="&lt;">
<xs:annotation>
<xs:documentation xml:lang="en">Less Than</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="&gt;=">
<xs:annotation>
<xs:documentation xml:lang="en">Greater or Equals</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="&lt;=">
<xs:annotation>
<xs:documentation xml:lang="en">Less or Equals</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="QuestionnaireItemOperator">
<xs:annotation>
<xs:documentation xml:lang="en">The criteria by which a question is enabled.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="QuestionnaireItemOperator-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="QuestionnaireResponse" type="QuestionnaireResponse">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of questions and their answers. The questions are ordered and grouped into coherent subsets, corresponding to the structure of the grouping of the questionnaire being responded to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="QuestionnaireResponse">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of questions and their answers. The questions are ordered and grouped into coherent subsets, corresponding to the structure of the grouping of the questionnaire being responded to.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A business identifier assigned to a particular completed (or partially completed) questionnaire.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basedOn" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The order, proposal or plan that is fulfilled in whole or in part by this QuestionnaireResponse. For example, a ServiceRequest seeking an intake assessment or a decision support recommendation to assess for post-partum depression.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partOf" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A procedure or observation that this questionnaire was performed as part of the execution of. For example, the surgery a checklist was executed as part of.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="questionnaire" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">The Questionnaire that defines and organizes the questions for which answers are being provided.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="QuestionnaireResponseStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The position of the questionnaire response within its overall lifecycle.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The subject of the questionnaire response. This could be a patient, organization, practitioner, device, etc. This is who/what the answers apply to, but is not necessarily the source of information.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The Encounter during which this questionnaire response was created or to which the creation of this record is tightly associated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="authored" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date and/or time that this set of answers were last changed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Person who received the answers to the questions in the QuestionnaireResponse and recorded them in the system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The person who answered the questions about the subject.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="item" type="QuestionnaireResponse.Item" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A group or question item from the original questionnaire for which answers are provided.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="QuestionnaireResponse.Item">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of questions and their answers. The questions are ordered and grouped into coherent subsets, corresponding to the structure of the grouping of the questionnaire being responded to.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="linkId" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The item from the Questionnaire that corresponds to this item in the QuestionnaireResponse resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="definition" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to an [[[ElementDefinition]]] that provides the details for the item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="text" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Text that is displayed above the contents of the group or as the text of the question being answered.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="answer" type="QuestionnaireResponse.Answer" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The respondent's answer(s) to the question.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="item" type="QuestionnaireResponse.Item" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Questions or sub-groups nested beneath a question or group.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="QuestionnaireResponse.Answer">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of questions and their answers. The questions are ordered and grouped into coherent subsets, corresponding to the structure of the grouping of the questionnaire being responded to.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The answer (or one of the answers) provided by the respondent to the question.</xs:documentation>
</xs:annotation>
<xs:element name="valueBoolean" type="boolean"/>
<xs:element name="valueDecimal" type="decimal"/>
<xs:element name="valueInteger" type="integer"/>
<xs:element name="valueDate" type="date"/>
<xs:element name="valueDateTime" type="dateTime"/>
<xs:element name="valueTime" type="time"/>
<xs:element name="valueString" type="string"/>
<xs:element name="valueUri" type="uri"/>
<xs:element name="valueAttachment" type="Attachment"/>
<xs:element name="valueCoding" type="Coding"/>
<xs:element name="valueQuantity" type="Quantity"/>
<xs:element name="valueReference" type="Reference"/>
</xs:choice>
<xs:element name="item" type="QuestionnaireResponse.Item" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Nested groups and/or questions found within this particular answer.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="QuestionnaireResponseStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="in-progress">
<xs:annotation>
<xs:documentation xml:lang="en">In Progress</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="completed">
<xs:annotation>
<xs:documentation xml:lang="en">Completed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="amended">
<xs:annotation>
<xs:documentation xml:lang="en">Amended</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="stopped">
<xs:annotation>
<xs:documentation xml:lang="en">Stopped</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="QuestionnaireResponseStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Lifecycle status of the questionnaire response.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="QuestionnaireResponseStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="RelatedPerson" type="RelatedPerson">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a person that is involved in the care for a patient, but who is not the target of healthcare, nor has a formal responsibility in the care process.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="RelatedPerson">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a person that is involved in the care for a patient, but who is not the target of healthcare, nor has a formal responsibility in the care process.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier for a person within a particular scope.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="active" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether this related person record is in active use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patient" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The patient this person is related to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relationship" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The nature of the relationship between a patient and the related person.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="unbounded" type="HumanName">
<xs:annotation>
<xs:documentation xml:lang="en">A name associated with the person.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="telecom" minOccurs="0" maxOccurs="unbounded" type="ContactPoint">
<xs:annotation>
<xs:documentation xml:lang="en">A contact detail for the person, e.g. a telephone number or an email address.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="gender" minOccurs="0" maxOccurs="1" type="AdministrativeGender">
<xs:annotation>
<xs:documentation xml:lang="en">Administrative Gender - the gender that the person is considered to have for administration and record keeping purposes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="birthDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the related person was born.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="address" minOccurs="0" maxOccurs="unbounded" type="Address">
<xs:annotation>
<xs:documentation xml:lang="en">Address where the related person can be contacted or visited.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="photo" minOccurs="0" maxOccurs="unbounded" type="Attachment">
<xs:annotation>
<xs:documentation xml:lang="en">Image of the person.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period of time during which this relationship is or was active. If there are no dates defined, then the interval is unknown.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="communication" type="RelatedPerson.Communication" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A language which may be used to communicate with about the patient's health.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="RelatedPerson.Communication">
<xs:annotation>
<xs:documentation xml:lang="en">Information about a person that is involved in the care for a patient, but who is not the target of healthcare, nor has a formal responsibility in the care process.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="language" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The ISO-639-1 alpha 2 code in lower case for the language, optionally followed by a hyphen and the ISO-3166-1 alpha 2 code for the region in upper case; e.g. &quot;en&quot; for English, or &quot;en-US&quot; for American English versus &quot;en-EN&quot; for England English.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="preferred" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates whether or not the patient prefers this language (over other languages he masters up a certain level).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="RequestGroup" type="RequestGroup">
<xs:annotation>
<xs:documentation xml:lang="en">A group of related requests that can be used to capture intended activities that have inter-dependencies such as &quot;give this medication after that one&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="RequestGroup">
<xs:annotation>
<xs:documentation xml:lang="en">A group of related requests that can be used to capture intended activities that have inter-dependencies such as &quot;give this medication after that one&quot;.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Allows a service to provide a unique, business identifier for the request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesCanonical" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A canonical URL referencing a FHIR-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesUri" minOccurs="0" maxOccurs="unbounded" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">A URL referencing an externally defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basedOn" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A plan, proposal or order that is fulfilled in whole or in part by this request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="replaces" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Completed or terminated request(s) whose function is taken by this new request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="groupIdentifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A shared identifier common to all requests that were authorized more or less simultaneously by a single author, representing the identifier of the requisition, prescription or similar form.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="RequestStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The current state of the request. For request groups, the status reflects the status of all the requests in the group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="intent" minOccurs="1" maxOccurs="1" type="RequestIntent">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the level of authority/intentionality associated with the request and where the request fits into the workflow chain.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priority" minOccurs="0" maxOccurs="1" type="RequestPriority">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates how quickly the request should be addressed with respect to other requests.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code that identifies what the overall request group is.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The subject for which the request group was created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the context of the request group, if any.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="authoredOn" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates when the request group was created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Provides a reference to the author of the request group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the reason for the request group in coded or textual form.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates another resource whose existence justifies this request group.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Provides a mechanism to communicate additional information about the response.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="action" type="RequestGroup.Action" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The actions, if any, produced by the evaluation of the artifact.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="RequestGroup.Action">
<xs:annotation>
<xs:documentation xml:lang="en">A group of related requests that can be used to capture intended activities that have inter-dependencies such as &quot;give this medication after that one&quot;.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="prefix" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A user-visible prefix for the action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The title of the action displayed to a user.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short description of the action used to provide a summary to display to the user.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="textEquivalent" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A text equivalent of the action to be performed. This provides a human-interpretable description of the action when the definition is consumed by a system that might not be capable of interpreting it dynamically.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priority" minOccurs="0" maxOccurs="1" type="RequestPriority">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates how quickly the action should be addressed with respect to other actions.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code that provides meaning for the action or action group. For example, a section may have a LOINC code for a section of a documentation template.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="documentation" minOccurs="0" maxOccurs="unbounded" type="RelatedArtifact">
<xs:annotation>
<xs:documentation xml:lang="en">Didactic or other informational resources associated with the action that can be provided to the CDS recipient. Information resources can include inline text commentary and links to web resources.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="condition" type="RequestGroup.Condition" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">An expression that describes applicability criteria, or start/stop conditions for the action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relatedAction" type="RequestGroup.RelatedAction" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A relationship to another action such as &quot;before&quot; or &quot;30-60 minutes after start of&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">An optional value describing when the action should be performed.</xs:documentation>
</xs:annotation>
<xs:element name="timingDateTime" type="dateTime"/>
<xs:element name="timingAge" type="Age"/>
<xs:element name="timingPeriod" type="Period"/>
<xs:element name="timingDuration" type="Duration"/>
<xs:element name="timingRange" type="Range"/>
<xs:element name="timingTiming" type="Timing"/>
</xs:choice>
<xs:element name="participant" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The participant that should perform or be responsible for this action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of action to perform (create, update, remove).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="groupingBehavior" minOccurs="0" maxOccurs="1" type="ActionGroupingBehavior">
<xs:annotation>
<xs:documentation xml:lang="en">Defines the grouping behavior for the action and its children.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="selectionBehavior" minOccurs="0" maxOccurs="1" type="ActionSelectionBehavior">
<xs:annotation>
<xs:documentation xml:lang="en">Defines the selection behavior for the action and its children.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requiredBehavior" minOccurs="0" maxOccurs="1" type="ActionRequiredBehavior">
<xs:annotation>
<xs:documentation xml:lang="en">Defines expectations around whether an action is required.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="precheckBehavior" minOccurs="0" maxOccurs="1" type="ActionPrecheckBehavior">
<xs:annotation>
<xs:documentation xml:lang="en">Defines whether the action should usually be preselected.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="cardinalityBehavior" minOccurs="0" maxOccurs="1" type="ActionCardinalityBehavior">
<xs:annotation>
<xs:documentation xml:lang="en">Defines whether the action can be selected multiple times.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="resource" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The resource that is the target of the action (e.g. CommunicationRequest).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="action" type="RequestGroup.Action" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Sub actions.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="RequestGroup.Condition">
<xs:annotation>
<xs:documentation xml:lang="en">A group of related requests that can be used to capture intended activities that have inter-dependencies such as &quot;give this medication after that one&quot;.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="kind" minOccurs="1" maxOccurs="1" type="ActionConditionKind">
<xs:annotation>
<xs:documentation xml:lang="en">The kind of condition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expression" minOccurs="0" maxOccurs="1" type="Expression">
<xs:annotation>
<xs:documentation xml:lang="en">An expression that returns true or false, indicating whether or not the condition is satisfied.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="RequestGroup.RelatedAction">
<xs:annotation>
<xs:documentation xml:lang="en">A group of related requests that can be used to capture intended activities that have inter-dependencies such as &quot;give this medication after that one&quot;.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="actionId" minOccurs="1" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">The element id of the action this is related to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relationship" minOccurs="1" maxOccurs="1" type="ActionRelationshipType">
<xs:annotation>
<xs:documentation xml:lang="en">The relationship of this action to the related action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">A duration or range of durations to apply to the relationship. For example, 30-60 minutes before.</xs:documentation>
</xs:annotation>
<xs:element name="offsetDuration" type="Duration"/>
<xs:element name="offsetRange" type="Range"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="ResearchDefinition" type="ResearchDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">The ResearchDefinition resource describes the conditional state (population and any exposures being compared within the population) and outcome (if specified) that the knowledge (evidence, assertion, recommendation) is about.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ResearchDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">The ResearchDefinition resource describes the conditional state (population and any exposures being compared within the population) and outcome (if specified) that the knowledge (evidence, assertion, recommendation) is about.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this research definition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this research definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the research definition is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this research definition when it is represented in other formats, or referenced in a specification, model, design or an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the research definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the research definition author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. To provide a version consistent with the Decision Support Service specification, use the format Major.Minor.Revision (e.g. 1.0.0). For more information on versioning knowledge assets, refer to the Decision Support Service specification. Note that a version is required for non-experimental active artifacts.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the research definition. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the research definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="shortTitle" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The short title provides an alternate title for use in informal descriptive contexts where the full, formal title is not necessary.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subtitle" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">An explanatory or alternate title for the ResearchDefinition giving additional information about its content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this research definition. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this research definition is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The intended subjects for the ResearchDefinition. If this element is not provided, a Patient subject is assumed, but the subject of the ResearchDefinition can be anything.</xs:documentation>
</xs:annotation>
<xs:element name="subjectCodeableConcept" type="CodeableConcept"/>
<xs:element name="subjectReference" type="Reference"/>
</xs:choice>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the research definition was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the research definition changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the research definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the research definition from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comment" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A human-readable string to clarify or explain concepts about the resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate research definition instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the research definition is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Explanation of why this research definition is needed and why it has been designed as it has.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="usage" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A detailed description, from a clinical perspective, of how the ResearchDefinition is used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the research definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the research definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="approvalDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lastReviewDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="effectivePeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period during which the research definition content was or is planned to be in active use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="topic" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Descriptive topics related to the content of the ResearchDefinition. Topics provide a high-level categorization grouping types of ResearchDefinitions that can be useful for filtering and searching.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individiual or organization primarily involved in the creation and maintenance of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="editor" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for internal coherence of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reviewer" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for review of some aspect of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endorser" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization responsible for officially endorsing the content for use in some setting.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relatedArtifact" minOccurs="0" maxOccurs="unbounded" type="RelatedArtifact">
<xs:annotation>
<xs:documentation xml:lang="en">Related artifacts such as additional documentation, justification, or bibliographic references.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="library" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a Library resource containing the formal logic used by the ResearchDefinition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="population" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a ResearchElementDefinition resource that defines the population for the research.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="exposure" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a ResearchElementDefinition resource that defines the exposure for the research.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="exposureAlternative" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a ResearchElementDefinition resource that defines the exposureAlternative for the research.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="outcome" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a ResearchElementDefinition resomece that defines the outcome for the research.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="ResearchElementDefinition" type="ResearchElementDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">The ResearchElementDefinition resource describes a &quot;PICO&quot; element that knowledge (evidence, assertion, recommendation) is about.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ResearchElementDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">The ResearchElementDefinition resource describes a &quot;PICO&quot; element that knowledge (evidence, assertion, recommendation) is about.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this research element definition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this research element definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the research element definition is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this research element definition when it is represented in other formats, or referenced in a specification, model, design or an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the research element definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the research element definition author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. To provide a version consistent with the Decision Support Service specification, use the format Major.Minor.Revision (e.g. 1.0.0). For more information on versioning knowledge assets, refer to the Decision Support Service specification. Note that a version is required for non-experimental active artifacts.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the research element definition. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the research element definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="shortTitle" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The short title provides an alternate title for use in informal descriptive contexts where the full, formal title is not necessary.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subtitle" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">An explanatory or alternate title for the ResearchElementDefinition giving additional information about its content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this research element definition. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this research element definition is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The intended subjects for the ResearchElementDefinition. If this element is not provided, a Patient subject is assumed, but the subject of the ResearchElementDefinition can be anything.</xs:documentation>
</xs:annotation>
<xs:element name="subjectCodeableConcept" type="CodeableConcept"/>
<xs:element name="subjectReference" type="Reference"/>
</xs:choice>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the research element definition was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the research element definition changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the research element definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the research element definition from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comment" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A human-readable string to clarify or explain concepts about the resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate research element definition instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the research element definition is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Explanation of why this research element definition is needed and why it has been designed as it has.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="usage" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A detailed description, from a clinical perspective, of how the ResearchElementDefinition is used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the research element definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the research element definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="approvalDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lastReviewDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="effectivePeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period during which the research element definition content was or is planned to be in active use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="topic" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Descriptive topics related to the content of the ResearchElementDefinition. Topics provide a high-level categorization grouping types of ResearchElementDefinitions that can be useful for filtering and searching.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individiual or organization primarily involved in the creation and maintenance of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="editor" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for internal coherence of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reviewer" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for review of some aspect of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endorser" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization responsible for officially endorsing the content for use in some setting.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relatedArtifact" minOccurs="0" maxOccurs="unbounded" type="RelatedArtifact">
<xs:annotation>
<xs:documentation xml:lang="en">Related artifacts such as additional documentation, justification, or bibliographic references.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="library" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a Library resource containing the formal logic used by the ResearchElementDefinition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="ResearchElementType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of research element, a population, an exposure, or an outcome.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="variableType" minOccurs="0" maxOccurs="1" type="VariableType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of the outcome (e.g. Dichotomous, Continuous, or Descriptive).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="characteristic" type="ResearchElementDefinition.Characteristic" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A characteristic that defines the members of the research element. Multiple characteristics are applied with &quot;and&quot; semantics.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ResearchElementDefinition.Characteristic">
<xs:annotation>
<xs:documentation xml:lang="en">The ResearchElementDefinition resource describes a &quot;PICO&quot; element that knowledge (evidence, assertion, recommendation) is about.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Define members of the research element using Codes (such as condition, medication, or observation), Expressions ( using an expression language such as FHIRPath or CQL) or DataRequirements (such as Diabetes diagnosis onset in the last year).</xs:documentation>
</xs:annotation>
<xs:element name="definitionCodeableConcept" type="CodeableConcept"/>
<xs:element name="definitionCanonical" type="canonical"/>
<xs:element name="definitionExpression" type="Expression"/>
<xs:element name="definitionDataRequirement" type="DataRequirement"/>
</xs:choice>
<xs:element name="usageContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">Use UsageContext to define the members of the population, such as Age Ranges, Genders, Settings.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="exclude" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">When true, members with this characteristic are excluded from the element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unitOfMeasure" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies the UCUM unit for the outcome.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="studyEffectiveDescription" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A narrative description of the time period the study covers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Indicates what effective period the study covers.</xs:documentation>
</xs:annotation>
<xs:element name="studyEffectiveDateTime" type="dateTime"/>
<xs:element name="studyEffectivePeriod" type="Period"/>
<xs:element name="studyEffectiveDuration" type="Duration"/>
<xs:element name="studyEffectiveTiming" type="Timing"/>
</xs:choice>
<xs:element name="studyEffectiveTimeFromStart" minOccurs="0" maxOccurs="1" type="Duration">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates duration from the study initiation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="studyEffectiveGroupMeasure" minOccurs="0" maxOccurs="1" type="GroupMeasure">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates how elements are aggregated within the study effective period.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="participantEffectiveDescription" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A narrative description of the time period the study covers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Indicates what effective period the study covers.</xs:documentation>
</xs:annotation>
<xs:element name="participantEffectiveDateTime" type="dateTime"/>
<xs:element name="participantEffectivePeriod" type="Period"/>
<xs:element name="participantEffectiveDuration" type="Duration"/>
<xs:element name="participantEffectiveTiming" type="Timing"/>
</xs:choice>
<xs:element name="participantEffectiveTimeFromStart" minOccurs="0" maxOccurs="1" type="Duration">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates duration from the participant's study entry.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="participantEffectiveGroupMeasure" minOccurs="0" maxOccurs="1" type="GroupMeasure">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates how elements are aggregated within the study effective period.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ResearchElementType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="population">
<xs:annotation>
<xs:documentation xml:lang="en">Population</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="exposure">
<xs:annotation>
<xs:documentation xml:lang="en">Exposure</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="outcome">
<xs:annotation>
<xs:documentation xml:lang="en">Outcome</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ResearchElementType">
<xs:annotation>
<xs:documentation xml:lang="en">The possible types of research elements (E.g. Population, Exposure, Outcome).</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ResearchElementType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="VariableType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="dichotomous">
<xs:annotation>
<xs:documentation xml:lang="en">Dichotomous</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="continuous">
<xs:annotation>
<xs:documentation xml:lang="en">Continuous</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="descriptive">
<xs:annotation>
<xs:documentation xml:lang="en">Descriptive</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="VariableType">
<xs:annotation>
<xs:documentation xml:lang="en">The possible types of variables for exposures or outcomes (E.g. Dichotomous, Continuous, Descriptive).</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="VariableType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="ResearchStudy" type="ResearchStudy">
<xs:annotation>
<xs:documentation xml:lang="en">A process where a researcher or organization plans and then executes a series of steps intended to increase the field of healthcare-related knowledge. This includes studies of safety, efficacy, comparative effectiveness and other information about medications, devices, therapies and other interventional and investigative techniques. A ResearchStudy involves the gathering of information about human or animal subjects.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ResearchStudy">
<xs:annotation>
<xs:documentation xml:lang="en">A process where a researcher or organization plans and then executes a series of steps intended to increase the field of healthcare-related knowledge. This includes studies of safety, efficacy, comparative effectiveness and other information about medications, devices, therapies and other interventional and investigative techniques. A ResearchStudy involves the gathering of information about human or animal subjects.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifiers assigned to this research study by the sponsor or other systems.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive user-friendly label for the study.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="protocol" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The set of steps expected to be performed as part of the execution of the study.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partOf" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A larger research study of which this particular study is a component or step.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="ResearchStudyStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The current state of the study.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="primaryPurposeType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of study based upon the intent of the study's activities. A classification of the intent of the study.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="phase" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The stage in the progression of a therapy from initial experimental use in humans in clinical trials to post-market evaluation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Codes categorizing the type of study such as investigational vs. observational, type of blinding, type of randomization, safety vs. efficacy, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="focus" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The medication(s), food(s), therapy(ies), device(s) or other concerns or interventions that the study is seeking to gain more information about.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="condition" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The condition that is the focus of the study. For example, In a study to examine risk factors for Lupus, might have as an inclusion criterion &quot;healthy volunteer&quot;, but the target condition code would be a Lupus SNOMED code.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in learning more about or engaging with the study.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relatedArtifact" minOccurs="0" maxOccurs="unbounded" type="RelatedArtifact">
<xs:annotation>
<xs:documentation xml:lang="en">Citations, references and other related documents.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="keyword" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Key terms to aid in searching for or filtering the study.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="location" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates a country, state or other region where the study is taking place.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A full description of how the study is being conducted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="enrollment" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to a Group that defines the criteria for and quantity of subjects participating in the study. E.g. &quot; 200 female Europeans between the ages of 20 and 45 with early onset diabetes&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the start date and the expected (or actual, depending on status) end date for the study.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sponsor" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">An organization that initiates the investigation and is legally responsible for the study.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="principalInvestigator" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A researcher in a study who oversees multiple aspects of the study, such as concept development, protocol writing, protocol submission for IRB approval, participant recruitment, informed consent, data collection, analysis, interpretation and presentation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="site" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A facility in which study activities are conducted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonStopped" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A description and/or code explaining the premature termination of the study.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Comments made about the study by the performer, subject or other participants.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="arm" type="ResearchStudy.Arm" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Describes an expected sequence of events for one of the participants of a study. E.g. Exposure to drug A, wash-out, exposure to drug B, wash-out, follow-up.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="objective" type="ResearchStudy.Objective" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A goal that the study is aiming to achieve in terms of a scientific question to be answered by the analysis of data collected during the study.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ResearchStudy.Arm">
<xs:annotation>
<xs:documentation xml:lang="en">A process where a researcher or organization plans and then executes a series of steps intended to increase the field of healthcare-related knowledge. This includes studies of safety, efficacy, comparative effectiveness and other information about medications, devices, therapies and other interventional and investigative techniques. A ResearchStudy involves the gathering of information about human or animal subjects.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Unique, human-readable label for this arm of the study.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Categorization of study arm, e.g. experimental, active comparator, placebo comparater.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A succinct description of the path through the study that would be followed by a subject adhering to this arm.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ResearchStudy.Objective">
<xs:annotation>
<xs:documentation xml:lang="en">A process where a researcher or organization plans and then executes a series of steps intended to increase the field of healthcare-related knowledge. This includes studies of safety, efficacy, comparative effectiveness and other information about medications, devices, therapies and other interventional and investigative techniques. A ResearchStudy involves the gathering of information about human or animal subjects.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Unique, human-readable label for this objective of the study.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The kind of study objective.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ResearchStudyStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="active">
<xs:annotation>
<xs:documentation xml:lang="en">Active</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="administratively-completed">
<xs:annotation>
<xs:documentation xml:lang="en">Administratively Completed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="approved">
<xs:annotation>
<xs:documentation xml:lang="en">Approved</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="closed-to-accrual">
<xs:annotation>
<xs:documentation xml:lang="en">Closed to Accrual</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="closed-to-accrual-and-intervention">
<xs:annotation>
<xs:documentation xml:lang="en">Closed to Accrual and Intervention</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="completed">
<xs:annotation>
<xs:documentation xml:lang="en">Completed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="disapproved">
<xs:annotation>
<xs:documentation xml:lang="en">Disapproved</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="in-review">
<xs:annotation>
<xs:documentation xml:lang="en">In Review</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="temporarily-closed-to-accrual">
<xs:annotation>
<xs:documentation xml:lang="en">Temporarily Closed to Accrual</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="temporarily-closed-to-accrual-and-intervention">
<xs:annotation>
<xs:documentation xml:lang="en">Temporarily Closed to Accrual and Intervention</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="withdrawn">
<xs:annotation>
<xs:documentation xml:lang="en">Withdrawn</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ResearchStudyStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Codes that convey the current status of the research study.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ResearchStudyStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="ResearchSubject" type="ResearchSubject">
<xs:annotation>
<xs:documentation xml:lang="en">A physical entity which is the primary unit of operational and/or administrative interest in a study.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ResearchSubject">
<xs:annotation>
<xs:documentation xml:lang="en">A physical entity which is the primary unit of operational and/or administrative interest in a study.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifiers assigned to this research subject for a study.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="ResearchSubjectStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The current state of the subject.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The dates the subject began and ended their participation in the study.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="study" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to the study the subject is participating in.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="individual" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The record of the person or animal who is involved in the study.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="assignedArm" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the arm in the study the subject is expected to follow as part of this study.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="actualArm" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the arm in the study the subject actually followed as part of this study.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="consent" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A record of the patient's informed agreement to participate in the study.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ResearchSubjectStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="candidate">
<xs:annotation>
<xs:documentation xml:lang="en">Candidate</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="eligible">
<xs:annotation>
<xs:documentation xml:lang="en">Eligible</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="follow-up">
<xs:annotation>
<xs:documentation xml:lang="en">Follow-up</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ineligible">
<xs:annotation>
<xs:documentation xml:lang="en">Ineligible</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="not-registered">
<xs:annotation>
<xs:documentation xml:lang="en">Not Registered</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="off-study">
<xs:annotation>
<xs:documentation xml:lang="en">Off-study</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="on-study">
<xs:annotation>
<xs:documentation xml:lang="en">On-study</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="on-study-intervention">
<xs:annotation>
<xs:documentation xml:lang="en">On-study-intervention</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="on-study-observation">
<xs:annotation>
<xs:documentation xml:lang="en">On-study-observation</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="pending-on-study">
<xs:annotation>
<xs:documentation xml:lang="en">Pending on-study</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="potential-candidate">
<xs:annotation>
<xs:documentation xml:lang="en">Potential Candidate</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="screening">
<xs:annotation>
<xs:documentation xml:lang="en">Screening</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="withdrawn">
<xs:annotation>
<xs:documentation xml:lang="en">Withdrawn</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ResearchSubjectStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the progression of a study subject through a study.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ResearchSubjectStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="RiskAssessment" type="RiskAssessment">
<xs:annotation>
<xs:documentation xml:lang="en">An assessment of the likely outcome(s) for a patient or other subject as well as the likelihood of each outcome.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="RiskAssessment">
<xs:annotation>
<xs:documentation xml:lang="en">An assessment of the likely outcome(s) for a patient or other subject as well as the likelihood of each outcome.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business identifier assigned to the risk assessment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basedOn" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to the request that is fulfilled by this risk assessment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="parent" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a resource that this risk assessment is part of, such as a Procedure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="ObservationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the RiskAssessment, using the same statuses as an Observation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="method" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The algorithm, process or mechanism used to evaluate the risk.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of the risk assessment performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The patient or group the risk assessment applies to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The encounter where the assessment was performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The date (and possibly time) the risk assessment was performed.</xs:documentation>
</xs:annotation>
<xs:element name="occurrenceDateTime" type="dateTime"/>
<xs:element name="occurrencePeriod" type="Period"/>
</xs:choice>
<xs:element name="condition" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">For assessments or prognosis specific to a particular condition, indicates the condition being assessed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The provider or software application that performed the assessment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The reason the risk assessment was performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Resources supporting the reason the risk assessment was performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basis" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the source data considered as part of the assessment (for example, FamilyHistory, Observations, Procedures, Conditions, etc.).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="prediction" type="RiskAssessment.Prediction" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Describes the expected outcome for the subject.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="mitigation" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A description of the steps that might be taken to reduce the identified risk(s).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Additional comments about the risk assessment.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="RiskAssessment.Prediction">
<xs:annotation>
<xs:documentation xml:lang="en">An assessment of the likely outcome(s) for a patient or other subject as well as the likelihood of each outcome.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="outcome" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">One of the potential outcomes for the patient (e.g. remission, death, a particular condition).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Indicates how likely the outcome is (in the specified timeframe).</xs:documentation>
</xs:annotation>
<xs:element name="probabilityDecimal" type="decimal"/>
<xs:element name="probabilityRange" type="Range"/>
</xs:choice>
<xs:element name="qualitativeRisk" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates how likely the outcome is (in the specified timeframe), expressed as a qualitative value (e.g. low, medium, or high).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relativeRisk" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the risk for this particular subject (with their specific characteristics) divided by the risk of the population in general. (Numbers greater than 1 = higher risk than the population, numbers less than 1 = lower risk.).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the period of time or age range of the subject to which the specified probability applies.</xs:documentation>
</xs:annotation>
<xs:element name="whenPeriod" type="Period"/>
<xs:element name="whenRange" type="Range"/>
</xs:choice>
<xs:element name="rationale" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Additional information explaining the basis for the prediction.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="RiskEvidenceSynthesis" type="RiskEvidenceSynthesis">
<xs:annotation>
<xs:documentation xml:lang="en">The RiskEvidenceSynthesis resource describes the likelihood of an outcome in a population plus exposure state where the risk estimate is derived from a combination of research studies.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="RiskEvidenceSynthesis">
<xs:annotation>
<xs:documentation xml:lang="en">The RiskEvidenceSynthesis resource describes the likelihood of an outcome in a population plus exposure state where the risk estimate is derived from a combination of research studies.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this risk evidence synthesis when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this risk evidence synthesis is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the risk evidence synthesis is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this risk evidence synthesis when it is represented in other formats, or referenced in a specification, model, design or an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the risk evidence synthesis when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the risk evidence synthesis author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the risk evidence synthesis. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the risk evidence synthesis.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this risk evidence synthesis. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the risk evidence synthesis was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the risk evidence synthesis changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the risk evidence synthesis.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the risk evidence synthesis from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">A human-readable string to clarify or explain concepts about the resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate risk evidence synthesis instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the risk evidence synthesis is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the risk evidence synthesis and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the risk evidence synthesis.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="approvalDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lastReviewDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="effectivePeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period during which the risk evidence synthesis content was or is planned to be in active use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="topic" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Descriptive topics related to the content of the RiskEvidenceSynthesis. Topics provide a high-level categorization grouping types of EffectEvidenceSynthesiss that can be useful for filtering and searching.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individiual or organization primarily involved in the creation and maintenance of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="editor" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for internal coherence of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reviewer" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization primarily responsible for review of some aspect of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endorser" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">An individual or organization responsible for officially endorsing the content for use in some setting.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relatedArtifact" minOccurs="0" maxOccurs="unbounded" type="RelatedArtifact">
<xs:annotation>
<xs:documentation xml:lang="en">Related artifacts such as additional documentation, justification, or bibliographic references.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="synthesisType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of synthesis eg meta-analysis.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="studyType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of study eg randomized trial.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="population" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a EvidenceVariable resource that defines the population for the research.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="exposure" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a EvidenceVariable resource that defines the exposure for the research.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="outcome" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a EvidenceVariable resomece that defines the outcome for the research.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sampleSize" type="RiskEvidenceSynthesis.SampleSize" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A description of the size of the sample involved in the synthesis.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="riskEstimate" type="RiskEvidenceSynthesis.RiskEstimate" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The estimated risk of the outcome.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="certainty" type="RiskEvidenceSynthesis.Certainty" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A description of the certainty of the risk estimate.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="RiskEvidenceSynthesis.SampleSize">
<xs:annotation>
<xs:documentation xml:lang="en">The RiskEvidenceSynthesis resource describes the likelihood of an outcome in a population plus exposure state where the risk estimate is derived from a combination of research studies.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Human-readable summary of sample size.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="numberOfStudies" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Number of studies included in this evidence synthesis.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="numberOfParticipants" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Number of participants included in this evidence synthesis.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="RiskEvidenceSynthesis.RiskEstimate">
<xs:annotation>
<xs:documentation xml:lang="en">The RiskEvidenceSynthesis resource describes the likelihood of an outcome in a population plus exposure state where the risk estimate is derived from a combination of research studies.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Human-readable summary of risk estimate.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Examples include proportion and mean.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="value" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">The point estimate of the risk estimate.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unitOfMeasure" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies the UCUM unit for the outcome.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="denominatorCount" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">The sample size for the group that was measured for this risk estimate.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="numeratorCount" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">The number of group members with the outcome of interest.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="precisionEstimate" type="RiskEvidenceSynthesis.PrecisionEstimate" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A description of the precision of the estimate for the effect.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="RiskEvidenceSynthesis.PrecisionEstimate">
<xs:annotation>
<xs:documentation xml:lang="en">The RiskEvidenceSynthesis resource describes the likelihood of an outcome in a population plus exposure state where the risk estimate is derived from a combination of research studies.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Examples include confidence interval and interquartile range.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="level" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Use 95 for a 95% confidence interval.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="from" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Lower bound of confidence interval.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="to" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Upper bound of confidence interval.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="RiskEvidenceSynthesis.Certainty">
<xs:annotation>
<xs:documentation xml:lang="en">The RiskEvidenceSynthesis resource describes the likelihood of an outcome in a population plus exposure state where the risk estimate is derived from a combination of research studies.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="rating" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A rating of the certainty of the effect estimate.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">A human-readable string to clarify or explain concepts about the resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="certaintySubcomponent" type="RiskEvidenceSynthesis.CertaintySubcomponent" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A description of a component of the overall certainty.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="RiskEvidenceSynthesis.CertaintySubcomponent">
<xs:annotation>
<xs:documentation xml:lang="en">The RiskEvidenceSynthesis resource describes the likelihood of an outcome in a population plus exposure state where the risk estimate is derived from a combination of research studies.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of subcomponent of certainty rating.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="rating" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A rating of a subcomponent of rating certainty.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">A human-readable string to clarify or explain concepts about the resource.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Schedule" type="Schedule">
<xs:annotation>
<xs:documentation xml:lang="en">A container for slots of time that may be available for booking appointments.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Schedule">
<xs:annotation>
<xs:documentation xml:lang="en">A container for slots of time that may be available for booking appointments.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">External Ids for this item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="active" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether this schedule record is in active use or should not be used (such as was entered in error).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="serviceCategory" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A broad categorization of the service that is to be performed during this appointment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="serviceType" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The specific service that is to be performed during this appointment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specialty" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The specialty of a practitioner that would be required to perform the service requested in this appointment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="actor" minOccurs="1" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Slots that reference this schedule resource provide the availability details to these referenced resource(s).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="planningHorizon" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">The period of time that the slots that reference this Schedule resource cover (even if none exist). These cover the amount of time that an organization's planning horizon; the interval for which they are currently accepting appointments. This does not define a &quot;template&quot; for planning outside these dates.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comment" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Comments on the availability to describe any extended information. Such as custom constraints on the slots that may be associated.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="SearchParameter" type="SearchParameter">
<xs:annotation>
<xs:documentation xml:lang="en">A search parameter that defines a named search item that can be used to search/filter on a resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="SearchParameter">
<xs:annotation>
<xs:documentation xml:lang="en">A search parameter that defines a named search item that can be used to search/filter on a resource.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="1" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this search parameter when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this search parameter is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the search parameter is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the search parameter when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the search parameter author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the search parameter. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="derivedFrom" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">Where this search parameter is originally defined. If a derivedFrom is provided, then the details in the search parameter must be consistent with the definition from which it is defined. i.e. the parameter should have the same meaning, and (usually) the functionality should be a proper subset of the underlying search parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this search parameter. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this search parameter is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the search parameter was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the search parameter changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the search parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="1" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">And how it used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate search parameter instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the search parameter is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Explanation of why this search parameter is needed and why it has been designed as it has.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The code used in the URL or the parameter name in a parameters resource for this search parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="base" minOccurs="1" maxOccurs="unbounded" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The base resource type(s) that this search parameter can be used against.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="SearchParamType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of value that a search parameter may contain, and how the content is interpreted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expression" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A FHIRPath expression that returns a set of elements for the search parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="xpath" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">An XPath expression that returns a set of elements for the search parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="xpathUsage" minOccurs="0" maxOccurs="1" type="XPathUsageType">
<xs:annotation>
<xs:documentation xml:lang="en">How the search parameter relates to the set of elements returned by evaluating the xpath query.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="target" minOccurs="0" maxOccurs="unbounded" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">Types of resource (if a resource is referenced).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="multipleOr" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether multiple values are allowed for each time the parameter exists. Values are separated by commas, and the parameter matches if any of the values match.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="multipleAnd" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether multiple parameters are allowed - e.g. more than one parameter with the same name. The search matches if all the parameters match.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comparator" minOccurs="0" maxOccurs="unbounded" type="SearchComparator">
<xs:annotation>
<xs:documentation xml:lang="en">Comparators supported for the search parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modifier" minOccurs="0" maxOccurs="unbounded" type="SearchModifierCode">
<xs:annotation>
<xs:documentation xml:lang="en">A modifier supported for the search parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="chain" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Contains the names of any search parameters which may be chained to the containing search parameter. Chained parameters may be added to search parameters of type reference and specify that resources will only be returned if they contain a reference to a resource which matches the chained parameter value. Values for this field should be drawn from SearchParameter.code for a parameter on the target resource type.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="component" type="SearchParameter.Component" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Used to define the parts of a composite search parameter.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SearchParameter.Component">
<xs:annotation>
<xs:documentation xml:lang="en">A search parameter that defines a named search item that can be used to search/filter on a resource.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="definition" minOccurs="1" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">The definition of the search parameter that describes this part.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expression" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A sub-expression that defines how to extract values for this component from the output of the main SearchParameter.expression.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="XPathUsageType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="normal">
<xs:annotation>
<xs:documentation xml:lang="en">Normal</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="phonetic">
<xs:annotation>
<xs:documentation xml:lang="en">Phonetic</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="nearby">
<xs:annotation>
<xs:documentation xml:lang="en">Nearby</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="distance">
<xs:annotation>
<xs:documentation xml:lang="en">Distance</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="other">
<xs:annotation>
<xs:documentation xml:lang="en">Other</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="XPathUsageType">
<xs:annotation>
<xs:documentation xml:lang="en">How a search parameter relates to the set of elements returned by evaluating its xpath query.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="XPathUsageType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="SearchModifierCode-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="missing">
<xs:annotation>
<xs:documentation xml:lang="en">Missing</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="exact">
<xs:annotation>
<xs:documentation xml:lang="en">Exact</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="contains">
<xs:annotation>
<xs:documentation xml:lang="en">Contains</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="not">
<xs:annotation>
<xs:documentation xml:lang="en">Not</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="text">
<xs:annotation>
<xs:documentation xml:lang="en">Text</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="in">
<xs:annotation>
<xs:documentation xml:lang="en">In</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="not-in">
<xs:annotation>
<xs:documentation xml:lang="en">Not In</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="below">
<xs:annotation>
<xs:documentation xml:lang="en">Below</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="above">
<xs:annotation>
<xs:documentation xml:lang="en">Above</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="type">
<xs:annotation>
<xs:documentation xml:lang="en">Type</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ofType">
<xs:annotation>
<xs:documentation xml:lang="en">Of Type</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="SearchModifierCode">
<xs:annotation>
<xs:documentation xml:lang="en">A supported modifier for a search parameter.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="SearchModifierCode-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="SearchComparator-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="eq">
<xs:annotation>
<xs:documentation xml:lang="en">Equals</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ne">
<xs:annotation>
<xs:documentation xml:lang="en">Not Equals</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="gt">
<xs:annotation>
<xs:documentation xml:lang="en">Greater Than</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="lt">
<xs:annotation>
<xs:documentation xml:lang="en">Less Than</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ge">
<xs:annotation>
<xs:documentation xml:lang="en">Greater or Equals</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="le">
<xs:annotation>
<xs:documentation xml:lang="en">Less of Equal</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="sa">
<xs:annotation>
<xs:documentation xml:lang="en">Starts After</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="eb">
<xs:annotation>
<xs:documentation xml:lang="en">Ends Before</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ap">
<xs:annotation>
<xs:documentation xml:lang="en">Approximately</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="SearchComparator">
<xs:annotation>
<xs:documentation xml:lang="en">What Search Comparator Codes are supported in search.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="SearchComparator-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="ServiceRequest" type="ServiceRequest">
<xs:annotation>
<xs:documentation xml:lang="en">A record of a request for service such as diagnostic investigations, treatments, or operations to be performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ServiceRequest">
<xs:annotation>
<xs:documentation xml:lang="en">A record of a request for service such as diagnostic investigations, treatments, or operations to be performed.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifiers assigned to this order instance by the orderer and/or the receiver and/or order fulfiller.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesCanonical" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to a FHIR-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this ServiceRequest.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesUri" minOccurs="0" maxOccurs="unbounded" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to an externally maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this ServiceRequest.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basedOn" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Plan/proposal/order fulfilled by this request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="replaces" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The request takes the place of the referenced completed or terminated request(s).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requisition" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A shared identifier common to all service requests that were authorized more or less simultaneously by a single author, representing the composite or group identifier.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="RequestStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the order.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="intent" minOccurs="1" maxOccurs="1" type="RequestIntent">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the request is a proposal, plan, an original order or a reflex order.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code that classifies the service for searching, sorting and display purposes (e.g. &quot;Surgical Procedure&quot;).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priority" minOccurs="0" maxOccurs="1" type="RequestPriority">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates how quickly the ServiceRequest should be addressed with respect to other requests.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="doNotPerform" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Set this to true if the record is saying that the service/procedure should NOT be performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code that identifies a particular service (i.e., procedure, diagnostic investigation, or panel of investigations) that have been requested.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="orderDetail" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Additional details and instructions about the how the services are to be delivered. For example, and order for a urinary catheter may have an order detail for an external or indwelling catheter, or an order for a bandage may require additional instructions specifying how the bandage should be applied.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">An amount of service being requested which can be a quantity ( for example $1,500 home modification), a ratio ( for example, 20 half day visits per month), or a range (2.0 to 1.8 Gy per fraction).</xs:documentation>
</xs:annotation>
<xs:element name="quantityQuantity" type="Quantity"/>
<xs:element name="quantityRatio" type="Ratio"/>
<xs:element name="quantityRange" type="Range"/>
</xs:choice>
<xs:element name="subject" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">On whom or what the service is to be performed. This is usually a human patient, but can also be requested on animals, groups of humans or animals, devices such as dialysis machines, or even locations (typically for environmental scans).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">An encounter that provides additional information about the healthcare context in which this request is made.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The date/time at which the requested service should occur.</xs:documentation>
</xs:annotation>
<xs:element name="occurrenceDateTime" type="dateTime"/>
<xs:element name="occurrencePeriod" type="Period"/>
<xs:element name="occurrenceTiming" type="Timing"/>
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">If a CodeableConcept is present, it indicates the pre-condition for performing the service. For example &quot;pain&quot;, &quot;on flare-up&quot;, etc.</xs:documentation>
</xs:annotation>
<xs:element name="asNeededBoolean" type="boolean"/>
<xs:element name="asNeededCodeableConcept" type="CodeableConcept"/>
</xs:choice>
<xs:element name="authoredOn" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">When the request transitioned to being actionable.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requester" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The individual who initiated the request and has responsibility for its activation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performerType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Desired type of performer for doing the requested service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performer" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The desired performer for doing the requested service. For example, the surgeon, dermatopathologist, endoscopist, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="locationCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The preferred location(s) where the procedure should actually happen in coded or free text form. E.g. at home or nursing day care center.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="locationReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to the the preferred location(s) where the procedure should actually happen. E.g. at home or nursing day care center.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">An explanation or justification for why this service is being requested in coded or textual form. This is often for billing purposes. May relate to the resources referred to in `supportingInfo`.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates another resource that provides a justification for why this service is being requested. May relate to the resources referred to in `supportingInfo`.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="insurance" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Insurance plans, coverage extensions, pre-authorizations and/or pre-determinations that may be needed for delivering the requested service.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="supportingInfo" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Additional clinical information about the patient or specimen that may influence the services or their interpretations. This information includes diagnosis, clinical findings and other observations. In laboratory ordering these are typically referred to as &quot;ask at order entry questions (AOEs)&quot;. This includes observations explicitly requested by the producer (filler) to provide context or supporting information needed to complete the order. For example, reporting the amount of inspired oxygen for blood gas measurements.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specimen" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">One or more specimens that the laboratory procedure will use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="bodySite" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Anatomic location where the procedure should be performed. This is the target site.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Any other notes and comments made about the service request. For example, internal billing notes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patientInstruction" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Instructions in terms that are understood by the patient or consumer.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relevantHistory" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Key events in the history of the request.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Slot" type="Slot">
<xs:annotation>
<xs:documentation xml:lang="en">A slot of time on a schedule that may be available for booking appointments.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Slot">
<xs:annotation>
<xs:documentation xml:lang="en">A slot of time on a schedule that may be available for booking appointments.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">External Ids for this item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="serviceCategory" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A broad categorization of the service that is to be performed during this appointment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="serviceType" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of appointments that can be booked into this slot (ideally this would be an identifiable service - which is at a location, rather than the location itself). If provided then this overrides the value provided on the availability resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specialty" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The specialty of a practitioner that would be required to perform the service requested in this appointment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="appointmentType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The style of appointment or patient that may be booked in the slot (not service type).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="schedule" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The schedule resource that this slot defines an interval of status information.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="SlotStatus">
<xs:annotation>
<xs:documentation xml:lang="en">busy | free | busy-unavailable | busy-tentative | entered-in-error.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="start" minOccurs="1" maxOccurs="1" type="instant">
<xs:annotation>
<xs:documentation xml:lang="en">Date/Time that the slot is to begin.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="end" minOccurs="1" maxOccurs="1" type="instant">
<xs:annotation>
<xs:documentation xml:lang="en">Date/Time that the slot is to conclude.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="overbooked" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">This slot has already been overbooked, appointments are unlikely to be accepted for this time.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comment" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Comments on the slot to describe any extended information. Such as custom constraints on the slot.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="SlotStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="busy">
<xs:annotation>
<xs:documentation xml:lang="en">Busy</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="free">
<xs:annotation>
<xs:documentation xml:lang="en">Free</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="busy-unavailable">
<xs:annotation>
<xs:documentation xml:lang="en">Busy (Unavailable)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="busy-tentative">
<xs:annotation>
<xs:documentation xml:lang="en">Busy (Tentative)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="SlotStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The free/busy status of the slot.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="SlotStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Specimen" type="Specimen">
<xs:annotation>
<xs:documentation xml:lang="en">A sample to be used for analysis.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Specimen">
<xs:annotation>
<xs:documentation xml:lang="en">A sample to be used for analysis.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Id for specimen.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="accessionIdentifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier assigned by the lab when accessioning specimen(s). This is not necessarily the same as the specimen identifier, depending on local lab procedures.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="SpecimenStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The availability of the specimen.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The kind of material that forms the specimen.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subject" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Where the specimen came from. This may be from patient(s), from a location (e.g., the source of an environmental sample), or a sampling of a substance or a device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="receivedTime" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Time when specimen was received for processing or testing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="parent" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to the parent (source) specimen which is used when the specimen was either derived from or a component of another specimen.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="request" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Details concerning a service request that required a specimen to be collected.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="collection" type="Specimen.Collection" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Details concerning the specimen collection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="processing" type="Specimen.Processing" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Details concerning processing and processing steps for the specimen.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="container" type="Specimen.Container" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The container holding the specimen. The recursive nature of containers; i.e. blood in tube in tray in rack is not addressed here.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="condition" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A mode or state of being that describes the nature of the specimen.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">To communicate any details or issues about the specimen or during the specimen collection. (for example: broken vial, sent with patient, frozen).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Specimen.Collection">
<xs:annotation>
<xs:documentation xml:lang="en">A sample to be used for analysis.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="collector" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Person who collected the specimen.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Time when specimen was collected from subject - the physiologically relevant time.</xs:documentation>
</xs:annotation>
<xs:element name="collectedDateTime" type="dateTime"/>
<xs:element name="collectedPeriod" type="Period"/>
</xs:choice>
<xs:element name="duration" minOccurs="0" maxOccurs="1" type="Duration">
<xs:annotation>
<xs:documentation xml:lang="en">The span of time over which the collection of a specimen occurred.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The quantity of specimen collected; for instance the volume of a blood sample, or the physical measurement of an anatomic pathology sample.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="method" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A coded value specifying the technique that is used to perform the procedure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="bodySite" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Anatomical location from which the specimen was collected (if subject is a patient). This is the target site. This element is not used for environmental specimens.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Abstinence or reduction from some or all food, drink, or both, for a period of time prior to sample collection.</xs:documentation>
</xs:annotation>
<xs:element name="fastingStatusCodeableConcept" type="CodeableConcept"/>
<xs:element name="fastingStatusDuration" type="Duration"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Specimen.Processing">
<xs:annotation>
<xs:documentation xml:lang="en">A sample to be used for analysis.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Textual description of procedure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="procedure" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A coded value specifying the procedure used to process the specimen.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="additive" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Material used in the processing step.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">A record of the time or period when the specimen processing occurred. For example the time of sample fixation or the period of time the sample was in formalin.</xs:documentation>
</xs:annotation>
<xs:element name="timeDateTime" type="dateTime"/>
<xs:element name="timePeriod" type="Period"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Specimen.Container">
<xs:annotation>
<xs:documentation xml:lang="en">A sample to be used for analysis.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Id for container. There may be multiple; a manufacturer's bar code, lab assigned identifier, etc. The container ID may differ from the specimen id in some circumstances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Textual description of the container.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of container associated with the specimen (e.g. slide, aliquot, etc.).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="capacity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The capacity (volume or other measure) the container may contain.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="specimenQuantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The quantity of specimen in the container; may be volume, dimensions, or other appropriate measurements, depending on the specimen type.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Introduced substance to preserve, maintain or enhance the specimen. Examples: Formalin, Citrate, EDTA.</xs:documentation>
</xs:annotation>
<xs:element name="additiveCodeableConcept" type="CodeableConcept"/>
<xs:element name="additiveReference" type="Reference"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="SpecimenStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="available">
<xs:annotation>
<xs:documentation xml:lang="en">Available</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unavailable">
<xs:annotation>
<xs:documentation xml:lang="en">Unavailable</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unsatisfactory">
<xs:annotation>
<xs:documentation xml:lang="en">Unsatisfactory</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="SpecimenStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Codes providing the status/availability of a specimen.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="SpecimenStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="SpecimenDefinition" type="SpecimenDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">A kind of specimen with associated set of requirements.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="SpecimenDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">A kind of specimen with associated set of requirements.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A business identifier associated with the kind of specimen.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="typeCollected" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The kind of material to be collected.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patientPreparation" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Preparation of the patient for specimen collection.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="timeAspect" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Time aspect of specimen collection (duration or offset).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="collection" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The action to be performed for collecting the specimen.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="typeTested" type="SpecimenDefinition.TypeTested" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Specimen conditioned in a container as expected by the testing laboratory.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SpecimenDefinition.TypeTested">
<xs:annotation>
<xs:documentation xml:lang="en">A kind of specimen with associated set of requirements.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="isDerived" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Primary of secondary specimen.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The kind of specimen conditioned for testing expected by lab.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="preference" minOccurs="1" maxOccurs="1" type="SpecimenContainedPreference">
<xs:annotation>
<xs:documentation xml:lang="en">The preference for this type of conditioned specimen.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="container" type="SpecimenDefinition.Container" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The specimen's container.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requirement" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Requirements for delivery and special handling of this kind of conditioned specimen.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="retentionTime" minOccurs="0" maxOccurs="1" type="Duration">
<xs:annotation>
<xs:documentation xml:lang="en">The usual time that a specimen of this kind is retained after the ordered tests are completed, for the purpose of additional testing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="rejectionCriterion" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Criterion for rejection of the specimen in its container by the laboratory.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="handling" type="SpecimenDefinition.Handling" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Set of instructions for preservation/transport of the specimen at a defined temperature interval, prior the testing process.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SpecimenDefinition.Container">
<xs:annotation>
<xs:documentation xml:lang="en">A kind of specimen with associated set of requirements.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="material" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of material of the container.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of container used to contain this kind of specimen.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="cap" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Color of container cap.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The textual description of the kind of container.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="capacity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The capacity (volume or other measure) of this kind of container.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The minimum volume to be conditioned in the container.</xs:documentation>
</xs:annotation>
<xs:element name="minimumVolumeQuantity" type="Quantity"/>
<xs:element name="minimumVolumeString" type="string"/>
</xs:choice>
<xs:element name="additive" type="SpecimenDefinition.Additive" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Substance introduced in the kind of container to preserve, maintain or enhance the specimen. Examples: Formalin, Citrate, EDTA.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="preparation" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Special processing that should be applied to the container for this kind of specimen.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SpecimenDefinition.Additive">
<xs:annotation>
<xs:documentation xml:lang="en">A kind of specimen with associated set of requirements.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Substance introduced in the kind of container to preserve, maintain or enhance the specimen. Examples: Formalin, Citrate, EDTA.</xs:documentation>
</xs:annotation>
<xs:element name="additiveCodeableConcept" type="CodeableConcept"/>
<xs:element name="additiveReference" type="Reference"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SpecimenDefinition.Handling">
<xs:annotation>
<xs:documentation xml:lang="en">A kind of specimen with associated set of requirements.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="temperatureQualifier" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">It qualifies the interval of temperature, which characterizes an occurrence of handling. Conditions that are not related to temperature may be handled in the instruction element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="temperatureRange" minOccurs="0" maxOccurs="1" type="Range">
<xs:annotation>
<xs:documentation xml:lang="en">The temperature interval for this set of handling instructions.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="maxDuration" minOccurs="0" maxOccurs="1" type="Duration">
<xs:annotation>
<xs:documentation xml:lang="en">The maximum time interval of preservation of the specimen with these conditions.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instruction" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Additional textual instructions for the preservation or transport of the specimen. For instance, 'Protect from light exposure'.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="SpecimenContainedPreference-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="preferred">
<xs:annotation>
<xs:documentation xml:lang="en">Preferred</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="alternate">
<xs:annotation>
<xs:documentation xml:lang="en">Alternate</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="SpecimenContainedPreference">
<xs:annotation>
<xs:documentation xml:lang="en">Degree of preference of a type of conditioned specimen.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="SpecimenContainedPreference-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="StructureDefinition" type="StructureDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">A definition of a FHIR structure. This resource is used to describe the underlying resources, data types defined in FHIR, and also for describing extensions and constraints on resources and data types.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="StructureDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">A definition of a FHIR structure. This resource is used to describe the underlying resources, data types defined in FHIR, and also for describing extensions and constraints on resources and data types.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="1" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this structure definition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this structure definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the structure definition is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this structure definition when it is represented in other formats, or referenced in a specification, model, design or an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the structure definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the structure definition author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the structure definition. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the structure definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this structure definition. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this structure definition is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the structure definition was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the structure definition changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the structure definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the structure definition from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate structure definition instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the structure definition is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Explanation of why this structure definition is needed and why it has been designed as it has.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the structure definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the structure definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="keyword" minOccurs="0" maxOccurs="unbounded" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">A set of key words or terms from external terminologies that may be used to assist with indexing and searching of templates nby describing the use of this structure definition, or the content it describes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="fhirVersion" minOccurs="0" maxOccurs="1" type="FHIRVersion">
<xs:annotation>
<xs:documentation xml:lang="en">The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.0.1. for this version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="mapping" type="StructureDefinition.Mapping" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">An external specification that the content is mapped to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="kind" minOccurs="1" maxOccurs="1" type="StructureDefinitionKind">
<xs:annotation>
<xs:documentation xml:lang="en">Defines the kind of structure that this definition is describing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="abstract" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether structure this definition describes is abstract or not - that is, whether the structure is not intended to be instantiated. For Resources and Data types, abstract types will never be exchanged between systems.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="context" type="StructureDefinition.Context" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the types of resource or data type elements to which the extension can be applied.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contextInvariant" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A set of rules as FHIRPath Invariants about when the extension can be used (e.g. co-occurrence variants for the extension). All the rules must be true.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The type this structure describes. If the derivation kind is 'specialization' then this is the master definition for a type, and there is always one of these (a data type, an extension, a resource, including abstract ones). Otherwise the structure definition is a constraint on the stated type (and in this case, the type cannot be an abstract type). References are URLs that are relative to http://hl7.org/fhir/StructureDefinition e.g. &quot;string&quot; is a reference to http://hl7.org/fhir/StructureDefinition/string. Absolute URLs are only allowed in logical models.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="baseDefinition" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is the base structure from which this type is derived, either by specialization or constraint.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="derivation" minOccurs="0" maxOccurs="1" type="TypeDerivationRule">
<xs:annotation>
<xs:documentation xml:lang="en">How the type relates to the baseDefinition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="snapshot" type="StructureDefinition.Snapshot" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A snapshot view is expressed in a standalone form that can be used and interpreted without considering the base StructureDefinition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="differential" type="StructureDefinition.Differential" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A differential view is expressed relative to the base StructureDefinition - a statement of differences that it applies.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="StructureDefinition.Mapping">
<xs:annotation>
<xs:documentation xml:lang="en">A definition of a FHIR structure. This resource is used to describe the underlying resources, data types defined in FHIR, and also for describing extensions and constraints on resources and data types.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="identity" minOccurs="1" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">An Internal id that is used to identify this mapping set when specific mappings are made.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="uri" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that identifies the specification that this mapping is expressed to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A name for the specification that is being mapped to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comment" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Comments about this mapping, including version notes, issues, scope limitations, and other important notes for usage.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="StructureDefinition.Context">
<xs:annotation>
<xs:documentation xml:lang="en">A definition of a FHIR structure. This resource is used to describe the underlying resources, data types defined in FHIR, and also for describing extensions and constraints on resources and data types.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="ExtensionContextType">
<xs:annotation>
<xs:documentation xml:lang="en">Defines how to interpret the expression that defines what the context of the extension is.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expression" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">An expression that defines where an extension can be used in resources.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="StructureDefinition.Snapshot">
<xs:annotation>
<xs:documentation xml:lang="en">A definition of a FHIR structure. This resource is used to describe the underlying resources, data types defined in FHIR, and also for describing extensions and constraints on resources and data types.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="element" minOccurs="1" maxOccurs="unbounded" type="ElementDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">Captures constraints on each element within the resource.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="StructureDefinition.Differential">
<xs:annotation>
<xs:documentation xml:lang="en">A definition of a FHIR structure. This resource is used to describe the underlying resources, data types defined in FHIR, and also for describing extensions and constraints on resources and data types.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="element" minOccurs="1" maxOccurs="unbounded" type="ElementDefinition">
<xs:annotation>
<xs:documentation xml:lang="en">Captures constraints on each element within the resource.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="StructureDefinitionKind-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="primitive-type">
<xs:annotation>
<xs:documentation xml:lang="en">Primitive Data Type</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="complex-type">
<xs:annotation>
<xs:documentation xml:lang="en">Complex Data Type</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="resource">
<xs:annotation>
<xs:documentation xml:lang="en">Resource</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="logical">
<xs:annotation>
<xs:documentation xml:lang="en">Logical</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="StructureDefinitionKind">
<xs:annotation>
<xs:documentation xml:lang="en">Defines the type of structure that a definition is describing.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="StructureDefinitionKind-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="TypeDerivationRule-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="specialization">
<xs:annotation>
<xs:documentation xml:lang="en">Specialization</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="constraint">
<xs:annotation>
<xs:documentation xml:lang="en">Constraint</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="TypeDerivationRule">
<xs:annotation>
<xs:documentation xml:lang="en">How a type relates to its baseDefinition.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="TypeDerivationRule-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ExtensionContextType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="fhirpath">
<xs:annotation>
<xs:documentation xml:lang="en">FHIRPath</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="element">
<xs:annotation>
<xs:documentation xml:lang="en">Element ID</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="extension">
<xs:annotation>
<xs:documentation xml:lang="en">Extension URL</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ExtensionContextType">
<xs:annotation>
<xs:documentation xml:lang="en">How an extension context is interpreted.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="ExtensionContextType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="StructureMap" type="StructureMap">
<xs:annotation>
<xs:documentation xml:lang="en">A Map of relationships between 2 structures that can be used to transform data.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="StructureMap">
<xs:annotation>
<xs:documentation xml:lang="en">A Map of relationships between 2 structures that can be used to transform data.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="1" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this structure map when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this structure map is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the structure map is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this structure map when it is represented in other formats, or referenced in a specification, model, design or an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the structure map when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the structure map author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the structure map. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the structure map.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this structure map. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this structure map is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the structure map was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the structure map changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the structure map.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the structure map from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate structure map instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the structure map is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Explanation of why this structure map is needed and why it has been designed as it has.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the structure map and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the structure map.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="structure" type="StructureMap.Structure" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A structure definition used by this map. The structure definition may describe instances that are converted, or the instances that are produced.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="import" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">Other maps used by this map (canonical URLs).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="group" type="StructureMap.Group" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Organizes the mapping into manageable chunks for human review/ease of maintenance.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="StructureMap.Structure">
<xs:annotation>
<xs:documentation xml:lang="en">A Map of relationships between 2 structures that can be used to transform data.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="url" minOccurs="1" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">The canonical reference to the structure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="mode" minOccurs="1" maxOccurs="1" type="StructureMapModelMode">
<xs:annotation>
<xs:documentation xml:lang="en">How the referenced structure is used in this mapping.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="alias" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name used for this type in the map.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="documentation" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Documentation that describes how the structure is used in the mapping.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="StructureMap.Group">
<xs:annotation>
<xs:documentation xml:lang="en">A Map of relationships between 2 structures that can be used to transform data.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">A unique name for the group for the convenience of human readers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="extends" minOccurs="0" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">Another group that this group adds rules to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="typeMode" minOccurs="1" maxOccurs="1" type="StructureMapGroupTypeMode">
<xs:annotation>
<xs:documentation xml:lang="en">If this is the default rule set to apply for the source type or this combination of types.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="documentation" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Additional supporting documentation that explains the purpose of the group and the types of mappings within it.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="input" type="StructureMap.Input" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A name assigned to an instance of data. The instance must be provided when the mapping is invoked.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="rule" type="StructureMap.Rule" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Transform Rule from source to target.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="StructureMap.Input">
<xs:annotation>
<xs:documentation xml:lang="en">A Map of relationships between 2 structures that can be used to transform data.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">Name for this instance of data.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Type for this instance of data.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="mode" minOccurs="1" maxOccurs="1" type="StructureMapInputMode">
<xs:annotation>
<xs:documentation xml:lang="en">Mode for this instance of data.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="documentation" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Documentation for this instance of data.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="StructureMap.Rule">
<xs:annotation>
<xs:documentation xml:lang="en">A Map of relationships between 2 structures that can be used to transform data.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">Name of the rule for internal references.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" type="StructureMap.Source" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Source inputs to the mapping.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="target" type="StructureMap.Target" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Content to create because of this mapping rule.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="rule" type="StructureMap.Rule" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Rules contained in this rule.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dependent" type="StructureMap.Dependent" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Which other rules to apply in the context of this rule.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="documentation" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Documentation for this instance of data.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="StructureMap.Source">
<xs:annotation>
<xs:documentation xml:lang="en">A Map of relationships between 2 structures that can be used to transform data.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="context" minOccurs="1" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">Type or variable this rule applies to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="min" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Specified minimum cardinality for the element. This is optional; if present, it acts an implicit check on the input content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="max" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Specified maximum cardinality for the element - a number or a &quot;*&quot;. This is optional; if present, it acts an implicit check on the input content (* just serves as documentation; it's the default value).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Specified type for the element. This works as a condition on the mapping - use for polymorphic elements.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">A value to use if there is no existing value in the source object.</xs:documentation>
</xs:annotation>
<xs:element name="defaultValueBase64Binary" type="base64Binary"/>
<xs:element name="defaultValueBoolean" type="boolean"/>
<xs:element name="defaultValueCanonical" type="canonical"/>
<xs:element name="defaultValueCode" type="code"/>
<xs:element name="defaultValueDate" type="date"/>
<xs:element name="defaultValueDateTime" type="dateTime"/>
<xs:element name="defaultValueDecimal" type="decimal"/>
<xs:element name="defaultValueId" type="id"/>
<xs:element name="defaultValueInstant" type="instant"/>
<xs:element name="defaultValueInteger" type="integer"/>
<xs:element name="defaultValueMarkdown" type="markdown"/>
<xs:element name="defaultValueOid" type="oid"/>
<xs:element name="defaultValuePositiveInt" type="positiveInt"/>
<xs:element name="defaultValueString" type="string"/>
<xs:element name="defaultValueTime" type="time"/>
<xs:element name="defaultValueUnsignedInt" type="unsignedInt"/>
<xs:element name="defaultValueUri" type="uri"/>
<xs:element name="defaultValueUrl" type="url"/>
<xs:element name="defaultValueUuid" type="uuid"/>
<xs:element name="defaultValueAddress" type="Address"/>
<xs:element name="defaultValueAge" type="Age"/>
<xs:element name="defaultValueAnnotation" type="Annotation"/>
<xs:element name="defaultValueAttachment" type="Attachment"/>
<xs:element name="defaultValueCodeableConcept" type="CodeableConcept"/>
<xs:element name="defaultValueCoding" type="Coding"/>
<xs:element name="defaultValueContactPoint" type="ContactPoint"/>
<xs:element name="defaultValueCount" type="Count"/>
<xs:element name="defaultValueDistance" type="Distance"/>
<xs:element name="defaultValueDuration" type="Duration"/>
<xs:element name="defaultValueHumanName" type="HumanName"/>
<xs:element name="defaultValueIdentifier" type="Identifier"/>
<xs:element name="defaultValueMoney" type="Money"/>
<xs:element name="defaultValuePeriod" type="Period"/>
<xs:element name="defaultValueQuantity" type="Quantity"/>
<xs:element name="defaultValueRange" type="Range"/>
<xs:element name="defaultValueRatio" type="Ratio"/>
<xs:element name="defaultValueReference" type="Reference"/>
<xs:element name="defaultValueSampledData" type="SampledData"/>
<xs:element name="defaultValueSignature" type="Signature"/>
<xs:element name="defaultValueTiming" type="Timing"/>
<xs:element name="defaultValueContactDetail" type="ContactDetail"/>
<xs:element name="defaultValueContributor" type="Contributor"/>
<xs:element name="defaultValueDataRequirement" type="DataRequirement"/>
<xs:element name="defaultValueExpression" type="Expression"/>
<xs:element name="defaultValueParameterDefinition" type="ParameterDefinition"/>
<xs:element name="defaultValueRelatedArtifact" type="RelatedArtifact"/>
<xs:element name="defaultValueTriggerDefinition" type="TriggerDefinition"/>
<xs:element name="defaultValueUsageContext" type="UsageContext"/>
<xs:element name="defaultValueDosage" type="Dosage"/>
<xs:element name="defaultValueMeta" type="Meta"/>
</xs:choice>
<xs:element name="element" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Optional field for this source.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="listMode" minOccurs="0" maxOccurs="1" type="StructureMapSourceListMode">
<xs:annotation>
<xs:documentation xml:lang="en">How to handle the list mode for this element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="variable" minOccurs="0" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">Named context for field, if a field is specified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="condition" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">FHIRPath expression - must be true or the rule does not apply.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="check" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">FHIRPath expression - must be true or the mapping engine throws an error instead of completing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="logMessage" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A FHIRPath expression which specifies a message to put in the transform log when content matching the source rule is found.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="StructureMap.Target">
<xs:annotation>
<xs:documentation xml:lang="en">A Map of relationships between 2 structures that can be used to transform data.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="context" minOccurs="0" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">Type or variable this rule applies to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contextType" minOccurs="0" maxOccurs="1" type="StructureMapContextType">
<xs:annotation>
<xs:documentation xml:lang="en">How to interpret the context.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="element" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Field to create in the context.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="variable" minOccurs="0" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">Named context for field, if desired, and a field is specified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="listMode" minOccurs="0" maxOccurs="unbounded" type="StructureMapTargetListMode">
<xs:annotation>
<xs:documentation xml:lang="en">If field is a list, how to manage the list.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="listRuleId" minOccurs="0" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">Internal rule reference for shared list items.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="transform" minOccurs="0" maxOccurs="1" type="StructureMapTransform">
<xs:annotation>
<xs:documentation xml:lang="en">How the data is copied / created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="parameter" type="StructureMap.Parameter" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Parameters to the transform.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="StructureMap.Parameter">
<xs:annotation>
<xs:documentation xml:lang="en">A Map of relationships between 2 structures that can be used to transform data.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Parameter value - variable or literal.</xs:documentation>
</xs:annotation>
<xs:element name="valueId" type="id"/>
<xs:element name="valueString" type="string"/>
<xs:element name="valueBoolean" type="boolean"/>
<xs:element name="valueInteger" type="integer"/>
<xs:element name="valueDecimal" type="decimal"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="StructureMap.Dependent">
<xs:annotation>
<xs:documentation xml:lang="en">A Map of relationships between 2 structures that can be used to transform data.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">Name of a rule or group to apply.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="variable" minOccurs="1" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Variable to pass to the rule or group.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="StructureMapInputMode-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="source">
<xs:annotation>
<xs:documentation xml:lang="en">Source Instance</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="target">
<xs:annotation>
<xs:documentation xml:lang="en">Target Instance</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="StructureMapInputMode">
<xs:annotation>
<xs:documentation xml:lang="en">Mode for this instance of data.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="StructureMapInputMode-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="StructureMapContextType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="type">
<xs:annotation>
<xs:documentation xml:lang="en">Type</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="variable">
<xs:annotation>
<xs:documentation xml:lang="en">Variable</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="StructureMapContextType">
<xs:annotation>
<xs:documentation xml:lang="en">How to interpret the context.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="StructureMapContextType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="StructureMapTargetListMode-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="first">
<xs:annotation>
<xs:documentation xml:lang="en">First</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="share">
<xs:annotation>
<xs:documentation xml:lang="en">Share</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="last">
<xs:annotation>
<xs:documentation xml:lang="en">Last</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="collate">
<xs:annotation>
<xs:documentation xml:lang="en">Collate</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="StructureMapTargetListMode">
<xs:annotation>
<xs:documentation xml:lang="en">If field is a list, how to manage the production.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="StructureMapTargetListMode-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="StructureMapTransform-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="create">
<xs:annotation>
<xs:documentation xml:lang="en">create</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="copy">
<xs:annotation>
<xs:documentation xml:lang="en">copy</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="truncate">
<xs:annotation>
<xs:documentation xml:lang="en">truncate</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="escape">
<xs:annotation>
<xs:documentation xml:lang="en">escape</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cast">
<xs:annotation>
<xs:documentation xml:lang="en">cast</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="append">
<xs:annotation>
<xs:documentation xml:lang="en">append</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="translate">
<xs:annotation>
<xs:documentation xml:lang="en">translate</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="reference">
<xs:annotation>
<xs:documentation xml:lang="en">reference</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="dateOp">
<xs:annotation>
<xs:documentation xml:lang="en">dateOp</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="uuid">
<xs:annotation>
<xs:documentation xml:lang="en">uuid</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="pointer">
<xs:annotation>
<xs:documentation xml:lang="en">pointer</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="evaluate">
<xs:annotation>
<xs:documentation xml:lang="en">evaluate</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cc">
<xs:annotation>
<xs:documentation xml:lang="en">cc</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="c">
<xs:annotation>
<xs:documentation xml:lang="en">c</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="qty">
<xs:annotation>
<xs:documentation xml:lang="en">qty</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="id">
<xs:annotation>
<xs:documentation xml:lang="en">id</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cp">
<xs:annotation>
<xs:documentation xml:lang="en">cp</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="StructureMapTransform">
<xs:annotation>
<xs:documentation xml:lang="en">How data is copied/created.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="StructureMapTransform-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="StructureMapSourceListMode-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="first">
<xs:annotation>
<xs:documentation xml:lang="en">First</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="not_first">
<xs:annotation>
<xs:documentation xml:lang="en">All but the first</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="last">
<xs:annotation>
<xs:documentation xml:lang="en">Last</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="not_last">
<xs:annotation>
<xs:documentation xml:lang="en">All but the last</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="only_one">
<xs:annotation>
<xs:documentation xml:lang="en">Enforce only one</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="StructureMapSourceListMode">
<xs:annotation>
<xs:documentation xml:lang="en">If field is a list, how to manage the source.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="StructureMapSourceListMode-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="StructureMapGroupTypeMode-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="none">
<xs:annotation>
<xs:documentation xml:lang="en">Not a Default</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="types">
<xs:annotation>
<xs:documentation xml:lang="en">Default for Type Combination</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="type-and-types">
<xs:annotation>
<xs:documentation xml:lang="en">Default for type + combination</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="StructureMapGroupTypeMode">
<xs:annotation>
<xs:documentation xml:lang="en">If this is the default rule set to apply for the source type, or this combination of types.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="StructureMapGroupTypeMode-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="StructureMapModelMode-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="source">
<xs:annotation>
<xs:documentation xml:lang="en">Source Structure Definition</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="queried">
<xs:annotation>
<xs:documentation xml:lang="en">Queried Structure Definition</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="target">
<xs:annotation>
<xs:documentation xml:lang="en">Target Structure Definition</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="produced">
<xs:annotation>
<xs:documentation xml:lang="en">Produced Structure Definition</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="StructureMapModelMode">
<xs:annotation>
<xs:documentation xml:lang="en">How the referenced structure is used in this mapping.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="StructureMapModelMode-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Subscription" type="Subscription">
<xs:annotation>
<xs:documentation xml:lang="en">The subscription resource is used to define a push-based subscription from a server to another system. Once a subscription is registered with the server, the server checks every resource that is created or updated, and if the resource matches the given criteria, it sends a message on the defined &quot;channel&quot; so that another system can take an appropriate action.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Subscription">
<xs:annotation>
<xs:documentation xml:lang="en">The subscription resource is used to define a push-based subscription from a server to another system. Once a subscription is registered with the server, the server checks every resource that is created or updated, and if the resource matches the given criteria, it sends a message on the defined &quot;channel&quot; so that another system can take an appropriate action.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="SubscriptionStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the subscription, which marks the server state for managing the subscription.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactPoint">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details for a human to contact about the subscription. The primary use of this for system administrator troubleshooting.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="end" minOccurs="0" maxOccurs="1" type="instant">
<xs:annotation>
<xs:documentation xml:lang="en">The time for the server to turn the subscription off.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reason" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A description of why this subscription is defined.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="criteria" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The rules that the server should use to determine when to generate notifications for this subscription.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="error" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A record of the last error that occurred when the server processed a notification.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="channel" type="Subscription.Channel" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Details where to send notifications when resources are received that meet the criteria.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Subscription.Channel">
<xs:annotation>
<xs:documentation xml:lang="en">The subscription resource is used to define a push-based subscription from a server to another system. Once a subscription is registered with the server, the server checks every resource that is created or updated, and if the resource matches the given criteria, it sends a message on the defined &quot;channel&quot; so that another system can take an appropriate action.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="SubscriptionChannelType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of channel to send notifications on.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="endpoint" minOccurs="0" maxOccurs="1" type="url">
<xs:annotation>
<xs:documentation xml:lang="en">The url that describes the actual end-point to send messages to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="payload" minOccurs="0" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The mime type to send the payload in - either application/fhir+xml, or application/fhir+json. If the payload is not present, then there is no payload in the notification, just a notification. The mime type &quot;text/plain&quot; may also be used for Email and SMS subscriptions.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="header" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Additional headers / information to send as part of the notification.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="SubscriptionStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="requested">
<xs:annotation>
<xs:documentation xml:lang="en">Requested</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="active">
<xs:annotation>
<xs:documentation xml:lang="en">Active</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="error">
<xs:annotation>
<xs:documentation xml:lang="en">Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="off">
<xs:annotation>
<xs:documentation xml:lang="en">Off</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="SubscriptionStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of a subscription.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="SubscriptionStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="SubscriptionChannelType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="rest-hook">
<xs:annotation>
<xs:documentation xml:lang="en">Rest Hook</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="websocket">
<xs:annotation>
<xs:documentation xml:lang="en">Websocket</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="email">
<xs:annotation>
<xs:documentation xml:lang="en">Email</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="sms">
<xs:annotation>
<xs:documentation xml:lang="en">SMS</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="message">
<xs:annotation>
<xs:documentation xml:lang="en">Message</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="SubscriptionChannelType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of method used to execute a subscription.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="SubscriptionChannelType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Substance" type="Substance">
<xs:annotation>
<xs:documentation xml:lang="en">A homogeneous material with a definite composition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Substance">
<xs:annotation>
<xs:documentation xml:lang="en">A homogeneous material with a definite composition.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Unique identifier for the substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="FHIRSubstanceStatus">
<xs:annotation>
<xs:documentation xml:lang="en">A code to indicate if the substance is actively used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code that classifies the general type of substance. This is used for searching, sorting and display purposes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code (or set of codes) that identify this substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A description of the substance - its appearance, handling requirements, and other usage notes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instance" type="Substance.Instance" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Substance may be used to describe a kind of substance, or a specific package/container of the substance: an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ingredient" type="Substance.Ingredient" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A substance can be composed of other substances.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Substance.Instance">
<xs:annotation>
<xs:documentation xml:lang="en">A homogeneous material with a definite composition.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier associated with the package/container (usually a label affixed directly).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expiry" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">When the substance is no longer valid to use. For some substances, a single arbitrary date is used for expiry.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The amount of the substance.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Substance.Ingredient">
<xs:annotation>
<xs:documentation xml:lang="en">A homogeneous material with a definite composition.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Ratio">
<xs:annotation>
<xs:documentation xml:lang="en">The amount of the ingredient in the substance - a concentration ratio.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Another substance that is a component of this substance.</xs:documentation>
</xs:annotation>
<xs:element name="substanceCodeableConcept" type="CodeableConcept"/>
<xs:element name="substanceReference" type="Reference"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="FHIRSubstanceStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="active">
<xs:annotation>
<xs:documentation xml:lang="en">Active</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="inactive">
<xs:annotation>
<xs:documentation xml:lang="en">Inactive</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="FHIRSubstanceStatus">
<xs:annotation>
<xs:documentation xml:lang="en">A code to indicate if the substance is actively used.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="FHIRSubstanceStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="SubstanceNucleicAcid" type="SubstanceNucleicAcid">
<xs:annotation>
<xs:documentation xml:lang="en">Nucleic acids are defined by three distinct elements: the base, sugar and linkage. Individual substance/moiety IDs will be created for each of these elements. The nucleotide sequence will be always entered in the 5-3 direction.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="SubstanceNucleicAcid">
<xs:annotation>
<xs:documentation xml:lang="en">Nucleic acids are defined by three distinct elements: the base, sugar and linkage. Individual substance/moiety IDs will be created for each of these elements. The nucleotide sequence will be always entered in the 5-3 direction.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="sequenceType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of the sequence shall be specified based on a controlled vocabulary.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="numberOfSubunits" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">The number of linear sequences of nucleotides linked through phosphodiester bonds shall be described. Subunits would be strands of nucleic acids that are tightly associated typically through Watson-Crick base pairing. NOTE: If not specified in the reference source, the assumption is that there is 1 subunit.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="areaOfHybridisation" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The area of hybridisation shall be described if applicable for double stranded RNA or DNA. The number associated with the subunit followed by the number associated to the residue shall be specified in increasing order. The underscore “” shall be used as separator as follows: “Subunitnumber Residue”.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="oligoNucleotideType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">(TBC).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subunit" type="SubstanceNucleicAcid.Subunit" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Subunits are listed in order of decreasing length; sequences of the same length will be ordered by molecular weight; subunits that have identical sequences will be repeated multiple times.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceNucleicAcid.Subunit">
<xs:annotation>
<xs:documentation xml:lang="en">Nucleic acids are defined by three distinct elements: the base, sugar and linkage. Individual substance/moiety IDs will be created for each of these elements. The nucleotide sequence will be always entered in the 5-3 direction.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="subunit" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Index of linear sequences of nucleic acids in order of decreasing length. Sequences of the same length will be ordered by molecular weight. Subunits that have identical sequences will be repeated and have sequential subscripts.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sequence" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Actual nucleotide sequence notation from 5' to 3' end using standard single letter codes. In addition to the base sequence, sugar and type of phosphate or non-phosphate linkage should also be captured.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="length" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">The length of the sequence shall be captured.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sequenceAttachment" minOccurs="0" maxOccurs="1" type="Attachment">
<xs:annotation>
<xs:documentation xml:lang="en">(TBC).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="fivePrime" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The nucleotide present at the 5 terminal shall be specified based on a controlled vocabulary. Since the sequence is represented from the 5' to the 3' end, the 5 prime nucleotide is the letter at the first position in the sequence. A separate representation would be redundant.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="threePrime" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The nucleotide present at the 3 terminal shall be specified based on a controlled vocabulary. Since the sequence is represented from the 5' to the 3' end, the 5 prime nucleotide is the letter at the last position in the sequence. A separate representation would be redundant.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="linkage" type="SubstanceNucleicAcid.Linkage" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The linkages between sugar residues will also be captured.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sugar" type="SubstanceNucleicAcid.Sugar" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">5.3.6.8.1 Sugar ID (Mandatory).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceNucleicAcid.Linkage">
<xs:annotation>
<xs:documentation xml:lang="en">Nucleic acids are defined by three distinct elements: the base, sugar and linkage. Individual substance/moiety IDs will be created for each of these elements. The nucleotide sequence will be always entered in the 5-3 direction.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="connectivity" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The entity that links the sugar residues together should also be captured for nearly all naturally occurring nucleic acid the linkage is a phosphate group. For many synthetic oligonucleotides phosphorothioate linkages are often seen. Linkage connectivity is assumed to be 3-5. If the linkage is either 3-3 or 5-5 this should be specified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Each linkage will be registered as a fragment and have an ID.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Each linkage will be registered as a fragment and have at least one name. A single name shall be assigned to each linkage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="residueSite" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Residues shall be captured as described in 5.3.6.8.3.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceNucleicAcid.Sugar">
<xs:annotation>
<xs:documentation xml:lang="en">Nucleic acids are defined by three distinct elements: the base, sugar and linkage. Individual substance/moiety IDs will be created for each of these elements. The nucleotide sequence will be always entered in the 5-3 direction.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">The Substance ID of the sugar or sugar-like component that make up the nucleotide.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the sugar or sugar-like component that make up the nucleotide.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="residueSite" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The residues that contain a given sugar will be captured. The order of given residues will be captured in the 5-3direction consistent with the base sequences listed above.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="SubstancePolymer" type="SubstancePolymer">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="SubstancePolymer">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="class" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="geometry" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copolymerConnectivity" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="modification" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="monomerSet" type="SubstancePolymer.MonomerSet" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="repeat" type="SubstancePolymer.Repeat" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstancePolymer.MonomerSet">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="ratioType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="startingMaterial" type="SubstancePolymer.StartingMaterial" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstancePolymer.StartingMaterial">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="material" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="isDefining" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="amount" minOccurs="0" maxOccurs="1" type="SubstanceAmount">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstancePolymer.Repeat">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="numberOfUnits" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="averageMolecularFormula" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="repeatUnitAmountType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="repeatUnit" type="SubstancePolymer.RepeatUnit" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstancePolymer.RepeatUnit">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="orientationOfPolymerisation" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="repeatUnit" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="amount" minOccurs="0" maxOccurs="1" type="SubstanceAmount">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="degreeOfPolymerisation" type="SubstancePolymer.DegreeOfPolymerisation" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="structuralRepresentation" type="SubstancePolymer.StructuralRepresentation" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstancePolymer.DegreeOfPolymerisation">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="degree" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="amount" minOccurs="0" maxOccurs="1" type="SubstanceAmount">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstancePolymer.StructuralRepresentation">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="representation" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="attachment" minOccurs="0" maxOccurs="1" type="Attachment">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="SubstanceProtein" type="SubstanceProtein">
<xs:annotation>
<xs:documentation xml:lang="en">A SubstanceProtein is defined as a single unit of a linear amino acid sequence, or a combination of subunits that are either covalently linked or have a defined invariant stoichiometric relationship. This includes all synthetic, recombinant and purified SubstanceProteins of defined sequence, whether the use is therapeutic or prophylactic. This set of elements will be used to describe albumins, coagulation factors, cytokines, growth factors, peptide/SubstanceProtein hormones, enzymes, toxins, toxoids, recombinant vaccines, and immunomodulators.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="SubstanceProtein">
<xs:annotation>
<xs:documentation xml:lang="en">A SubstanceProtein is defined as a single unit of a linear amino acid sequence, or a combination of subunits that are either covalently linked or have a defined invariant stoichiometric relationship. This includes all synthetic, recombinant and purified SubstanceProteins of defined sequence, whether the use is therapeutic or prophylactic. This set of elements will be used to describe albumins, coagulation factors, cytokines, growth factors, peptide/SubstanceProtein hormones, enzymes, toxins, toxoids, recombinant vaccines, and immunomodulators.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="sequenceType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The SubstanceProtein descriptive elements will only be used when a complete or partial amino acid sequence is available or derivable from a nucleic acid sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="numberOfSubunits" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Number of linear sequences of amino acids linked through peptide bonds. The number of subunits constituting the SubstanceProtein shall be described. It is possible that the number of subunits can be variable.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="disulfideLinkage" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The disulphide bond between two cysteine residues either on the same subunit or on two different subunits shall be described. The position of the disulfide bonds in the SubstanceProtein shall be listed in increasing order of subunit number and position within subunit followed by the abbreviation of the amino acids involved. The disulfide linkage positions shall actually contain the amino acid Cysteine at the respective positions.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subunit" type="SubstanceProtein.Subunit" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">This subclause refers to the description of each subunit constituting the SubstanceProtein. A subunit is a linear sequence of amino acids linked through peptide bonds. The Subunit information shall be provided when the finished SubstanceProtein is a complex of multiple sequences; subunits are not used to delineate domains within a single sequence. Subunits are listed in order of decreasing length; sequences of the same length will be ordered by decreasing molecular weight; subunits that have identical sequences will be repeated multiple times.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceProtein.Subunit">
<xs:annotation>
<xs:documentation xml:lang="en">A SubstanceProtein is defined as a single unit of a linear amino acid sequence, or a combination of subunits that are either covalently linked or have a defined invariant stoichiometric relationship. This includes all synthetic, recombinant and purified SubstanceProteins of defined sequence, whether the use is therapeutic or prophylactic. This set of elements will be used to describe albumins, coagulation factors, cytokines, growth factors, peptide/SubstanceProtein hormones, enzymes, toxins, toxoids, recombinant vaccines, and immunomodulators.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="subunit" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Index of primary sequences of amino acids linked through peptide bonds in order of decreasing length. Sequences of the same length will be ordered by molecular weight. Subunits that have identical sequences will be repeated and have sequential subscripts.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sequence" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The sequence information shall be provided enumerating the amino acids from N- to C-terminal end using standard single-letter amino acid codes. Uppercase shall be used for L-amino acids and lowercase for D-amino acids. Transcribed SubstanceProteins will always be described using the translated sequence; for synthetic peptide containing amino acids that are not represented with a single letter code an X should be used within the sequence. The modified amino acids will be distinguished by their position in the sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="length" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Length of linear sequences of amino acids contained in the subunit.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sequenceAttachment" minOccurs="0" maxOccurs="1" type="Attachment">
<xs:annotation>
<xs:documentation xml:lang="en">The sequence information shall be provided enumerating the amino acids from N- to C-terminal end using standard single-letter amino acid codes. Uppercase shall be used for L-amino acids and lowercase for D-amino acids. Transcribed SubstanceProteins will always be described using the translated sequence; for synthetic peptide containing amino acids that are not represented with a single letter code an X should be used within the sequence. The modified amino acids will be distinguished by their position in the sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="nTerminalModificationId" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Unique identifier for molecular fragment modification based on the ISO 11238 Substance ID.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="nTerminalModification" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the fragment modified at the N-terminal of the SubstanceProtein shall be specified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="cTerminalModificationId" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Unique identifier for molecular fragment modification based on the ISO 11238 Substance ID.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="cTerminalModification" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The modification at the C-terminal shall be specified.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="SubstanceReferenceInformation" type="SubstanceReferenceInformation">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="SubstanceReferenceInformation">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="comment" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="gene" type="SubstanceReferenceInformation.Gene" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="geneElement" type="SubstanceReferenceInformation.GeneElement" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="classification" type="SubstanceReferenceInformation.Classification" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="target" type="SubstanceReferenceInformation.Target" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceReferenceInformation.Gene">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="geneSequenceOrigin" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="gene" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceReferenceInformation.GeneElement">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="element" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceReferenceInformation.Classification">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="domain" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="classification" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subtype" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceReferenceInformation.Target">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="target" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="interaction" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="organism" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="organismType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
<xs:element name="amountQuantity" type="Quantity"/>
<xs:element name="amountRange" type="Range"/>
<xs:element name="amountString" type="string"/>
</xs:choice>
<xs:element name="amountType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Todo.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="SubstanceSourceMaterial" type="SubstanceSourceMaterial">
<xs:annotation>
<xs:documentation xml:lang="en">Source material shall capture information on the taxonomic and anatomical origins as well as the fraction of a material that can result in or can be modified to form a substance. This set of data elements shall be used to define polymer substances isolated from biological matrices. Taxonomic and anatomical origins shall be described using a controlled vocabulary as required. This information is captured for naturally derived polymers ( . starch) and structurally diverse substances. For Organisms belonging to the Kingdom Plantae the Substance level defines the fresh material of a single species or infraspecies, the Herbal Drug and the Herbal preparation. For Herbal preparations, the fraction information will be captured at the Substance information level and additional information for herbal extracts will be captured at the Specified Substance Group 1 information level. See for further explanation the Substance Class: Structurally Diverse and the herbal annex.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="SubstanceSourceMaterial">
<xs:annotation>
<xs:documentation xml:lang="en">Source material shall capture information on the taxonomic and anatomical origins as well as the fraction of a material that can result in or can be modified to form a substance. This set of data elements shall be used to define polymer substances isolated from biological matrices. Taxonomic and anatomical origins shall be described using a controlled vocabulary as required. This information is captured for naturally derived polymers ( . starch) and structurally diverse substances. For Organisms belonging to the Kingdom Plantae the Substance level defines the fresh material of a single species or infraspecies, the Herbal Drug and the Herbal preparation. For Herbal preparations, the fraction information will be captured at the Substance information level and additional information for herbal extracts will be captured at the Specified Substance Group 1 information level. See for further explanation the Substance Class: Structurally Diverse and the herbal annex.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="sourceMaterialClass" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">General high level classification of the source material specific to the origin of the material.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sourceMaterialType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of the source material shall be specified based on a controlled vocabulary. For vaccines, this subclause refers to the class of infectious agent.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sourceMaterialState" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The state of the source material when extracted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="organismId" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">The unique identifier associated with the source material parent organism shall be specified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="organismName" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The organism accepted Scientific name shall be provided based on the organism taxonomy.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="parentSubstanceId" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">The parent of the herbal drug Ginkgo biloba, Leaf is the substance ID of the substance (fresh) of Ginkgo biloba L. or Ginkgo biloba L. (Whole plant).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="parentSubstanceName" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The parent substance of the Herbal Drug, or Herbal preparation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="countryOfOrigin" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The country where the plant material is harvested or the countries where the plasma is sourced from as laid down in accordance with the Plasma Master File. For “Plasma-derived substances” the attribute country of origin provides information about the countries used for the manufacturing of the Cryopoor plama or Crioprecipitate.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="geographicalLocation" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The place/region where the plant is harvested or the places/regions where the animal source material has its habitat.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="developmentStage" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Stage of life for animals, plants, insects and microorganisms. This information shall be provided only when the substance is significantly different in these stages (e.g. foetal bovine serum).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="fractionDescription" type="SubstanceSourceMaterial.FractionDescription" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Many complex materials are fractions of parts of plants, animals, or minerals. Fraction elements are often necessary to define both Substances and Specified Group 1 Substances. For substances derived from Plants, fraction information will be captured at the Substance information level ( . Oils, Juices and Exudates). Additional information for Extracts, such as extraction solvent composition, will be captured at the Specified Substance Group 1 information level. For plasma-derived products fraction information will be captured at the Substance and the Specified Substance Group 1 levels.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="organism" type="SubstanceSourceMaterial.Organism" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">This subclause describes the organism which the substance is derived from. For vaccines, the parent organism shall be specified based on these subclause elements. As an example, full taxonomy will be described for the Substance Name: ., Leaf.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partDescription" type="SubstanceSourceMaterial.PartDescription" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">To do.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceSourceMaterial.FractionDescription">
<xs:annotation>
<xs:documentation xml:lang="en">Source material shall capture information on the taxonomic and anatomical origins as well as the fraction of a material that can result in or can be modified to form a substance. This set of data elements shall be used to define polymer substances isolated from biological matrices. Taxonomic and anatomical origins shall be described using a controlled vocabulary as required. This information is captured for naturally derived polymers ( . starch) and structurally diverse substances. For Organisms belonging to the Kingdom Plantae the Substance level defines the fresh material of a single species or infraspecies, the Herbal Drug and the Herbal preparation. For Herbal preparations, the fraction information will be captured at the Substance information level and additional information for herbal extracts will be captured at the Specified Substance Group 1 information level. See for further explanation the Substance Class: Structurally Diverse and the herbal annex.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="fraction" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">This element is capturing information about the fraction of a plant part, or human plasma for fractionation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="materialType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The specific type of the material constituting the component. For Herbal preparations the particulars of the extracts (liquid/dry) is described in Specified Substance Group 1.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceSourceMaterial.Organism">
<xs:annotation>
<xs:documentation xml:lang="en">Source material shall capture information on the taxonomic and anatomical origins as well as the fraction of a material that can result in or can be modified to form a substance. This set of data elements shall be used to define polymer substances isolated from biological matrices. Taxonomic and anatomical origins shall be described using a controlled vocabulary as required. This information is captured for naturally derived polymers ( . starch) and structurally diverse substances. For Organisms belonging to the Kingdom Plantae the Substance level defines the fresh material of a single species or infraspecies, the Herbal Drug and the Herbal preparation. For Herbal preparations, the fraction information will be captured at the Substance information level and additional information for herbal extracts will be captured at the Specified Substance Group 1 information level. See for further explanation the Substance Class: Structurally Diverse and the herbal annex.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="family" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The family of an organism shall be specified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="genus" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The genus of an organism shall be specified; refers to the Latin epithet of the genus element of the plant/animal scientific name; it is present in names for genera, species and infraspecies.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="species" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The species of an organism shall be specified; refers to the Latin epithet of the species of the plant/animal; it is present in names for species and infraspecies.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="intraspecificType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The Intraspecific type of an organism shall be specified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="intraspecificDescription" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The intraspecific description of an organism shall be specified based on a controlled vocabulary. For Influenza Vaccine, the intraspecific description shall contain the syntax of the antigen in line with the WHO convention.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="author" type="SubstanceSourceMaterial.Author" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">4.9.13.6.1 Author type (Conditional).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="hybrid" type="SubstanceSourceMaterial.Hybrid" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">4.9.13.8.1 Hybrid species maternal organism ID (Optional).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="organismGeneral" type="SubstanceSourceMaterial.OrganismGeneral" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">4.9.13.7.1 Kingdom (Conditional).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceSourceMaterial.Author">
<xs:annotation>
<xs:documentation xml:lang="en">Source material shall capture information on the taxonomic and anatomical origins as well as the fraction of a material that can result in or can be modified to form a substance. This set of data elements shall be used to define polymer substances isolated from biological matrices. Taxonomic and anatomical origins shall be described using a controlled vocabulary as required. This information is captured for naturally derived polymers ( . starch) and structurally diverse substances. For Organisms belonging to the Kingdom Plantae the Substance level defines the fresh material of a single species or infraspecies, the Herbal Drug and the Herbal preparation. For Herbal preparations, the fraction information will be captured at the Substance information level and additional information for herbal extracts will be captured at the Specified Substance Group 1 information level. See for further explanation the Substance Class: Structurally Diverse and the herbal annex.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="authorType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of author of an organism species shall be specified. The parenthetical author of an organism species refers to the first author who published the plant/animal name (of any rank). The primary author of an organism species refers to the first author(s), who validly published the plant/animal name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="authorDescription" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The author of an organism species shall be specified. The author year of an organism shall also be specified when applicable; refers to the year in which the first author(s) published the infraspecific plant/animal name (of any rank).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceSourceMaterial.Hybrid">
<xs:annotation>
<xs:documentation xml:lang="en">Source material shall capture information on the taxonomic and anatomical origins as well as the fraction of a material that can result in or can be modified to form a substance. This set of data elements shall be used to define polymer substances isolated from biological matrices. Taxonomic and anatomical origins shall be described using a controlled vocabulary as required. This information is captured for naturally derived polymers ( . starch) and structurally diverse substances. For Organisms belonging to the Kingdom Plantae the Substance level defines the fresh material of a single species or infraspecies, the Herbal Drug and the Herbal preparation. For Herbal preparations, the fraction information will be captured at the Substance information level and additional information for herbal extracts will be captured at the Specified Substance Group 1 information level. See for further explanation the Substance Class: Structurally Diverse and the herbal annex.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="maternalOrganismId" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier of the maternal species constituting the hybrid organism shall be specified based on a controlled vocabulary. For plants, the parents arent always known, and it is unlikely that it will be known which is maternal and which is paternal.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="maternalOrganismName" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the maternal species constituting the hybrid organism shall be specified. For plants, the parents arent always known, and it is unlikely that it will be known which is maternal and which is paternal.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="paternalOrganismId" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier of the paternal species constituting the hybrid organism shall be specified based on a controlled vocabulary.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="paternalOrganismName" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the paternal species constituting the hybrid organism shall be specified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="hybridType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The hybrid type of an organism shall be specified.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceSourceMaterial.OrganismGeneral">
<xs:annotation>
<xs:documentation xml:lang="en">Source material shall capture information on the taxonomic and anatomical origins as well as the fraction of a material that can result in or can be modified to form a substance. This set of data elements shall be used to define polymer substances isolated from biological matrices. Taxonomic and anatomical origins shall be described using a controlled vocabulary as required. This information is captured for naturally derived polymers ( . starch) and structurally diverse substances. For Organisms belonging to the Kingdom Plantae the Substance level defines the fresh material of a single species or infraspecies, the Herbal Drug and the Herbal preparation. For Herbal preparations, the fraction information will be captured at the Substance information level and additional information for herbal extracts will be captured at the Specified Substance Group 1 information level. See for further explanation the Substance Class: Structurally Diverse and the herbal annex.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="kingdom" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The kingdom of an organism shall be specified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="phylum" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The phylum of an organism shall be specified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="class" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The class of an organism shall be specified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="order" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The order of an organism shall be specified,.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceSourceMaterial.PartDescription">
<xs:annotation>
<xs:documentation xml:lang="en">Source material shall capture information on the taxonomic and anatomical origins as well as the fraction of a material that can result in or can be modified to form a substance. This set of data elements shall be used to define polymer substances isolated from biological matrices. Taxonomic and anatomical origins shall be described using a controlled vocabulary as required. This information is captured for naturally derived polymers ( . starch) and structurally diverse substances. For Organisms belonging to the Kingdom Plantae the Substance level defines the fresh material of a single species or infraspecies, the Herbal Drug and the Herbal preparation. For Herbal preparations, the fraction information will be captured at the Substance information level and additional information for herbal extracts will be captured at the Specified Substance Group 1 information level. See for further explanation the Substance Class: Structurally Diverse and the herbal annex.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="part" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Entity of anatomical origin of source material within an organism.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partLocation" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The detailed anatomic location when the part can be extracted from different anatomical locations of the organism. Multiple alternative locations may apply.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="SubstanceSpecification" type="SubstanceSpecification">
<xs:annotation>
<xs:documentation xml:lang="en">The detailed description of a substance, typically at a level beyond what is used for prescribing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="SubstanceSpecification">
<xs:annotation>
<xs:documentation xml:lang="en">The detailed description of a substance, typically at a level beyond what is used for prescribing.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier by which this substance is known.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">High level categorization, e.g. polymer or nucleic acid.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Status of substance within the catalogue e.g. approved.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="domain" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">If the substance applies to only human or veterinary use.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Textual description of the substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Supporting literature.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comment" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Textual comment about this record of a substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="moiety" type="SubstanceSpecification.Moiety" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Moiety, for structural modifications.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="property" type="SubstanceSpecification.Property" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">General specifications for this substance, including how it is related to other substances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referenceInformation" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">General information detailing this substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="structure" type="SubstanceSpecification.Structure" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Structural information.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" type="SubstanceSpecification.Code" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Codes associated with the substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" type="SubstanceSpecification.Name" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Names applicable to this substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="molecularWeight" type="SubstanceSpecification.MolecularWeight" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The molecular weight or weight range (for proteins, polymers or nucleic acids).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relationship" type="SubstanceSpecification.Relationship" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A link between this substance and another, with details of the relationship.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="nucleicAcid" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Data items specific to nucleic acids.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="polymer" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Data items specific to polymers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="protein" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Data items specific to proteins.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sourceMaterial" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Material or taxonomic/anatomical source for the substance.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceSpecification.Moiety">
<xs:annotation>
<xs:documentation xml:lang="en">The detailed description of a substance, typically at a level beyond what is used for prescribing.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="role" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Role that the moiety is playing.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier by which this moiety substance is known.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Textual name for this moiety substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="stereochemistry" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Stereochemistry type.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="opticalActivity" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Optical activity type.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="molecularFormula" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Molecular formula.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Quantitative value for this moiety.</xs:documentation>
</xs:annotation>
<xs:element name="amountQuantity" type="Quantity"/>
<xs:element name="amountString" type="string"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceSpecification.Property">
<xs:annotation>
<xs:documentation xml:lang="en">The detailed description of a substance, typically at a level beyond what is used for prescribing.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="category" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A category for this property, e.g. Physical, Chemical, Enzymatic.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Property type e.g. viscosity, pH, isoelectric point.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="parameters" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Parameters that were used in the measurement of a property (e.g. for viscosity: measured at 20C with a pH of 7.1).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">A substance upon which a defining property depends (e.g. for solubility: in water, in alcohol).</xs:documentation>
</xs:annotation>
<xs:element name="definingSubstanceReference" type="Reference"/>
<xs:element name="definingSubstanceCodeableConcept" type="CodeableConcept"/>
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Quantitative value for this property.</xs:documentation>
</xs:annotation>
<xs:element name="amountQuantity" type="Quantity"/>
<xs:element name="amountString" type="string"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceSpecification.Structure">
<xs:annotation>
<xs:documentation xml:lang="en">The detailed description of a substance, typically at a level beyond what is used for prescribing.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="stereochemistry" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Stereochemistry type.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="opticalActivity" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Optical activity type.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="molecularFormula" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Molecular formula.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="molecularFormulaByMoiety" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Specified per moiety according to the Hill system, i.e. first C, then H, then alphabetical, each moiety separated by a dot.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="isotope" type="SubstanceSpecification.Isotope" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Applicable for single substances that contain a radionuclide or a non-natural isotopic ratio.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="molecularWeight" type="SubstanceSpecification.MolecularWeight" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The molecular weight or weight range (for proteins, polymers or nucleic acids).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Supporting literature.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="representation" type="SubstanceSpecification.Representation" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Molecular structural representation.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceSpecification.Isotope">
<xs:annotation>
<xs:documentation xml:lang="en">The detailed description of a substance, typically at a level beyond what is used for prescribing.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Substance identifier for each non-natural or radioisotope.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Substance name for each non-natural or radioisotope.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="substitution" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of isotopic substitution present in a single substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="halfLife" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">Half life - for a non-natural nuclide.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="molecularWeight" type="SubstanceSpecification.MolecularWeight" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The molecular weight or weight range (for proteins, polymers or nucleic acids).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceSpecification.MolecularWeight">
<xs:annotation>
<xs:documentation xml:lang="en">The detailed description of a substance, typically at a level beyond what is used for prescribing.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="method" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The method by which the molecular weight was determined.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of molecular weight such as exact, average (also known as. number average), weight average.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="amount" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">Used to capture quantitative values for a variety of elements. If only limits are given, the arithmetic mean would be the average. If only a single definite value for a given element is given, it would be captured in this field.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceSpecification.Representation">
<xs:annotation>
<xs:documentation xml:lang="en">The detailed description of a substance, typically at a level beyond what is used for prescribing.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The type of structure (e.g. Full, Partial, Representative).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="representation" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The structural representation as text string in a format e.g. InChI, SMILES, MOLFILE, CDX.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="attachment" minOccurs="0" maxOccurs="1" type="Attachment">
<xs:annotation>
<xs:documentation xml:lang="en">An attached file with the structural representation.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceSpecification.Code">
<xs:annotation>
<xs:documentation xml:lang="en">The detailed description of a substance, typically at a level beyond what is used for prescribing.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The specific code.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Status of the code assignment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="statusDate" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date at which the code status is changed as part of the terminology maintenance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comment" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Any comment can be provided in this field, if necessary.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Supporting literature.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceSpecification.Name">
<xs:annotation>
<xs:documentation xml:lang="en">The detailed description of a substance, typically at a level beyond what is used for prescribing.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The actual name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Name type.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="preferred" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">If this is the preferred name for this substance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="language" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Language of the name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="domain" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The use context of this name for example if there is a different name a drug active ingredient as opposed to a food colour additive.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The jurisdiction where this name applies.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="synonym" type="SubstanceSpecification.Name" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A synonym of this name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="translation" type="SubstanceSpecification.Name" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A translation for this name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="official" type="SubstanceSpecification.Official" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Details of the official nature of this name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Supporting literature.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceSpecification.Official">
<xs:annotation>
<xs:documentation xml:lang="en">The detailed description of a substance, typically at a level beyond what is used for prescribing.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="authority" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Which authority uses this official name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the official name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">Date of official name change.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SubstanceSpecification.Relationship">
<xs:annotation>
<xs:documentation xml:lang="en">The detailed description of a substance, typically at a level beyond what is used for prescribing.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">A pointer to another substance, as a resource or just a representational code.</xs:documentation>
</xs:annotation>
<xs:element name="substanceReference" type="Reference"/>
<xs:element name="substanceCodeableConcept" type="CodeableConcept"/>
</xs:choice>
<xs:element name="relationship" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">For example &quot;salt to parent&quot;, &quot;active moiety&quot;, &quot;starting material&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="isDefining" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">For example where an enzyme strongly bonds with a particular substance, this is a defining relationship for that enzyme, out of several possible substance relationships.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">A numeric factor for the relationship, for instance to express that the salt of a substance has some percentage of the active substance in relation to some other.</xs:documentation>
</xs:annotation>
<xs:element name="amountQuantity" type="Quantity"/>
<xs:element name="amountRange" type="Range"/>
<xs:element name="amountRatio" type="Ratio"/>
<xs:element name="amountString" type="string"/>
</xs:choice>
<xs:element name="amountRatioLowLimit" minOccurs="0" maxOccurs="1" type="Ratio">
<xs:annotation>
<xs:documentation xml:lang="en">For use when the numeric.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="amountType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">An operator for the amount, for example &quot;average&quot;, &quot;approximately&quot;, &quot;less than&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="source" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Supporting literature.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="SupplyDelivery" type="SupplyDelivery">
<xs:annotation>
<xs:documentation xml:lang="en">Record of delivery of what is supplied.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="SupplyDelivery">
<xs:annotation>
<xs:documentation xml:lang="en">Record of delivery of what is supplied.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier for the supply delivery event that is used to identify it across multiple disparate systems.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basedOn" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A plan, proposal or order that is fulfilled in whole or in part by this event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partOf" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A larger event of which this particular event is a component or step.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="SupplyDeliveryStatus">
<xs:annotation>
<xs:documentation xml:lang="en">A code specifying the state of the dispense event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patient" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A link to a resource representing the person whom the delivered item is for.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the type of dispensing event that is performed. Examples include: Trial Fill, Completion of Trial, Partial Fill, Emergency Fill, Samples, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="suppliedItem" type="SupplyDelivery.SuppliedItem" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The item that is being delivered or has been supplied.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The date or time(s) the activity occurred.</xs:documentation>
</xs:annotation>
<xs:element name="occurrenceDateTime" type="dateTime"/>
<xs:element name="occurrencePeriod" type="Period"/>
<xs:element name="occurrenceTiming" type="Timing"/>
</xs:choice>
<xs:element name="supplier" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The individual responsible for dispensing the medication, supplier or device.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="destination" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identification of the facility/location where the Supply was shipped to, as part of the dispense event.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="receiver" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the person who picked up the Supply.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SupplyDelivery.SuppliedItem">
<xs:annotation>
<xs:documentation xml:lang="en">Record of delivery of what is supplied.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="quantity" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The amount of supply that has been dispensed. Includes unit of measure.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the medication, substance or device being dispensed. This is either a link to a resource representing the details of the item or a code that identifies the item from a known list.</xs:documentation>
</xs:annotation>
<xs:element name="itemCodeableConcept" type="CodeableConcept"/>
<xs:element name="itemReference" type="Reference"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="SupplyDeliveryStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="in-progress">
<xs:annotation>
<xs:documentation xml:lang="en">In Progress</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="completed">
<xs:annotation>
<xs:documentation xml:lang="en">Delivered</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="abandoned">
<xs:annotation>
<xs:documentation xml:lang="en">Abandoned</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered In Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="SupplyDeliveryStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Status of the supply delivery.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="SupplyDeliveryStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="SupplyRequest" type="SupplyRequest">
<xs:annotation>
<xs:documentation xml:lang="en">A record of a request for a medication, substance or device used in the healthcare setting.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="SupplyRequest">
<xs:annotation>
<xs:documentation xml:lang="en">A record of a request for a medication, substance or device used in the healthcare setting.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Business identifiers assigned to this SupplyRequest by the author and/or other systems. These identifiers remain constant as the resource is updated and propagates from server to server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="0" maxOccurs="1" type="SupplyRequestStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Status of the supply request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="category" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Category of supply, e.g. central, non-stock, etc. This is used to support work flows associated with the supply process.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priority" minOccurs="0" maxOccurs="1" type="RequestPriority">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates how quickly this SupplyRequest should be addressed with respect to other requests.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The item that is requested to be supplied. This is either a link to a resource representing the details of the item or a code that identifies the item from a known list.</xs:documentation>
</xs:annotation>
<xs:element name="itemCodeableConcept" type="CodeableConcept"/>
<xs:element name="itemReference" type="Reference"/>
</xs:choice>
<xs:element name="quantity" minOccurs="1" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The amount that is being ordered of the indicated item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="parameter" type="SupplyRequest.Parameter" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Specific parameters for the ordered item. For example, the size of the indicated item.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">When the request should be fulfilled.</xs:documentation>
</xs:annotation>
<xs:element name="occurrenceDateTime" type="dateTime"/>
<xs:element name="occurrencePeriod" type="Period"/>
<xs:element name="occurrenceTiming" type="Timing"/>
</xs:choice>
<xs:element name="authoredOn" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">When the request was made.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requester" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The device, practitioner, etc. who initiated the request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="supplier" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Who is intended to fulfill the request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The reason why the supply item was requested.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The reason why the supply item was requested.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="deliverFrom" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Where the supply is expected to come from.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="deliverTo" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Where the supply is destined to go.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SupplyRequest.Parameter">
<xs:annotation>
<xs:documentation xml:lang="en">A record of a request for a medication, substance or device used in the healthcare setting.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code or string that identifies the device detail being asserted.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The value of the device detail.</xs:documentation>
</xs:annotation>
<xs:element name="valueCodeableConcept" type="CodeableConcept"/>
<xs:element name="valueQuantity" type="Quantity"/>
<xs:element name="valueRange" type="Range"/>
<xs:element name="valueBoolean" type="boolean"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="SupplyRequestStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="draft">
<xs:annotation>
<xs:documentation xml:lang="en">Draft</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="active">
<xs:annotation>
<xs:documentation xml:lang="en">Active</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="suspended">
<xs:annotation>
<xs:documentation xml:lang="en">Suspended</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cancelled">
<xs:annotation>
<xs:documentation xml:lang="en">Cancelled</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="completed">
<xs:annotation>
<xs:documentation xml:lang="en">Completed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unknown">
<xs:annotation>
<xs:documentation xml:lang="en">Unknown</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="SupplyRequestStatus">
<xs:annotation>
<xs:documentation xml:lang="en">Status of the supply request.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="SupplyRequestStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Task" type="Task">
<xs:annotation>
<xs:documentation xml:lang="en">A task to be performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Task">
<xs:annotation>
<xs:documentation xml:lang="en">A task to be performed.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">The business identifier for this task.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesCanonical" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to a *FHIR*-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Task.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="instantiatesUri" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The URL pointing to an *externally* maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Task.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="basedOn" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">BasedOn refers to a higher-level authorization that triggered the creation of the task. It references a &quot;request&quot; resource such as a ServiceRequest, MedicationRequest, ServiceRequest, CarePlan, etc. which is distinct from the &quot;request&quot; resource the task is seeking to fulfill. This latter resource is referenced by FocusOn. For example, based on a ServiceRequest (= BasedOn), a task is created to fulfill a procedureRequest ( = FocusOn ) to collect a specimen from a patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="groupIdentifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">An identifier that links together multiple tasks and other requests that were created in the same context.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partOf" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Task that this particular task is part of.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="TaskStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The current status of the task.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="statusReason" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">An explanation as to why this task is held, failed, was refused, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="businessStatus" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Contains business-specific nuances of the business state.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="intent" minOccurs="1" maxOccurs="1" type="TaskIntent">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the &quot;level&quot; of actionability associated with the Task, i.e. i+R[9]Cs this a proposed task, a planned task, an actionable task, etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="priority" minOccurs="0" maxOccurs="1" type="RequestPriority">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates how quickly the Task should be addressed with respect to other requests.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A name or code (or both) briefly describing what the task involves.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A free-text description of what is to be performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="focus" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The request being actioned or the resource being manipulated by this task.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="for" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The entity who benefits from the performance of the service specified in the task (e.g., the patient).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The healthcare event (e.g. a patient and healthcare provider interaction) during which this task was created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="executionPeriod" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the time action was first taken against the task (start) and/or the time final action was taken against the task prior to marking it as completed (end).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="authoredOn" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date and time this task was created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lastModified" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date and time of last modification to this task.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requester" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The creator of the task.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="performerType" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The kind of participant that should perform the task.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="owner" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Individual organization or Device currently responsible for task execution.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="location" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Principal physical location where the this task is performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonCode" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A description or code indicating why this task needs to be performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="reasonReference" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A resource reference indicating why this task needs to be performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="insurance" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Insurance plans, coverage extensions, pre-authorizations and/or pre-determinations that may be relevant to the Task.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Free-text information captured about the task as it progresses.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="relevantHistory" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Links to Provenance records for past versions of this Task that identify key state transitions or updates that are likely to be relevant to a user looking at the current version of the task.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="restriction" type="Task.Restriction" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">If the Task.focus is a request resource and the task is seeking fulfillment (i.e. is asking for the request to be actioned), this element identifies any limitations on what parts of the referenced request should be actioned.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="input" type="Task.Input" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Additional information that may be needed in the execution of the task.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="output" type="Task.Output" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Outputs produced by the Task.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Task.Restriction">
<xs:annotation>
<xs:documentation xml:lang="en">A task to be performed.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="repetitions" minOccurs="0" maxOccurs="1" type="positiveInt">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates the number of times the requested action should occur.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="period" minOccurs="0" maxOccurs="1" type="Period">
<xs:annotation>
<xs:documentation xml:lang="en">Over what time-period is fulfillment sought.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="recipient" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">For requests that are targeted to more than on potential recipient/target, for whom is fulfillment sought?</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Task.Input">
<xs:annotation>
<xs:documentation xml:lang="en">A task to be performed.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A code or description indicating how the input is intended to be used as part of the task execution.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The value of the input parameter as a basic type.</xs:documentation>
</xs:annotation>
<xs:element name="valueBase64Binary" type="base64Binary"/>
<xs:element name="valueBoolean" type="boolean"/>
<xs:element name="valueCanonical" type="canonical"/>
<xs:element name="valueCode" type="code"/>
<xs:element name="valueDate" type="date"/>
<xs:element name="valueDateTime" type="dateTime"/>
<xs:element name="valueDecimal" type="decimal"/>
<xs:element name="valueId" type="id"/>
<xs:element name="valueInstant" type="instant"/>
<xs:element name="valueInteger" type="integer"/>
<xs:element name="valueMarkdown" type="markdown"/>
<xs:element name="valueOid" type="oid"/>
<xs:element name="valuePositiveInt" type="positiveInt"/>
<xs:element name="valueString" type="string"/>
<xs:element name="valueTime" type="time"/>
<xs:element name="valueUnsignedInt" type="unsignedInt"/>
<xs:element name="valueUri" type="uri"/>
<xs:element name="valueUrl" type="url"/>
<xs:element name="valueUuid" type="uuid"/>
<xs:element name="valueAddress" type="Address"/>
<xs:element name="valueAge" type="Age"/>
<xs:element name="valueAnnotation" type="Annotation"/>
<xs:element name="valueAttachment" type="Attachment"/>
<xs:element name="valueCodeableConcept" type="CodeableConcept"/>
<xs:element name="valueCoding" type="Coding"/>
<xs:element name="valueContactPoint" type="ContactPoint"/>
<xs:element name="valueCount" type="Count"/>
<xs:element name="valueDistance" type="Distance"/>
<xs:element name="valueDuration" type="Duration"/>
<xs:element name="valueHumanName" type="HumanName"/>
<xs:element name="valueIdentifier" type="Identifier"/>
<xs:element name="valueMoney" type="Money"/>
<xs:element name="valuePeriod" type="Period"/>
<xs:element name="valueQuantity" type="Quantity"/>
<xs:element name="valueRange" type="Range"/>
<xs:element name="valueRatio" type="Ratio"/>
<xs:element name="valueReference" type="Reference"/>
<xs:element name="valueSampledData" type="SampledData"/>
<xs:element name="valueSignature" type="Signature"/>
<xs:element name="valueTiming" type="Timing"/>
<xs:element name="valueContactDetail" type="ContactDetail"/>
<xs:element name="valueContributor" type="Contributor"/>
<xs:element name="valueDataRequirement" type="DataRequirement"/>
<xs:element name="valueExpression" type="Expression"/>
<xs:element name="valueParameterDefinition" type="ParameterDefinition"/>
<xs:element name="valueRelatedArtifact" type="RelatedArtifact"/>
<xs:element name="valueTriggerDefinition" type="TriggerDefinition"/>
<xs:element name="valueUsageContext" type="UsageContext"/>
<xs:element name="valueDosage" type="Dosage"/>
<xs:element name="valueMeta" type="Meta"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Task.Output">
<xs:annotation>
<xs:documentation xml:lang="en">A task to be performed.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the Output parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="1" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The value of the Output parameter as a basic type.</xs:documentation>
</xs:annotation>
<xs:element name="valueBase64Binary" type="base64Binary"/>
<xs:element name="valueBoolean" type="boolean"/>
<xs:element name="valueCanonical" type="canonical"/>
<xs:element name="valueCode" type="code"/>
<xs:element name="valueDate" type="date"/>
<xs:element name="valueDateTime" type="dateTime"/>
<xs:element name="valueDecimal" type="decimal"/>
<xs:element name="valueId" type="id"/>
<xs:element name="valueInstant" type="instant"/>
<xs:element name="valueInteger" type="integer"/>
<xs:element name="valueMarkdown" type="markdown"/>
<xs:element name="valueOid" type="oid"/>
<xs:element name="valuePositiveInt" type="positiveInt"/>
<xs:element name="valueString" type="string"/>
<xs:element name="valueTime" type="time"/>
<xs:element name="valueUnsignedInt" type="unsignedInt"/>
<xs:element name="valueUri" type="uri"/>
<xs:element name="valueUrl" type="url"/>
<xs:element name="valueUuid" type="uuid"/>
<xs:element name="valueAddress" type="Address"/>
<xs:element name="valueAge" type="Age"/>
<xs:element name="valueAnnotation" type="Annotation"/>
<xs:element name="valueAttachment" type="Attachment"/>
<xs:element name="valueCodeableConcept" type="CodeableConcept"/>
<xs:element name="valueCoding" type="Coding"/>
<xs:element name="valueContactPoint" type="ContactPoint"/>
<xs:element name="valueCount" type="Count"/>
<xs:element name="valueDistance" type="Distance"/>
<xs:element name="valueDuration" type="Duration"/>
<xs:element name="valueHumanName" type="HumanName"/>
<xs:element name="valueIdentifier" type="Identifier"/>
<xs:element name="valueMoney" type="Money"/>
<xs:element name="valuePeriod" type="Period"/>
<xs:element name="valueQuantity" type="Quantity"/>
<xs:element name="valueRange" type="Range"/>
<xs:element name="valueRatio" type="Ratio"/>
<xs:element name="valueReference" type="Reference"/>
<xs:element name="valueSampledData" type="SampledData"/>
<xs:element name="valueSignature" type="Signature"/>
<xs:element name="valueTiming" type="Timing"/>
<xs:element name="valueContactDetail" type="ContactDetail"/>
<xs:element name="valueContributor" type="Contributor"/>
<xs:element name="valueDataRequirement" type="DataRequirement"/>
<xs:element name="valueExpression" type="Expression"/>
<xs:element name="valueParameterDefinition" type="ParameterDefinition"/>
<xs:element name="valueRelatedArtifact" type="RelatedArtifact"/>
<xs:element name="valueTriggerDefinition" type="TriggerDefinition"/>
<xs:element name="valueUsageContext" type="UsageContext"/>
<xs:element name="valueDosage" type="Dosage"/>
<xs:element name="valueMeta" type="Meta"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="TaskStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="draft">
<xs:annotation>
<xs:documentation xml:lang="en">Draft</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="requested">
<xs:annotation>
<xs:documentation xml:lang="en">Requested</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="received">
<xs:annotation>
<xs:documentation xml:lang="en">Received</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="accepted">
<xs:annotation>
<xs:documentation xml:lang="en">Accepted</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="rejected">
<xs:annotation>
<xs:documentation xml:lang="en">Rejected</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ready">
<xs:annotation>
<xs:documentation xml:lang="en">Ready</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="cancelled">
<xs:annotation>
<xs:documentation xml:lang="en">Cancelled</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="in-progress">
<xs:annotation>
<xs:documentation xml:lang="en">In Progress</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="on-hold">
<xs:annotation>
<xs:documentation xml:lang="en">On Hold</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="failed">
<xs:annotation>
<xs:documentation xml:lang="en">Failed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="completed">
<xs:annotation>
<xs:documentation xml:lang="en">Completed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered in Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="TaskStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The current status of the task.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="TaskStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="TaskIntent-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="unknown">
<xs:annotation>
<xs:documentation xml:lang="en">Unknown</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="proposal">
<xs:annotation>
<xs:documentation xml:lang="en">Proposal</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="plan">
<xs:annotation>
<xs:documentation xml:lang="en">Plan</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="order">
<xs:annotation>
<xs:documentation xml:lang="en">Order</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="original-order">
<xs:annotation>
<xs:documentation xml:lang="en">Original Order</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="reflex-order">
<xs:annotation>
<xs:documentation xml:lang="en">Reflex Order</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="filler-order">
<xs:annotation>
<xs:documentation xml:lang="en">Filler Order</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="instance-order">
<xs:annotation>
<xs:documentation xml:lang="en">Instance Order</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="option">
<xs:annotation>
<xs:documentation xml:lang="en">Option</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="TaskIntent">
<xs:annotation>
<xs:documentation xml:lang="en">Distinguishes whether the task is a proposal, plan or full order.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="TaskIntent-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="TerminologyCapabilities" type="TerminologyCapabilities">
<xs:annotation>
<xs:documentation xml:lang="en">A TerminologyCapabilities resource documents a set of capabilities (behaviors) of a FHIR Terminology Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="TerminologyCapabilities">
<xs:annotation>
<xs:documentation xml:lang="en">A TerminologyCapabilities resource documents a set of capabilities (behaviors) of a FHIR Terminology Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this terminology capabilities when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this terminology capabilities is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the terminology capabilities is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the terminology capabilities when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the terminology capabilities author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the terminology capabilities. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the terminology capabilities.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this terminology capabilities. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this terminology capabilities is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="1" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the terminology capabilities was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the terminology capabilities changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the terminology capabilities.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the terminology capabilities from a consumer's perspective. Typically, this is used when the capability statement describes a desired rather than an actual solution, for example as a formal expression of requirements as part of an RFP.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate terminology capabilities instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the terminology capabilities is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Explanation of why this terminology capabilities is needed and why it has been designed as it has.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the terminology capabilities and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the terminology capabilities.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="kind" minOccurs="1" maxOccurs="1" type="CapabilityStatementKind">
<xs:annotation>
<xs:documentation xml:lang="en">The way that this statement is intended to be used, to describe an actual running instance of software, a particular product (kind, not instance of software) or a class of implementation (e.g. a desired purchase).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="software" type="TerminologyCapabilities.Software" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Software that is covered by this terminology capability statement. It is used when the statement describes the capabilities of a particular software version, independent of an installation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="implementation" type="TerminologyCapabilities.Implementation" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies a specific implementation instance that is described by the terminology capability statement - i.e. a particular installation, rather than the capabilities of a software program.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lockedDate" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the server supports lockedDate.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="codeSystem" type="TerminologyCapabilities.CodeSystem" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies a code system that is supported by the server. If there is a no code system URL, then this declares the general assumptions a client can make about support for any CodeSystem resource.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expansion" type="TerminologyCapabilities.Expansion" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Information about the [ValueSet/$expand](valueset-operation-expand.html) operation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="codeSearch" minOccurs="0" maxOccurs="1" type="CodeSearchSupport">
<xs:annotation>
<xs:documentation xml:lang="en">The degree to which the server supports the code search parameter on ValueSet, if it is supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="validateCode" type="TerminologyCapabilities.ValidateCode" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Information about the [ValueSet/$validate-code](valueset-operation-validate-code.html) operation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="translation" type="TerminologyCapabilities.Translation" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Information about the [ConceptMap/$translate](conceptmap-operation-translate.html) operation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="closure" type="TerminologyCapabilities.Closure" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the $closure operation is supported.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TerminologyCapabilities.Software">
<xs:annotation>
<xs:documentation xml:lang="en">A TerminologyCapabilities resource documents a set of capabilities (behaviors) of a FHIR Terminology Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Name the software is known by.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The version identifier for the software covered by this statement.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TerminologyCapabilities.Implementation">
<xs:annotation>
<xs:documentation xml:lang="en">A TerminologyCapabilities resource documents a set of capabilities (behaviors) of a FHIR Terminology Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="description" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Information about the specific installation that this terminology capability statement relates to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="url">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute base URL for the implementation.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TerminologyCapabilities.CodeSystem">
<xs:annotation>
<xs:documentation xml:lang="en">A TerminologyCapabilities resource documents a set of capabilities (behaviors) of a FHIR Terminology Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="uri" minOccurs="0" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">URI for the Code System.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" type="TerminologyCapabilities.Version" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">For the code system, a list of versions that are supported by the server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subsumption" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">True if subsumption is supported for this version of the code system.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TerminologyCapabilities.Version">
<xs:annotation>
<xs:documentation xml:lang="en">A TerminologyCapabilities resource documents a set of capabilities (behaviors) of a FHIR Terminology Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">For version-less code systems, there should be a single version with no identifier.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="isDefault" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">If this is the default version for this code system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="compositional" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">If the compositional grammar defined by the code system is supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="language" minOccurs="0" maxOccurs="unbounded" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">Language Displays supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="filter" type="TerminologyCapabilities.Filter" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Filter Properties supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="property" minOccurs="0" maxOccurs="unbounded" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">Properties supported for $lookup.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TerminologyCapabilities.Filter">
<xs:annotation>
<xs:documentation xml:lang="en">A TerminologyCapabilities resource documents a set of capabilities (behaviors) of a FHIR Terminology Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">Code of the property supported.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="op" minOccurs="1" maxOccurs="unbounded" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">Operations supported for the property.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TerminologyCapabilities.Expansion">
<xs:annotation>
<xs:documentation xml:lang="en">A TerminologyCapabilities resource documents a set of capabilities (behaviors) of a FHIR Terminology Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="hierarchical" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the server can return nested value sets.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="paging" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the server supports paging on expansion.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="incomplete" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Allow request for incomplete expansions?</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="parameter" type="TerminologyCapabilities.Parameter" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Supported expansion parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="textFilter" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Documentation about text searching works.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TerminologyCapabilities.Parameter">
<xs:annotation>
<xs:documentation xml:lang="en">A TerminologyCapabilities resource documents a set of capabilities (behaviors) of a FHIR Terminology Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">Expansion Parameter name.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="documentation" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Description of support for parameter.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TerminologyCapabilities.ValidateCode">
<xs:annotation>
<xs:documentation xml:lang="en">A TerminologyCapabilities resource documents a set of capabilities (behaviors) of a FHIR Terminology Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="translations" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether translations are validated.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TerminologyCapabilities.Translation">
<xs:annotation>
<xs:documentation xml:lang="en">A TerminologyCapabilities resource documents a set of capabilities (behaviors) of a FHIR Terminology Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="needsMap" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether the client must identify the map.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TerminologyCapabilities.Closure">
<xs:annotation>
<xs:documentation xml:lang="en">A TerminologyCapabilities resource documents a set of capabilities (behaviors) of a FHIR Terminology Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="translation" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">If cross-system closure is supported.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="CodeSearchSupport-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="explicit">
<xs:annotation>
<xs:documentation xml:lang="en">Explicit Codes</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="all">
<xs:annotation>
<xs:documentation xml:lang="en">Implicit Codes</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="CodeSearchSupport">
<xs:annotation>
<xs:documentation xml:lang="en">The degree to which the server supports the code search parameter on ValueSet, if it is supported.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="CodeSearchSupport-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="TestReport" type="TestReport">
<xs:annotation>
<xs:documentation xml:lang="en">A summary of information based on the results of executing a TestScript.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="TestReport">
<xs:annotation>
<xs:documentation xml:lang="en">A summary of information based on the results of executing a TestScript.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier for the TestScript assigned for external purposes outside the context of FHIR.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language name identifying the executed TestScript.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="TestReportStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The current state of this test report.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="testScript" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Ideally this is an absolute URL that is used to identify the version-specific TestScript that was executed, matching the `TestScript.url`.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="result" minOccurs="1" maxOccurs="1" type="TestReportResult">
<xs:annotation>
<xs:documentation xml:lang="en">The overall result from the execution of the TestScript.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="score" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">The final score (percentage of tests passed) resulting from the execution of the TestScript.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="tester" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Name of the tester producing this report (Organization or individual).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="issued" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">When the TestScript was executed and this TestReport was generated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="participant" type="TestReport.Participant" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A participant in the test execution, either the execution engine, a client, or a server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="setup" type="TestReport.Setup" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The results of the series of required setup operations before the tests were executed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="test" type="TestReport.Test" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A test executed from the test script.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="teardown" type="TestReport.Teardown" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The results of the series of operations required to clean up after all the tests were executed (successfully or otherwise).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestReport.Participant">
<xs:annotation>
<xs:documentation xml:lang="en">A summary of information based on the results of executing a TestScript.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="1" maxOccurs="1" type="TestReportParticipantType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of participant.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="uri" minOccurs="1" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">The uri of the participant. An absolute URL is preferred.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="display" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The display name of the participant.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestReport.Setup">
<xs:annotation>
<xs:documentation xml:lang="en">A summary of information based on the results of executing a TestScript.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="action" type="TestReport.Action" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Action would contain either an operation or an assertion.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestReport.Action">
<xs:annotation>
<xs:documentation xml:lang="en">A summary of information based on the results of executing a TestScript.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="operation" type="TestReport.Operation" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The operation performed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="assert" type="TestReport.Assert" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The results of the assertion performed on the previous operations.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestReport.Operation">
<xs:annotation>
<xs:documentation xml:lang="en">A summary of information based on the results of executing a TestScript.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="result" minOccurs="1" maxOccurs="1" type="TestReportActionResult">
<xs:annotation>
<xs:documentation xml:lang="en">The result of this operation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="message" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">An explanatory message associated with the result.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detail" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">A link to further details on the result.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestReport.Assert">
<xs:annotation>
<xs:documentation xml:lang="en">A summary of information based on the results of executing a TestScript.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="result" minOccurs="1" maxOccurs="1" type="TestReportActionResult">
<xs:annotation>
<xs:documentation xml:lang="en">The result of this assertion.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="message" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">An explanatory message associated with the result.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="detail" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A link to further details on the result.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestReport.Test">
<xs:annotation>
<xs:documentation xml:lang="en">A summary of information based on the results of executing a TestScript.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of this test used for tracking/logging purposes by test engines.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short description of the test used by test engines for tracking and reporting purposes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="action" type="TestReport.Action1" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Action would contain either an operation or an assertion.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestReport.Action1">
<xs:annotation>
<xs:documentation xml:lang="en">A summary of information based on the results of executing a TestScript.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="operation" type="TestReport.Operation" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">An operation would involve a REST request to a server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="assert" type="TestReport.Assert" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The results of the assertion performed on the previous operations.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestReport.Teardown">
<xs:annotation>
<xs:documentation xml:lang="en">A summary of information based on the results of executing a TestScript.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="action" type="TestReport.Action2" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The teardown action will only contain an operation.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestReport.Action2">
<xs:annotation>
<xs:documentation xml:lang="en">A summary of information based on the results of executing a TestScript.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="operation" type="TestReport.Operation" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">An operation would involve a REST request to a server.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="TestReportStatus-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="completed">
<xs:annotation>
<xs:documentation xml:lang="en">Completed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="in-progress">
<xs:annotation>
<xs:documentation xml:lang="en">In Progress</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="waiting">
<xs:annotation>
<xs:documentation xml:lang="en">Waiting</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="stopped">
<xs:annotation>
<xs:documentation xml:lang="en">Stopped</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="entered-in-error">
<xs:annotation>
<xs:documentation xml:lang="en">Entered In Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="TestReportStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The current status of the test report.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="TestReportStatus-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="TestReportActionResult-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="pass">
<xs:annotation>
<xs:documentation xml:lang="en">Pass</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="skip">
<xs:annotation>
<xs:documentation xml:lang="en">Skip</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="fail">
<xs:annotation>
<xs:documentation xml:lang="en">Fail</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="warning">
<xs:annotation>
<xs:documentation xml:lang="en">Warning</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="error">
<xs:annotation>
<xs:documentation xml:lang="en">Error</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="TestReportActionResult">
<xs:annotation>
<xs:documentation xml:lang="en">The results of executing an action.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="TestReportActionResult-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="TestReportParticipantType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="test-engine">
<xs:annotation>
<xs:documentation xml:lang="en">Test Engine</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="client">
<xs:annotation>
<xs:documentation xml:lang="en">Client</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="server">
<xs:annotation>
<xs:documentation xml:lang="en">Server</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="TestReportParticipantType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of participant.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="TestReportParticipantType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="TestReportResult-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="pass">
<xs:annotation>
<xs:documentation xml:lang="en">Pass</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="fail">
<xs:annotation>
<xs:documentation xml:lang="en">Fail</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="pending">
<xs:annotation>
<xs:documentation xml:lang="en">Pending</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="TestReportResult">
<xs:annotation>
<xs:documentation xml:lang="en">The reported execution result.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="TestReportResult-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="TestScript" type="TestScript">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="TestScript">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="1" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this test script when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this test script is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the test script is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this test script when it is represented in other formats, or referenced in a specification, model, design or an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the test script when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the test script author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the test script. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the test script.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this test script. Enables tracking the life-cycle of the content.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this test script is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the test script was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the test script changes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the test script.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the test script from a consumer's perspective.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate test script instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the test script is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Explanation of why this test script is needed and why it has been designed as it has.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the test script and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the test script.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="origin" type="TestScript.Origin" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">An abstract server used in operations within this test script in the origin element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="destination" type="TestScript.Destination" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">An abstract server used in operations within this test script in the destination element.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="metadata" type="TestScript.Metadata" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The required capability must exist and are assumed to function correctly on the FHIR server being tested.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="fixture" type="TestScript.Fixture" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Fixture in the test script - by reference (uri). All fixtures are required for the test script to execute.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="profile" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to the profile to be used for validation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="variable" type="TestScript.Variable" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Variable is set based either on element value in response body or on header field value in the response headers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="setup" type="TestScript.Setup" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A series of required setup operations before tests are executed.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="test" type="TestScript.Test" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A test in this script.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="teardown" type="TestScript.Teardown" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A series of operations required to clean up after all the tests are executed (successfully or otherwise).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestScript.Origin">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="index" minOccurs="1" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Abstract name given to an origin server in this test script. The name is provided as a number starting at 1.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="profile" minOccurs="1" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">The type of origin profile the test system supports.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestScript.Destination">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="index" minOccurs="1" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Abstract name given to a destination server in this test script. The name is provided as a number starting at 1.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="profile" minOccurs="1" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">The type of destination profile the test system supports.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestScript.Metadata">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="link" type="TestScript.Link" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A link to the FHIR specification that this test is covering.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="capability" type="TestScript.Capability" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Capabilities that must exist and are assumed to function correctly on the FHIR server being tested.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestScript.Link">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="url" minOccurs="1" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">URL to a particular requirement or feature within the FHIR specification.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Short description of the link.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestScript.Capability">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="required" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether or not the test execution will require the given capabilities of the server in order for this test script to execute.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="validated" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether or not the test execution will validate the given capabilities of the server in order for this test script to execute.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Description of the capabilities that this test script is requiring the server to support.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="origin" minOccurs="0" maxOccurs="unbounded" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Which origin server these requirements apply to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="destination" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Which server these requirements apply to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="link" minOccurs="0" maxOccurs="unbounded" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">Links to the FHIR specification that describes this interaction and the resources involved in more detail.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="capabilities" minOccurs="1" maxOccurs="1" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">Minimum capabilities required of server for test script to execute successfully. If server does not meet at a minimum the referenced capability statement, then all tests in this script are skipped.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestScript.Fixture">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="autocreate" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether or not to implicitly create the fixture during setup. If true, the fixture is automatically created on each server being tested during setup, therefore no create operation is required for this fixture in the TestScript.setup section.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="autodelete" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether or not to implicitly delete the fixture during teardown. If true, the fixture is automatically deleted on each server being tested during teardown, therefore no delete operation is required for this fixture in the TestScript.teardown section.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="resource" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to the resource (containing the contents of the resource needed for operations).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestScript.Variable">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Descriptive name for this variable.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="defaultValue" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A default, hard-coded, or user-defined value for this variable.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the variable and its purpose.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expression" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The FHIRPath expression to evaluate against the fixture body. When variables are defined, only one of either expression, headerField or path must be specified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="headerField" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Will be used to grab the HTTP header field value from the headers that sourceId is pointing to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="hint" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Displayable text string with hint help information to the user when entering a default value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="path" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">XPath or JSONPath to evaluate against the fixture body. When variables are defined, only one of either expression, headerField or path must be specified.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sourceId" minOccurs="0" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">Fixture to evaluate the XPath/JSONPath expression or the headerField against within this variable.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestScript.Setup">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="action" type="TestScript.Action" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Action would contain either an operation or an assertion.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestScript.Action">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="operation" type="TestScript.Operation" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">The operation to perform.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="assert" type="TestScript.Assert" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Evaluates the results of previous operations to determine if the server under test behaves appropriately.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestScript.Operation">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="type" minOccurs="0" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">Server interaction or operation type.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="resource" minOccurs="0" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The type of the resource. See http://build.fhir.org/resourcelist.html.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="label" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The label would be used for tracking/logging purposes by test engines.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The description would be used by test engines for tracking and reporting purposes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="accept" minOccurs="0" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The mime-type to use for RESTful operation in the 'Accept' header.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contentType" minOccurs="0" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The mime-type to use for RESTful operation in the 'Content-Type' header.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="destination" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">The server where the request message is destined for. Must be one of the server numbers listed in TestScript.destination section.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encodeRequestUrl" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether or not to implicitly send the request url in encoded format. The default is true to match the standard RESTful client behavior. Set to false when communicating with a server that does not support encoded url paths.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="method" minOccurs="0" maxOccurs="1" type="TestScriptRequestMethodCode">
<xs:annotation>
<xs:documentation xml:lang="en">The HTTP method the test engine MUST use for this operation regardless of any other operation details.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="origin" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">The server where the request message originates from. Must be one of the server numbers listed in TestScript.origin section.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="params" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Path plus parameters after [type]. Used to set parts of the request URL explicitly.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requestHeader" type="TestScript.RequestHeader" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Header elements would be used to set HTTP headers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requestId" minOccurs="0" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">The fixture id (maybe new) to map to the request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="responseId" minOccurs="0" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">The fixture id (maybe new) to map to the response.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sourceId" minOccurs="0" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">The id of the fixture used as the body of a PUT or POST request.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="targetId" minOccurs="0" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">Id of fixture used for extracting the [id], [type], and [vid] for GET requests.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Complete request URL.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestScript.RequestHeader">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="field" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The HTTP header field e.g. &quot;Accept&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="value" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The value of the header e.g. &quot;application/fhir+xml&quot;.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestScript.Assert">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="label" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The label would be used for tracking/logging purposes by test engines.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The description would be used by test engines for tracking and reporting purposes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="direction" minOccurs="0" maxOccurs="1" type="AssertionDirectionType">
<xs:annotation>
<xs:documentation xml:lang="en">The direction to use for the assertion.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="compareToSourceId" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Id of the source fixture used as the contents to be evaluated by either the &quot;source/expression&quot; or &quot;sourceId/path&quot; definition.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="compareToSourceExpression" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The FHIRPath expression to evaluate against the source fixture. When compareToSourceId is defined, either compareToSourceExpression or compareToSourcePath must be defined, but not both.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="compareToSourcePath" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">XPath or JSONPath expression to evaluate against the source fixture. When compareToSourceId is defined, either compareToSourceExpression or compareToSourcePath must be defined, but not both.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contentType" minOccurs="0" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The mime-type contents to compare against the request or response message 'Content-Type' header.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expression" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The FHIRPath expression to be evaluated against the request or response message contents - HTTP headers and payload.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="headerField" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The HTTP header field name e.g. 'Location'.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="minimumId" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The ID of a fixture. Asserts that the response contains at a minimum the fixture specified by minimumId.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="navigationLinks" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether or not the test execution performs validation on the bundle navigation links.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="operator" minOccurs="0" maxOccurs="1" type="AssertionOperatorType">
<xs:annotation>
<xs:documentation xml:lang="en">The operator type defines the conditional behavior of the assert. If not defined, the default is equals.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="path" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The XPath or JSONPath expression to be evaluated against the fixture representing the response received from server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requestMethod" minOccurs="0" maxOccurs="1" type="TestScriptRequestMethodCode">
<xs:annotation>
<xs:documentation xml:lang="en">The request method or HTTP operation code to compare against that used by the client system under test.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="requestURL" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The value to use in a comparison against the request URL path string.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="resource" minOccurs="0" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The type of the resource. See http://build.fhir.org/resourcelist.html.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="response" minOccurs="0" maxOccurs="1" type="AssertionResponseTypes">
<xs:annotation>
<xs:documentation xml:lang="en">okay | created | noContent | notModified | bad | forbidden | notFound | methodNotAllowed | conflict | gone | preconditionFailed | unprocessable.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="responseCode" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The value of the HTTP response code to be tested.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sourceId" minOccurs="0" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">Fixture to evaluate the XPath/JSONPath expression or the headerField against.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="validateProfileId" minOccurs="0" maxOccurs="1" type="id">
<xs:annotation>
<xs:documentation xml:lang="en">The ID of the Profile to validate against.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="value" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The value to compare to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="warningOnly" minOccurs="1" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether or not the test execution will produce a warning only on error for this assert.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestScript.Test">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of this test used for tracking/logging purposes by test engines.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short description of the test used by test engines for tracking and reporting purposes.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="action" type="TestScript.Action1" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Action would contain either an operation or an assertion.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestScript.Action1">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="operation" type="TestScript.Operation" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">An operation would involve a REST request to a server.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="assert" type="TestScript.Assert" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Evaluates the results of previous operations to determine if the server under test behaves appropriately.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestScript.Teardown">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="action" type="TestScript.Action2" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The teardown action will only contain an operation.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TestScript.Action2">
<xs:annotation>
<xs:documentation xml:lang="en">A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="operation" type="TestScript.Operation" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">An operation would involve a REST request to a server.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="AssertionDirectionType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="response">
<xs:annotation>
<xs:documentation xml:lang="en">response</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="request">
<xs:annotation>
<xs:documentation xml:lang="en">request</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="AssertionDirectionType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of direction to use for assertion.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="AssertionDirectionType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="AssertionOperatorType-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="equals">
<xs:annotation>
<xs:documentation xml:lang="en">equals</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="notEquals">
<xs:annotation>
<xs:documentation xml:lang="en">notEquals</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="in">
<xs:annotation>
<xs:documentation xml:lang="en">in</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="notIn">
<xs:annotation>
<xs:documentation xml:lang="en">notIn</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="greaterThan">
<xs:annotation>
<xs:documentation xml:lang="en">greaterThan</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="lessThan">
<xs:annotation>
<xs:documentation xml:lang="en">lessThan</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="empty">
<xs:annotation>
<xs:documentation xml:lang="en">empty</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="notEmpty">
<xs:annotation>
<xs:documentation xml:lang="en">notEmpty</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="contains">
<xs:annotation>
<xs:documentation xml:lang="en">contains</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="notContains">
<xs:annotation>
<xs:documentation xml:lang="en">notContains</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="eval">
<xs:annotation>
<xs:documentation xml:lang="en">evaluate</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="AssertionOperatorType">
<xs:annotation>
<xs:documentation xml:lang="en">The type of operator to use for assertion.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="AssertionOperatorType-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="AssertionResponseTypes-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="okay">
<xs:annotation>
<xs:documentation xml:lang="en">okay</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="created">
<xs:annotation>
<xs:documentation xml:lang="en">created</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="noContent">
<xs:annotation>
<xs:documentation xml:lang="en">noContent</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="notModified">
<xs:annotation>
<xs:documentation xml:lang="en">notModified</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="bad">
<xs:annotation>
<xs:documentation xml:lang="en">bad</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="forbidden">
<xs:annotation>
<xs:documentation xml:lang="en">forbidden</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="notFound">
<xs:annotation>
<xs:documentation xml:lang="en">notFound</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="methodNotAllowed">
<xs:annotation>
<xs:documentation xml:lang="en">methodNotAllowed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="conflict">
<xs:annotation>
<xs:documentation xml:lang="en">conflict</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="gone">
<xs:annotation>
<xs:documentation xml:lang="en">gone</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="preconditionFailed">
<xs:annotation>
<xs:documentation xml:lang="en">preconditionFailed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="unprocessable">
<xs:annotation>
<xs:documentation xml:lang="en">unprocessable</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="AssertionResponseTypes">
<xs:annotation>
<xs:documentation xml:lang="en">The type of response code to use for assertion.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="AssertionResponseTypes-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="TestScriptRequestMethodCode-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="delete">
<xs:annotation>
<xs:documentation xml:lang="en">DELETE</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="get">
<xs:annotation>
<xs:documentation xml:lang="en">GET</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="options">
<xs:annotation>
<xs:documentation xml:lang="en">OPTIONS</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="patch">
<xs:annotation>
<xs:documentation xml:lang="en">PATCH</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="post">
<xs:annotation>
<xs:documentation xml:lang="en">POST</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="put">
<xs:annotation>
<xs:documentation xml:lang="en">PUT</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="head">
<xs:annotation>
<xs:documentation xml:lang="en">HEAD</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="TestScriptRequestMethodCode">
<xs:annotation>
<xs:documentation xml:lang="en">The allowable request method or HTTP operation codes.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="TestScriptRequestMethodCode-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="ValueSet" type="ValueSet">
<xs:annotation>
<xs:documentation xml:lang="en">A ValueSet resource instance specifies a set of codes drawn from one or more code systems, intended for use in a particular context. Value sets link between [[[CodeSystem]]] definitions and their use in [coded elements](terminologies.html).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ValueSet">
<xs:annotation>
<xs:documentation xml:lang="en">A ValueSet resource instance specifies a set of codes drawn from one or more code systems, intended for use in a particular context. Value sets link between [[[CodeSystem]]] definitions and their use in [coded elements](terminologies.html).</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="url" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI that is used to identify this value set when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this value set is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the value set is stored on different servers.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A formal identifier that is used to identify this value set when it is represented in other formats, or referenced in a specification, model, design or an instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The identifier that is used to identify this version of the value set when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the value set author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A natural language name identifying the value set. This name should be usable as an identifier for the module by machine processing applications such as code generation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="title" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A short, descriptive, user-friendly title for the value set.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="PublicationStatus">
<xs:annotation>
<xs:documentation xml:lang="en">The status of this value set. Enables tracking the life-cycle of the content. The status of the value set applies to the value set definition (ValueSet.compose) and the associated ValueSet metadata. Expansions do not have a state.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="experimental" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">A Boolean value to indicate that this value set is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and optionally time) when the value set was created or revised (e.g. the 'content logical definition').</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publisher" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The name of the organization or individual that published the value set.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contact" minOccurs="0" maxOccurs="unbounded" type="ContactDetail">
<xs:annotation>
<xs:documentation xml:lang="en">Contact details to assist a user in finding and communicating with the publisher.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A free text natural language description of the value set from a consumer's perspective. The textual description specifies the span of meanings for concepts to be included within the Value Set Expansion, and also may specify the intended use and limitations of the Value Set.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="useContext" minOccurs="0" maxOccurs="unbounded" type="UsageContext">
<xs:annotation>
<xs:documentation xml:lang="en">The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate value set instances.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jurisdiction" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">A legal or geographic region in which the value set is intended to be used.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="immutable" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">If this is set to 'true', then no new versions of the content logical definition can be created. Note: Other metadata might still change.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="purpose" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">Explanation of why this value set is needed and why it has been designed as it has.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="copyright" minOccurs="0" maxOccurs="1" type="markdown">
<xs:annotation>
<xs:documentation xml:lang="en">A copyright statement relating to the value set and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the value set.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="compose" type="ValueSet.Compose" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A set of criteria that define the contents of the value set by including or excluding codes selected from the specified code system(s) that the value set draws from. This is also known as the Content Logical Definition (CLD).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="expansion" type="ValueSet.Expansion" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">A value set can also be &quot;expanded&quot;, where the value set is turned into a simple collection of enumerated codes. This element holds the expansion, if it has been performed.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ValueSet.Compose">
<xs:annotation>
<xs:documentation xml:lang="en">A ValueSet resource instance specifies a set of codes drawn from one or more code systems, intended for use in a particular context. Value sets link between [[[CodeSystem]]] definitions and their use in [coded elements](terminologies.html).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="lockedDate" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The Locked Date is the effective date that is used to determine the version of all referenced Code Systems and Value Set Definitions included in the compose that are not already tied to a specific version.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="inactive" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">Whether inactive codes - codes that are not approved for current use - are in the value set. If inactive = true, inactive codes are to be included in the expansion, if inactive = false, the inactive codes will not be included in the expansion. If absent, the behavior is determined by the implementation, or by the applicable $expand parameters (but generally, inactive codes would be expected to be included).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="include" type="ValueSet.Include" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Include one or more codes from a code system or other value set(s).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="exclude" type="ValueSet.Include" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Exclude one or more codes from the value set based on code system filters and/or other value sets.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ValueSet.Include">
<xs:annotation>
<xs:documentation xml:lang="en">A ValueSet resource instance specifies a set of codes drawn from one or more code systems, intended for use in a particular context. Value sets link between [[[CodeSystem]]] definitions and their use in [coded elements](terminologies.html).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="system" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI which is the code system from which the selected codes come from.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The version of the code system that the codes are selected from, or the special version '*' for all versions.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="concept" type="ValueSet.Concept" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies a concept to be included or excluded.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="filter" type="ValueSet.Filter" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Select concepts by specify a matching criterion based on the properties (including relationships) defined by the system, or on filters defined by the system. If multiple filters are specified, they SHALL all be true.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="valueSet" minOccurs="0" maxOccurs="unbounded" type="canonical">
<xs:annotation>
<xs:documentation xml:lang="en">Selects the concepts found in this value set (based on its value set definition). This is an absolute URI that is a reference to ValueSet.url. If multiple value sets are specified this includes the union of the contents of all of the referenced value sets.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ValueSet.Concept">
<xs:annotation>
<xs:documentation xml:lang="en">A ValueSet resource instance specifies a set of codes drawn from one or more code systems, intended for use in a particular context. Value sets link between [[[CodeSystem]]] definitions and their use in [coded elements](terminologies.html).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="code" minOccurs="1" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">Specifies a code for the concept to be included or excluded.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="display" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The text to display to the user for this concept in the context of this valueset. If no display is provided, then applications using the value set use the display specified for the code by the system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="designation" type="ValueSet.Designation" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Additional representations for this concept when used in this value set - other languages, aliases, specialized purposes, used for particular purposes, etc.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ValueSet.Designation">
<xs:annotation>
<xs:documentation xml:lang="en">A ValueSet resource instance specifies a set of codes drawn from one or more code systems, intended for use in a particular context. Value sets link between [[[CodeSystem]]] definitions and their use in [coded elements](terminologies.html).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="language" minOccurs="0" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The language this designation is defined for.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="use" minOccurs="0" maxOccurs="1" type="Coding">
<xs:annotation>
<xs:documentation xml:lang="en">A code that represents types of uses of designations.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="value" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The text value for this designation.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ValueSet.Filter">
<xs:annotation>
<xs:documentation xml:lang="en">A ValueSet resource instance specifies a set of codes drawn from one or more code systems, intended for use in a particular context. Value sets link between [[[CodeSystem]]] definitions and their use in [coded elements](terminologies.html).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="property" minOccurs="1" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">A code that identifies a property or a filter defined in the code system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="op" minOccurs="1" maxOccurs="1" type="FilterOperator">
<xs:annotation>
<xs:documentation xml:lang="en">The kind of operation to perform as a part of the filter criteria.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="value" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The match value may be either a code defined by the system, or a string value, which is a regex match on the literal string of the property value (if the filter represents a property defined in CodeSystem) or of the system filter value (if the filter represents a filter defined in CodeSystem) when the operation is 'regex', or one of the values (true and false), when the operation is 'exists'.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ValueSet.Expansion">
<xs:annotation>
<xs:documentation xml:lang="en">A ValueSet resource instance specifies a set of codes drawn from one or more code systems, intended for use in a particular context. Value sets link between [[[CodeSystem]]] definitions and their use in [coded elements](terminologies.html).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An identifier that uniquely identifies this expansion of the valueset, based on a unique combination of the provided parameters, the system default parameters, and the underlying system code system versions etc. Systems may re-use the same identifier as long as those factors remain the same, and the expansion is the same, but are not required to do so. This is a business identifier.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="timestamp" minOccurs="1" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The time at which the expansion was produced by the expanding system.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="total" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">The total number of concepts in the expansion. If the number of concept nodes in this resource is less than the stated number, then the server can return more using the offset parameter.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="offset" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">If paging is being used, the offset at which this resource starts. I.e. this resource is a partial view into the expansion. If paging is not being used, this element SHALL NOT be present.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="parameter" type="ValueSet.Parameter" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">A parameter that controlled the expansion process. These parameters may be used by users of expanded value sets to check whether the expansion is suitable for a particular purpose, or to pick the correct expansion.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contains" type="ValueSet.Contains" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">The codes that are contained in the value set expansion.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ValueSet.Parameter">
<xs:annotation>
<xs:documentation xml:lang="en">A ValueSet resource instance specifies a set of codes drawn from one or more code systems, intended for use in a particular context. Value sets link between [[[CodeSystem]]] definitions and their use in [coded elements](terminologies.html).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="name" minOccurs="1" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Name of the input parameter to the $expand operation; may be a server-assigned name for additional default or other server-supplied parameters used to control the expansion process.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice minOccurs="0" maxOccurs="1" >
<xs:annotation>
<xs:documentation xml:lang="en">The value of the parameter.</xs:documentation>
</xs:annotation>
<xs:element name="valueString" type="string"/>
<xs:element name="valueBoolean" type="boolean"/>
<xs:element name="valueInteger" type="integer"/>
<xs:element name="valueDecimal" type="decimal"/>
<xs:element name="valueUri" type="uri"/>
<xs:element name="valueCode" type="code"/>
<xs:element name="valueDateTime" type="dateTime"/>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ValueSet.Contains">
<xs:annotation>
<xs:documentation xml:lang="en">A ValueSet resource instance specifies a set of codes drawn from one or more code systems, intended for use in a particular context. Value sets link between [[[CodeSystem]]] definitions and their use in [coded elements](terminologies.html).</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="system" minOccurs="0" maxOccurs="1" type="uri">
<xs:annotation>
<xs:documentation xml:lang="en">An absolute URI which is the code system in which the code for this item in the expansion is defined.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="abstract" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">If true, this entry is included in the expansion for navigational purposes, and the user cannot select the code directly as a proper value.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="inactive" minOccurs="0" maxOccurs="1" type="boolean">
<xs:annotation>
<xs:documentation xml:lang="en">If the concept is inactive in the code system that defines it. Inactive codes are those that are no longer to be used, but are maintained by the code system for understanding legacy data. It might not be known or specified whether an concept is inactive (and it may depend on the context of use).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The version of the code system from this code was taken. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="code" minOccurs="0" maxOccurs="1" type="code">
<xs:annotation>
<xs:documentation xml:lang="en">The code for this item in the expansion hierarchy. If this code is missing the entry in the hierarchy is a place holder (abstract) and does not represent a valid code in the value set.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="display" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The recommended display for this item in the expansion.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="designation" type="ValueSet.Designation" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Additional representations for this item - other languages, aliases, specialized purposes, used for particular purposes, etc. These are relevant when the conditions of the expansion do not fix to a single correct representation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="contains" type="ValueSet.Contains" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Other codes and entries contained under this entry in the hierarchy.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="VerificationResult" type="VerificationResult">
<xs:annotation>
<xs:documentation xml:lang="en">Describes validation requirements, source(s), status and dates for one or more elements.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="VerificationResult">
<xs:annotation>
<xs:documentation xml:lang="en">Describes validation requirements, source(s), status and dates for one or more elements.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="target" minOccurs="0" maxOccurs="unbounded" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A resource that was validated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="targetLocation" minOccurs="0" maxOccurs="unbounded" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">The fhirpath location(s) within the resource that was validated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="need" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The frequency with which the target must be validated (none; initial; periodic).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="status">
<xs:annotation>
<xs:documentation xml:lang="en">The validation status of the target (attested; validated; in process; requires revalidation; validation failed; revalidation failed).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="statusDate" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">When the validation status was updated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="validationType" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">What the target is validated against (nothing; primary source; multiple sources).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="validationProcess" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The primary process by which the target is validated (edit check; value set; primary source; multiple sources; standalone; in context).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="frequency" minOccurs="0" maxOccurs="1" type="Timing">
<xs:annotation>
<xs:documentation xml:lang="en">Frequency of revalidation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lastPerformed" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date/time validation was last completed (including failed validations).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="nextScheduled" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date when target is next validated, if appropriate.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="failureAction" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The result if validation fails (fatal; warning; record only; none).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="primarySource" type="VerificationResult.PrimarySource" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Information about the primary source(s) involved in validation.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="attestation" type="VerificationResult.Attestation" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="en">Information about the entity attesting to information.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="validator" type="VerificationResult.Validator" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Information about the entity validating information.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="VerificationResult.PrimarySource">
<xs:annotation>
<xs:documentation xml:lang="en">Describes validation requirements, source(s), status and dates for one or more elements.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="who" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to the primary source.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of primary source (License Board; Primary Education; Continuing Education; Postal Service; Relationship owner; Registration Authority; legal source; issuing source; authoritative source).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="communicationMethod" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Method for communicating with the primary source (manual; API; Push).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="validationStatus" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Status of the validation of the target against the primary source (successful; failed; unknown).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="validationDate" minOccurs="0" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">When the target was validated against the primary source.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="canPushUpdates" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Ability of the primary source to push updates/alerts (yes; no; undetermined).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="pushTypeAvailable" minOccurs="0" maxOccurs="unbounded" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Type of alerts/updates the primary source can send (specific requested changes; any changes; as defined by source).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="VerificationResult.Attestation">
<xs:annotation>
<xs:documentation xml:lang="en">Describes validation requirements, source(s), status and dates for one or more elements.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="who" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The individual or organization attesting to information.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="onBehalfOf" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">When the who is asserting on behalf of another (organization or individual).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="communicationMethod" minOccurs="0" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">The method by which attested information was submitted/retrieved (manual; API; Push).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="date" minOccurs="0" maxOccurs="1" type="date">
<xs:annotation>
<xs:documentation xml:lang="en">The date the information was attested to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sourceIdentityCertificate" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A digital identity certificate associated with the attestation source.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="proxyIdentityCertificate" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A digital identity certificate associated with the proxy entity submitting attested information on behalf of the attestation source.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="proxySignature" minOccurs="0" maxOccurs="1" type="Signature">
<xs:annotation>
<xs:documentation xml:lang="en">Signed assertion by the proxy entity indicating that they have the right to submit attested information on behalf of the attestation source.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sourceSignature" minOccurs="0" maxOccurs="1" type="Signature">
<xs:annotation>
<xs:documentation xml:lang="en">Signed assertion by the attestation source that they have attested to the information.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="VerificationResult.Validator">
<xs:annotation>
<xs:documentation xml:lang="en">Describes validation requirements, source(s), status and dates for one or more elements.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="organization" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to the organization validating information.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="identityCertificate" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">A digital identity certificate associated with the validator.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="attestationSignature" minOccurs="0" maxOccurs="1" type="Signature">
<xs:annotation>
<xs:documentation xml:lang="en">Signed assertion by the validator that they have validated the information.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="status-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="attested">
<xs:annotation>
<xs:documentation xml:lang="en">Attested</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="validated">
<xs:annotation>
<xs:documentation xml:lang="en">Validated</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="in-process">
<xs:annotation>
<xs:documentation xml:lang="en">In process</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="req-revalid">
<xs:annotation>
<xs:documentation xml:lang="en">Requires revalidation</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="val-fail">
<xs:annotation>
<xs:documentation xml:lang="en">Validation failed</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="reval-fail">
<xs:annotation>
<xs:documentation xml:lang="en">Re-Validation failed</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="status">
<xs:annotation>
<xs:documentation xml:lang="en">The validation status of the target.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="status-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="VisionPrescription" type="VisionPrescription">
<xs:annotation>
<xs:documentation xml:lang="en">An authorization for the provision of glasses and/or contact lenses to a patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="VisionPrescription">
<xs:annotation>
<xs:documentation xml:lang="en">An authorization for the provision of glasses and/or contact lenses to a patient.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="DomainResource">
<xs:sequence>
<xs:element name="identifier" minOccurs="0" maxOccurs="unbounded" type="Identifier">
<xs:annotation>
<xs:documentation xml:lang="en">A unique identifier assigned to this vision prescription.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="status" minOccurs="1" maxOccurs="1" type="FinancialResourceStatusCodes">
<xs:annotation>
<xs:documentation xml:lang="en">The status of the resource instance.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="created" minOccurs="1" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date this resource was created.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="patient" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A resource reference to the person to whom the vision prescription applies.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="encounter" minOccurs="0" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">A reference to a resource that identifies the particular occurrence of contact between patient and health care provider during which the prescription was issued.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dateWritten" minOccurs="1" maxOccurs="1" type="dateTime">
<xs:annotation>
<xs:documentation xml:lang="en">The date (and perhaps time) when the prescription was written.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="prescriber" minOccurs="1" maxOccurs="1" type="Reference">
<xs:annotation>
<xs:documentation xml:lang="en">The healthcare professional responsible for authorizing the prescription.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lensSpecification" type="VisionPrescription.LensSpecification" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Contain the details of the individual lens specifications and serves as the authorization for the fullfillment by certified professionals.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="VisionPrescription.LensSpecification">
<xs:annotation>
<xs:documentation xml:lang="en">An authorization for the provision of glasses and/or contact lenses to a patient.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="product" minOccurs="1" maxOccurs="1" type="CodeableConcept">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies the type of vision correction product which is required for the patient.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="eye" minOccurs="1" maxOccurs="1" type="VisionEyes">
<xs:annotation>
<xs:documentation xml:lang="en">The eye for which the lens specification applies.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sphere" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Lens power measured in dioptres (0.25 units).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="cylinder" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Power adjustment for astigmatism measured in dioptres (0.25 units).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="axis" minOccurs="0" maxOccurs="1" type="integer">
<xs:annotation>
<xs:documentation xml:lang="en">Adjustment for astigmatism measured in integer degrees.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="prism" type="VisionPrescription.Prism" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en">Allows for adjustment on two axis.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="add" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Power adjustment for multifocal lenses measured in dioptres (0.25 units).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="power" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Contact lens power measured in dioptres (0.25 units).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="backCurve" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Back curvature measured in millimetres.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="diameter" minOccurs="0" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Contact lens diameter measured in millimetres.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="duration" minOccurs="0" maxOccurs="1" type="Quantity">
<xs:annotation>
<xs:documentation xml:lang="en">The recommended maximum wear period for the lens.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="color" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Special color or pattern.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="brand" minOccurs="0" maxOccurs="1" type="string">
<xs:annotation>
<xs:documentation xml:lang="en">Brand recommendations or restrictions.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="note" minOccurs="0" maxOccurs="unbounded" type="Annotation">
<xs:annotation>
<xs:documentation xml:lang="en">Notes for special requirements such as coatings and lens materials.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="VisionPrescription.Prism">
<xs:annotation>
<xs:documentation xml:lang="en">An authorization for the provision of glasses and/or contact lenses to a patient.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="BackboneElement">
<xs:sequence>
<xs:element name="amount" minOccurs="1" maxOccurs="1" type="decimal">
<xs:annotation>
<xs:documentation xml:lang="en">Amount of prism to compensate for eye alignment in fractional units.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="base" minOccurs="1" maxOccurs="1" type="VisionBase">
<xs:annotation>
<xs:documentation xml:lang="en">The relative base, or reference lens edge, for the prism.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="VisionBase-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="up">
<xs:annotation>
<xs:documentation xml:lang="en">Up</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="down">
<xs:annotation>
<xs:documentation xml:lang="en">Down</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="in">
<xs:annotation>
<xs:documentation xml:lang="en">In</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="out">
<xs:annotation>
<xs:documentation xml:lang="en">Out</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="VisionBase">
<xs:annotation>
<xs:documentation xml:lang="en">A coded concept listing the base codes.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="VisionBase-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="VisionEyes-list">
<xs:restriction base="code-primitive">
<xs:enumeration value="right">
<xs:annotation>
<xs:documentation xml:lang="en">Right Eye</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="left">
<xs:annotation>
<xs:documentation xml:lang="en">Left Eye</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="VisionEyes">
<xs:annotation>
<xs:documentation xml:lang="en">A coded concept listing the eye codes.</xs:documentation>
<xs:documentation xml:lang="en">If the element is present, it must have either a @value, an @id, or extensions</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="Element">
<xs:attribute name="value" type="VisionEyes-list" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:schema>