blob: fc285b5049e1ee515181855ae70a4aa529e7f38b [file] [log] [blame]
<?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 Thu, Dec 27, 2018 22:37+1100 for FHIR v4.0.0
Note: the schemas &amp; schematrons do not contain all of the rules about what makes resources
valid. Implementers will still need to be familiar with the content of the specification and with
any profiles that apply to the resources in order to make a conformant implementation.
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://hl7.org/fhir" xmlns:xhtml="http://www.w3.org/1999/xhtml" targetNamespace="http://hl7.org/fhir" elementFormDefault="qualified" version="1.0">
<xs:include schemaLocation="fhir-base.xsd"/>
<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:schema>