<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns="http://www.pwg.org/schemas/2006/10/NetFaxOutService" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:netfaxout="http://www.pwg.org/schemas/2006/10/NetFaxOutService" xmlns:pwg="http://www.pwg.org/schemas/2006/10/sm" xmlns:counters="http://www.pwg.org/schemas/2006/10/Counters" targetNamespace="http://www.pwg.org/schemas/2006/10/NetFaxOutService" elementFormDefault="qualified" version="1.08">
	<xs:import namespace="http://www.pwg.org/schemas/2006/10/Counters" schemaLocation="Counter.xsd"/>
	<xs:import namespace="http://www.pwg.org/schemas/2006/10/sm" schemaLocation="DocumentTypes.xsd"/>
	<xs:import namespace="http://www.pwg.org/schemas/2006/10/sm" schemaLocation="ServiceTypes.xsd"/>
	<xs:import namespace="http://www.pwg.org/schemas/2006/10/sm" schemaLocation="JobTypes.xsd"/>
	<!--12/12/07 PJZ Reworked Service/Job/Document counters-->
	<!--09/13/07 PJZ Reworked default and supported-->
	<!--10/08/06 PJZ Reworked dependencies and removed Chameleon-->
	<!--10/04/06 PJZ Created-->
	<xs:annotation>
		<xs:documentation xml:lang="en">
   PWG Semantic Model v2   

Copyright 2002-2008, IEEE Industry Standards and Technology Organization/ScanService Working Group. 
All rights reserved  

    - version 1.08 - 18 December 2007 -Editors:  Peter Zehler, Ira McDoanald 
