<?xml version="1.0" encoding="utf-8"?>
<!--
<?xml-stylesheet type="text/xsl" href="./wdr.xsl"?>
-->
<xsd:schema xmlns:xsd       = "http://www.w3.org/2001/XMLSchema"
            xmlns:base      = "http://www.w3.org/2007/05/powder/" 
            xmlns:wdrd      = "http://www.w3.org/2007/05/powder-xsd/xsd" 
            xmlns:dc        = "http://dublincore.org/schemas/xmls/qdc/dc.xsd"
            xmlns:dcterms   = "http://dublincore.org/schemas/xmls/qdc/dcterms.xsd"
            targetNamespace = "http://www.w3.org/2007/05/powder/"
            elementFormDefault="qualified" 
            version="1.0" 
            xml:lang="en">

    <xsd:annotation>
	  <xsd:documentation xml:lang="en">
	    <dc:title>Protocol for Web Description Resources (POWDER): Web Description Resources XML Schema (WDR)</dc:title>
	    <dc:type>W3C Working Group Draft</dc:type>
	    <dcterms:issued>12 May 2008</dcterms:issued>
	    <dc:creator>Andrea Perego, Universit&#xe0; degli Studi dell'Insubria</dc:creator>
	    <dc:creator>Phil Archer, Family Online Safety Institute</dc:creator>
	    <dc:creator>Kevin Smith, Vodafone Group R &amp; D</dc:creator>
	    <dc:contributor>all members of the POWDER Working Group</dc:contributor>
	    <dc:rights><div xmlns:base="http://www.w3.org/1999/xhtml"><p class="copyright"><a href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> &#xa9; 2007 <a href="http://www.w3.org/"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>&#xae;</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>, <a href="http://www.ercim.org/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>, <a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>, <a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a> and <a href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> rules apply.</p></div></dc:rights>
	    <dcterms:abstract><div xmlns:base="http://www.w3.org/1999/xhtml"><p>This is the namespace document for the XML schema used in the Protocol for Web Description resources (POWDER). It defines the structure for Description Resources where these are serialized in XML.</p></div></dcterms:abstract>
	    <dc:description>
	    </dc:description>
	  </xsd:documentation>
	</xsd:annotation>

	
    <xsd:element name="powder" type="POWDERType">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">The root element of a POWDER document.</p>
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    
    <xsd:complexType name="POWDERType">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This type defines the structure of the <a href="#powder"><code>powder</code></a> element, which can have two alternative forms. The former consists of two required child elements, namely, the <a href="#attribution"><code>attribution</code></a> element, which must occur exactly one time, and the <a href="#dr"><code>dr</code></a> element, which must occur at least one time.  In its latter form, the <a href="#powder"><code>powder</code></a> element has as required child elements, exactly one instance of <a href="#attribution"><code>attribution</code></a> and <a href="#attribution"><code>attribution</code></a>.</p>
        </xsd:documentation>
      </xsd:annotation>
      <xsd:sequence>
        <xsd:element ref="attribution" />
        <xsd:choice>
          <xsd:element ref="dr" maxOccurs="unbounded" />
          <xsd:element ref="ol" maxOccurs="unbounded" />
        </xsd:choice>
      </xsd:sequence>
    </xsd:complexType>	

    <xsd:element name="attribution" type="AttributionType">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This element is used to encapsulate information about the current POWDER document. It can occur only one time in a POWDER document, and only as a child of the <a href="#powder"><code>powder</code></a> element.</p>
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    
    <xsd:complexType name="AttributionType">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This type defines the structure of the <a href="#attribution"><code>attribution</code></a> element, which consists of seven child elements, namely, <a href="#maker"><code>maker</code></a>, which must occur exactly one time, and <a href="#issued"><code>issued</code></a>, <a href="#validfrom"><code>validfrom</code></a>, <a href="#validuntil"><code>validuntil</code></a>, <a href="#abouthosts"><code>abouthosts</code></a>, <a href="#certifiedby"><code>certifiedby</code></a>, and <a href="#authenticate"><code>authenticate</code></a>, which can occur at most one time.</p>
          <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">We should decide whether we allow or not further elements, and/or whether we are considering or not to define them. This must be stated here.</p>
        </xsd:documentation>
      </xsd:annotation>
      <xsd:sequence>
        <xsd:element ref="maker"       maxOccurs="unbounded" />
        <xsd:element ref="issued"      minOccurs="0" />
        <xsd:element ref="validfrom"   minOccurs="0" />
        <xsd:element ref="validuntil"  minOccurs="0" />
        <xsd:element ref="abouthosts"  minOccurs="0" />
        <xsd:element ref="certifiedby" minOccurs="0" />
        <xsd:element ref="authenticate" minOccurs="0" />
      </xsd:sequence>
    </xsd:complexType>	

    <xsd:element name="maker" type="xsd:anyURI">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This element is used to denote the author of the current POWDER document. It can occur only one time in a POWDER document, and only as a child of the <a href="#attribution"><code>attribution</code></a> element.</p>
          <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">We should decide whether a DR may have multiple authors. If we wish to support this, two solutions are possible: allow multiple instances of the <code>maker</code> element, or assign to <code>maker</code> a space-separated list of IRIs.</p>
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    
    <xsd:element name="issued" type="xsd:dateTime">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This element is used to denote the issue date of the current POWDER document. It can occur only one time in a POWDER document, and only as a child of the <a href="#attribution"><code>attribution</code></a> element.</p>
          <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">I would like to point out that <code>dcterms:issued</code> is defined both as an RDF property and as an XML element (see <a href="http://dublincore.org/schemas/xmls/qdc/dcterms.xsd">Dublin Core <code>dcterms</code> XML schema</a>). This is just to have a definitive statement about the fact that we define a new element (i.e., <code>wdr:issued</code>) and don't use <code>dcterms:issued</code>.</p>
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>

    <xsd:element name="validfrom" type="xsd:dateTime">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This element is used to denote the date from which a POWDER document is valid. It can occur only one time in a POWDER document, and only as a child of the <a href="#attribution"><code>attribution</code></a> element.</p>
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    
    <xsd:element name="validuntil" type="xsd:dateTime">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This element is used to denote the date until which a POWDER document is valid. It can occur only one time in a POWDER document, and only as a child of the <a href="#attribution"><code>attribution</code></a> element.</p>
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    
    <xsd:element name="abouthosts" type="wdrd:iriHostList">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This element states that all the resources that are described within the current POWDER document are available from the given (set of) host(s). It can occur only one time in a POWDER document, and only as a child of the <a href="#attribution"><code>attribution</code></a> element.</p>
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    
    <xsd:element name="certifiedby" type="xsd:anyURI">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This element provides a pointer, expressed as an IRI, to a third-party certifying the current POWDER document. It can occur only one time in a POWDER document, and only as a child of the <a href="#attribution"><code>attribution</code></a> element.</p>
          <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">Is it possible that multiple third parties certify the same POWDER document? In such a case, should we use multiple instances of <code>certifiedby</code>, or a white-separated list of IRIs?</p>
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    
    <xsd:element name="authenticate" type="xsd:anyURI">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This element provides a pointer, expressed as an IRI, to the authentication service provided by the author of the current POWDER document. It can occur only one time in a POWDER document, and only as a child of the <a href="#attribution"><code>attribution</code></a> element.</p>
          <div xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">
            <p>From the DR document is not explicitly said which element includes <code>authenticate</code> (<code>attribution</code>? <code>dr</code>?). </p>
            <p>Also, is it possible to have multiple authentication services? In such a case, should we use multiple instances of <code>authenticate</code>, or a white-separated list of IRIs?</p>
          </div>
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>

    <xsd:element name="ol" type="OlType">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This element denotes an ordered list of DRs. It can occur exactly one time in a POWDER document, and only as a child of the <a href="#powder"><code>powder</code></a> element.</p>
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    
    <xsd:complexType name="OlType">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This type defines the structure of the <a href="#ol"><code>ol</code></a> element, which consists of a required child element, namely, the <a href="#dr"><code>dr</code></a> element, which must occur at least one time. In addition, the <a href="#ol"><code>ol</code></a> element has an optional <code>xml:id</code> attribute.</p>
        </xsd:documentation>
      </xsd:annotation>
      <xsd:sequence>
        <xsd:element ref="dr" maxOccurs="unbounded" />
      </xsd:sequence>
      <xsd:attribute ref="xml:id" />
    </xsd:complexType>	
    
    <xsd:element name="dr" type="DRType">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This element denotes a Description Resource (DR). It can occur one or more times in a POWDER document, and only as a child of the <a href="#powder"><code>powder</code></a> element.</p>
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
              	
    <xsd:complexType name="DRType">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This type defines the structure of the <a href="#dr"><code>dr</code></a> element, which consists of two required child elements, namely, the <a href="#iriset"><code>iriset</code></a> element, which must occur at least one time, and one element, occuring exactly one time, which can be either the <a href="#descriptorset"><code>descriptorset</code></a> or the <a href="#tagset"><code>tagset</code></a> element. In addition, the <a href="#dr"><code>dr</code></a> element has an optional <code>xml:id</code> attribute.</p>
        </xsd:documentation>
      </xsd:annotation>
      <xsd:sequence>
        <xsd:element ref="iriset" maxOccurs="unbounded" />
        <xsd:choice>
          <xsd:element ref="descriptorset" />
          <xsd:element ref="tagset" />
        </xsd:choice>
      </xsd:sequence>
      <xsd:attribute ref="xml:id" />
    </xsd:complexType>	

    <xsd:element name="iriset" type="IRISetType">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This element denotes a set of IRIs of the resources in the DR scope, expressed by a set of IRI constraints. It must occur at least one time in a DR, and only as a child of the <a href="#dr"><code>dr</code></a> element.</p>
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    
    <xsd:complexType name="IRISetType">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This type defines the structure of the <a href="#iriset"><code>iriset</code></a> element, which consists of a set of elements, expressing constraints on IRIs, plus an additional element, namely, <a href="#includeredirection"><code>includeredirection</code></a>, which specifies whether HTTP redirection is allowed or not.</p>
        </xsd:documentation>
      </xsd:annotation>
      <xsd:sequence>
        <xsd:element name="includeschemes" type="wdrd:iriSchemeList" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="excludeschemes" type="wdrd:iriSchemeList" minOccurs="0" maxOccurs="unbounded">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="includehosts" type="wdrd:iriHostList" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="excludehosts" type="wdrd:iriHostList" minOccurs="0" maxOccurs="unbounded">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
