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

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

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns:vfrad-person="http://vfrbr.info/vfrad/1.1/person"

            xmlns="http://vfrbr.info/vfrbr/1.1/person"
            targetNamespace="http://vfrbr.info/vfrbr/1.1/person"
            elementFormDefault="qualified"
            attributeFormDefault="unqualified"
            >

  <!--
    include vFRBR entity attributes
    -->
  <xsd:include schemaLocation="http://vfrbr.info/schemas/1.1/vfrbr-person-attrib.xsd"/>
  <!--
    import FRAD entity attributes
    -->
  <xsd:import namespace="http://vfrbr.info/vfrad/1.1/person"
              schemaLocation="http://vfrbr.info/schemas/1.1/vfrbr-person-frad.xsd"/>
  <!--
    include entity extensions
    -->
  <xsd:include schemaLocation="http://vfrbr.info/schemas/1.1/vfrbr-person-extend.xsd"/>

  <!--
    XML element
    for vFRBR Person entity
    -->
  <xsd:element name="person">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element ref="nameOfPerson"
                     minOccurs="1" maxOccurs="unbounded"
                     />
        <xsd:element ref="datesOfPerson"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="titleOfPerson"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="otherDesignationAssociatedWithThePerson"
                     minOccurs="0" maxOccurs="unbounded"/>
        <!-- FRAD attributes -->
        <xsd:element ref="vfrad-person:gender"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="vfrad-person:placeOfBirth"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="vfrad-person:placeOfDeath"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="vfrad-person:country"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="vfrad-person:placeOfResidence"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="vfrad-person:affiliation"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="vfrad-person:address"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="vfrad-person:languageOfPerson"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="vfrad-person:fieldOfActivity"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="vfrad-person:professionOccupation"
                     minOccurs="0" maxOccurs="unbounded"
                     />
        <xsd:element ref="vfrad-person:biographyHistory"
                     minOccurs="0" maxOccurs="unbounded"/>
        <!--
          extensions 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>
