<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">

<xs:simpleType name="Rating">
  <xs:restriction base="xs:string">
    <xs:enumeration value="12" />
    <xs:enumeration value="12A" />
    <xs:enumeration value="14+" />
    <xs:enumeration value="14A" />
    <xs:enumeration value="15" />
    <xs:enumeration value="18" />
    <xs:enumeration value="18+" />
    <xs:enumeration value="18A" />
    <xs:enumeration value="A" />
    <xs:enumeration value="AA" />
    <xs:enumeration value="B" />
    <xs:enumeration value="B-15" />
    <xs:enumeration value="B15" />
    <xs:enumeration value="C" />
    <xs:enumeration value="C8" />
    <xs:enumeration value="DD" />
    <xs:enumeration value="D" />
    <xs:enumeration value="E" />
    <xs:enumeration value="G" />
    <xs:enumeration value="NC-17" />
    <xs:enumeration value="NC17" />
    <xs:enumeration value="NR" />
    <xs:enumeration value="PG" />
    <xs:enumeration value="PG-13" />
    <xs:enumeration value="PG13" />
    <xs:enumeration value="R" />
    <xs:enumeration value="R18" />
    <xs:enumeration value="TV-14" />
    <xs:enumeration value="TV-G" />
    <xs:enumeration value="TV-MA" />
    <xs:enumeration value="TV-PG" />
    <xs:enumeration value="TV-Y" />
    <xs:enumeration value="TV-Y14" />
    <xs:enumeration value="TV-Y7" />
    <xs:enumeration value="TV14" />
    <xs:enumeration value="TVG" />
    <xs:enumeration value="TVMA" />
    <xs:enumeration value="TVPG" />
    <xs:enumeration value="TVY" />
    <xs:enumeration value="TVY14" />
    <xs:enumeration value="TVY7" />    
    <xs:enumeration value="U" />
    <xs:enumeration value="Uc" />
  </xs:restriction>
</xs:simpleType>

