<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2011 rel. 3 sp1 (x64) (http://www.altova.com) by American College of Cardiology Foundation -->
<!--W3C Schema generated by XMLSpy v2011 rel. 3 sp1 (x64) (http://www.altova.com)-->
<!--Update Date: 2017-09-14-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
	<xs:complexType name="T4_ParentChildRules">
		<xs:sequence>
			<xs:element name="parentChildRule" maxOccurs="unbounded">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="parentElementReference" type="xs:short"/>
						<xs:element name="parentElementName" type="xs:string"/>
						<xs:element name="parentElementSelectionName" type="xs:string"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="T3_TechnicalSpecification">
		<xs:all>
			<xs:element name="shortName" type="xs:string"/>
			<xs:element name="dataType" type="xs:string"/>
			<xs:element name="precision" type="xs:string" minOccurs="0"/>
			<xs:element name="unitofMeasure" type="xs:string"/>
			<xs:element name="selectionType" type="xs:string"/>
			<xs:element name="defaultValue" type="xs:string" minOccurs="0"/>
			<xs:element name="isDynamicList" type="xs:string" minOccurs="0"/>
			<xs:element name="missingData" type="xs:string"/>
			<xs:element name="isHarvested" type="xs:string"/>
			<xs:element name="dataSet" type="xs:string" minOccurs="0"/>
			<xs:element name="dataSource" type="xs:string"/>
			<xs:element name="isFollowupElement" type="xs:string" minOccurs="0"/>
			<xs:element name="isBaseElement" type="xs:string" minOccurs="0"/>
			<xs:element name="isIdentifier" type="xs:string" minOccurs="0"/>
			<xs:element name="vendorInstruction" type="xs:string" minOccurs="0"/>
			<xs:element name="parentChildRules" type="T4_ParentChildRules" minOccurs="0"/>
			<xs:element name="elementRanges" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="elementRange" maxOccurs="unbounded">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="unitofMeasure" type="xs:string" minOccurs="0"/>
									<xs:element name="usualRangeMin" type="xs:string" minOccurs="0"/>
									<xs:element name="usualRangeMax" type="xs:string" minOccurs="0"/>
									<xs:element name="validRangeMin" type="xs:string" minOccurs="0"/>
									<xs:element name="validRangeMax" type="xs:string" minOccurs="0"/>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:all>
	</xs:complexType>
	<xs:complexType name="T3_SupportingDefinitions">
		<xs:sequence>
			<xs:element name="supportingDefinition" maxOccurs="unbounded">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="title" type="xs:string" minOccurs="0"/>
						<xs:element name="displayOrder" type="xs:int" minOccurs="0"/>
						<xs:element name="source" type="xs:string" minOccurs="0"/>
						<xs:element name="definition" type="xs:string"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="dataDictionary">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="sectionContainment" type="T3_SectionContainment"/>
				<xs:element name="elements">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="element" maxOccurs="unbounded">
								<xs:complexType>
									<xs:all>
										<xs:element name="name" type="xs:string"/>
										<xs:element name="sectionDisplayName" type="xs:string" minOccurs="0"/>
										<xs:element name="sectionCode" type="xs:string"/>
										<xs:element name="targetValue" type="xs:string"/>
										<xs:element name="codingInstruction" type="xs:string"/>
										<xs:element name="supportingDefinitions" type="T3_SupportingDefinitions" minOccurs="0"/>
										<xs:element name="technicalSpecification" type="T3_TechnicalSpecification"/>
										<xs:element name="selections" minOccurs="0">
											<xs:complexType>
												<xs:choice>
													<xs:element name="selection" maxOccurs="unbounded">
														<xs:complexType>
															<xs:all>
																<xs:element name="selectionName" type="xs:string"/>
																<xs:element name="selectionDefinition" type="xs:string" minOccurs="0"/>
																<xs:element name="displayOrder" type="xs:integer"/>
															</xs:all>
															<xs:attribute name="codeSystem" type="xs:string" use="required"/>
															<xs:attribute name="codeSystemName" type="xs:string" use="required"/>
															<xs:attribute name="code" type="xs:string" use="required"/>
														</xs:complexType>
													</xs:element>
												</xs:choice>
											</xs:complexType>
										</xs:element>
									</xs:all>
									<xs:attribute name="reference" type="xs:short" use="required"/>
									<xs:attribute name="codeSystem" type="xs:string" use="required"/>
									<xs:attribute name="codeSystemName" type="xs:string" use="optional"/>
									<xs:attribute name="code" type="xs:string" use="required"/>
								</xs:complexType>
							</xs:element>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
			</xs:sequence>
			<xs:attribute name="version" type="xs:decimal" use="required"/>
			<xs:attribute name="releaseDate" type="xs:string" use="required"/>
			<xs:attribute name="registryID" type="xs:string" use="required"/>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="T3_SectionContainment">
		<xs:sequence>
			<xs:element name="section" maxOccurs="unbounded">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="containerClass" type="xs:string"/>
						<xs:element name="parentSection" type="xs:string"/>
						<xs:element name="sectionType" type="xs:string"/>
						<xs:element name="cardinality" type="xs:string"/>
					</xs:sequence>
					<xs:attribute name="code" type="xs:string"/>
					<xs:attribute name="displayName" type="xs:string"/>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
</xs:schema>