</xs:documentation>
	</xs:annotation>
	<!---->
	<!-- NetFaxOutDocument - group -->
	<!---->
	<!-- NetFaxOutDocumentStatus - group -->
	<xs:complexType name="NetFaxOutDocumentStatus">
		<xs:complexContent>
			<xs:extension base="pwg:ImagingDocumentStatus">
				<xs:sequence>
					<!-- NetFaxOut Document status references here -->
					<!-- NetFaxOut Document counters from service counters definition -->
					<xs:element ref="counters:NetworkFaxOutDocumentCounters" minOccurs="0"/>
					<xs:element ref="pwg:VendorExtension" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
		<!-- NetFaxOutDocumentStatus - group -->
	</xs:complexType>
	<xs:element name="NetFaxOutDocumentStatus" type="NetFaxOutDocumentStatus"/>
	<!-- NetFaxOutDocumentTicket - group -->
	<xs:complexType name="NetFaxOutDocumentTicketType">
		<xs:sequence>
			<xs:element ref="NetFaxOutDocumentDescription" minOccurs="0"/>
			<xs:element ref="NetFaxOutDocumentProcessing" minOccurs="0"/>
			<xs:element ref="pwg:VendorExtension" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="NetFaxOutDocumentTicket" type="NetFaxOutDocumentTicketType"/>
	<xs:element name="NetFaxOutDocumentReceipt" type="NetFaxOutDocumentTicketType"/>
	<!-- NetFaxOutDocumentDescription - group -->
	<xs:complexType name="NetFaxOutDocumentDescription">
		<xs:complexContent>
			<xs:extension base="pwg:ImagingDocumentDescription">
				<xs:sequence>
					<!-- NetFaxOut Document description references here -->
					<xs:element ref="pwg:VendorExtension" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
		<!-- NetFaxOutDocumentDescription - group -->
	</xs:complexType>
	<xs:element name="NetFaxOutDocumentDescription" type="NetFaxOutDocumentDescription"/>
	<!-- NetFaxOutDocumentProcessing - group -->
	<xs:complexType name="NetFaxOutDocumentProcessing">
		<xs:complexContent>
			<xs:extension base="pwg:ImagingDocumentProcessing">
				<xs:sequence>
					<!-- NetFaxOut document processing references here -->
					<xs:element ref="pwg:VendorExtension" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
		<!-- NetFaxOutDocumentProcessing - group -->
	</xs:complexType>
	<xs:element name="NetFaxOutDocumentProcessing" type="NetFaxOutDocumentProcessing"/>
	<!-- NetFaxOutDocuments - set of NetFaxOut Documents -->
	<xs:complexType name="NetFaxOutDocuments">
		<xs:sequence>
			<xs:element ref="NetFaxOutDocument" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
		<!-- NetFaxOutDocuments - set of NetFaxOut Documents -->
	</xs:complexType>
	<xs:element name="NetFaxOutDocuments" type="NetFaxOutDocuments"/>
	<!-- NetFaxOutDocument - object -->
	<xs:complexType name="NetFaxOutDocument">
		<xs:sequence>
			<xs:element ref="NetFaxOutDocumentReceipt" minOccurs="0"/>
			<xs:element ref="NetFaxOutDocumentStatus"/>
			<xs:element ref="NetFaxOutDocumentTicket" minOccurs="0"/>
			<xs:element ref="pwg:VendorExtension" minOccurs="0"/>
		</xs:sequence>
		<!-- NetFaxOutDocument - object -->
	</xs:complexType>
	<xs:element name="NetFaxOutDocument" type="NetFaxOutDocument"/>
	<!---->
	<!-- NetFaxOutJob - group -->
	<!---->
	<!-- NetFaxOutJobStatus - group -->
	<xs:complexType name="NetFaxOutJobStatus">
		<xs:complexContent>
			<xs:extension base="pwg:ImagingJobStatus">
				<xs:sequence>
					<!-- NetFaxOut job status references here -->
					<!-- NetFaxOut job counters from service counters definition -->
					<xs:element ref="counters:NetworkFaxOutJobCounters" minOccurs="0"/>
					<xs:element ref="pwg:VendorExtension" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
		<!-- NetFaxOutJobStatus - group -->
	</xs:complexType>
	<xs:element name="NetFaxOutJobStatus" type="NetFaxOutJobStatus"/>
	<!-- NetFaxOutJobTicket - group -->
	<xs:complexType name="NetFaxOutJobTicketType">
		<xs:sequence>
			<xs:element ref="NetFaxOutDocumentProcessing" minOccurs="0"/>
			<xs:element ref="NetFaxOutJobDescription" minOccurs="0"/>
			<xs:element ref="NetFaxOutJobProcessing" minOccurs="0"/>
			<xs:element ref="pwg:VendorExtension" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="NetFaxOutJobTicket" type="NetFaxOutJobTicketType"/>
	<!-- NetFaxOutJobDescription - group -->
	<xs:complexType name="NetFaxOutJobDescription">
		<xs:complexContent>
			<xs:extension base="pwg:ImagingJobDescription">
				<xs:sequence>
					<!-- NetFaxOut job description references here -->
					<xs:element ref="pwg:VendorExtension" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
		<!-- NetFaxOutJobDescription - group -->
	</xs:complexType>
	<xs:element name="NetFaxOutJobDescription" type="NetFaxOutJobDescription"/>
	<!-- NetFaxOutJobProcessing - group -->
	<xs:complexType name="NetFaxOutJobProcessing">
		<xs:complexContent>
			<xs:extension base="pwg:ImagingJobProcessing">
				<xs:sequence>
					<!-- NetFaxOut job processing references here -->
					<xs:element ref="pwg:JobPriority" minOccurs="0"/>
					<xs:element ref="pwg:VendorExtension" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
		<!-- NetFaxOutJobProcessing - group -->
	</xs:complexType>
	<xs:element name="NetFaxOutJobProcessing" type="NetFaxOutJobProcessing"/>
	<!-- NetFaxOutJobs - set of NetFaxOut jobs -->
	<xs:complexType name="NetFaxOutJobs">
		<xs:sequence>
			<xs:element ref="NetFaxOutJob" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
		<!-- NetFaxOutJobs - set of NetFaxOut jobs -->
	</xs:complexType>
	<xs:element name="ActiveJobs" type="NetFaxOutJobs"/>
	<xs:element name="JobHistory" type="NetFaxOutJobs"/>
	<!-- NetFaxOutJob - object -->
	<xs:complexType name="NetFaxOutJob">
		<xs:sequence>
			<xs:element ref="NetFaxOutJobStatus"/>
			<xs:element ref="NetFaxOutJobTicket" minOccurs="0"/>
			<xs:element ref="pwg:VendorExtension" minOccurs="0"/>
		</xs:sequence>
		<!-- NetFaxOutJob - object -->
	</xs:complexType>
	<xs:element name="NetFaxOutJob">
		<xs:complexType>
			<xs:complexContent>
				<xs:extension base="NetFaxOutJob">
					<xs:sequence>
						<xs:element ref="NetFaxOutDocuments" minOccurs="0"/>
					</xs:sequence>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>
	<!---->
	<!-- NetFaxOutService - group -->
	<!---->
	<!-- NetFaxOutServiceStatus - group -->
	<xs:complexType name="NetFaxOutServiceStatus">
		<xs:complexContent>
			<xs:extension base="pwg:ServiceStatus">
				<xs:sequence>
					<xs:element ref="counters:NetworkFaxOutServiceCounters" minOccurs="0"/>
					<xs:element ref="pwg:VendorExtension" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
		<!-- NetFaxOutServiceStatus - group -->
	</xs:complexType>
	<xs:element name="NetFaxOutServiceStatus" type="NetFaxOutServiceStatus"/>
	<!-- NetFaxOutServiceDescription - group -->
	<xs:complexType name="NetFaxOutServiceDescription">
		<xs:complexContent>
			<xs:extension base="pwg:ServiceDescription">
				<xs:sequence>
					<!-- NetFaxOut service description references -->
					<xs:element ref="pwg:VendorExtension" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
		<!-- NetFaxOutServiceDescription - group -->
	</xs:complexType>
	<xs:element name="NetFaxOutServiceDescription" type="NetFaxOutServiceDescription"/>
	<!-- NetFaxOut Service Default Ticket - group -->
	<xs:element name="DefaultNetFaxOutTicket" type="NetFaxOutJobTicketType"/>
	<!-- NetFaxOutService Capabilities - group -->
	<xs:complexType name="NetFaxOutJobDescriptionCapabilitiesType">
		<xs:complexContent>
			<xs:extension base="pwg:ImagingJobDescriptionCapabilitiesType">
				<xs:sequence>
					<xs:element ref="pwg:VendorExtension" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:element name="NetFaxOutJobDescriptionCapabilities" type="NetFaxOutJobDescriptionCapabilitiesType"/>
	<xs:complexType name="NetFaxOutDocumentProcessingCapabilitiesType">
		<xs:annotation>
			<xs:documentation>ISSUE: (GP): I did not see a capability for the “light source” this can be changed in NetFaxOutning and can be done for the document type (paper, transparencies, negatives).</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:extension base="pwg:DocumentProcessingCapabilitiesType">
				<xs:sequence>
					<xs:element ref="pwg:VendorExtension" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:element name="NetFaxOutDocumentProcessingCapabilities" type="NetFaxOutDocumentProcessingCapabilitiesType"/>
	<xs:complexType name="NetFaxOutJobProcessingCapabilitiesType">
		<xs:complexContent>
			<xs:extension base="pwg:JobProcessingCapabilitiesType"/>
		</xs:complexContent>
	</xs:complexType>
	<xs:element name="NetFaxOutJobProcessingCapabilities">
		<xs:complexType>
			<xs:complexContent>
				<xs:extension base="NetFaxOutJobProcessingCapabilitiesType">
					<xs:sequence>
						<xs:element name="JobPriority" type="pwg:RangeOfInt" minOccurs="0"/>
						<xs:element name="JobSaveDisposition" minOccurs="0">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="SaveDisposition">
										<xs:complexType>
											<xs:sequence>
												<xs:element ref="pwg:SaveDisposition" maxOccurs="unbounded"/>
											</xs:sequence>
										</xs:complexType>
									</xs:element>
									<xs:element name="SaveInfo">
										<xs:complexType>
											<xs:sequence>
												<xs:element name="SaveDocumentFormat">
													<xs:complexType>
														<xs:sequence>
															<xs:element ref="pwg:SaveDocumentFormat" maxOccurs="unbounded"/>
														</xs:sequence>
													</xs:complexType>
												</xs:element>
												<xs:element name="SaveLocation">
													<xs:complexType>
														<xs:sequence>
															<xs:annotation>
																<xs:documentation>Should this be a sequence of URI schemes?</xs:documentation>
															</xs:annotation>
															<xs:element ref="pwg:SaveLocation"/>
														</xs:sequence>
													</xs:complexType>
												</xs:element>
												<xs:element name="SaveName" type="xs:boolean"/>
												<xs:element ref="pwg:VendorExtension" minOccurs="0"/>
											</xs:sequence>
										</xs:complexType>
									</xs:element>
									<xs:element ref="pwg:VendorExtension" minOccurs="0"/>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
						<xs:element ref="pwg:VendorExtension" minOccurs="0"/>
					</xs:sequence>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="NetFaxOutServiceCapabilities">
		<xs:sequence>
			<xs:element ref="NetFaxOutDocumentProcessingCapabilities" minOccurs="0"/>
			<xs:element ref="NetFaxOutJobDescriptionCapabilities" minOccurs="0"/>
			<xs:element ref="NetFaxOutJobProcessingCapabilities" minOccurs="0"/>
			<xs:element ref="pwg:VendorExtension" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="NetFaxOutServiceCapabilities" type="NetFaxOutServiceCapabilities"/>
	<xs:element name="NetFaxOutCapabilitiesReady" type="NetFaxOutServiceCapabilities"/>
	<!-- NetFaxOutServices - set of NetFaxOut services -->
	<xs:complexType name="NetFaxOutServices">
		<xs:sequence>
			<xs:element ref="NetFaxOutService" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
		<!-- NetFaxOutServices - set of NetFaxOut services -->
	</xs:complexType>
	<xs:element name="NetFaxOutServices" type="NetFaxOutServices"/>
	<!-- NetFaxOutService - object -->
	<xs:complexType name="NetFaxOutService">
		<xs:sequence>
			<xs:element ref="NetFaxOutServiceStatus"/>
			<xs:element ref="NetFaxOutServiceDescription" minOccurs="0"/>
			<xs:element ref="DefaultNetFaxOutTicket" minOccurs="0"/>
			<xs:element ref="NetFaxOutServiceCapabilities" minOccurs="0"/>
			<xs:element ref="NetFaxOutCapabilitiesReady" minOccurs="0"/>
			<xs:element ref="pwg:VendorExtension" minOccurs="0"/>
		</xs:sequence>
		<!-- NetFaxOutService - object -->
	</xs:complexType>
	<xs:element name="NetFaxOutService">
		<xs:complexType>
			<xs:complexContent>
				<xs:extension base="NetFaxOutService">
					<xs:sequence>
						<xs:element ref="ActiveJobs" minOccurs="0"/>
						<xs:element ref="JobHistory" minOccurs="0"/>
					</xs:sequence>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>
</xs:schema>
