<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.foo.com"
	targetNamespace="http://www.foo.com" elementFormDefault="qualified"
	attributeFormDefault="unqualified">

	<!-- dape: inserted root element  -->
	<xs:element name="Message" type="tMessage"/>

	<!-- Root element for message -->
	<xs:complexType name="tMessage">
		<xs:sequence maxOccurs="unbounded">
			<xs:element name="v" type="tValue"/>
		</xs:sequence>
	</xs:complexType>

	<!-- Data elements -->
	<xs:complexType name="tValue" abstract="true">
		<xs:sequence>
			<xs:element name="t" type="xs:long" minOccurs="0"/>

		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="tDouble">
		<xs:complexContent>
			<xs:extension base="tValue">
				<xs:sequence>
					<xs:element name="val" type="xs:double"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>

	<xs:complexType name="tInteger">
		<xs:complexContent>
			<xs:extension base="tValue">
				<xs:sequence>
					<xs:element name="val" type="xs:int"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>

	<xs:complexType name="tBoolean">
		<xs:complexContent>
			<xs:extension base="tValue">
				<xs:sequence>
					<xs:element name="val" type="xs:boolean"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>

	<xs:complexType name="tTriple">
		<xs:complexContent>
			<xs:extension base="tValue">
				<xs:sequence>
					<xs:element name="phsA" type="xs:double"/>
					<xs:element name="phsB" type="xs:double"/>
					<xs:element name="phsC" type="xs:double"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
</xs:schema>