<!--
        <xsd:element name="includeportranges" type="wdrd:iriPortRangeList" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="excludeportranges" type="wdrd:iriPortRangeList" minOccurs="0" maxOccurs="unbounded">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
-->
        <xsd:element name="includeports" type="wdrd:iriPortList" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="excludeports" type="wdrd:iriPortList" minOccurs="0" maxOccurs="unbounded">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="includeexactpaths" type="wdrd:iriPathList" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="excludeexactpaths" type="wdrd:iriPathList" minOccurs="0" maxOccurs="unbounded">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="includepathcontains" type="wdrd:iriPathList" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="excludepathcontains" type="wdrd:iriPathList" minOccurs="0" maxOccurs="unbounded">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="includepathstartswith" type="wdrd:iriPathList" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="excludepathstartswith" type="wdrd:iriPathList" minOccurs="0" maxOccurs="unbounded">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="includepathendswith" type="wdrd:iriPathList" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="excludepathendswith" type="wdrd:iriPathList" minOccurs="0" maxOccurs="unbounded">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="includequerycontains" type="wdrd:iriQueryList" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="excludequerycontains" type="wdrd:iriQueryList" minOccurs="0" maxOccurs="unbounded">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="includeiripattern" type="wdrd:iriPattern" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="excludeiripattern" type="wdrd:iriPattern" minOccurs="0" maxOccurs="unbounded">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="includeregex" type="wdrd:iriRegEx" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="excluderegex" type="wdrd:iriRegEx" minOccurs="0" maxOccurs="unbounded">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