<xs:simpleType name="Language">
  <xs:restriction base="xs:string">
    <xs:enumeration value="af" />
    <xs:enumeration value="am" />
    <xs:enumeration value="ar" />
    <xs:enumeration value="ar-ae" />
    <xs:enumeration value="ar-AE" />
    <xs:enumeration value="ar-bh" />
    <xs:enumeration value="ar-BH" />
    <xs:enumeration value="ar-dz" />
    <xs:enumeration value="ar-DZ" />
    <xs:enumeration value="ar-eg" />
    <xs:enumeration value="ar-EG" />
    <xs:enumeration value="ar-iq" />
    <xs:enumeration value="ar-IQ" />
    <xs:enumeration value="ar-jo" />
    <xs:enumeration value="ar-JO" />
    <xs:enumeration value="ar-kw" />
    <xs:enumeration value="ar-KW" />
    <xs:enumeration value="ar-lb" />
    <xs:enumeration value="ar-LB" />
    <xs:enumeration value="ar-ly" />
    <xs:enumeration value="ar-LY" />
    <xs:enumeration value="ar-ma" />
    <xs:enumeration value="ar-MA" />
    <xs:enumeration value="ar-om" />
    <xs:enumeration value="ar-OM" />
    <xs:enumeration value="ar-qa" />
    <xs:enumeration value="ar-QA" />
    <xs:enumeration value="ar-sa" />
    <xs:enumeration value="ar-SA" />
    <xs:enumeration value="ar-sy" />
    <xs:enumeration value="ar-SY" />
    <xs:enumeration value="ar-tn" />
    <xs:enumeration value="ar-TN" />
    <xs:enumeration value="ar-ye" />
    <xs:enumeration value="ar-YE" />
    <xs:enumeration value="as" />
    <xs:enumeration value="az" />
    <xs:enumeration value="be" />
    <xs:enumeration value="bg" />
    <xs:enumeration value="bh" />
    <xs:enumeration value="bn" />
    <xs:enumeration value="bo" />
    <xs:enumeration value="bs" />
    <xs:enumeration value="ca" />
    <xs:enumeration value="cs" />
    <xs:enumeration value="cy" />
    <xs:enumeration value="da" />
    <xs:enumeration value="de" />
    <xs:enumeration value="de-at" />
    <xs:enumeration value="de-AT" />
    <xs:enumeration value="de-ch" />
    <xs:enumeration value="de-CH" />
    <xs:enumeration value="de-li" />
    <xs:enumeration value="de-LI" />
    <xs:enumeration value="de-lu" />
    <xs:enumeration value="de-LU" />
    <xs:enumeration value="dv" />
    <xs:enumeration value="dz" />
    <xs:enumeration value="el" />
    <xs:enumeration value="en" />
    <xs:enumeration value="en-au" />
    <xs:enumeration value="en-AU" />
    <xs:enumeration value="en-bz" />
    <xs:enumeration value="en-BZ" />
    <xs:enumeration value="en-ca" />
    <xs:enumeration value="en-CA" />
    <xs:enumeration value="en-gb" />
    <xs:enumeration value="en-GB" />
    <xs:enumeration value="en-ie" />
    <xs:enumeration value="en-IE" />
    <xs:enumeration value="en-jm" />
    <xs:enumeration value="en-JM" />
    <xs:enumeration value="en-nz" />
    <xs:enumeration value="en-NZ" />
    <xs:enumeration value="en-tt" />
    <xs:enumeration value="en-TT" />
    <xs:enumeration value="en-us" />
    <xs:enumeration value="en-US" />
    <xs:enumeration value="en-za" />
    <xs:enumeration value="en-ZA" />
    <xs:enumeration value="es" />
    <xs:enumeration value="es-ar" />
    <xs:enumeration value="es-AR" />
    <xs:enumeration value="es-bo" />
    <xs:enumeration value="es-BO" />
    <xs:enumeration value="es-cl" />
    <xs:enumeration value="es-CL" />
    <xs:enumeration value="es-co" />
    <xs:enumeration value="es-CO" />
    <xs:enumeration value="es-cr" />
    <xs:enumeration value="es-CR" />
    <xs:enumeration value="es-do" />
    <xs:enumeration value="es-DO" />
    <xs:enumeration value="es-ec" />
    <xs:enumeration value="es-EC" />
    <xs:enumeration value="es-es" />
    <xs:enumeration value="es-ES" />
    <xs:enumeration value="es-gt" />
    <xs:enumeration value="es-GT" />
    <xs:enumeration value="es-hn" />
    <xs:enumeration value="es-HN" />
    <xs:enumeration value="es-la" />
    <xs:enumeration value="es-LA" />
    <xs:enumeration value="es-mx" />
    <xs:enumeration value="es-MX" />
    <xs:enumeration value="es-ni" />
    <xs:enumeration value="es-NI" />
    <xs:enumeration value="es-pa" />
    <xs:enumeration value="es-PA" />
    <xs:enumeration value="es-pe" />
    <xs:enumeration value="es-PE" />
    <xs:enumeration value="es-pr" />
    <xs:enumeration value="es-PR" />
    <xs:enumeration value="es-py" />
    <xs:enumeration value="es-PY" />
    <xs:enumeration value="es-sv" />
    <xs:enumeration value="es-SV" />
    <xs:enumeration value="es-uy" />
    <xs:enumeration value="es-UY" />
    <xs:enumeration value="es-ve" />
    <xs:enumeration value="es-VE" />
    <xs:enumeration value="et" />
    <xs:enumeration value="eu" />
    <xs:enumeration value="fa" />
    <xs:enumeration value="ff" />
    <xs:enumeration value="fi" />
    <xs:enumeration value="fo" />
    <xs:enumeration value="fr" />
    <xs:enumeration value="fr-be" />
    <xs:enumeration value="fr-BE" />
    <xs:enumeration value="fr-ca" />
    <xs:enumeration value="fr-CA" />
    <xs:enumeration value="fr-ch" />
    <xs:enumeration value="fr-CH" />
    <xs:enumeration value="fr-lu" />
    <xs:enumeration value="fr-LU" />
    <xs:enumeration value="fy" />
    <xs:enumeration value="ga" />
    <xs:enumeration value="gd" />
    <xs:enumeration value="gl" />
    <xs:enumeration value="gn" />
    <xs:enumeration value="gu" />
    <xs:enumeration value="ha" />
    <xs:enumeration value="he" />
    <xs:enumeration value="hi" />
    <xs:enumeration value="hr" />
    <xs:enumeration value="ht" />
    <xs:enumeration value="hu" />
    <xs:enumeration value="hy" />
    <xs:enumeration value="id" />
    <xs:enumeration value="ig" />
    <xs:enumeration value="ii" />
    <xs:enumeration value="ik" />
    <xs:enumeration value="is" />
    <xs:enumeration value="it" />
    <xs:enumeration value="it-ch" />
    <xs:enumeration value="it-CH" />
    <xs:enumeration value="iu" />
    <xs:enumeration value="ja" />
    <xs:enumeration value="ka" />
    <xs:enumeration value="kk" />
    <xs:enumeration value="km" />
    <xs:enumeration value="kn" />
    <xs:enumeration value="ko" />
    <xs:enumeration value="kr" />
    <xs:enumeration value="ks" />
    <xs:enumeration value="ku" />
    <xs:enumeration value="ky" />
    <xs:enumeration value="la" />
    <xs:enumeration value="lo" />
    <xs:enumeration value="lt" />
    <xs:enumeration value="lv" />
    <xs:enumeration value="mg" />
    <xs:enumeration value="mk" />
    <xs:enumeration value="ml" />
    <xs:enumeration value="mn" />
    <xs:enumeration value="mr" />
    <xs:enumeration value="ms" />
    <xs:enumeration value="mt" />
    <xs:enumeration value="my" />
    <xs:enumeration value="nd" />
    <xs:enumeration value="ne" />
    <xs:enumeration value="nl" />
    <xs:enumeration value="nl-be" />
    <xs:enumeration value="nl-BE" />
    <xs:enumeration value="no" />
    <xs:enumeration value="om" />
    <xs:enumeration value="or" />
    <xs:enumeration value="pa" />
    <xs:enumeration value="pl" />
    <xs:enumeration value="ps" />
    <xs:enumeration value="pt" />
    <xs:enumeration value="pt-br" />
    <xs:enumeration value="pt-BR" />
    <xs:enumeration value="qu" />
    <xs:enumeration value="rm" />
    <xs:enumeration value="rn" />
    <xs:enumeration value="ro" />
    <xs:enumeration value="ro-md" />
    <xs:enumeration value="ro-MD" />
    <xs:enumeration value="ru" />
    <xs:enumeration value="ru-md" />
    <xs:enumeration value="ru-MD" />
    <xs:enumeration value="rw" />
    <xs:enumeration value="sa" />
    <xs:enumeration value="sd" />
    <xs:enumeration value="se" />
    <xs:enumeration value="si" />
    <xs:enumeration value="sk" />
    <xs:enumeration value="sl" />
    <xs:enumeration value="sn" />
    <xs:enumeration value="so" />
    <xs:enumeration value="sq" />
    <xs:enumeration value="sr" />
    <xs:enumeration value="st" />
    <xs:enumeration value="sv" />
    <xs:enumeration value="sv-fi" />
    <xs:enumeration value="sv-FI" />
    <xs:enumeration value="sw" />
    <xs:enumeration value="ta" />
    <xs:enumeration value="te" />
    <xs:enumeration value="tg" />
    <xs:enumeration value="th" />
    <xs:enumeration value="ti" />
    <xs:enumeration value="tk" />
    <xs:enumeration value="tn" />
    <xs:enumeration value="tr" />
    <xs:enumeration value="ts" />
    <xs:enumeration value="tt" />
    <xs:enumeration value="ty" />
    <xs:enumeration value="uk" />
    <xs:enumeration value="ur" />
    <xs:enumeration value="uz" />
    <xs:enumeration value="ve" />
    <xs:enumeration value="vi" />
    <xs:enumeration value="xh" />
    <xs:enumeration value="yi" />
    <xs:enumeration value="yo" />
    <xs:enumeration value="zh" />
    <xs:enumeration value="zh-cn" />
    <xs:enumeration value="zh-CN" />
    <xs:enumeration value="zh-hans" />
    <xs:enumeration value="zh-HANS" />
    <xs:enumeration value="zh-hant" />
    <xs:enumeration value="zh-HANT" />
    <xs:enumeration value="zh-hk" />
    <xs:enumeration value="zh-HK" />
    <xs:enumeration value="zh-sg" />
    <xs:enumeration value="zh-SG" />
    <xs:enumeration value="zh-tw" />
    <xs:enumeration value="zh-TW" />
    <xs:enumeration value="zu" />
  </xs:restriction>
