<?xml version="1.0" encoding="UTF-8"?> 
<xs:schema xmlns="http://schemas.microsoft.com/3dmanufacturing/slice/2015/07" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xml="http://www.w3.org/XML/1998/namespace" 
targetNamespace="http://schemas.microsoft.com/3dmanufacturing/slice/2015/07" elementFormDefault="unqualified" attributeFormDefault="unqualified" blockDefault="#all"> 
	<xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/>
  <xs:annotation> 
		<xs:documentation><![CDATA[   Schema notes: 
 
  Items within this schema follow a simple naming convention of appending a prefix indicating the type of element for references: 
 
  Unprefixed: Element names 
  CT_: Complex types 
  ST_: Simple types 
   
  ]]></xs:documentation> 
	</xs:annotation> 
	<!-- Complex Types --> 
	<xs:complexType name="CT_SliceStack"> 
		<xs:choice> 
			<xs:element ref="slice" minOccurs="0" maxOccurs="2147483647"/> 
			<xs:element ref="sliceref" minOccurs="0" maxOccurs="2147483647"/>  
		</xs:choice> 
		<xs:attribute name="id" type="ST_ResourceID" use="required"/> 
		<xs:attribute name="zbottom" type="ST_Number"/> 
		<xs:anyAttribute namespace="##other" processContents="lax"/> 
	</xs:complexType> 
	<xs:complexType name="CT_Slice"> 
		<xs:sequence> 
			<xs:element ref="vertices" minOccurs="0" /> 
			<xs:element ref="polygon" minOccurs="0" maxOccurs="2147483647"/>
			<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="2147483647"/> 
		</xs:sequence> 
		<xs:attribute name="ztop" type="ST_Number" use="required"/> 
		<xs:anyAttribute namespace="##other" processContents="lax"/> 
	</xs:complexType>  
	<xs:complexType name="CT_SliceRef"> 
		<xs:attribute name="slicestackid" type="ST_ResourceID" use="required"/> 
		<xs:attribute name="slicepath" type="ST_UriReference" use="required"/> 
		<xs:anyAttribute namespace="##other" processContents="lax"/>
	</xs:complexType> 
	<xs:complexType name="CT_2DVertices"> 
		<xs:sequence> 
			<xs:element ref="vertex" minOccurs="2" maxOccurs="2147483647"/>
		</xs:sequence> 
	</xs:complexType> 
	<xs:complexType name="CT_2DVertex"> 
		<xs:attribute name="x" type="ST_Number" use="required"/> 
		<xs:attribute name="y" type="ST_Number" use="required"/> 
		<xs:anyAttribute namespace="##other" processContents="lax"/> 
	</xs:complexType> 
	<xs:complexType name="CT_Polygon"> 
		<xs:sequence> 
			<xs:element ref="segment" minOccurs="1" maxOccurs="2147483647"/> 
		</xs:sequence> 
		<xs:attribute name="startv" type="ST_ResourceIndex" use="required"/> 
	</xs:complexType> 
	<xs:complexType name="CT_Segment"> 
		<xs:attribute name="v2" type="ST_ResourceIndex" use="required"/> 
		<xs:attribute name="p1" type="ST_ResourceIndex" use="required"/> 
		<xs:attribute name="p2" type="ST_ResourceIndex" use="required"/> 
		<xs:attribute name="pid" type="ST_ResourceID" use="required"/> 
		<xs:anyAttribute namespace="##other" processContents="lax"/> 
	</xs:complexType> 
	<!-- Simple Types --> 
	<xs:simpleType name="ST_Number"> 
		<xs:restriction base="xs:double"> 
			<xs:whiteSpace value="collapse"/> 
			<xs:pattern value="((\-|\+)?(([0-9]+(\.[0-9]+)?)|(\.[0-9]+))((e|E)(\-|\+)?[09]+)?)"/> 
		</xs:restriction> 
	</xs:simpleType> 
	<xs:simpleType name="ST_ResourceID"> 
		<xs:restriction base="xs:positiveInteger"> 
			<xs:maxExclusive value="21474836478"/> 
		</xs:restriction> 
	</xs:simpleType> 
	<xs:simpleType name="ST_ResourceIndex"> 
		<xs:restriction base="xs:nonNegativeInteger"> 
			<xs:maxExclusive value="21474836478"/> 
		</xs:restriction> 
	</xs:simpleType> 
	<xs:simpleType name="ST_UriReference"> 
		<xs:restriction base="xs:anyURI"> 
			<xs:pattern value="/.*"/> 
		</xs:restriction> 
	</xs:simpleType> 
	<xs:simpleType name="ST_ColorValue"> 
		<xs:restriction base="xs:string"> 
			<xs:pattern value="#[0-9|A-F|a-f][0-9|A-F|a-f][0-9|A-F|a-f][0-9|A-F|a-f][0-9|AF|a-f][0-9|A-F|a-f]([0-9|A-F|a-f][0-9|A-F|a-f])?"/> 
		</xs:restriction> 
	</xs:simpleType> 
	<!-- Elements --> 
	<xs:element name="slicestack" type="CT_SliceStack"/> 
	<xs:element name="sliceref" type="CT_SliceRef"/> 
	<xs:element name="slice" type="CT_Slice"/>  
	<xs:element name="vertices" type="CT_2DVertices"/> 
	<xs:element name="vertex" type="CT_2DVertex"/> 
	<xs:element name="polygon" type="CT_Polygon"/> 
	<xs:element name="segment" type="CT_Segment"/> 
</xs:schema>