<?xml version="1.0" encoding="UTF-8"?>

<!-- 
  Variations/FRBR Project schema release 1.0
-->

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns:frad-work="http://vfrbr.info/frad/1.0/work"

            xmlns="http://vfrbr.info/frbr/1.0/work"
            targetNamespace="http://vfrbr.info/frbr/1.0/work"
            elementFormDefault="qualified"
            attributeFormDefault="unqualified"
            >

  <!--
    include FRBR Work attribute elements
    -->
  <xsd:include schemaLocation="http://vfrbr.info/schemas/1.0/frbr-work-attrib.xsd"/>

  <!--
    import FRAD Work attribute elements
    -->
  <xsd:import namespace="http://vfrbr.info/frad/1.0/work"
              schemaLocation="http://vfrbr.info/schemas/1.0/frbr-work-frad.xsd"/>

  <!--
    XML element definition
    for the FRBR Work entity
    -->
  <xsd:element name="work">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element ref="titleOfTheWork"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="formOfWork"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="dateOfTheWork"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="otherDistinguishingCharacteristic"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="intendedTermination"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="intendedAudience"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="contextForTheWork"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="mediumOfPerformance"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="numericDesignation"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="key"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="coordinates"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="equinox"
                     minOccurs="0" maxOccurs="unbounded"/>
        <!-- FRAD attributes -->
        <xsd:element ref="frad-work:subjectOfTheWork"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="frad-work:placeOfOriginOfTheWork"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="frad-work:history"
                     minOccurs="0" maxOccurs="unbounded"/>
      </xsd:sequence>
      <!-- entity element identifier attribute -->
      <xsd:attribute name="identifier"
                     type="xsd:anyURI"
                     use="optional"/>
    </xsd:complexType>
  </xsd:element>

</xsd:schema>