</xs:simpleType>

<xs:simpleType name="Country">
  <xs:restriction base="xs:string">
    <xs:enumeration value="AD" />
    <xs:enumeration value="AE" />
    <xs:enumeration value="AF" />
    <xs:enumeration value="AG" />
    <xs:enumeration value="AI" />
    <xs:enumeration value="AL" />
    <xs:enumeration value="AM" />
    <xs:enumeration value="AO" />
    <xs:enumeration value="AQ" />
    <xs:enumeration value="AR" />
    <xs:enumeration value="AS" />
    <xs:enumeration value="AT" />
    <xs:enumeration value="AU" />
    <xs:enumeration value="AW" />
    <xs:enumeration value="AX" />
    <xs:enumeration value="AZ" />
    <xs:enumeration value="BA" />
    <xs:enumeration value="BB" />
    <xs:enumeration value="BD" />
    <xs:enumeration value="BE" />
    <xs:enumeration value="BF" />
    <xs:enumeration value="BG" />
    <xs:enumeration value="BH" />
    <xs:enumeration value="BI" />
    <xs:enumeration value="BJ" />
    <xs:enumeration value="BL" />
    <xs:enumeration value="BM" />
    <xs:enumeration value="BN" />
    <xs:enumeration value="BO" />
    <xs:enumeration value="BQ" />
    <xs:enumeration value="BR" />
    <xs:enumeration value="BS" />
    <xs:enumeration value="BT" />
    <xs:enumeration value="BV" />
    <xs:enumeration value="BW" />
    <xs:enumeration value="BY" />
    <xs:enumeration value="BZ" />
    <xs:enumeration value="CA" />
    <xs:enumeration value="CC" />
    <xs:enumeration value="CD" />
    <xs:enumeration value="CF" />
    <xs:enumeration value="CG" />
    <xs:enumeration value="CH" />
    <xs:enumeration value="CI" />
    <xs:enumeration value="CK" />
    <xs:enumeration value="CL" />
    <xs:enumeration value="CM" />
    <xs:enumeration value="CN" />
    <xs:enumeration value="CO" />
    <xs:enumeration value="CR" />
    <xs:enumeration value="CU" />
    <xs:enumeration value="CV" />
    <xs:enumeration value="CW" />
    <xs:enumeration value="CX" />
    <xs:enumeration value="CY" />
    <xs:enumeration value="CZ" />
    <xs:enumeration value="DE" />
    <xs:enumeration value="DJ" />
    <xs:enumeration value="DK" />
    <xs:enumeration value="DM" />
    <xs:enumeration value="DO" />
    <xs:enumeration value="DZ" />
    <xs:enumeration value="EC" />
    <xs:enumeration value="EE" />
    <xs:enumeration value="EG" />
    <xs:enumeration value="EH" />
    <xs:enumeration value="ER" />
    <xs:enumeration value="ES" />
    <xs:enumeration value="ET" />
    <xs:enumeration value="FI" />
    <xs:enumeration value="FJ" />
    <xs:enumeration value="FK" />
    <xs:enumeration value="FM" />
    <xs:enumeration value="FO" />
    <xs:enumeration value="FR" />
    <xs:enumeration value="GA" />
    <xs:enumeration value="GB" />
    <xs:enumeration value="GD" />
    <xs:enumeration value="GE" />
    <xs:enumeration value="GF" />
    <xs:enumeration value="GG" />
    <xs:enumeration value="GH" />
    <xs:enumeration value="GI" />
    <xs:enumeration value="GL" />
    <xs:enumeration value="GM" />
    <xs:enumeration value="GN" />
    <xs:enumeration value="GP" />
    <xs:enumeration value="GQ" />
    <xs:enumeration value="GR" />
    <xs:enumeration value="GS" />
    <xs:enumeration value="GT" />
    <xs:enumeration value="GU" />
    <xs:enumeration value="GW" />
    <xs:enumeration value="GY" />
    <xs:enumeration value="HK" />
    <xs:enumeration value="HM" />
    <xs:enumeration value="HN" />
    <xs:enumeration value="HR" />
    <xs:enumeration value="HT" />
    <xs:enumeration value="HU" />
    <xs:enumeration value="ID" />
    <xs:enumeration value="IE" />
    <xs:enumeration value="IL" />
    <xs:enumeration value="IM" />
    <xs:enumeration value="IN" />
    <xs:enumeration value="IO" />
    <xs:enumeration value="IQ" />
    <xs:enumeration value="IR" />
    <xs:enumeration value="IS" />
    <xs:enumeration value="IT" />
    <xs:enumeration value="JE" />
    <xs:enumeration value="JM" />
    <xs:enumeration value="JO" />
    <xs:enumeration value="JP" />
    <xs:enumeration value="KE" />
    <xs:enumeration value="KG" />
    <xs:enumeration value="KH" />
    <xs:enumeration value="KI" />
    <xs:enumeration value="KM" />
    <xs:enumeration value="KN" />
    <xs:enumeration value="KP" />
    <xs:enumeration value="KR" />
    <xs:enumeration value="KW" />
    <xs:enumeration value="KY" />
    <xs:enumeration value="KZ" />
    <xs:enumeration value="LA" />
    <xs:enumeration value="LB" />
    <xs:enumeration value="LC" />
    <xs:enumeration value="LI" />
    <xs:enumeration value="LK" />
    <xs:enumeration value="LR" />
    <xs:enumeration value="LS" />
    <xs:enumeration value="LT" />
    <xs:enumeration value="LU" />
    <xs:enumeration value="LV" />
    <xs:enumeration value="LY" />
    <xs:enumeration value="MA" />
    <xs:enumeration value="MC" />
    <xs:enumeration value="MD" />
    <xs:enumeration value="ME" />
    <xs:enumeration value="MF" />
    <xs:enumeration value="MG" />
    <xs:enumeration value="MH" />
    <xs:enumeration value="MK" />
    <xs:enumeration value="ML" />
    <xs:enumeration value="MM" />
    <xs:enumeration value="MN" />
    <xs:enumeration value="MO" />
    <xs:enumeration value="MP" />
    <xs:enumeration value="MQ" />
    <xs:enumeration value="MR" />
    <xs:enumeration value="MS" />
    <xs:enumeration value="MT" />
    <xs:enumeration value="MU" />
    <xs:enumeration value="MV" />
    <xs:enumeration value="MW" />
    <xs:enumeration value="MX" />
    <xs:enumeration value="MY" />
    <xs:enumeration value="MZ" />
    <xs:enumeration value="NA" />
    <xs:enumeration value="NC" />
    <xs:enumeration value="NE" />
    <xs:enumeration value="NF" />
    <xs:enumeration value="NG" />
    <xs:enumeration value="NI" />
    <xs:enumeration value="NL" />
    <xs:enumeration value="NO" />
    <xs:enumeration value="NP" />
    <xs:enumeration value="NR" />
    <xs:enumeration value="NU" />
    <xs:enumeration value="NZ" />
    <xs:enumeration value="OM" />
    <xs:enumeration value="PA" />
    <xs:enumeration value="PE" />
    <xs:enumeration value="PF" />
    <xs:enumeration value="PG" />
    <xs:enumeration value="PH" />
    <xs:enumeration value="PK" />
    <xs:enumeration value="PL" />
    <xs:enumeration value="PM" />
    <xs:enumeration value="PN" />
    <xs:enumeration value="PR" />
    <xs:enumeration value="PS" />
    <xs:enumeration value="PT" />
    <xs:enumeration value="PW" />
    <xs:enumeration value="PY" />
    <xs:enumeration value="QA" />
    <xs:enumeration value="RE" />
    <xs:enumeration value="RO" />
    <xs:enumeration value="RS" />
    <xs:enumeration value="RU" />
    <xs:enumeration value="RW" />
    <xs:enumeration value="SA" />
    <xs:enumeration value="SB" />
    <xs:enumeration value="SC" />
    <xs:enumeration value="SD" />
    <xs:enumeration value="SE" />
    <xs:enumeration value="SG" />
    <xs:enumeration value="SH" />
    <xs:enumeration value="SI" />
    <xs:enumeration value="SJ" />
    <xs:enumeration value="SK" />
    <xs:enumeration value="SL" />
    <xs:enumeration value="SM" />
    <xs:enumeration value="SN" />
    <xs:enumeration value="SO" />
    <xs:enumeration value="SR" />
    <xs:enumeration value="SS" />
    <xs:enumeration value="ST" />
    <xs:enumeration value="SV" />
    <xs:enumeration value="SX" />
    <xs:enumeration value="SY" />
    <xs:enumeration value="SZ" />
    <xs:enumeration value="TC" />
    <xs:enumeration value="TD" />
    <xs:enumeration value="TF" />
    <xs:enumeration value="TG" />
    <xs:enumeration value="TH" />
    <xs:enumeration value="TJ" />
    <xs:enumeration value="TK" />
    <xs:enumeration value="TL" />
    <xs:enumeration value="TM" />
    <xs:enumeration value="TN" />
    <xs:enumeration value="TO" />
    <xs:enumeration value="TR" />
    <xs:enumeration value="TT" />
    <xs:enumeration value="TV" />
    <xs:enumeration value="TW" />
    <xs:enumeration value="TZ" />
    <xs:enumeration value="UA" />
    <xs:enumeration value="UG" />
    <xs:enumeration value="UM" />
    <xs:enumeration value="US" />
    <xs:enumeration value="UY" />
    <xs:enumeration value="UZ" />
    <xs:enumeration value="VA" />
    <xs:enumeration value="VC" />
    <xs:enumeration value="VE" />
    <xs:enumeration value="VG" />
    <xs:enumeration value="VI" />
    <xs:enumeration value="VN" />
    <xs:enumeration value="VU" />
    <xs:enumeration value="WF" />
    <xs:enumeration value="WS" />
    <xs:enumeration value="YE" />
    <xs:enumeration value="YT" />
    <xs:enumeration value="ZA" />
    <xs:enumeration value="ZM" />
    <xs:enumeration value="ZW" />
  </xs:restriction>
