<?xml version='1.0'?>
<!DOCTYPE schema
  PUBLIC '-//W3C//DTD XMLSCHEMA 200010//EN'
  'http://www.w3.org/2000/10/XMLSchema.dtd' [
  <!ATTLIST schema 
    xmlns:p3p CDATA #FIXED 'http://www.w3.org/2001/03/P3P-Base'> ]>

<schema
  xmlns='http://www.w3.org/2000/10/XMLSchema'
  xmlns:p3p='http://www.w3.org/2001/03/P3P-Base'
  targetNamespace='http://www.w3.org/2001/03/P3P-Base'
  elementFormDefault='qualified'>

 <element name='P3P-Base'>
  <complexType content='mixed'>
   <all>
    <element ref='p3p:thirdparty' minOccurs='0'/>
    <element ref='p3p:business' minOccurs='0'/>
    <element ref='p3p:user' minOccurs='0'/>
    <element ref='p3p:dynamic' minOccurs='0'/>
   </all>
  </complexType>
 </element>

 <element name='thirdparty'>
  <complexType content='mixed'>
   <all>
    <element name='name' type='p3p:personname' minOccurs='0'/>
    <element name='bdate' type='p3p:date' minOccurs='0'/>
    <element name='cert' type='p3p:certificate' minOccurs='0'/>
    <element name='gender' type='string' minOccurs='0'/>
    <element name='jobtitle' type='string' minOccurs='0'/>
    <element name='home-info' type='p3p:contact' minOccurs='0'/>
    <element name='business-info' type='p3p:contact' minOccurs='0'/>
    <element name='employer' type='string' minOccurs='0'/>
    <element name='department' type='string' minOccurs='0'/>
   </all>
  </complexType>
 </element>

 <element name='business'>
  <complexType content='mixed'>
   <all>
    <element name='name' type='string' minOccurs='0'/>
    <element name='department' type='string' minOccurs='0'/>
    <element name='cert' type='p3p:certificate' minOccurs='0'/>
    <element name='contact-info' type='p3p:contact' minOccurs='0'/>
   </all>
  </complexType>
 </element>

 <element name='user'>
  <complexType content='mixed'>
   <all>
    <element name='name' type='p3p:personname' minOccurs='0'/>
    <element name='bdate' type='p3p:date' minOccurs='0'/>
    <element name='cert' type='p3p:certificate' minOccurs='0'/>
    <element name='gender' type='string' minOccurs='0'/>
    <element name='jobtitle' type='string' minOccurs='0'/>
    <element name='home-info' type='p3p:contact' minOccurs='0'/>
    <element name='business-info' type='p3p:contact' minOccurs='0'/>
    <element name='employer' type='string' minOccurs='0'/>
    <element name='department' type='string' minOccurs='0'/>
   </all>
  </complexType>
 </element>

 <element name='dynamic'>
  <complexType content='mixed'>
   <all>
    <element name='clickstream' type='p3p:loginfo' minOccurs='0'/>
    <element name='cookies' type='string' minOccurs='0'/>
    <element name='http' type='p3p:httpinfo' minOccurs='0'/>
    <element name='miscdata' type='string' minOccurs='0'/>
    <element name='searchtext' type='string' minOccurs='0'/>
    <element name='interactionrecord' type='string' minOccurs='0'/>
   </all>
  </complexType>
 </element>

 <complexType name='other' content='mixed'>
  <all>
   <element name='httpmethod' type='string' minOccurs='0'/>
   <element name='bytes' type='string' minOccurs='0'/>
   <element name='statuscode' type='string' minOccurs='0'/>
  </all>
 </complexType>

 <complexType name='online' content='mixed'>
  <all>
   <element name='email' type='string' minOccurs='0'/>
   <element name='uri' type='string' minOccurs='0'/>
  </all>
 </complexType>

 <complexType name='loginfo' content='mixed'>
  <all>
   <element name='uri' type='p3p:uri' minOccurs='0'/>
   <element name='timestamp' type='p3p:date' minOccurs='0'/>
   <element name='clientip' type='p3p:ipaddr' minOccurs='0'/>
   <element name='other' type='other' minOccurs='0'/>
  </all>
 </complexType>

 <complexType name='telephonenum' content='mixed'>
  <all>
   <element name='intcode' type='string' minOccurs='0'/>
   <element name='loccode' type='string' minOccurs='0'/>
   <element name='number' type='string' minOccurs='0'/>
   <element name='ext' type='string' minOccurs='0'/>
   <element name='comment' type='string' minOccurs='0'/>
  </all>
 </complexType>

 <complexType name='ymd' content='mixed'>
  <all>
   <element name='year' type='string' minOccurs='0'/>
   <element name='month' type='string' minOccurs='0'/>
   <element name='day' type='string' minOccurs='0'/>
  </all>
 </complexType>

 <complexType name='ipaddr' content='mixed'>
  <all>
   <element name='hostname' type='string' minOccurs='0'/>
   <element name='partialhostname' type='string' minOccurs='0'/>
   <element name='fullip' type='string' minOccurs='0'/>
   <element name='partialip' type='string' minOccurs='0'/>
  </all>
 </complexType>

 <complexType name='telecom' content='mixed'>
  <all>
   <element name='telephone' type='p3p:telephonenum' minOccurs='0'/>
   <element name='fax' type='p3p:telephonenum' minOccurs='0'/>
   <element name='mobile' type='p3p:telephonenum' minOccurs='0'/>
   <element name='pager' type='p3p:telephonenum' minOccurs='0'/>
  </all>
 </complexType>

 <complexType name='postal' content='mixed'>
  <all>
   <element name='name' type='p3p:personname' minOccurs='0'/>
   <element name='street' type='string' minOccurs='0'/>
   <element name='city' type='string' minOccurs='0'/>
   <element name='stateprov' type='string' minOccurs='0'/>
   <element name='postalcode' type='string' minOccurs='0'/>
   <element name='organization' type='string' minOccurs='0'/>
   <element name='country' type='string' minOccurs='0'/>
  </all>
 </complexType>

 <complexType name='certificate' content='mixed'>
  <all>
   <element name='key' type='string' minOccurs='0'/>
   <element name='format' type='string' minOccurs='0'/>
  </all>
 </complexType>

 <complexType name='uri' content='mixed'>
  <all>
   <element name='authority' type='string' minOccurs='0'/>
   <element name='stem' type='string' minOccurs='0'/>
   <element name='querystring' type='string' minOccurs='0'/>
  </all>
 </complexType>

 <complexType name='httpinfo' content='mixed'>
  <all>
   <element name='referer' type='p3p:uri' minOccurs='0'/>
   <element name='useragent' type='string' minOccurs='0'/>
  </all>
 </complexType>

 <complexType name='contact' content='mixed'>
  <all>
   <element name='postal' type='p3p:postal' minOccurs='0'/>
   <element name='telecom' type='p3p:telecom' minOccurs='0'/>
   <element name='online' type='p3p:online' minOccurs='0'/>
  </all>
 </complexType>

 <complexType name='date' content='mixed'>
  <all>
   <element name='fractionsecond' type='string' minOccurs='0'/>
   <element name='timezone' type='string' minOccurs='0'/>
   <element name='ymd' type='ymd' minOccurs='0'/>
   <element name='hms' type='hms' minOccurs='0'/>
  </all>
 </complexType>

 <complexType name='personname' content='mixed'>
  <all>
   <element name='prefix' type='string' minOccurs='0'/>
   <element name='given' type='string' minOccurs='0'/>
   <element name='middle' type='string' minOccurs='0'/>
   <element name='family' type='string' minOccurs='0'/>
   <element name='suffix' type='string' minOccurs='0'/>
   <element name='nickname' type='string' minOccurs='0'/>
  </all>
 </complexType>

 <complexType name='hms' content='mixed'>
  <all>
   <element name='hour' type='string' minOccurs='0'/>
   <element name='minute' type='string' minOccurs='0'/>
   <element name='second' type='string' minOccurs='0'/>
  </all>
 </complexType>

</schema>

