<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace="http://www.ncaa.gov.in/repository/download"
            elementFormDefault="qualified" 
            xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns:ncaaterms="http://www.ncaa.gov.in/repository/download" 
            xmlns:dcterms="http://purl.org/dc/terms/">

    <xsd:import schemaLocation="http://dublincore.org/schemas/xmls/qdc/dcterms.xsd" namespace="http://purl.org/dc/terms/"></xsd:import>
    
    <xsd:element name="metadata" type="ncaaterms:metaDataType"></xsd:element>

    <xsd:complexType name="metaDataType">
    	<xsd:sequence>
            <xsd:element name="administrative" type="ncaaterms:administrativeType" maxOccurs="1" minOccurs="1"></xsd:element>
            <xsd:element name="descriptive" type="ncaaterms:descriptiveType" maxOccurs="1" minOccurs="1"></xsd:element>
            <xsd:element name="technical" type="ncaaterms:technicalType" maxOccurs="1" minOccurs="0"></xsd:element>
            <xsd:element name="miscellaneous" type="ncaaterms:miscellaneousType" maxOccurs="1" minOccurs="0"></xsd:element>
    	</xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="administrativeType">
    	<xsd:sequence>
            <xsd:element name="source" type="ncaaterms:sourceType" maxOccurs="1" minOccurs="0"></xsd:element>
            <xsd:element ref="dcterms:identifier" maxOccurs="1" minOccurs="1"></xsd:element>
            <xsd:element name="title" type="ncaaterms:titleType" maxOccurs="1" minOccurs="1"></xsd:element>
            <xsd:element name="medium" type="ncaaterms:mediumType" maxOccurs="1" minOccurs="0"></xsd:element>
            <xsd:element ref="dcterms:relation" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element ref="dcterms:rights" maxOccurs="unbounded" minOccurs="0"></xsd:element>
    	</xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="descriptiveType">
    	<xsd:sequence>
            <xsd:element name="subject" type="ncaaterms:subjectType" maxOccurs="1" minOccurs="0"></xsd:element>
            <xsd:element ref="dcterms:description" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element ref="dcterms:creator" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element ref="dcterms:publisher" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="contributor" type="ncaaterms:contributorType" maxOccurs="1" minOccurs="0"></xsd:element>
            <xsd:element ref="dcterms:date" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element ref="dcterms:type" maxOccurs="1" minOccurs="1"></xsd:element>
            <xsd:element ref="dcterms:coverage" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="language" type="ncaaterms:languageType" maxOccurs="1" minOccurs="0"></xsd:element>
    	</xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="technicalType">
    	<xsd:sequence>
            <xsd:element name="format"  type="ncaaterms:formatType" maxOccurs="1" minOccurs="0"></xsd:element>
            <xsd:element name="aToDConvertor" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="extent"  type="ncaaterms:extentType" maxOccurs="1" minOccurs="0"></xsd:element>
            <xsd:element name="dateOfDigitization" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="lTO6TapeNumber" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="hDDNumber" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>    
    	</xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="miscellaneousType">
    	<xsd:sequence>
    		 <xsd:element name="remarks" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>
    	</xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="sourceType">
    	<xsd:sequence>
    		<xsd:element ref="dcterms:source" maxOccurs="1" minOccurs="1"></xsd:element>
            <xsd:element name="collection" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>   
    	</xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="titleType">
    	<xsd:sequence>
    		<xsd:element ref="dcterms:title" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="alternative" type="xsd:string" maxOccurs="1" minOccurs="1"></xsd:element>       
    	</xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="mediumType">
    	<xsd:sequence>
            <xsd:element ref="dcterms:medium" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="extentOriginal" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element ref="dcterms:spatial" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element ref="dcterms:temporal" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element ref="dcterms:created" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="condition" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>       
    	</xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="subjectType">
    	<xsd:sequence>
    		<xsd:element ref="dcterms:subject" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="keywords" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>        
    	</xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="contributorType">
    	<xsd:sequence>
            <xsd:element ref="dcterms:contributor"  maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="artist" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="accompanyingArtist" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="recordist" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="composer" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="lyricist" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="anyOther" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>      
    	</xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="languageType">
    	<xsd:sequence>
            <xsd:element ref="dcterms:language" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="dialect" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>        
    	</xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="formatType">
    	<xsd:sequence>
            <xsd:element ref="dcterms:format"  maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="codec" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="bitRateOrBitDepth" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="samplingFrequency" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="playbackEquipment" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>    
    	</xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="extentType">
    	<xsd:sequence>
            <xsd:element ref="dcterms:extent" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="digitalFileSize" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>
            <xsd:element name="duration" type="xsd:string" maxOccurs="unbounded" minOccurs="0"></xsd:element>       
    	</xsd:sequence>
    </xsd:complexType>
</xsd:schema>