</xs:simpleType>

<xs:simpleType name="ratingSystem">
  <xs:restriction base="xs:string">
    <xs:enumeration value="BBFC" />
    <xs:enumeration value="CHVRS" />
    <xs:enumeration value="CPR" />
    <xs:enumeration value="MPAA" />
    <xs:enumeration value="USA_PR" />
    <xs:enumeration value="RTC" />    
  </xs:restriction>
</xs:simpleType>

<xs:simpleType name="Genre">
  <xs:restriction base="xs:string">
    <xs:enumeration value="action" />
    <xs:enumeration value="action sports" />
    <xs:enumeration value="adventure" />
    <xs:enumeration value="aerobics" />
    <xs:enumeration value="agriculture" />
    <xs:enumeration value="animals" />
    <xs:enumeration value="animated" />
    <xs:enumeration value="anime" />
    <xs:enumeration value="anthology" />
    <xs:enumeration value="archery" />
    <xs:enumeration value="arm wrestling" />
    <xs:enumeration value="art" />
    <xs:enumeration value="arts/crafts" />
    <xs:enumeration value="artistic gymnastics" />
    <xs:enumeration value="artistic swimming" />
    <xs:enumeration value="athletics" />
    <xs:enumeration value="auction" />
    <xs:enumeration value="auto" />
    <xs:enumeration value="auto racing" />
    <xs:enumeration value="aviation" />
    <xs:enumeration value="awards" />
    <xs:enumeration value="badminton" />
    <xs:enumeration value="ballet" />
    <xs:enumeration value="baseball" />
    <xs:enumeration value="basketball" />
    <xs:enumeration value="3x3 basketball" />
    <xs:enumeration value="beach soccer" />
    <xs:enumeration value="beach volleyball" />
    <xs:enumeration value="biathlon" />
    <xs:enumeration value="bicycle" />
    <xs:enumeration value="bicycle racing" />
    <xs:enumeration value="billiards" />
    <xs:enumeration value="biography" />
    <xs:enumeration value="blackjack" />
    <xs:enumeration value="bmx racing" />
    <xs:enumeration value="boat" />
    <xs:enumeration value="boat racing" />
    <xs:enumeration value="bobsled" />
    <xs:enumeration value="bodybuilding" />
    <xs:enumeration value="bowling" />
    <xs:enumeration value="boxing" />
    <xs:enumeration value="bullfighting" />
    <xs:enumeration value="bus./financial" />
    <xs:enumeration value="canoe" />
    <xs:enumeration value="card games" />
    <xs:enumeration value="ceremony" />
    <xs:enumeration value="cheerleading" />
    <xs:enumeration value="children" />
    <xs:enumeration value="children-music" />
    <xs:enumeration value="children-special" />
    <xs:enumeration value="children-talk" />
    <xs:enumeration value="collectibles" />
    <xs:enumeration value="comedy" />
    <xs:enumeration value="comedy drama" />
    <xs:enumeration value="community" />
    <xs:enumeration value="computers" />
    <xs:enumeration value="canoe/kayak" />
    <xs:enumeration value="consumer" />
    <xs:enumeration value="cooking" />
    <xs:enumeration value="cricket" />
    <xs:enumeration value="crime" />
    <xs:enumeration value="crime drama" />
    <xs:enumeration value="curling" />
    <xs:enumeration value="cycling" />
    <xs:enumeration value="dance" />
    <xs:enumeration value="dark comedy" />
    <xs:enumeration value="darts" />
    <xs:enumeration value="debate" />
    <xs:enumeration value="diving" />
    <xs:enumeration value="docudrama" />
    <xs:enumeration value="documentary" />
    <xs:enumeration value="dog racing" />
    <xs:enumeration value="dog show" />
    <xs:enumeration value="dog sled" />
    <xs:enumeration value="drag racing" />
    <xs:enumeration value="drama" />
    <xs:enumeration value="educational" />
    <xs:enumeration value="entertainment" />
    <xs:enumeration value="environment" />
    <xs:enumeration value="equestrian" />
    <xs:enumeration value="erotic" />
    <xs:enumeration value="event" />
    <xs:enumeration value="exercise" />
    <xs:enumeration value="fantasy" />
    <xs:enumeration value="faith" />
    <xs:enumeration value="fashion" />
    <xs:enumeration value="fencing" />
    <xs:enumeration value="field hockey" />
    <xs:enumeration value="figure skating" />
    <xs:enumeration value="fishing" />
    <xs:enumeration value="football" />
    <xs:enumeration value="food" />
    <xs:enumeration value="fundraiser" />
    <xs:enumeration value="gaelic football" />
    <xs:enumeration value="game show" />
    <xs:enumeration value="gaming" />
    <xs:enumeration value="gay/lesbian" />
    <xs:enumeration value="golf" />
    <xs:enumeration value="gymnastics" />
    <xs:enumeration value="handball" />
    <xs:enumeration value="health" />
    <xs:enumeration value="historical drama" />
    <xs:enumeration value="history" />
    <xs:enumeration value="hockey" />
    <xs:enumeration value="holiday" />
    <xs:enumeration value="holiday music" />
    <xs:enumeration value="holiday music special" />
    <xs:enumeration value="holiday special" />
    <xs:enumeration value="holiday-children" />
    <xs:enumeration value="holiday-children special" />
    <xs:enumeration value="home improvement" />
    <xs:enumeration value="horror" />
    <xs:enumeration value="horse" />
    <xs:enumeration value="house/garden" />
    <xs:enumeration value="how-to" />
    <xs:enumeration value="hunting" />
    <xs:enumeration value="hurling" />
    <xs:enumeration value="hydroplane racing" />
    <xs:enumeration value="indoor soccer" />
    <xs:enumeration value="interview" />
    <xs:enumeration value="intl soccer" />
    <xs:enumeration value="judo" />
    <xs:enumeration value="karate" />
    <xs:enumeration value="kayaking" />
    <xs:enumeration value="lacrosse" />
    <xs:enumeration value="law" />
    <xs:enumeration value="live" />
    <xs:enumeration value="luge" />
    <xs:enumeration value="martial arts" />
    <xs:enumeration value="medical" />
    <xs:enumeration value="military" />
    <xs:enumeration value="miniseries" />
    <xs:enumeration value="mixed martial arts" />
    <xs:enumeration value="modern pentathlon" />
    <xs:enumeration value="motorcycle" />
    <xs:enumeration value="motorcycle racing" />
    <xs:enumeration value="motorsports" />
    <xs:enumeration value="mountain biking" />
    <xs:enumeration value="music" />
    <xs:enumeration value="music special" />
    <xs:enumeration value="music talk" />
    <xs:enumeration value="musical" />
    <xs:enumeration value="musical comedy" />
    <xs:enumeration value="mystery" />
    <xs:enumeration value="nature" />
    <xs:enumeration value="news" />
    <xs:enumeration value="newsmagazine" />
    <xs:enumeration value="olympics" />
    <xs:enumeration value="opera" />
    <xs:enumeration value="outdoors" />
    <xs:enumeration value="parade" />
    <xs:enumeration value="paranormal" />
    <xs:enumeration value="parenting" />
    <xs:enumeration value="performing arts" />
    <xs:enumeration value="playoff sports" />
    <xs:enumeration value="poker" />
    <xs:enumeration value="politics" />
    <xs:enumeration value="polo" />
    <xs:enumeration value="pool" />
    <xs:enumeration value="pro wrestling" />
    <xs:enumeration value="public affairs" />
    <xs:enumeration value="racquet" />
    <xs:enumeration value="reality" />
    <xs:enumeration value="religious" />
    <xs:enumeration value="ringuette" />
    <xs:enumeration value="road cycling" />
    <xs:enumeration value="rodeo" />
    <xs:enumeration value="roller derby" />
    <xs:enumeration value="romance" />
    <xs:enumeration value="romantic comedy" />
    <xs:enumeration value="rowing" />
    <xs:enumeration value="rugby" />
    <xs:enumeration value="running" />
    <xs:enumeration value="rhythmic gymnastics" />
    <xs:enumeration value="sailing" />
    <xs:enumeration value="science" />
    <xs:enumeration value="science fiction" />
    <xs:enumeration value="self improvement" />
    <xs:enumeration value="shooting" />
    <xs:enumeration value="shopping" />
    <xs:enumeration value="sitcom" />
    <xs:enumeration value="skateboarding" />
    <xs:enumeration value="skating" />
    <xs:enumeration value="skeleton" />
    <xs:enumeration value="skiing" />
    <xs:enumeration value="snooker" />
    <xs:enumeration value="snowboarding" />
    <xs:enumeration value="snowmobile" />
    <xs:enumeration value="soap" />
    <xs:enumeration value="soap special" />
    <xs:enumeration value="soap talk" />
    <xs:enumeration value="soccer" />
    <xs:enumeration value="softball" />
    <xs:enumeration value="special" />
    <xs:enumeration value="speed skating" />
    <xs:enumeration value="sport climbing" />
    <xs:enumeration value="sports" />
    <xs:enumeration value="sports talk" />
    <xs:enumeration value="squash" />
    <xs:enumeration value="standup" />
    <xs:enumeration value="sumo wrestling" />
    <xs:enumeration value="surfing" />
    <xs:enumeration value="suspense" />
    <xs:enumeration value="swimming" />
    <xs:enumeration value="table tennis" />
    <xs:enumeration value="taekwondo" />
    <xs:enumeration value="talk" />
    <xs:enumeration value="technology" />
    <xs:enumeration value="tennis" />
    <xs:enumeration value="theater" />
    <xs:enumeration value="thriller" />
    <xs:enumeration value="track/field" />
    <xs:enumeration value="track cycling" />
    <xs:enumeration value="travel" />
    <xs:enumeration value="trampoline" />
    <xs:enumeration value="triathlon" />
    <xs:enumeration value="variety" />
    <xs:enumeration value="volleyball" />
    <xs:enumeration value="war" />
    <xs:enumeration value="water polo" />
    <xs:enumeration value="water skiing" />
    <xs:enumeration value="watersports" />
    <xs:enumeration value="weather" />
    <xs:enumeration value="weightlifting" />
    <xs:enumeration value="western" />
    <xs:enumeration value="wrestling" />
    <xs:enumeration value="yacht racing" />
  </xs:restriction>
