<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns="http://www.pwg.org/schemas/2006/10/sm" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:pwg="http://www.pwg.org/schemas/2006/10/sm" targetNamespace="http://www.pwg.org/schemas/2006/10/sm" elementFormDefault="qualified" attributeFormDefault="qualified" version="1.53">
	<xs:include schemaLocation="PwgCommon.xsd"/>
	<xs:include schemaLocation="DocumentTypes.xsd"/>
	<!--06/01/08 PJZ Added  anyAttribute extension point & fixed Template Service(s)-->
	<!--05/31/08 PJZ Move back to ##Other-->
	<!--05/30/08 PJZ Move back to single namespace-->
	<!--05/21/08 PJZ Partial alignment with WS-Scan-->
	<!--12/12/07 PJZ Added Template ID and type, removed actuals, reworked Imaging Job-->
	<!--11/21/07 PJZ Added direction for number up, JobSave and supplied moved to print specific-->
	<!--10/08/06 PJZ Reworked dependencies and removed Chameleon-->
	<!--08/08/06 PJZ Changed namespace-->
	<!--070706  PJZ Changes xxxJobs to xxxQueue-->
	<!--070606  PJZ Added core, media and counters  namespace-->
	<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.17 - 4 April 2008 -Editors:  Peter Zehler, Ira McDoanald 
