<?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="http://vfrbr.info/efrbr/1.0/expression"
            targetNamespace="http://vfrbr.info/efrbr/1.0/expression"
            elementFormDefault="qualified"
            attributeFormDefault="unqualified"
            >

  <!--
    include entity attribute types
    -->
  <xsd:include schemaLocation="http://vfrbr.info/schemas/1.0/efrbr-expression-attrib.xsd"/>
  <!--
    include entity extension types
    -->
  <xsd:include schemaLocation="http://vfrbr.info/schemas/1.0/efrbr-expression-extend.xsd"/>

  <!--
    XML element
    for eFRBR Expression entity
    -->
  <xsd:element name="expression">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element ref="titleOfTheExpression"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="formOfExpression"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="dateOfExpression"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="languageOfExpression"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="otherDistinguishingCharacteristic"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="extensibilityOfExpression"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="revisabilityOfExpression"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="extentOfTheExpression"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="sumarizationOfContent"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="contextForTheExpression"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="criticalResponseToTheExpression"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="useRestrictionsOnTheExpression"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="sequencingPattern"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="expectedRegularityOfIssue"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="expectedFrequencyOfIssue"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="typeOfScore"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="mediumOfPerformance"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="scale"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="projection"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="presentationTechnique"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="representationOfRelief"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="geodeticGridAndVerticalMeasurement"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="recordingTechnique"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="specialCharacteristic"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="technique"
                     minOccurs="0" maxOccurs="unbounded"/>
        <!--
          eFRBR extension to entity attributes
          -->
        <xsd:element ref="note"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="extensions"
                     minOccurs="0" maxOccurs="1"/>
      </xsd:sequence>
      <!--
        entity element identifier attribute
        -->
      <xsd:attribute name="identifier"
                     type="xsd:anyURI"
                     use="optional"/>
    </xsd:complexType>
  </xsd:element>

</xsd:schema>