<!--
        <xsd:element name="includeipranges" type="wdrd:cidrList" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="excludeipranges" type="wdrd:cidrList" minOccurs="0" maxOccurs="unbounded">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
-->
        <xsd:element name="includeresources" type="wdrd:iriList" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="excluderesources" type="wdrd:iriList" minOccurs="0" maxOccurs="unbounded">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">To do.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="includeredirection" type="IncludeRedirectionType" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation xml:lang="en">
              <p xmlns:base="http://www.w3.org/1999/xhtml">This element is used to state whether (and which types of) HTTP redirection is allowed. It can occur at most one time, and only a child of the <a href="#iriset"><code>iriset</code></a> element.</p>
              <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">Is this element in the right place? Whether HTTP redirection is allowed or not is not an IRI constraint, but an instruction on how an IRI set definition must be processed. Probably the most appropriate way of expressing it is as an attribute of <code>iriset</code>.</p>
            </xsd:documentation>
          </xsd:annotation>
        </xsd:element>
      </xsd:sequence>
    </xsd:complexType>	
    
    <xsd:complexType name="IncludeRedirectionType">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This type defines the structure of the <a href="#includeredirection"><code>includeredirection</code></a> element. Such element has a single attribute, <code>ref</code>, which can have the following values: <code>HttpTempRedirect</code>, <code>HttpPermRedirect</code>, <code>HttpAnyRedirect</code>, and <code>HttpNoneRedirect</code> (default value).</p>
          <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote"><code>HttpTempRedirect</code>, <code>HttpPermRedirect</code>, <code>HttpAnyRedirect</code>, and <code>HttpNoneRedirect</code> are here defined as <code>xsd:token</code>s. Should we define them differently?</p>
        </xsd:documentation>
      </xsd:annotation>
      <xsd:attribute name="ref" default="HttpNoneRedirect">
        <xsd:simpleType>
          <xsd:restriction base="xsd:token">
            <xsd:enumeration value="HttpTempRedirect" />
            <xsd:enumeration value="HttpPermRedirect" />
            <xsd:enumeration value="HttpAnyRedirect" />
            <xsd:enumeration value="HttpNoneRedirect" />
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
    </xsd:complexType>
    
    <xsd:element name="descriptorset" type="DescriptorsetType">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This element denotes the description of the resources in the DR scope, expressed by a set of descriptors, defined in specific vocabularies. It must occur exactly one time in a DR, and only as a child of the <a href="#dr"><code>dr</code></a> element.</p>
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
        
    <xsd:complexType name="DescriptorsetType">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This type defines the structure of the <a href="#descriptorset"><code>descriptorset</code></a> element, which can have three alternative forms. The first consists of a required child unnamed element, corresponding to a descriptor defined in a specific vocabulary, which must occur at least one time. In addition, four optional child elements are supported, namely, <a href="#displaytext"><code>displaytext</code></a>, <a href="#displayicon"><code>displayicon</code></a>, <a href="#sha1sum"><code>sha1sum</code></a>, and <a href="#certified"><code>certified</code></a>, which can all occur at most one time. In its second form, the <a href="#descriptorset"><code>descriptorset</code></a> has all the above child elements, except the one corresponding to descriptors, but the <a href="#displaytext"><code>displaytext</code></a> element is mandatory. Finally, the third form consists of a required attribute <code>ref</code>, having as value the IRI of an existing instance of another <a href="#descriptorset"><code>descriptorset</code></a> element, and no child elements.</p>
          <p xmlns:base="http://www.w3.org/1999/xhtml">Is this the correct definition? Also, attribute <code>ref</code> might refer to multiple <code>descriptorset</code>s?</p>
        </xsd:documentation>
      </xsd:annotation>
      <xsd:choice>
        <xsd:sequence>
          <xsd:any     namespace="##any" processContents="lax" maxOccurs="unbounded" />
          <xsd:element ref="displaytext"   minOccurs="0" />
          <xsd:element ref="displayicon"   minOccurs="0" />
          <xsd:element ref="sha1sum"       minOccurs="0" />
          <xsd:element ref="certified"     minOccurs="0" />
        </xsd:sequence>
        <xsd:sequence>
          <xsd:element ref="displaytext" />
          <xsd:element ref="displayicon" minOccurs="0" />
          <xsd:element ref="sha1sum"     minOccurs="0" />
          <xsd:element ref="certified"   minOccurs="0" />
        </xsd:sequence>
      </xsd:choice>
      <xsd:attribute name="ref" type="xsd:anyURI" />
      <xsd:attribute ref="xml:id" />
    </xsd:complexType>	
