<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">  
  <xs:element name="IMDB">    
    <xs:complexType>
      <xs:all>

	<xs:element name="Movies">
	  <xs:complexType>
	    <xs:sequence>

	    <xs:element name="Movie" minOccurs="0" maxOccurs="unbounded">
	      <xs:complexType>
		<xs:sequence>
		  <xs:element name="MovieTitle" type="xs:string"/>
		  <xs:element name="Year" type="xs:integer"/>
		</xs:sequence>
	      </xs:complexType>
	    </xs:element>

	    </xs:sequence>
	  </xs:complexType>
	</xs:element>



	<xs:element name="Taglines">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="Tagline" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="TaglineValue" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>


	<xs:element name="Actors">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="Actor" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="Name" type="xs:string"/>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="ActorInformation" type="xs:string"/>
		    <xs:element name="CharacterName" type="xs:string"/>
		    <xs:element name="BillingPosition" type="xs:integer"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>


	<xs:element name="Actresses">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="Actress" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="Name" type="xs:string"/>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="ActressInformation" type="xs:string"/>
		    <xs:element name="CharacterName" type="xs:string"/>
		    <xs:element name="BillingPosition" type="xs:integer"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>


	<xs:element name="Directors">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="Director" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="Name" type="xs:string"/>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="DirectorInformation" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="Writers">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="Writer" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="Name" type="xs:string"/>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="WriterInformation" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="Cinematographers">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="Cinematographer" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="Name" type="xs:string"/>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="CinematographerInformation" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="Producers">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="Producer" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="Name" type="xs:string"/>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="ProducerInformation" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="Editors">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="Editor" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="Name" type="xs:string"/>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="EditorInformation" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="ProductionDesigners">	  
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="ProductionDesigner" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="Name" type="xs:string"/>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="ProductionDesignerInformation" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="CostumeDesigners">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="CostumeDesigner" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="Name" type="xs:string"/>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="CostumeDesignerInformation" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="Composers">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="Composer" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="Name" type="xs:string"/>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="ComposerInformation" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="Miscellaneous">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="Misc" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="Name" type="xs:string"/>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="MiscInformation" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="ProductionCompanies">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="ProductionCompany" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="Name" type="xs:string"/>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="ProductionCompanyName" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="Distributors">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="Distributor" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="DistributorName" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="SpecialFXCompanies">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="SpecialFXCompany" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="SpecialFXCompanyName" type="xs:string"/>
		    <xs:element name="SpecialFXCompanyInformation" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="Certificates">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="Certificate" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="Rating" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="Countries">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="Country" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="CountryName" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="Genres">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="Genre" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="GenreValue" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="Keywords">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="Keyword" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="KeywordValue" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="Languages">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="Language" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="LanguageValue" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="Locations">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="Location" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="LocationValue" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>


	<xs:element name="ReleaseDates">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="ReleaseDate" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="ReleaseDate" type="xs:date"/>
		    <xs:element name="ReleaseDateInformation" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="RunningTimes">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="RunningTime" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="RunningTimeValue" type="xs:integer"/>
		    <xs:element name="RunningTimeInformation" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>


	<xs:element name="SoundMixes">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="SoundMix" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="SoundMixValue" type="xs:string"/>
		    <xs:element name="SoundMixInformation" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="Ratings">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="Rating" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="VotesNumber" type="xs:integer"/>
		    <xs:element name="RatingValue" type="xs:decimal"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>


	<xs:element name="Plots">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="Plot" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="PlotData" type="xs:string"/>
		    <xs:element name="Author" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="AKAS">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="AKA" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="AKAName" type="xs:string"/>
		    <xs:element name="AKAInformation" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="ColorInfos">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="ColorInfo" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="ColorInformation" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="ColorInfos">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="ColorInfo" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="ColorInformation" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="LaserDiscs">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="LaserDisc" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="LaserDiscNumber" type="xs:string"/>
		    <xs:element name="Label" type="xs:string"/>
		    <xs:element name="CatalogueNumber" type="xs:string"/>
		    <xs:element name="LaserDiscTitle" type="xs:string"/>
		    <xs:element name="OriginalTitle" type="xs:string"/>
		    <xs:element name="ProductionCountry" type="xs:string"/>
		    <xs:element name="Year" type="xs:integer"/>
		    <xs:element name="Certification" type="xs:string"/>
		    <xs:element name="Category" type="xs:string"/>
		    <xs:element name="GroupGenre" type="xs:string"/>
		    <xs:element name="Language" type="xs:string"/>
		    <xs:element name="Subtitles" type="xs:string"/>
		    <xs:element name="Length" type="xs:integer"/>
		    <xs:element name="ReleaseDate" type="xs:date"/>
		    <xs:element name="Availability" type="xs:string"/>
		    <xs:element name="OfficialRetailPrice" type="xs:string"/>
		    <xs:element name="ReleaseCountry" type="xs:string"/>
		    <xs:element name="VideoStandard" type="xs:string"/>
		    <xs:element name="ColorInformation" type="xs:string"/>
		    <xs:element name="SoundEncoding" type="xs:string"/>
		    <xs:element name="DigitalSound" type="xs:string"/>
		    <xs:element name="AnalogLeft" type="xs:string"/>
		    <xs:element name="AnalogRight" type="xs:string"/>
		    <xs:element name="MasterFormat" type="xs:string"/>
		    <xs:element name="PressingPlant" type="xs:string"/>
		    <xs:element name="DiscSize" type="xs:string"/>
		    <xs:element name="NumberOfSides" type="xs:integer"/>
		    <xs:element name="DiscFormat" type="xs:string"/>
		    <xs:element name="PictureFormat" type="xs:string"/>
		    <xs:element name="AspectRatio" type="xs:string"/>
		    <xs:element name="CloseCaptionsTeletextLDG" type="xs:string"/>
		    <xs:element name="NumberOfChapterStops" type="xs:string"/>
		    <xs:element name="QualityProgram" type="xs:string"/>
		    <xs:element name="AdditionalInformation" type="xs:string"/>
		    <xs:element name="Supplement" type="xs:string"/>
		    <xs:element name="Review" type="xs:string"/>
		    <xs:element name="QualityOfSource" type="xs:string"/>
		    <xs:element name="Contrast" type="xs:string"/>
		    <xs:element name="ColorRendition" type="xs:string"/>
		    <xs:element name="Sharpness" type="xs:string"/>
		    <xs:element name="VideoNoise" type="xs:string"/>
		    <xs:element name="VideoArtifacts" type="xs:string"/>
		    <xs:element name="VideoQuality" type="xs:string"/>
		    <xs:element name="FrequencyResponse" type="xs:string"/>
		    <xs:element name="DynamicRange" type="xs:string"/>
		    <xs:element name="Speciality" type="xs:string"/>
		    <xs:element name="AudioNoise" type="xs:string"/>
		    <xs:element name="DialogueIntellegibility" type="xs:string"/>
		    <xs:element name="AudioQuality" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>


	<xs:element name="LiteratureSources">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="LiteratureSource" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="LiteratureInfo" type="xs:string"/>
		    <xs:element name="LiteratureType">
		      <xs:simpleType>
			<xs:restriction base="xs:string">
			  <xs:enumeration value="Script"/>
			  <xs:enumeration value="Novel"/>
			  <xs:enumeration value="ProductionProtocol"/>
			  <xs:enumeration value="Books"/>
			  <xs:enumeration value="Interviews"/>
			  <xs:enumeration value="Critics"/>
			  <xs:enumeration value="Essays"/>
			  <xs:enumeration value="Others"/>
			</xs:restriction>
		      </xs:simpleType>
		    </xs:element>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="TechnicalInfos">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="TechnicalInfo" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="TechnicalInfoValue" type="xs:string"/>
		    <xs:element name="TechnicalInfoType">
		      <xs:simpleType>
			<xs:restriction base="xs:string">
			  <xs:enumeration value="CAM"/>
			  <xs:enumeration value="LAB"/>
			  <xs:enumeration value="MET"/>
			  <xs:enumeration value="OFM"/>
			  <xs:enumeration value="PCS"/>
			  <xs:enumeration value="PFM"/>
			  <xs:enumeration value="RAT"/>
			</xs:restriction>
		      </xs:simpleType>
		    </xs:element>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>

	<xs:element name="MovieLinks">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="MovieLink" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="MovieTitle" type="xs:string"/>
		    <xs:element name="LinkMovieTitle" type="xs:string"/>
		    <xs:element name="LinkValue" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>


	<xs:element name="Biographies">
	  <xs:complexType>
	    <xs:sequence>
	      <xs:element name="Biography" minOccurs="0" maxOccurs="unbounded">
		<xs:complexType>
		  <xs:sequence>
		    <xs:element name="Name" type="xs:string"/>
		    <xs:element name="BiographyData" type="xs:string"/>
		  </xs:sequence>
		</xs:complexType>
	      </xs:element>
	    </xs:sequence>
	  </xs:complexType>
	</xs:element>


      </xs:all>
    </xs:complexType>
  </xs:element>
</xs:schema>