</xs:simpleType>

<xs:simpleType name="vodType">
  <xs:restriction base="xs:string">
    <xs:enumeration value="AVOD" />
    <xs:enumeration value="SVOD" />
  </xs:restriction>
</xs:simpleType>

<xs:simpleType name="ccPresent">
  <xs:restriction base="xs:string">
    <xs:enumeration value="Y" />
    <xs:enumeration value="N" />
  </xs:restriction>
</xs:simpleType>

<xs:simpleType name="ccExemption">
  <xs:restriction base="xs:string">
    <xs:pattern value="([1-6])*"/>
  </xs:restriction>
</xs:simpleType>

<xs:simpleType name="territory">
  <xs:restriction base="xs:string">
    <xs:enumeration value="CA" />
    <xs:enumeration value="GB" />
    <xs:enumeration value="MX" />
    <xs:enumeration value="US" />  
  </xs:restriction>
</xs:simpleType>

<xs:simpleType name="credits">
  <xs:restriction base="xs:string">
    <xs:enumeration value="actor" />
    <xs:enumeration value="anchor" />
    <xs:enumeration value="director" />
    <xs:enumeration value="host" />
    <xs:enumeration value="narrator" />
    <xs:enumeration value="producer" />
    <xs:enumeration value="screenwriter" />
    <xs:enumeration value="voice" />
    <xs:enumeration value="Actor" />
    <xs:enumeration value="Anchor" />
    <xs:enumeration value="Director" />
    <xs:enumeration value="Host" />
    <xs:enumeration value="Narrator" />
    <xs:enumeration value="Producer" />
    <xs:enumeration value="Screenwriter" />
    <xs:enumeration value="Voice" />   
  </xs:restriction>
