Subject: Schema checking...

From: Stephen Farrell <[email-masked]>
Date: Thu, 21 Nov 2002 14:22:29 +0000

All,

Magnus passed the schema from -04 through his toolset and the 
resulting corrected form is attached (it'll be in the -05 
version). We believe that the only changes are XML cruft.

If you have any relevant tools can you check that this file
works for you & if not, let us know in the next few days.

Thanks,
Stephen.

-- 
____________________________________________________________
Stephen Farrell         				   
Baltimore Technologies,   tel: (direct line) +353 1 881 6716
39 Parkgate Street,                     fax: +353 1 881 7000
Dublin 8.                mailto:[email-masked]
Ireland                             http://www.baltimore.com

<?xml version="1.0" encoding="UTF-8"?> 
   <schema  
     targetNamespace="urn:sacred-2002-11-20"  
     xmlns:ds="http://www.w3.org/2000/09/xmldsig#"  
     xmlns:sacred="urn:sacred-2002-11-20"
     xmlns="http://www.w3.org/2001/XMLSchema">
     <import namespace="http://www.w3.org/2000/09/xmldsig#" 
             schemaLocation="../W3C/xmldsig-core-schema.xsd"/>
     <!-- extensibility holes --> 
     <complexType name="ProcessInfoType"> 
      <sequence maxOccurs="unbounded"> 
       <any namespace="##other"/> 
      </sequence> 
     </complexType> 
     <element name="ProcessInfo" type="sacred:ProcessInfoType"/> 
     <complexType name="ClientInfoType"> 
      <sequence maxOccurs="unbounded"> 
       <any namespace="##other"/> 
      </sequence> 
     </complexType> 
     <element name="ClientInfo" type="sacred:ClientInfoType"/> 
     <!-- Where to put authenentication information --> 
     <complexType name="AuthInfoType"> 
      <choice maxOccurs="unbounded"> 
       <element name="DigestMD5AuthInfo"> 
        <complexType> 
         <sequence> 
          <element name="PasswordVerifier" type="base64Binary"/> 
          <element name="Realm" type="string" /> 
         </sequence> 
        </complexType> 
       </element> 
       <any namespace="##other"/> 
      </choice> 
     </complexType> 
     <element name="AuthInfo" type="sacred:AuthInfoType"/> 
     <!-- authentication mechanism parameters --> 
     <complexType name="AuthParamsType"> 
      <choice maxOccurs="unbounded"> 
       <element name=" DigestMD5AuthParams"> 
        <complexType> 
         <sequence> 
          <element name="Realm" type="string"  
            minOccurs="1" maxOccurs="unbounded"/> 
         </sequence> 
        </complexType> 
       </element> 
       <any namespace="##other"/> 
      </choice> 
     </complexType> 
     <element name="AuthParams" type="sacred:AuthParamsType"/> 
     <!-- Protocol messsages --> 
     <!-- "account handling" operations --> 
     <!-- Information request --> 
     <element name="InfoRequest"/> 
     <element name="InfoResponse"> 
      <complexType> 
       <sequence> 
        <element name="Status" type="string" minOccurs="0"/> 
        <element name="ServerId" type="string"/> 
        <element ref="sacred:AuthParams"/> 
        <element ref="sacred:ProcessInfo" minOccurs="0"/> 
       </sequence> 
      </complexType> 
     </element> 
     <!-- Create Account Request --> 
     <element name="CreateAccountRequest"> 
      <complexType> 
       <sequence> 
        <element name="UserId" type="string"/> 
        <element ref="sacred:AuthInfo"/> 
        <element ref="sacred:ProcessInfo" minOccurs="0"/> 
       </sequence> 
      </complexType> 
     </element> 
     <!-- reomve account request --> 
     <element name="RemoveAccountRequest"> 
      <complexType> 
       <sequence> 
        <element ref="sacred:ProcessInfo" minOccurs="0"/> 
       </sequence> 
      </complexType> 
     </element> 
     <!-- password change request --> 
     <element name="ModifyAccountRequest"> 
      <complexType> 
       <sequence> 
        <element ref="sacred:AuthInfo"/> 
        <element ref="sacred:ProcessInfo" minOccurs="0"/> 
       </sequence> 
      </complexType> 
     </element> 
     <!-- "run-time" operations --> 
     <!-- DownLoad Request --> 
     <element name="DownloadRequest"> 
      <complexType> 
       <sequence> 
        <element name="CredentialSelector" type="string" 
   minOccurs="0"/> 
        <element ref="sacred:ProcessInfo" minOccurs="0"/> 
       </sequence> 
      </complexType> 
     </element> 
     <!-- Download Response --> 
     <element name="DownloadResponse"> 
      <complexType> 
       <sequence> 
        <element name="Status" type="string" minOccurs="0"/> 
        <element name="Credential" type="sacred:CredentialType"  
         maxOccurs="unbounded"/> 
       </sequence> 
      </complexType> 
     </element> 
     <!-- Upload request --> 
     <element name="UploadRequest"> 
      <complexType> 
       <sequence> 
        <element name="Credential" type="sacred:CredentialType" 
         minOccurs="0" maxOccurs="1" /> 
       </sequence> 
       <attribute name="Delete" type="string" use="optional"/> 
      </complexType> 
     </element> 
     <!-- Credential related structures --> 
     <!-- A new ds:KeyInfo thing --> 
     <element name="SacredPKCS15" type="base64Binary"/> 
     <!-- credential --> 
     <complexType name="CredentialType"> 
      <sequence> 
       <element name="CredentialSelector" type="string"/> 
       <element name="LastModified" type="dateTime"/> 
       <element name="Payload" type="ds:KeyInfoType"/> 
       <element name="TimeToLive" type="string" minOccurs="0"/> 
       <element ref="sacred:ProcessInfo" minOccurs="0"/> 
       <element ref="sacred:ClientInfo" minOccurs="0"/> 
      </sequence> 
      <attribute name="Delete" type="string" use="optional"/> 
     </complexType> 

</schema>