<!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema-->
<xs:schema targetNamespace="urn:oasis:names:tc:evs:schema:eml:ts" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="urn:oasis:names:tc:evs:schema:eml:ts" elementFormDefault="qualified" version="0.0">
<!-- Schema for XML Time-stamp
xmltimestamp#
$Revision: 0.0 $ on $Date: 2002/02/28 16:01:01 $ by $Author: Nick Pope $
-->
<!-- Schema definitions copied from http://www.w3.org/2000/09/xmldsig -->
<!-- Basic Types Defined for Signatures -->
<xs:simpleType name="CryptoBinary">
<xs:restriction base="xs:base64Binary"/>
</xs:simpleType>
<xs:simpleType name="DigestValueType">
<xs:restriction base="xs:base64Binary"/>
</xs:simpleType>
<xs:simpleType name="QualifierType">
<xs:restriction base="xs:string">
<xs:enumeration value="OIDAsURI"/>
<xs:enumeration value="OIDAsURN"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="HMACOutputLengthType">
<xs:restriction base="xs:integer"/>
</xs:simpleType>
<!-- Start Signature -->
<xs:element name="Timestamp" type="TimestampType"/>
<xs:complexType name="TimestampType">
<xs:sequence>
<xs:element ref="TimestampedInfo"/>
<xs:element ref="SignatureOrTSTValue"/>
<xs:element ref="KeyInfo" minOccurs="0"/>
<xs:element ref="Object"/>
</xs:sequence>
<xs:attribute name="Id" type="xs:ID" use="optional"/>
</xs:complexType>
<xs:element name="SignatureOrTSTValue" type="SignatureOrTSTValueType"/>
<xs:complexType name="SignatureOrTSTValueType">
<xs:simpleContent>
<xs:extension base="xs:base64Binary">
<xs:attribute name="Id" type="xs:ID" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<!-- Start TimestampedInfo-->
<xs:element name="TimestampedInfo" type="TimestampedInfoType"/>
<xs:complexType name="TimestampedInfoType">
<xs:sequence>
<xs:element ref="CanonicalizationMethod"/>
<xs:element ref="SignatureOrTSTMethod"/>
<xs:element ref="Reference"/>
<xs:element ref="TSTXMLInfoReference" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="Id" type="xs:ID" use="optional"/>
</xs:complexType>
<xs:element name="CanonicalizationMethod" type="CanonicalizationMethodType"/>
<xs:complexType name="CanonicalizationMethodType" mixed="true">
<xs:sequence>
<xs:any namespace="##any" processContents="strict" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Algorithm" type="xs:anyURI" use="required"/>
<!-- (0,unbounded) elements from (1,1) namespace -->
</xs:complexType>
<xs:element name="SignatureOrTSTMethod" type="SignatureMethodType"/>
<xs:complexType name="SignatureMethodType" mixed="true">
<xs:sequence>
<xs:element name="HMACOutputLength" type="HMACOutputLengthType" minOccurs="0"/>
<xs:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Algorithm" type="xs:anyURI" use="required"/>
<!-- (0,unbounded) elements from (1,1) external namespace -->
</xs:complexType>
<!-- Start Reference -->
<xs:element name="TSTXMLInfoReference" type="ReferenceType"/>
<xs:element name="Reference" type="ReferenceType"/>
<xs:complexType name="ReferenceType">
<xs:sequence>
<xs:element ref="Transforms" minOccurs="0"/>
<xs:element ref="DigestMethod"/>
<xs:element ref="DigestValue"/>
</xs:sequence>
<xs:attribute name="Id" type="xs:ID" use="optional"/>
<xs:attribute name="URI" type="xs:anyURI" use="optional"/>
<xs:attribute name="Type" type="xs:anyURI" use="optional"/>
</xs:complexType>
<xs:element name="Transforms" type="TransformsType"/>
<xs:complexType name="TransformsType">
<xs:sequence>
<xs:element ref="Transform" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:element name="Transform" type="TransformType"/>
<xs:complexType name="TransformType" mixed="true">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:any namespace="##other" processContents="lax"/>
<xs:element name="XPath" type="xs:string"/>
</xs:choice>
<xs:attribute name="Algorithm" type="xs:anyURI" use="required"/>
<!-- (1,1) elements from (0,unbounded) namespaces -->
</xs:complexType>
<!-- End Reference -->
<xs:element name="DigestMethod" type="DigestMethodType"/>
<xs:complexType name="DigestMethodType" mixed="true">
<xs:sequence>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Algorithm" type="xs:anyURI" use="required"/>
</xs:complexType>
<xs:element name="DigestValue" type="DigestValueType"/>
<!-- End SignedInfo -->
<!-- Start KeyInfo -->
<xs:element name="KeyInfo" type="KeyInfoType"/>
<xs:complexType name="KeyInfoType" mixed="true">
<xs:choice maxOccurs="unbounded">
<xs:element ref="KeyName"/>
<xs:element ref="KeyValue"/>
<xs:element ref="RetrievalMethod"/>
<xs:element ref="X509Data"/>
<xs:element ref="PGPData"/>
<xs:element ref="SPKIData"/>
<xs:element ref="MgmtData"/>
<xs:any namespace="##other" processContents="lax"/>
</xs:choice>
<xs:attribute name="Id" type="xs:ID" use="optional"/>
<!-- (1,1) elements from (0,unbounded) namespaces -->
</xs:complexType>
<xs:element name="KeyName" type="xs:string"/>
<xs:element name="MgmtData" type="xs:string"/>
<xs:element name="KeyValue" type="KeyValueType"/>
<xs:complexType name="KeyValueType" mixed="true">
<xs:choice>
<xs:element ref="DSAKeyValue"/>
<xs:element ref="RSAKeyValue"/>
<xs:any namespace="##other" processContents="lax"/>
</xs:choice>
</xs:complexType>
<xs:element name="RetrievalMethod" type="RetrievalMethodType"/>
<xs:complexType name="RetrievalMethodType">
<xs:sequence>
<xs:element name="Transforms" type="TransformsType" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="URI" type="xs:anyURI"/>
<xs:attribute name="Type" type="xs:anyURI" use="optional"/>
</xs:complexType>
<!-- Start X509Data -->
<xs:element name="X509Data" type="X509DataType"/>
<xs:complexType name="X509DataType">
<xs:sequence maxOccurs="unbounded">
<xs:choice>
<xs:element name="X509IssuerSerial" type="X509IssuerSerialType"/>
<xs:element name="X509SKI" type="xs:base64Binary"/>
<xs:element name="X509SubjectName" type="xs:string"/>
<xs:element name="X509Certificate" type="xs:base64Binary"/>
<xs:element name="X509CRL" type="xs:base64Binary"/>
<xs:any namespace="##other" processContents="lax"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
<xs:complexType name="X509IssuerSerialType">
<xs:sequence>
<xs:element name="X509IssuerName" type="xs:string"/>
<xs:element name="X509SerialNumber" type="xs:integer"/>
</xs:sequence>
</xs:complexType>
<!-- End X509Data -->
<!-- Begin PGPData -->
<xs:element name="PGPData" type="PGPDataType"/>
<xs:complexType name="PGPDataType">
<xs:choice>
<xs:sequence>
<xs:element name="PGPKeyID" type="xs:base64Binary"/>
<xs:element name="PGPKeyPacket" type="xs:base64Binary" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:sequence>
<xs:element name="PGPKeyPacket" type="xs:base64Binary"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:choice>
</xs:complexType>
<!-- End PGPData -->
<!-- Begin SPKIData -->
<xs:element name="SPKIData" type="SPKIDataType"/>
<xs:complexType name="SPKIDataType">
<xs:sequence maxOccurs="unbounded">
<xs:element name="SPKISexp" type="xs:base64Binary"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<!-- End SPKIData -->
<!-- End KeyInfo -->
<!-- Start Object (TSTXMLInfo) -->
<xs:element name="Object" type="ObjectType"/>
<xs:complexType name="ObjectType" mixed="true">
<xs:sequence>
<xs:element name="TSTXMLInfo" type="TSTXMLInfoType"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="Id" type="xs:ID" use="optional"/>
<xs:attribute name="MimeType" type="xs:string" use="optional"/>
<xs:attribute name="Encoding" type="xs:anyURI" use="optional"/>
<!-- add a grep facet -->
</xs:complexType>
<xs:complexType name="TSTXMLInfoType">
<xs:sequence>
<xs:element name="version" type="xs:decimal"/>
<xs:element name="policy" type="ObjectIdentifierType"/>
<xs:element name="serialNumber" type="xs:decimal"/>
<xs:element name="genTime" type="xs:dateTime"/>
<xs:element name="accuracy" type="AccuracyType" minOccurs="0"/>
<xs:element name="ordering" type="xs:boolean" default="false" minOccurs="0"/>
<xs:element name="nonce" type="xs:decimal" minOccurs="0"/>
<xs:element name="tsa" type="EntityNameType" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="Id" type="xs:ID" use="required"/>
</xs:complexType>
<xs:complexType name="EntityNameType">
<xs:sequence>
<xs:element name="FriendlyName" type="xs:string" minOccurs="0"/>
<xs:element name="URI" type="xs:anyURI" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="AccuracyType">
<xs:sequence>
<xs:element name="seconds" type="xs:decimal" minOccurs="0"/>
<xs:element name="millis" type="xs:decimal" minOccurs="0"/>
<xs:element name="micros" type="xs:decimal" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<!-- End Object (TSTXMLInfo) -->
<xs:complexType name="ObjectIdentifierType">
<xs:sequence>
<xs:element name="Identifier" type="IdentifierType"/>
<xs:element name="Description" type="xs:string" minOccurs="0"/>
<xs:element name="DocumentationReferences" type="DocumentationReferencesType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="IdentifierType">
<xs:simpleContent>
<xs:extension base="xs:anyURI">
<xs:attribute name="Qualifier" type="QualifierType" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="DocumentationReferencesType">
<xs:sequence maxOccurs="unbounded">
<xs:element name="DocumentationReference" type="xs:anyURI"/>
</xs:sequence>
</xs:complexType>
<!-- End ObjectIdentifierType-->
<!-- Start Algorithm Parameters -->
<!-- Start KeyValue Element-types -->
<xs:element name="DSAKeyValue" type="DSAKeyValueType"/>
<xs:complexType name="DSAKeyValueType">
<xs:sequence>
<xs:sequence minOccurs="0">
<xs:element name="P" type="CryptoBinary"/>
<xs:element name="Q" type="CryptoBinary"/>
</xs:sequence>
<xs:element name="J" type="CryptoBinary" minOccurs="0"/>
<xs:element name="G" type="CryptoBinary" minOccurs="0"/>
<xs:element name="Y" type="CryptoBinary"/>
<xs:sequence minOccurs="0">
<xs:element name="Seed" type="CryptoBinary"/>
<xs:element name="PgenCounter" type="CryptoBinary"/>
</xs:sequence>
</xs:sequence>
</xs:complexType>
<xs:element name="RSAKeyValue" type="RSAKeyValueType"/>
<xs:complexType name="RSAKeyValueType">
<xs:sequence>
<xs:element name="Modulus" type="CryptoBinary"/>
<xs:element name="Exponent" type="CryptoBinary"/>
</xs:sequence>
</xs:complexType>
<!-- End KeyValue Element-types -->
<!-- End Signature -->
</xs:schema>
|