</xs:simpleType>

<xs:simpleType name="ImageType">
  <xs:restriction base="xs:string">
    <xs:enumeration value="background_image" />
    <xs:enumeration value="boxcover" />
    <xs:enumeration value="poster" />
  </xs:restriction>
</xs:simpleType>

<xs:simpleType name="packageVersion">
  <xs:restriction base="xs:string">
    <xs:enumeration value="tv1.0" />
  </xs:restriction>
</xs:simpleType>

<xs:simpleType name="requiredValueEmpty">
  <xs:restriction base="xs:string">
    <xs:minLength value="1" />
  </xs:restriction>
</xs:simpleType>

<xs:simpleType name="requiredIntegerEmpty">
  <xs:restriction base="xs:integer">
    <xs:minInclusive value="1" />
  </xs:restriction>
</xs:simpleType>

<xs:simpleType name="audioMaps">
  <xs:restriction base="xs:string">
    <xs:enumeration value="stereoOnly" />
    <xs:enumeration value="surroundOnly" />
    <xs:enumeration value="stereoPlusSurround" />
    <xs:enumeration value="surroundPlusStereo" />
    <xs:enumeration value="" />
  </xs:restriction>
</xs:simpleType>

<xs:simpleType name="cueTypes">
  <xs:restriction base="xs:string">
    <xs:enumeration value="intro" />
    <xs:enumeration value="end" />
    <xs:enumeration value="behind the scenes" />
    <xs:enumeration value="recap" />
    <xs:enumeration value="" />
  </xs:restriction>