</xs:documentation>
	</xs:annotation>
	<!--                                 -->
	<!-- imaging job status element definitions -->
	<!--                                 -->
	<xs:element name="JobState">
		<xs:simpleType>
			<xs:restriction base="JobStateWKV"/>
		</xs:simpleType>
	</xs:element>
	<xs:element name="JobStateMessage">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:maxLength value="1023"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="JobStateReasons">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="JobStateReason" maxOccurs="unbounded">
					<xs:simpleType>
						<xs:union memberTypes="JobStateReasonsWKV KeywordNsExtensionPattern"/>
					</xs:simpleType>
				</xs:element>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="NumberOfDocuments" type="xs:int"/>
	<xs:element name="NumberOfInterveningJobs" type="xs:int"/>
	<!--                                 -->
	<!-- imaging job description element definitions -->
	<!--                                 -->
	<xs:annotation>
		<xs:documentation source="pwg.org">Stores Compression supplied by Client on Job creation operation (See DocumentDescription.Compression)</xs:documentation>
	</xs:annotation>
	<xs:element name="CompressionSupplied" type="CompressionWKV"/>
	<xs:annotation>
		<xs:documentation source="pwg.org">Stores DocumentFormat supplied by Client on Job creation operation (See DocumentDescription.DocumentFormat)</xs:documentation>
	</xs:annotation>
	<xs:element name="DocumentCharsetSupplied" type="CharsetWKV"/>
	<xs:annotation>
		<xs:documentation source="pwg.org">Stores DocumentDigitalSignature supplied by Client on Job creation operation (See DocumentDescription.DocumentDigitalSignature)</xs:documentation>
	</xs:annotation>
	<xs:element name="DocumentDigitalSignatureSupplied" type="DocumentDigitalSignatureWKV"/>
	<xs:annotation>
		<xs:documentation source="pwg.org">Stores DocumentFormatDetails supplied by Client on Job creation operation (See DocumentDescription.DocumentFormatDetails)</xs:documentation>
	</xs:annotation>
	<xs:element name="DocumentFormatDetailsSupplied" type="DocumentFormatDetail"/>
	<xs:annotation>
		<xs:documentation source="pwg.org">Stores DocumentFor,at supplied by Client on Job creation operation (See DocumentDescription.DocumentFormat)</xs:documentation>
	</xs:annotation>
	<xs:element name="DocumentFormatSupplied" type="DocumentFormatWKV"/>
	<xs:annotation>
		<xs:documentation source="pwg.org">Stores DocumentFormatVersion supplied by Client on Job creation operation (See DocumentDescription.DocumentFormatVersion)</xs:documentation>
	</xs:annotation>
	<xs:element name="DocumentFormatVersionSupplied">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:maxLength value="127"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:annotation>
		<xs:documentation source="pwg.org">Stores DocumentMessage supplied by Client on Job creation operation (See DocumentDescription.DocumentMessage)</xs:documentation>
	</xs:annotation>
	<xs:element name="DocumentMessageSupplied">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:maxLength value="1023"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:annotation>
		<xs:documentation source="pwg.org">Stores DocumentName supplied by Client on Job creation operation (See DocumentDescription.DocumentName)</xs:documentation>
	</xs:annotation>
	<xs:element name="DocumentNameSupplied">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:maxLength value="255"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:annotation>
		<xs:documentation source="pwg.org">Stores DocumentNaturalLanguagesupplied by Client on Job creation operation (See DocumentDescription.DocumentNaturalLanguage)</xs:documentation>
	</xs:annotation>
	<xs:element name="DocumentNaturalLanguageSupplied" type="NaturalLanguageWKV"/>
	<xs:element name="ElementFidelity" type="xs:boolean">
		<xs:annotation>
			<xs:documentation>Deprecated</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="JobAccountingID">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:maxLength value="1023"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="JobAccountingUserID">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:maxLength value="1023"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="JobMandatoryElements">
		<xs:simpleType>
			<xs:restriction base="xs:NMTOKEN">
				<xs:maxLength value="127"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="JobMessageFromOperator">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:maxLength value="127"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="JobName">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:maxLength value="255"/>
				<xs:whiteSpace value="preserve"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="JobOriginatingUserName">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:maxLength value="255"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="JobPassword" type="xs:hexBinary"/>
	<xs:element name="JobPasswordEncryption">
		<xs:simpleType>
			<xs:union memberTypes="JobPasswordEncryptionWKV KeywordNsExtensionPattern"/>
		</xs:simpleType>
	</xs:element>
	<!--                                 -->
	<xs:annotation>
		<xs:documentation>Job Status specific semantic elements</xs:documentation>
	</xs:annotation>
	<xs:element name="JobCollationType">
		<xs:simpleType>
			<xs:union memberTypes="JobCollationTypeWKV KeywordNsExtensionPattern"/>
		</xs:simpleType>
	</xs:element>
	<xs:element name="JobPrinterMakeAndModel">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:maxLength value="127"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="JobPrinterUri">
		<xs:simpleType>
			<xs:restriction base="xs:anyURI">
				<xs:maxLength value="1023"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="SheetCompletedDocumentNumber" type="xs:int"/>
	<!--                               -->
	<!-- imaging job group definitions -->
	<!--                               -->
	<!-- ImagingJobStatus - group -->
	<xs:complexType name="ImagingJobStatus">
		<xs:sequence>
			<xs:element ref="DateTimeAtCompleted" minOccurs="0"/>
			<xs:element ref="DateTimeAtCreation" minOccurs="0"/>
			<xs:element ref="DateTimeAtProcessing" minOccurs="0"/>
			<xs:element ref="DetailedStatusMessages" minOccurs="0"/>
			<xs:element ref="DocumentAccessErrors" minOccurs="0"/>
			<xs:element ref="ErrorsCount" minOccurs="0"/>
			<xs:element ref="JobId"/>
			<xs:element ref="JobState"/>
			<xs:element ref="JobStateMessage" minOccurs="0"/>
			<xs:element ref="JobStateReasons" minOccurs="0"/>
			<xs:element ref="JobUri" minOccurs="0"/>
			<xs:element ref="KOctetsProcessed" minOccurs="0"/>
			<xs:element ref="MoreInfo" minOccurs="0"/>
			<xs:element ref="NumberOfDocuments" minOccurs="0"/>
			<xs:element ref="NumberOfInterveningJobs" minOccurs="0"/>
			<xs:element ref="TimeAtCompleted" minOccurs="0"/>
			<xs:element ref="TimeAtCreation" minOccurs="0"/>
			<xs:element ref="TimeAtProcessing" minOccurs="0"/>
			<xs:element ref="WarningsCount" minOccurs="0"/>
		</xs:sequence>
		<xs:anyAttribute namespace="##other" processContents="lax"/>
		<!-- ImagingJobStatus - group -->
	</xs:complexType>
	<xs:element name="ImagingJobStatus" type="ImagingJobStatus"/>
	<!--                               -->
	<!-- ImagingJobDescription - group -->
	<xs:complexType name="ImagingJobDescription">
		<xs:sequence>
			<xs:element ref="ElementsNaturalLanguage" minOccurs="0"/>
			<xs:element ref="JobAccountingID" minOccurs="0"/>
			<xs:element ref="JobAccountingUserID" minOccurs="0"/>
			<xs:element ref="JobInformation" minOccurs="0"/>
			<xs:element ref="JobMandatoryElements" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Alternative encoding of MustHonor attribute</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element ref="JobMessageFromOperator" minOccurs="0"/>
			<xs:element ref="JobMessageToOperator" minOccurs="0"/>
			<xs:element ref="JobName" minOccurs="0"/>
			<xs:element ref="JobOriginatingUserName" minOccurs="0"/>
			<xs:element ref="JobPassword" minOccurs="0"/>
			<xs:element ref="JobPasswordEncryption" minOccurs="0"/>
			<xs:element ref="KOctets" minOccurs="0"/>
			<xs:sequence>
				<xs:element ref="TemplateCreatorUserName" minOccurs="0"/>
				<xs:element ref="TemplateId" minOccurs="0"/>
				<xs:element ref="TemplateInfo" minOccurs="0"/>
				<xs:element ref="TemplateName" minOccurs="0"/>
				<xs:element ref="TemplateType" minOccurs="0"/>
			</xs:sequence>
		</xs:sequence>
		<xs:anyAttribute namespace="##other" processContents="lax"/>
		<!-- ImagingJobDescription - group -->
	</xs:complexType>
	<xs:element name="ImagingJobDescription" type="ImagingJobDescription"/>
	<xs:complexType name="ImagingJobDescriptionCapabilitiesType">
		<xs:sequence>
			<xs:element name="ElementsNaturalLanguage" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="AllowedValue">
							<xs:simpleType>
								<xs:union memberTypes="NaturalLanguageWKV KeywordNsExtensionPattern"/>
							</xs:simpleType>
						</xs:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="JobAccountingID" type="xs:boolean" minOccurs="0"/>
			<xs:element name="JobAccountingUserID" type="xs:boolean" minOccurs="0"/>
			<xs:element name="JobMandatoryElements" type="xs:boolean" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Alternative encoding of MustHonor attribute</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="JobMessageFromOperator" type="xs:boolean" minOccurs="0"/>
			<xs:element name="JobMessageToOperator" type="xs:boolean" minOccurs="0"/>
			<xs:element name="JobName" type="xs:boolean" minOccurs="0"/>
			<xs:element name="JobOriginatingUserName" type="xs:boolean" minOccurs="0"/>
			<xs:element name="JobPassword" type="xs:boolean" minOccurs="0"/>
			<xs:element name="JobPasswordEncryption" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="AllowedValue">
							<xs:simpleType>
								<xs:union memberTypes="JobPasswordEncryptionWKV KeywordNsExtensionPattern"/>
							</xs:simpleType>
						</xs:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="KOctets" type="xs:boolean" minOccurs="0"/>
			<xs:element name="TemplateCreatorUserName" type="xs:boolean" minOccurs="0"/>
			<xs:element name="TemplateId" type="xs:boolean" minOccurs="0"/>
			<xs:element name="TemplateInfo" type="xs:boolean" minOccurs="0"/>
			<xs:element name="TemplateName" type="xs:boolean" minOccurs="0"/>
			<xs:element name="TemplateType" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="AllowedValue">
							<xs:simpleType>
								<xs:union memberTypes="ServiceTypeWKV KeywordNsExtensionPattern"/>
							</xs:simpleType>
						</xs:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
		<xs:anyAttribute namespace="##other" processContents="lax"/>
		<!-- ImagingJobDescription - group -->
	</xs:complexType>
	<!--                               -->
	<!-- ImagingJobProcessing - group -->
	<xs:complexType name="ImagingJobProcessing">
		<xs:sequence>
			<xs:choice minOccurs="0">
				<xs:element ref="JobHoldUntil" minOccurs="0"/>
				<xs:element ref="JobHoldUntilTime" minOccurs="0"/>
			</xs:choice>
			<xs:element ref="JobPhoneNumber" minOccurs="0"/>
			<xs:element ref="JobRecipientName" minOccurs="0"/>
		</xs:sequence>
		<xs:anyAttribute namespace="##other" processContents="lax"/>
		<!-- ImagingJobProcessing - group -->
	</xs:complexType>
	<xs:element name="ImagingJobProcessing" type="ImagingJobProcessing"/>
	<!--                                -->
	<!-- imaging job object definitions -->
	<!--                                -->
	<!-- ImagingJob - object -->
	<xs:complexType name="ImagingJob">
		<xs:sequence>
			<xs:element ref="ImagingJobStatus"/>
			<xs:element ref="ImagingJobTicket" minOccurs="0"/>
			<xs:element ref="ImagingJobReceipt" minOccurs="0"/>
			<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
		<xs:anyAttribute namespace="##other" processContents="lax"/>
		<!-- ImagingJob - object -->
	</xs:complexType>
	<xs:element name="ImagingJob" type="ImagingJob"/>
	<!--                                -->
	<!-- ImagingJob - JobTicket-->
	<xs:complexType name="ImagingJobTicketType">
		<xs:sequence>
			<xs:element ref="ImagingJobDescription" minOccurs="0"/>
			<xs:element ref="ImagingDocumentProcessing" minOccurs="0"/>
			<xs:element ref="ImagingJobProcessing" minOccurs="0"/>
		</xs:sequence>
		<xs:anyAttribute namespace="##other" processContents="lax"/>
	</xs:complexType>
	<xs:element name="ImagingJobTicket" type="ImagingJobTicketType"/>
	<xs:element name="ImagingJobReceipt" type="ImagingJobTicketType"/>
</xs:schema>