<!--
    <xsd:complexType name="DescriptorType">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This type defines the structure of the unnamed elements in a <a href="#descriptorset"><code>descriptorset</code></a> element, corresponding to descriptors defined in a specific vocabulary.</p>
        </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
        <xsd:restriction base="xsd:anyType">
          <xsd:sequence>
            <xsd:any processContents="lax" minOccurs="0" maxOccurs="0"/> 
          </xsd:sequence>
        </xsd:restriction>
        <xsd:attribute name="ref" type="xsd:anyURI" />
      </xsd:complexContent>
    </xsd:complexType>
-->    
    <xsd:element name="displaytext" type="xsd:token">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This element is used to provide a textual summary of the statements in a DR. It can occur only one time in a DR, and only as a child of the <a href="#descriptorset"><code>descriptorset</code></a> element.</p>
          <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">Shouldn't we support this element also for <code>tagset</code>?</p>
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    
    <xsd:element name="displayicon" type="xsd:anyURI">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This element is used to provide the IRI of an image corresponding to the graphic summary of a DR. It can occur only one time in a DR, and only as a child of the <a href="#descriptorset"><code>descriptorset</code></a> element.</p>
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>

    <xsd:element name="sha1sum" type="xsd:token">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This element is used to encapsulate the SHA1 sum of a DR. It can occur only one time in a DR, and only as a child of the <a href="#dr"><code>dr</code></a> element.</p>
          <p xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">Is this the right place for this element? Shouldn't the SHA1 sum concern the whole POWDER document, instead of a single DR?</p>
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    
    <xsd:element name="certified" type="xsd:boolean">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This element is used to state whether a DR has been certified by a third-party or not.. It can occur only one time in a DR, and only as a child of the <a href="#dr"><code>dr</code></a> element.</p>
          <div xmlns:base="http://www.w3.org/1999/xhtml" class="edNote">
            <p>Is this the right place for this element? Shouldn't it apply to the whole POWDER document, instead of a single DR?</p>
            <p>Also, in the <a href="http://www.w3.org/2007/powder/Group/powder-dr/20080509.html#certification">DR document, Section 5.2</a>, it is said that <code>certifiedby</code> is the inverse of <code>certified</code>. This is not correct: <code>certifiedby</code> states who certifies the current POWDER doc, whereas <code>certified</code> just states whether a DR is certified or not. Since <code>certified</code> can be expressed as a triple <var>DR</var> <var>certified</var> true (or false), the inverse does not make sense to me.</p>
            <p>My suggestion is to remove element <code>certified</code>, and use just <code>certifiedby</code>.</p>
          </div>
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    
    <xsd:element name="tagset" type="TagsetType">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This element denotes the description of the resources in the DR scope, expressed by a set of free text tags. It must occur exactly one time in a DR, and only as a child of the <a href="#dr"><code>dr</code></a> element.</p>
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
        
    <xsd:complexType name="TagsetType">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This type defines the structure of the <a href="#tagset"><code>tagset</code></a> element, corresponding to one or more instances of the <a href="#tag"><code>tag</code></a> element.</p>
        </xsd:documentation>
      </xsd:annotation>
      <xsd:sequence>
        <xsd:element ref="tag" maxOccurs="unbounded" />
      </xsd:sequence>
    </xsd:complexType>	

    <xsd:element name="tag" type="xsd:token">
      <xsd:annotation>
        <xsd:documentation xml:lang="en">
          <p xmlns:base="http://www.w3.org/1999/xhtml">This element denotes a free text tag, describing a characteristics of the resources in the DR scope. It must occur at least one time in a DR, and only as a child of the <a href="#tagset"><code>tagset</code></a> element.</p>
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>

</xsd:schema>