</xs:simpleType>

<xs:simpleType name="alphaNumeric">
  <xs:restriction base="xs:string">
    <xs:pattern value="([a-zA-Z0-9._-])*"/>
    <xs:maxLength value="125" />
  </xs:restriction>
</xs:simpleType>

<xs:simpleType name="fileExtension">
  <xs:restriction base="alphaNumeric">
    <xs:pattern value=".*jpg|.*mp4|.*scc|.*mov|.*mxf|.*ts|.*mpg|.*mpeg|.*JPG|.*MP4|.*SCC|.*MOV|.*MXF|.*TS|.*MPG|.*MPEG|.*ttml|.*dfxp|.*stl|.*srt|.*vtt|.*webvtt|.*TTML|.*DFXP|.*STL|.*SRT|.*VTT|.*WEBVTT|.*mp3|.*MP3|.*wav|.*WAV|.*ogg|.*OGG|\s{0}"/>
  </xs:restriction>
</xs:simpleType>

  <xs:element name="package">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="provider"/>
        <xs:element ref="language"/>
        <xs:element ref="video"/>
      </xs:sequence>
      <xs:attribute name="version" use="required" type="packageVersion"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="provider" type="xs:string"/>
  <xs:element name="language" type="Language"/>
  <xs:element name="video">
    <xs:complexType>
      <xs:all>
        <xs:element ref="type"/>
        <xs:element ref="asset_id"/>
        <xs:element ref="original_spoken_language" minOccurs="0"/>
        <xs:element ref="country_of_origin" minOccurs="0"/>
        <xs:element ref="eidr" minOccurs="0"/>
        <xs:element ref="tmsId" minOccurs="0"/>
        <xs:element ref="title"/>
        <xs:element ref="episodeNumber"/>
        <xs:element ref="release_date"/>
        <xs:element ref="licensePeriodStart" minOccurs="0"/>
        <xs:element ref="licensePeriodEnd" minOccurs="0"/>
        <xs:element ref="closedCaptions"/>
        <xs:element ref="closedCaptionsExemption" minOccurs="0"/> 
        <xs:element ref="vodType" minOccurs="0"/>
        <xs:element ref="countries" minOccurs="0"/>
        <xs:element ref="runtime"/>
        <xs:element ref="ratings" minOccurs="0"/>
        <xs:element ref="tags" minOccurs="0"/>     
        <xs:element ref="adBreaks" minOccurs="0"/>
        <xs:element ref="adBreak" minOccurs="0"/>
        <xs:element ref="cuePoints" minOccurs="0"/>
        <xs:element ref="cuePoint" minOccurs="0"/>
        <xs:element ref="cast" minOccurs="0"/>
        <xs:element ref="crew" minOccurs="0"/>
        <xs:element ref="brief_synopsis" minOccurs="0"/>
        <xs:element ref="short_synopsis"/>
        <xs:element ref="long_synopsis" minOccurs="0"/>
        <xs:element ref="playOptions" minOccurs="0"/>
        <xs:element ref="localizations" minOccurs="0"/>
        <xs:element ref="series"/>
        <xs:element ref="season"/>
        <xs:element ref="assets"/>
      </xs:all>
    </xs:complexType>
  </xs:element>
  <xs:element name="type" type="xs:NCName"/>
  <xs:element name="eidr" type="xs:string"/>
  <xs:element name="tmsId" type="xs:string"/>
  <xs:element name="episodeNumber" type="requiredIntegerEmpty"/>
  <xs:element name="runtime" type="requiredIntegerEmpty"/>
  <xs:element name="ratings">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="rating" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="rating">
    <xs:complexType>
      <xs:simpleContent>
        <xs:extension base="Rating">
          <xs:attribute name="reason" use="optional" type="xs:string"/>
          <xs:attribute name="system" use="required" type="ratingSystem"/>
        </xs:extension>
      </xs:simpleContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="tags">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" ref="tag"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="tag" type="xs:string"/>
  <xs:element name="adBreaks">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" ref="adBreak"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="adBreak">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="start_time"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
    <xs:element name="cuePoints">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" ref="cuePoint"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="cuePoint">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="start_time"/>
        <xs:element ref="end_time"/>
      </xs:sequence>
      <xs:attribute name="type" use="required" type="cueTypes"/>
    </xs:complexType>
  </xs:element>  
  <xs:element name="start_time" type="xs:time"/>
  <xs:element name="end_time" type="xs:time"/>
  <xs:element name="original_spoken_language" type="Language"/>
  <xs:element name="country_of_origin" type="Country"/>
  <xs:element name="closedCaptions" type="ccPresent"/>
  <xs:element name="closedCaptionsExemption" type="ccExemption"/>
  <xs:element name="series">
    <xs:complexType>
      <xs:all>
        <xs:element ref="series_id"/>
        <xs:element ref="title"/>
        <xs:element ref="release_date"/>
        <xs:element ref="genres"/>
        <xs:element ref="tags" minOccurs="0"/>
        <xs:element ref="cast" minOccurs="0"/>
        <xs:element ref="crew" minOccurs="0"/>
        <xs:element ref="brief_synopsis" minOccurs="0"/>
        <xs:element ref="short_synopsis"/>
        <xs:element ref="long_synopsis" minOccurs="0"/>
        <xs:element ref="original_spoken_language" minOccurs="0"/>
        <xs:element ref="country_of_origin" minOccurs="0"/>
        <xs:element ref="localizations" minOccurs="0"/>
      </xs:all>
    </xs:complexType>
  </xs:element>
  <xs:element name="genres">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="10" ref="genre"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="genre" type="Genre"/>
  <xs:element name="season">
    <xs:complexType>
      <xs:all>
        <xs:element ref="seasonNumber"/>
        <xs:element ref="season_id"/>
      </xs:all>
    </xs:complexType>
  </xs:element>
  <xs:element name="seasonNumber" type="requiredIntegerEmpty"/>
  <xs:element name="playOptions">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" ref="playOption"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
 <xs:element name="playOption">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="country"/>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="vodType"/>
        <xs:element ref="licensePeriodStart" minOccurs="0" maxOccurs="1"/>
        <xs:element ref="licensePeriodEnd" minOccurs="0" maxOccurs="1"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="vodType" type="vodType"/>
  <xs:element name="localizations">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" ref="localization"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
 <xs:element name="localization">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="title"/>
        <xs:element ref="brief_synopsis" minOccurs="0"/>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="short_synopsis"/>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="long_synopsis"/>
      </xs:sequence>
      <xs:attribute name="name" use="required" type="Language"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="assets">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" ref="asset"/>
      </xs:sequence>
      <xs:attribute name="media_type" use="required" type="xs:NCName"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="asset">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" ref="data_file"/>
      </xs:sequence>
      <xs:attribute name="type" use="required" type="xs:NCName"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="data_file">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" ref="locale"/>
        <xs:element ref="file_name" maxOccurs="unbounded"/>
        <xs:element ref="audio" minOccurs="0" maxOccurs="1"/>
      </xs:sequence>
      <xs:attribute name="role" use="required" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="locale">
    <xs:complexType>
      <xs:attribute name="name" use="required" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="file_name">
    <xs:complexType mixed="true">
      <xs:simpleContent>
        <xs:extension base="fileExtension">
          <xs:attribute name="type" type="ImageType"/>
        </xs:extension>
      </xs:simpleContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="audio" type="audioMaps"/>
  <xs:element name="asset_id" type="requiredValueEmpty"/>
  <xs:element name="series_id" type="requiredValueEmpty"/>
  <xs:element name="season_id" type="requiredValueEmpty"/>
  <xs:element name="title" type="requiredValueEmpty"/>
  <xs:element name="release_date" type="xs:date"/>
  <xs:element name="licensePeriodStart" type="xs:string"/>
  <xs:element name="licensePeriodEnd" type="xs:string"/>
  <xs:element name="countries">
  <xs:complexType>
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="country"/>
    </xs:sequence>
  </xs:complexType>
  </xs:element>    
  <xs:element name="cast">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="cast_member" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="cast_member">
    <xs:complexType>
      <xs:all>
        <xs:element ref="display_name"/>
        <xs:element ref="character_name" minOccurs="0"/>
      </xs:all>
    </xs:complexType>
  </xs:element>
  <xs:element name="character_name" type="xs:string"/>
  <xs:element name="crew">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="crew_member" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="crew_member">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="display_name"/>
        <xs:element ref="roles" minOccurs="0"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="roles">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="role"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="role" type="credits"/>
  <xs:element name="brief_synopsis">
    <xs:annotation>
      <xs:documentation>Required for Linear OTT distribution; otherwise optional. Maximum 100 characters. Distribution-specific requiredness is checked outside this schema.</xs:documentation>
    </xs:annotation>
    <xs:simpleType>
      <xs:restriction base="xs:string">
        <xs:maxLength value="100"/>
      </xs:restriction>
    </xs:simpleType>
  </xs:element>
  <xs:element name="short_synopsis" type="requiredValueEmpty"/>
  <xs:element name="long_synopsis" type="xs:string"/>
  <xs:element name="display_name" type="xs:string"/>
  <xs:element name="country" type="territory"/>  
</xs:schema>
