<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2006 rel. 3 U (http://www.altova.com) by Eugene Song (NIST) -->
<xs:schema xmlns:stml="http://localhost/1451HTTPAPI" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://localhost/1451HTTPAPI" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:include schemaLocation="SmartTransducerDataModel.xsd"/>
	<xs:element name="CalibrationTEDS" type="stml:CalibrationTEDSType"/>
	<xs:complexType name="CalibrationTEDSDataBlockType">
		<xs:annotation>
			<xs:documentation>Structure of the Calibration TEDS data block</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="TEDSID">
				<xs:annotation>
					<xs:documentation>TEDS identifier</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Type" type="xs:short" default="3"/>
						<xs:element name="Length" type="xs:short" default="4"/>
						<xs:element name="Value" type="stml:UInt8Array"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="LstCalDt" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Last calibration date-time</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Type" type="xs:short" default="10"/>
						<xs:element name="Length" type="xs:short" default="8"/>
						<xs:element name="Value" type="stml:TimeInstanceType"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="CalInrvl" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Calibration interval</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Type" type="xs:short" default="11"/>
						<xs:element name="Length" type="xs:short" default="8"/>
						<xs:element name="Value" type="stml:TimeDurationType"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="SIConvrt" minOccurs="0">
				<xs:annotation>
					<xs:documentation>SI units conversion constants</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Type" type="xs:short" default="12"/>
						<xs:element name="Length" type="xs:short"/>
						<xs:sequence>
							<xs:element name="SISlope" minOccurs="0">
								<xs:annotation>
									<xs:documentation>SI units conversion slope</xs:documentation>
								</xs:annotation>
								<xs:complexType>
									<xs:sequence>
										<xs:element name="Type" type="xs:short" default="30"/>
										<xs:element name="Length" type="xs:short" default="4"/>
										<xs:element name="Value" type="stml:Float32"/>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="Intrcpt" minOccurs="0">
								<xs:annotation>
									<xs:documentation>SI units conversion intercept</xs:documentation>
								</xs:annotation>
								<xs:complexType>
									<xs:sequence>
										<xs:element name="Type" type="xs:short" default="31"/>
										<xs:element name="Length" type="xs:short" default="4"/>
										<xs:element name="Value" type="stml:Float32"/>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
						</xs:sequence>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="LowLimit" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Operational lower range limit</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Type" type="xs:short" default="13"/>
						<xs:element name="Length" type="xs:short" default="4"/>
						<xs:element name="Value" type="stml:Float32"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="HiLimit" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Operational upper range limit</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Type" type="xs:short" default="14"/>
						<xs:element name="Length" type="xs:short" default="4"/>
						<xs:element name="Value" type="stml:Float32"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="OError" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Operational uncertainty</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Type" type="xs:short" default="15"/>
						<xs:element name="Length" type="xs:short" default="4"/>
						<xs:element name="Value" type="stml:Float32"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="OCovert" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Post conversion operation</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Type" type="xs:short" default="16"/>
						<xs:element name="Length" type="xs:short" default="1"/>
						<xs:element name="Value" type="stml:UInt8"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="IConvert" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Pre-conversion operation</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Type" type="xs:short" default="17"/>
						<xs:element name="Length" type="xs:short" default="1"/>
						<xs:element name="Value" type="stml:UInt8"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="LinOnly" minOccurs="0">
				<xs:annotation>
					<xs:documentation>This field is used when only a linear single section conversion is required.</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Type" type="xs:short" default="20"/>
						<xs:element name="Length" type="xs:short"/>
						<xs:sequence>
							<xs:element name="ChanNum" minOccurs="0">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="Type" type="xs:short" default="41"/>
										<xs:element name="Length" type="xs:short" default="1"/>
										<xs:element name="Value" type="stml:UInt16"/>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="ChanKey" minOccurs="0">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="Type" type="xs:short" default="42"/>
										<xs:element name="Length" type="xs:short" default="1"/>
										<xs:element name="Value" type="stml:UInt8"/>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="CoefSet" minOccurs="0">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="Type" type="xs:short" default="51"/>
										<xs:element name="Length" type="xs:short" default="2"/>
										<xs:element name="Value" type="stml:Float32Array"/>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
						</xs:sequence>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="XdcrBlk" minOccurs="0">
				<xs:annotation>
					<xs:documentation>TransducerChannel description</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Type" type="xs:short" default="21"/>
						<xs:element name="Length" type="xs:short"/>
						<xs:sequence>
							<xs:element name="Element">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="Type" type="xs:short" default="40"/>
										<xs:element name="Length" type="xs:short" default="1"/>
										<xs:element name="Value" type="stml:UInt16"/>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="ChanNum">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="Type" type="xs:short" default="41"/>
										<xs:element name="Length" type="xs:short" default="1"/>
										<xs:element name="Value" type="stml:UInt16"/>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="ChanKey">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="Type" type="xs:short" default="42"/>
										<xs:element name="Length" type="xs:short" default="1"/>
										<xs:element name="Value" type="stml:UInt8"/>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="Degree">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="Type" type="xs:short" default="43"/>
										<xs:element name="Length" type="xs:short" default="1"/>
										<xs:element name="Value" type="stml:UInt8"/>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="STable">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="Type" type="xs:short" default="44"/>
										<xs:element name="Length" type="xs:short"/>
										<xs:sequence>
											<xs:element name="LoBndry">
												<xs:complexType>
													<xs:sequence>
														<xs:element name="Type" type="xs:short" default="46"/>
														<xs:element name="Length" type="xs:short" default="1"/>
														<xs:element name="Value" type="stml:Float32Array"/>
													</xs:sequence>
												</xs:complexType>
											</xs:element>
											<xs:element name="HiBadry">
												<xs:complexType>
													<xs:sequence>
														<xs:element name="Type" type="xs:short" default="47"/>
														<xs:element name="Length" type="xs:short" default="4"/>
														<xs:element name="Value" type="stml:Float32"/>
													</xs:sequence>
												</xs:complexType>
											</xs:element>
										</xs:sequence>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="OTable" minOccurs="0">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="Type" type="xs:short" default="45"/>
										<xs:element name="Length" type="xs:short"/>
										<xs:element name="Value" type="stml:Float32Array"/>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
						</xs:sequence>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="CoefBlk" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Multinomial coefficient</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Type" type="xs:short" default="22"/>
						<xs:element name="Length" type="xs:short"/>
						<xs:sequence>
							<xs:element name="CellNum">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="Type" type="xs:short" default="50"/>
										<xs:element name="Length" type="xs:short" default="1"/>
										<xs:element name="Value" type="stml:UInt8"/>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="CoefSet">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="Type" type="xs:short" default="51"/>
										<xs:element name="Length" type="xs:short" default="2"/>
										<xs:element name="Value" type="stml:Float32Array"/>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
						</xs:sequence>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="CalibrationTEDSType">
		<xs:annotation>
			<xs:documentation>This is an optional TEDS. The function of the Calibration TEDS is to make available all of the information used by correction software in connection with the TransducerChannel being addressed.</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="TEDSLength" type="stml:UInt32"/>
			<xs:element name="CalibrationTEDSDataBlock" type="stml:CalibrationTEDSDataBlockType"/>
			<xs:element name="CheckSum" type="stml:UInt16"/>
		</xs:sequence>
	</xs:complexType>
</xs:schema>

