schemaromset.xsd 33 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  3. <xs:simpleType name="crc">
  4. <xs:restriction base="xs:hexBinary">
  5. <xs:length value="4" />
  6. </xs:restriction>
  7. </xs:simpleType>
  8. <xs:simpleType name="sha1">
  9. <xs:restriction base="xs:hexBinary">
  10. <xs:length value="20" />
  11. </xs:restriction>
  12. </xs:simpleType>
  13. <xs:complexType name="properties">
  14. <xs:sequence>
  15. <xs:element name="property" maxOccurs="unbounded">
  16. <xs:complexType>
  17. <xs:attribute name="name" type="xs:token" use="required" />
  18. <xs:attribute name="value" type="xs:token" use="required" />
  19. </xs:complexType>
  20. </xs:element>
  21. </xs:sequence>
  22. </xs:complexType>
  23. <xs:simpleType name="dump">
  24. <xs:restriction base="xs:token">
  25. <xs:enumeration value="ok" />
  26. <xs:enumeration value="bad" />
  27. <xs:enumeration value="unknown" />
  28. </xs:restriction>
  29. </xs:simpleType>
  30. <xs:complexType name="ic" abstract="true">
  31. <xs:sequence>
  32. <xs:element name="pin" minOccurs="0" maxOccurs="unbounded">
  33. <xs:complexType>
  34. <xs:attribute name="number" type="xs:nonNegativeInteger" use="required" />
  35. <xs:attribute name="function" type="xs:token" use="required" />
  36. </xs:complexType>
  37. </xs:element>
  38. </xs:sequence>
  39. <xs:attribute name="package">
  40. <xs:simpleType>
  41. <xs:restriction base="xs:token">
  42. <!-- UNCOMMENT for type check -->
  43. <!--
  44. <xs:enumeration value="DIP" />
  45. <xs:enumeration value="QPF" />
  46. <xs:enumeration value="epoxy" />
  47. -->
  48. </xs:restriction>
  49. </xs:simpleType>
  50. </xs:attribute>
  51. </xs:complexType>
  52. <xs:complexType name="rom">
  53. <xs:complexContent>
  54. <xs:extension base="ic">
  55. <xs:attribute name="id" type="xs:nonNegativeInteger" />
  56. <xs:attribute name="name" type="xs:token" />
  57. <xs:attribute name="size" type="xs:token" />
  58. <xs:attribute name="file" type="xs:string" />
  59. <xs:attribute name="crc" type="crc" />
  60. <xs:attribute name="sha1" type="sha1" />
  61. </xs:extension>
  62. </xs:complexContent>
  63. </xs:complexType>
  64. <xs:complexType name="ram">
  65. <xs:complexContent>
  66. <xs:extension base="rom">
  67. <xs:attribute name="battery" type="xs:nonNegativeInteger" />
  68. </xs:extension>
  69. </xs:complexContent>
  70. </xs:complexType>
  71. <xs:complexType name="board">
  72. <xs:sequence>
  73. <xs:element name="prg" type="rom" minOccurs="0" maxOccurs="unbounded">
  74. <xs:unique name="prg.pin">
  75. <xs:selector xpath="pin" />
  76. <xs:field xpath="@number" />
  77. </xs:unique>
  78. </xs:element>
  79. <xs:element name="chr" type="rom" minOccurs="0" maxOccurs="unbounded">
  80. <xs:unique name="chr.pin">
  81. <xs:selector xpath="pin" />
  82. <xs:field xpath="@number" />
  83. </xs:unique>
  84. </xs:element>
  85. <xs:element name="vram" type="ram" minOccurs="0" maxOccurs="unbounded">
  86. <xs:unique name="vram.pin">
  87. <xs:selector xpath="pin" />
  88. <xs:field xpath="@number" />
  89. </xs:unique>
  90. </xs:element>
  91. <xs:element name="wram" type="ram" minOccurs="0" maxOccurs="unbounded">
  92. <xs:unique name="wram.pin">
  93. <xs:selector xpath="pin" />
  94. <xs:field xpath="@number" />
  95. </xs:unique>
  96. </xs:element>
  97. <xs:element name="chip" minOccurs="0" maxOccurs="unbounded">
  98. <xs:complexType>
  99. <xs:complexContent>
  100. <xs:extension base="ic">
  101. <xs:sequence>
  102. <xs:element name="sample" minOccurs="0" maxOccurs="unbounded">
  103. <xs:complexType>
  104. <xs:attribute name="id" type="xs:nonNegativeInteger" />
  105. <xs:attribute name="file" type="xs:string" />
  106. </xs:complexType>
  107. </xs:element>
  108. </xs:sequence>
  109. <xs:attribute name="type" type="xs:token" use="required" />
  110. <xs:attribute name="battery" type="xs:nonNegativeInteger" />
  111. </xs:extension>
  112. </xs:complexContent>
  113. </xs:complexType>
  114. <xs:unique name="chip.pin">
  115. <xs:selector xpath="pin" />
  116. <xs:field xpath="@number" />
  117. </xs:unique>
  118. </xs:element>
  119. <xs:element name="cic" minOccurs="0">
  120. <xs:complexType>
  121. <xs:attribute name="type" type="xs:token" use="required" />
  122. </xs:complexType>
  123. </xs:element>
  124. <xs:element name="pad" minOccurs="0">
  125. <xs:complexType>
  126. <xs:attribute name="h" use="required">
  127. <xs:simpleType>
  128. <xs:restriction base="xs:integer">
  129. <xs:minInclusive value="0" />
  130. <xs:maxInclusive value="1" />
  131. </xs:restriction>
  132. </xs:simpleType>
  133. </xs:attribute>
  134. <xs:attribute name="v" use="required">
  135. <xs:simpleType>
  136. <xs:restriction base="xs:integer">
  137. <xs:minInclusive value="0" />
  138. <xs:maxInclusive value="1" />
  139. </xs:restriction>
  140. </xs:simpleType>
  141. </xs:attribute>
  142. </xs:complexType>
  143. </xs:element>
  144. </xs:sequence>
  145. <xs:attribute name="type">
  146. <xs:simpleType>
  147. <xs:restriction base="xs:token">
  148. <!-- UNCOMMENT for type check -->
  149. <!--
  150. <xs:enumeration value="ACCLAIM-AOROM" />
  151. <xs:enumeration value="ACCLAIM-MC-ACC" />
  152. <xs:enumeration value="ACCLAIM-TLROM" />
  153. <xs:enumeration value="AGCI-47516" />
  154. <xs:enumeration value="AGCI-50282" />
  155. <xs:enumeration value="AVE-74*161" />
  156. <xs:enumeration value="AVE-MB-91" />
  157. <xs:enumeration value="AVE-NINA-01" />
  158. <xs:enumeration value="AVE-NINA-02" />
  159. <xs:enumeration value="AVE-NINA-03" />
  160. <xs:enumeration value="AVE-NINA-06" />
  161. <xs:enumeration value="AVE-NINA-07" />
  162. <xs:enumeration value="BANDAI-74*161/161/32" />
  163. <xs:enumeration value="BANDAI-CNROM" />
  164. <xs:enumeration value="BANDAI-FCG-1" />
  165. <xs:enumeration value="BANDAI-FCG-2" />
  166. <xs:enumeration value="BANDAI-GNROM" />
  167. <xs:enumeration value="BANDAI-JUMP2" />
  168. <xs:enumeration value="BANDAI-LZ93D50+24C01" />
  169. <xs:enumeration value="BANDAI-LZ93D50+24C02" />
  170. <xs:enumeration value="BANDAI-NROM-128" />
  171. <xs:enumeration value="BANDAI-NROM-256" />
  172. <xs:enumeration value="BANDAI-PT-554" />
  173. <xs:enumeration value="BMC-190IN1" />
  174. <xs:enumeration value="BMC-42IN1RESETSWITCH" />
  175. <xs:enumeration value="BMC-64IN1NOREPEAT" />
  176. <xs:enumeration value="BMC-70IN1" />
  177. <xs:enumeration value="BMC-70IN1B" />
  178. <xs:enumeration value="BMC-8157" />
  179. <xs:enumeration value="BMC-A65AS" />
  180. <xs:enumeration value="BMC-BS-5" />
  181. <xs:enumeration value="BMC-D1038" />
  182. <xs:enumeration value="BMC-FK23C" />
  183. <xs:enumeration value="BMC-GHOSTBUSTERS63IN1" />
  184. <xs:enumeration value="BMC-GS-2004" />
  185. <xs:enumeration value="BMC-GS-2013" />
  186. <xs:enumeration value="BMC-N625092" />
  187. <xs:enumeration value="BMC-NOVELDIAMOND9999999IN1" />
  188. <xs:enumeration value="BMC-SUPER24IN1SC03" />
  189. <xs:enumeration value="BMC-SUPERHIK8IN1" />
  190. <xs:enumeration value="BMC-SUPERVISION16IN1" />
  191. <xs:enumeration value="BMC-T-262" />
  192. <xs:enumeration value="BMC-WS" />
  193. <xs:enumeration value="BTL-MARIO1-MALEE2" />
  194. <xs:enumeration value="CAMERICA-ALGN" />
  195. <xs:enumeration value="CAMERICA-ALGQ" />
  196. <xs:enumeration value="CAMERICA-BF9093" />
  197. <xs:enumeration value="CAMERICA-BF9096" />
  198. <xs:enumeration value="CAMERICA-BF9097" />
  199. <xs:enumeration value="CAMERICA-GAMEGENIE" />
  200. <xs:enumeration value="COLORDREAMS-74*377" />
  201. <xs:enumeration value="DREAMTECH01" />
  202. <xs:enumeration value="HVC-AMROM" />
  203. <xs:enumeration value="HVC-AN1ROM" />
  204. <xs:enumeration value="HVC-ANROM" />
  205. <xs:enumeration value="HVC-AOROM" />
  206. <xs:enumeration value="HVC-BNROM" />
  207. <xs:enumeration value="HVC-CNROM" />
  208. <xs:enumeration value="HVC-CPROM" />
  209. <xs:enumeration value="HVC-DE1ROM" />
  210. <xs:enumeration value="HVC-DEROM" />
  211. <xs:enumeration value="HVC-DRROM" />
  212. <xs:enumeration value="HVC-EKROM" />
  213. <xs:enumeration value="HVC-ELROM" />
  214. <xs:enumeration value="HVC-ETROM" />
  215. <xs:enumeration value="HVC-EWROM" />
  216. <xs:enumeration value="HVC-FAMILYBASIC" />
  217. <xs:enumeration value="HVC-FJROM" />
  218. <xs:enumeration value="HVC-FKROM" />
  219. <xs:enumeration value="HVC-GNROM" />
  220. <xs:enumeration value="HVC-HKROM" />
  221. <xs:enumeration value="HVC-HROM" />
  222. <xs:enumeration value="HVC-JLROM" />
  223. <xs:enumeration value="HVC-JSROM" />
  224. <xs:enumeration value="HVC-MHROM" />
  225. <xs:enumeration value="HVC-NROM" />
  226. <xs:enumeration value="HVC-NROM-128" />
  227. <xs:enumeration value="HVC-NROM-256" />
  228. <xs:enumeration value="HVC-NTBROM" />
  229. <xs:enumeration value="HVC-PEEOROM" />
  230. <xs:enumeration value="HVC-PNROM" />
  231. <xs:enumeration value="HVC-RROM" />
  232. <xs:enumeration value="HVC-RROM-128" />
  233. <xs:enumeration value="HVC-SAROM" />
  234. <xs:enumeration value="HVC-SBROM" />
  235. <xs:enumeration value="HVC-SC1ROM" />
  236. <xs:enumeration value="HVC-SCROM" />
  237. <xs:enumeration value="HVC-SEROM" />
  238. <xs:enumeration value="HVC-SF1ROM" />
  239. <xs:enumeration value="HVC-SFROM" />
  240. <xs:enumeration value="HVC-SGROM" />
  241. <xs:enumeration value="HVC-SH1ROM" />
  242. <xs:enumeration value="HVC-SHROM" />
  243. <xs:enumeration value="HVC-SJROM" />
  244. <xs:enumeration value="HVC-SKROM" />
  245. <xs:enumeration value="HVC-SL1ROM" />
  246. <xs:enumeration value="HVC-SL2ROM" />
  247. <xs:enumeration value="HVC-SL3ROM" />
  248. <xs:enumeration value="HVC-SLROM" />
  249. <xs:enumeration value="HVC-SLRROM" />
  250. <xs:enumeration value="HVC-SNROM" />
  251. <xs:enumeration value="HVC-SOROM" />
  252. <xs:enumeration value="HVC-SROM" />
  253. <xs:enumeration value="HVC-STROM" />
  254. <xs:enumeration value="HVC-SUROM" />
  255. <xs:enumeration value="HVC-SXROM" />
  256. <xs:enumeration value="HVC-TBROM" />
  257. <xs:enumeration value="HVC-TEROM" />
  258. <xs:enumeration value="HVC-TFROM" />
  259. <xs:enumeration value="HVC-TGROM" />
  260. <xs:enumeration value="HVC-TKROM" />
  261. <xs:enumeration value="HVC-TKSROM" />
  262. <xs:enumeration value="HVC-TL1ROM" />
  263. <xs:enumeration value="HVC-TL2ROM" />
  264. <xs:enumeration value="HVC-TLROM" />
  265. <xs:enumeration value="HVC-TLSROM" />
  266. <xs:enumeration value="HVC-TNROM" />
  267. <xs:enumeration value="HVC-TQROM" />
  268. <xs:enumeration value="HVC-TR1ROM" />
  269. <xs:enumeration value="HVC-TSROM" />
  270. <xs:enumeration value="HVC-TVROM" />
  271. <xs:enumeration value="HVC-UN1ROM" />
  272. <xs:enumeration value="HVC-UNROM" />
  273. <xs:enumeration value="HVC-UOROM" />
  274. <xs:enumeration value="IREM-74*161/161/21/138" />
  275. <xs:enumeration value="IREM-BNROM" />
  276. <xs:enumeration value="IREM-G101" />
  277. <xs:enumeration value="IREM-G101-A" />
  278. <xs:enumeration value="IREM-G101-B" />
  279. <xs:enumeration value="IREM-HOLYDIVER" />
  280. <xs:enumeration value="IREM-NROM-128" />
  281. <xs:enumeration value="IREM-NROM-256" />
  282. <xs:enumeration value="IREM-UNROM" />
  283. <xs:enumeration value="JALECO-JF-01" />
  284. <xs:enumeration value="JALECO-JF-02" />
  285. <xs:enumeration value="JALECO-JF-03" />
  286. <xs:enumeration value="JALECO-JF-04" />
  287. <xs:enumeration value="JALECO-JF-05" />
  288. <xs:enumeration value="JALECO-JF-06" />
  289. <xs:enumeration value="JALECO-JF-07" />
  290. <xs:enumeration value="JALECO-JF-08" />
  291. <xs:enumeration value="JALECO-JF-09" />
  292. <xs:enumeration value="JALECO-JF-10" />
  293. <xs:enumeration value="JALECO-JF-11" />
  294. <xs:enumeration value="JALECO-JF-12" />
  295. <xs:enumeration value="JALECO-JF-13" />
  296. <xs:enumeration value="JALECO-JF-14" />
  297. <xs:enumeration value="JALECO-JF-15" />
  298. <xs:enumeration value="JALECO-JF-16" />
  299. <xs:enumeration value="JALECO-JF-17" />
  300. <xs:enumeration value="JALECO-JF-18" />
  301. <xs:enumeration value="JALECO-JF-19" />
  302. <xs:enumeration value="JALECO-JF-20" />
  303. <xs:enumeration value="JALECO-JF-21" />
  304. <xs:enumeration value="JALECO-JF-22" />
  305. <xs:enumeration value="JALECO-JF-23" />
  306. <xs:enumeration value="JALECO-JF-24" />
  307. <xs:enumeration value="JALECO-JF-25" />
  308. <xs:enumeration value="JALECO-JF-26" />
  309. <xs:enumeration value="JALECO-JF-27" />
  310. <xs:enumeration value="JALECO-JF-28" />
  311. <xs:enumeration value="JALECO-JF-29" />
  312. <xs:enumeration value="JALECO-JF-30" />
  313. <xs:enumeration value="JALECO-JF-31" />
  314. <xs:enumeration value="JALECO-JF-32" />
  315. <xs:enumeration value="JALECO-JF-33" />
  316. <xs:enumeration value="JALECO-JF-34" />
  317. <xs:enumeration value="JALECO-JF-35" />
  318. <xs:enumeration value="JALECO-JF-36" />
  319. <xs:enumeration value="JALECO-JF-37" />
  320. <xs:enumeration value="JALECO-JF-38" />
  321. <xs:enumeration value="JALECO-JF-39" />
  322. <xs:enumeration value="JALECO-JF-40" />
  323. <xs:enumeration value="JALECO-JF-41" />
  324. <xs:enumeration value="KONAMI-74*139/74" />
  325. <xs:enumeration value="KONAMI-CNROM" />
  326. <xs:enumeration value="KONAMI-NROM-128" />
  327. <xs:enumeration value="KONAMI-SLROM" />
  328. <xs:enumeration value="KONAMI-TLROM" />
  329. <xs:enumeration value="KONAMI-UNROM" />
  330. <xs:enumeration value="KONAMI-VRC-1" />
  331. <xs:enumeration value="KONAMI-VRC-2" />
  332. <xs:enumeration value="KONAMI-VRC-3" />
  333. <xs:enumeration value="KONAMI-VRC-4" />
  334. <xs:enumeration value="KONAMI-VRC-6" />
  335. <xs:enumeration value="KONAMI-VRC-7" />
  336. <xs:enumeration value="MLT-ACTION52" />
  337. <xs:enumeration value="MLT-CALTRON6IN1" />
  338. <xs:enumeration value="MLT-MAXI15" />
  339. <xs:enumeration value="NAMCOT-163" />
  340. <xs:enumeration value="NAMCOT-3301" />
  341. <xs:enumeration value="NAMCOT-3302" />
  342. <xs:enumeration value="NAMCOT-3303" />
  343. <xs:enumeration value="NAMCOT-3305" />
  344. <xs:enumeration value="NAMCOT-3311" />
  345. <xs:enumeration value="NAMCOT-3401" />
  346. <xs:enumeration value="NAMCOT-3405" />
  347. <xs:enumeration value="NAMCOT-3406" />
  348. <xs:enumeration value="NAMCOT-3407" />
  349. <xs:enumeration value="NAMCOT-3411" />
  350. <xs:enumeration value="NAMCOT-3413" />
  351. <xs:enumeration value="NAMCOT-3414" />
  352. <xs:enumeration value="NAMCOT-3415" />
  353. <xs:enumeration value="NAMCOT-3416" />
  354. <xs:enumeration value="NAMCOT-3417" />
  355. <xs:enumeration value="NAMCOT-3425" />
  356. <xs:enumeration value="NAMCOT-3433" />
  357. <xs:enumeration value="NAMCOT-3443" />
  358. <xs:enumeration value="NAMCOT-3446" />
  359. <xs:enumeration value="NAMCOT-3451" />
  360. <xs:enumeration value="NES-AMROM" />
  361. <xs:enumeration value="NES-AN1ROM" />
  362. <xs:enumeration value="NES-ANROM" />
  363. <xs:enumeration value="NES-AOROM" />
  364. <xs:enumeration value="NES-B4" />
  365. <xs:enumeration value="NES-BNROM" />
  366. <xs:enumeration value="NES-BTR" />
  367. <xs:enumeration value="NES-CNROM" />
  368. <xs:enumeration value="NES-CPROM" />
  369. <xs:enumeration value="NES-DE1ROM" />
  370. <xs:enumeration value="NES-DEROM" />
  371. <xs:enumeration value="NES-DRROM" />
  372. <xs:enumeration value="NES-EKROM" />
  373. <xs:enumeration value="NES-ELROM" />
  374. <xs:enumeration value="NES-ETROM" />
  375. <xs:enumeration value="NES-EVENT" />
  376. <xs:enumeration value="NES-EWROM" />
  377. <xs:enumeration value="NES-FJROM" />
  378. <xs:enumeration value="NES-FKROM" />
  379. <xs:enumeration value="NES-GNROM" />
  380. <xs:enumeration value="NES-HKROM" />
  381. <xs:enumeration value="NES-HROM" />
  382. <xs:enumeration value="NES-JLROM" />
  383. <xs:enumeration value="NES-JSROM" />
  384. <xs:enumeration value="NES-MHROM" />
  385. <xs:enumeration value="NES-NROM" />
  386. <xs:enumeration value="NES-NROM-128" />
  387. <xs:enumeration value="NES-NROM-256" />
  388. <xs:enumeration value="NES-NTBROM" />
  389. <xs:enumeration value="NES-PEEOROM" />
  390. <xs:enumeration value="NES-PNROM" />
  391. <xs:enumeration value="NES-QJ" />
  392. <xs:enumeration value="NES-RROM" />
  393. <xs:enumeration value="NES-RROM-128" />
  394. <xs:enumeration value="NES-SAROM" />
  395. <xs:enumeration value="NES-SBROM" />
  396. <xs:enumeration value="NES-SC1ROM" />
  397. <xs:enumeration value="NES-SCROM" />
  398. <xs:enumeration value="NES-SEROM" />
  399. <xs:enumeration value="NES-SF1ROM" />
  400. <xs:enumeration value="NES-SFROM" />
  401. <xs:enumeration value="NES-SGROM" />
  402. <xs:enumeration value="NES-SH1ROM" />
  403. <xs:enumeration value="NES-SHROM" />
  404. <xs:enumeration value="NES-SJROM" />
  405. <xs:enumeration value="NES-SKROM" />
  406. <xs:enumeration value="NES-SL1ROM" />
  407. <xs:enumeration value="NES-SL2ROM" />
  408. <xs:enumeration value="NES-SL3ROM" />
  409. <xs:enumeration value="NES-SLROM" />
  410. <xs:enumeration value="NES-SLRROM" />
  411. <xs:enumeration value="NES-SNROM" />
  412. <xs:enumeration value="NES-SOROM" />
  413. <xs:enumeration value="NES-SROM" />
  414. <xs:enumeration value="NES-STROM" />
  415. <xs:enumeration value="NES-SUROM" />
  416. <xs:enumeration value="NES-SXROM" />
  417. <xs:enumeration value="NES-TBROM" />
  418. <xs:enumeration value="NES-TEROM" />
  419. <xs:enumeration value="NES-TFROM" />
  420. <xs:enumeration value="NES-TGROM" />
  421. <xs:enumeration value="NES-TKROM" />
  422. <xs:enumeration value="NES-TKSROM" />
  423. <xs:enumeration value="NES-TL1ROM" />
  424. <xs:enumeration value="NES-TL2ROM" />
  425. <xs:enumeration value="NES-TLROM" />
  426. <xs:enumeration value="NES-TLSROM" />
  427. <xs:enumeration value="NES-TNROM" />
  428. <xs:enumeration value="NES-TQROM" />
  429. <xs:enumeration value="NES-TR1ROM" />
  430. <xs:enumeration value="NES-TSROM" />
  431. <xs:enumeration value="NES-TVROM" />
  432. <xs:enumeration value="NES-UN1ROM" />
  433. <xs:enumeration value="NES-UNROM" />
  434. <xs:enumeration value="NES-UOROM" />
  435. <xs:enumeration value="NES-WH" />
  436. <xs:enumeration value="NTDEC-N715062" />
  437. <xs:enumeration value="PAL-MH" />
  438. <xs:enumeration value="PAL-ZZ" />
  439. <xs:enumeration value="SACHEN-8259A" />
  440. <xs:enumeration value="SACHEN-8259B" />
  441. <xs:enumeration value="SACHEN-8259C" />
  442. <xs:enumeration value="SACHEN-8259D" />
  443. <xs:enumeration value="SACHEN-CNROM" />
  444. <xs:enumeration value="SETA-NROM-128" />
  445. <xs:enumeration value="SUNSOFT-1" />
  446. <xs:enumeration value="SUNSOFT-2" />
  447. <xs:enumeration value="SUNSOFT-3" />
  448. <xs:enumeration value="SUNSOFT-4" />
  449. <xs:enumeration value="SUNSOFT-5B" />
  450. <xs:enumeration value="SUNSOFT-FME-7" />
  451. <xs:enumeration value="SUNSOFT-NROM-256" />
  452. <xs:enumeration value="TAITO-74*139/74" />
  453. <xs:enumeration value="TAITO-74*161/161/32" />
  454. <xs:enumeration value="TAITO-CNROM" />
  455. <xs:enumeration value="TAITO-NROM-128" />
  456. <xs:enumeration value="TAITO-NROM-256" />
  457. <xs:enumeration value="TAITO-TC0190FMC" />
  458. <xs:enumeration value="TAITO-TC0190FMC+PAL16R4" />
  459. <xs:enumeration value="TAITO-UNROM" />
  460. <xs:enumeration value="TAITO-X1-005" />
  461. <xs:enumeration value="TAITO-X1-017" />
  462. <xs:enumeration value="TENGEN-800002" />
  463. <xs:enumeration value="TENGEN-800003" />
  464. <xs:enumeration value="TENGEN-800004" />
  465. <xs:enumeration value="TENGEN-800008" />
  466. <xs:enumeration value="TENGEN-800030" />
  467. <xs:enumeration value="TENGEN-800032" />
  468. <xs:enumeration value="TENGEN-800037" />
  469. <xs:enumeration value="TENGEN-800042" />
  470. <xs:enumeration value="UNL-22211" />
  471. <xs:enumeration value="UNL-603-5052" />
  472. <xs:enumeration value="UNL-8237" />
  473. <xs:enumeration value="UNL-A9746" />
  474. <xs:enumeration value="UNL-AX5705" />
  475. <xs:enumeration value="UNL-CC-21" />
  476. <xs:enumeration value="UNL-EDU2000" />
  477. <xs:enumeration value="UNL-H2288" />
  478. <xs:enumeration value="UNL-KOF97" />
  479. <xs:enumeration value="UNL-KS7032" />
  480. <xs:enumeration value="UNL-N625092" />
  481. <xs:enumeration value="UNL-SA-0036" />
  482. <xs:enumeration value="UNL-SA-0037" />
  483. <xs:enumeration value="UNL-SA-016-1M" />
  484. <xs:enumeration value="UNL-SA-72007" />
  485. <xs:enumeration value="UNL-SA-72008" />
  486. <xs:enumeration value="UNL-SA-NROM" />
  487. <xs:enumeration value="UNL-SACHEN-74LS374N" />
  488. <xs:enumeration value="UNL-SACHEN-8259A" />
  489. <xs:enumeration value="UNL-SACHEN-8259B" />
  490. <xs:enumeration value="UNL-SACHEN-8259C" />
  491. <xs:enumeration value="UNL-SACHEN-8259D" />
  492. <xs:enumeration value="UNL-SHERO" />
  493. <xs:enumeration value="UNL-SL1632" />
  494. <xs:enumeration value="UNL-SMB2J" />
  495. <xs:enumeration value="UNL-T-230" />
  496. <xs:enumeration value="UNL-TC-U01-1.5M" />
  497. <xs:enumeration value="UNL-TEK90" />
  498. <xs:enumeration value="UNL-TF1201" />
  499. <xs:enumeration value="VIRGIN-SNROM" />
  500. -->
  501. </xs:restriction>
  502. </xs:simpleType>
  503. </xs:attribute>
  504. <xs:attribute name="pcb" type="xs:token" />
  505. <xs:attribute name="mapper">
  506. <xs:simpleType>
  507. <xs:restriction base="xs:integer">
  508. <xs:minInclusive value="0" />
  509. <xs:maxInclusive value="255" />
  510. </xs:restriction>
  511. </xs:simpleType>
  512. </xs:attribute>
  513. </xs:complexType>
  514. <xs:element name="romset">
  515. <xs:complexType>
  516. <xs:sequence>
  517. <xs:element name="game" minOccurs="0" maxOccurs="unbounded">
  518. <xs:complexType>
  519. <xs:sequence>
  520. <xs:element name="peripherals" minOccurs="0">
  521. <xs:complexType>
  522. <xs:sequence>
  523. <xs:element name="device" maxOccurs="unbounded">
  524. <xs:complexType>
  525. <xs:attribute name="type" use="required">
  526. <xs:simpleType>
  527. <xs:restriction base="xs:token">
  528. <!-- UNCOMMENT for type check -->
  529. <!--
  530. <xs:enumeration value="3dglasses" />
  531. <xs:enumeration value="arkanoid" />
  532. <xs:enumeration value="bandaihypershot" />
  533. <xs:enumeration value="barcodeworld" />
  534. <xs:enumeration value="crazyclimber" />
  535. <xs:enumeration value="doremikko" />
  536. <xs:enumeration value="excitingboxing" />
  537. <xs:enumeration value="familykeyboard" />
  538. <xs:enumeration value="familyfunfitness" />
  539. <xs:enumeration value="familytrainer" />
  540. <xs:enumeration value="fourplayer" />
  541. <xs:enumeration value="horitrack" />
  542. <xs:enumeration value="konamihypershot" />
  543. <xs:enumeration value="mahjong" />
  544. <xs:enumeration value="miraclepiano" />
  545. <xs:enumeration value="oekakidstablet" />
  546. <xs:enumeration value="pachinko" />
  547. <xs:enumeration value="partytap" />
  548. <xs:enumeration value="pokkunmoguraa" />
  549. <xs:enumeration value="powerglove" />
  550. <xs:enumeration value="powerpad" />
  551. <xs:enumeration value="rob" />
  552. <xs:enumeration value="suborkeyboard" />
  553. <xs:enumeration value="subormouse" />
  554. <xs:enumeration value="topriderbike" />
  555. <xs:enumeration value="turbofile" />
  556. <xs:enumeration value="zapper" />
  557. -->
  558. </xs:restriction>
  559. </xs:simpleType>
  560. </xs:attribute>
  561. <xs:attribute name="name" type="xs:token" />
  562. </xs:complexType>
  563. </xs:element>
  564. </xs:sequence>
  565. </xs:complexType>
  566. <xs:unique name="device.type">
  567. <xs:selector xpath="device" />
  568. <xs:field xpath="@type" />
  569. </xs:unique>
  570. </xs:element>
  571. <xs:choice>
  572. <xs:element name="cartridge" maxOccurs="unbounded">
  573. <xs:complexType>
  574. <xs:sequence>
  575. <xs:element name="board" type="board">
  576. <xs:unique name="cartridge.prg.id">
  577. <xs:selector xpath="prg" />
  578. <xs:field xpath="@id" />
  579. </xs:unique>
  580. <xs:unique name="cartridge.chr.id">
  581. <xs:selector xpath="chr" />
  582. <xs:field xpath="@id" />
  583. </xs:unique>
  584. <xs:unique name="cartridge.vram.id">
  585. <xs:selector xpath="vram" />
  586. <xs:field xpath="@id" />
  587. </xs:unique>
  588. <xs:unique name="cartridge.wram.id">
  589. <xs:selector xpath="wram" />
  590. <xs:field xpath="@id" />
  591. </xs:unique>
  592. </xs:element>
  593. <xs:element name="properties" type="properties" minOccurs="0" />
  594. </xs:sequence>
  595. <xs:attribute name="system">
  596. <xs:simpleType>
  597. <xs:restriction base="xs:token">
  598. <xs:enumeration value="Famicom" />
  599. <xs:enumeration value="NES-NTSC" />
  600. <xs:enumeration value="NES-PAL" />
  601. <xs:enumeration value="NES-PAL-A" />
  602. <xs:enumeration value="NES-PAL-B" />
  603. <xs:enumeration value="Dendy" />
  604. </xs:restriction>
  605. </xs:simpleType>
  606. </xs:attribute>
  607. <xs:attribute name="revision" type="xs:token" />
  608. <xs:attribute name="dumper" type="xs:token" />
  609. <xs:attribute name="datedumped" type="xs:token" />
  610. <xs:attribute name="dump" type="dump" default="ok" />
  611. <xs:attribute name="crc" type="crc" />
  612. <xs:attribute name="sha1" type="sha1" />
  613. </xs:complexType>
  614. </xs:element>
  615. <xs:element name="arcade" maxOccurs="unbounded">
  616. <xs:complexType>
  617. <xs:sequence>
  618. <xs:element name="board" type="board">
  619. <xs:unique name="arcade.prg.id">
  620. <xs:selector xpath="prg" />
  621. <xs:field xpath="@id" />
  622. </xs:unique>
  623. <xs:unique name="arcade.chr.id">
  624. <xs:selector xpath="chr" />
  625. <xs:field xpath="@id" />
  626. </xs:unique>
  627. <xs:unique name="arcade.vram.id">
  628. <xs:selector xpath="vram" />
  629. <xs:field xpath="@id" />
  630. </xs:unique>
  631. <xs:unique name="arcade.wram.id">
  632. <xs:selector xpath="wram" />
  633. <xs:field xpath="@id" />
  634. </xs:unique>
  635. </xs:element>
  636. <xs:element name="properties" type="properties" minOccurs="0" />
  637. </xs:sequence>
  638. <xs:attribute name="system" use="required">
  639. <xs:simpleType>
  640. <xs:restriction base="xs:token">
  641. <xs:enumeration value="VS-Unisystem" />
  642. <xs:enumeration value="VS-Dualsystem" />
  643. <xs:enumeration value="Playchoice-10" />
  644. </xs:restriction>
  645. </xs:simpleType>
  646. </xs:attribute>
  647. <xs:attribute name="revision" type="xs:token" />
  648. <xs:attribute name="ppu">
  649. <xs:simpleType>
  650. <xs:restriction base="xs:token">
  651. <xs:enumeration value="RP2C03B" />
  652. <xs:enumeration value="RP2C03G" />
  653. <xs:enumeration value="RP2C04-0001" />
  654. <xs:enumeration value="RP2C04-0002" />
  655. <xs:enumeration value="RP2C04-0003" />
  656. <xs:enumeration value="RP2C04-0004" />
  657. <xs:enumeration value="RC2C03B" />
  658. <xs:enumeration value="RC2C03C" />
  659. <xs:enumeration value="RC2C05-01" />
  660. <xs:enumeration value="RC2C05-02" />
  661. <xs:enumeration value="RC2C05-03" />
  662. <xs:enumeration value="RC2C05-04" />
  663. <xs:enumeration value="RC2C05-05" />
  664. </xs:restriction>
  665. </xs:simpleType>
  666. </xs:attribute>
  667. <xs:attribute name="dumper" type="xs:token" />
  668. <xs:attribute name="datedumped" type="xs:token" />
  669. <xs:attribute name="dump" type="dump" default="ok" />
  670. <xs:attribute name="crc" type="crc" />
  671. <xs:attribute name="sha1" type="sha1" />
  672. </xs:complexType>
  673. </xs:element>
  674. </xs:choice>
  675. </xs:sequence>
  676. <xs:attribute name="name" type="xs:token" />
  677. <xs:attribute name="altname" type="xs:token" />
  678. <xs:attribute name="class" type="xs:token" />
  679. <xs:attribute name="subclass" type="xs:token" />
  680. <xs:attribute name="catalog" type="xs:token" />
  681. <xs:attribute name="publisher" type="xs:token" />
  682. <xs:attribute name="developer" type="xs:token" />
  683. <xs:attribute name="portdeveloper" type="xs:token" />
  684. <xs:attribute name="region" type="xs:token" />
  685. <xs:attribute name="players" type="xs:positiveInteger" />
  686. <xs:attribute name="date" type="xs:token" />
  687. </xs:complexType>
  688. </xs:element>
  689. </xs:sequence>
  690. <xs:attribute name="version" type="xs:token" fixed="1.0" use="required" />
  691. <xs:attribute name="conformance" default="strict">
  692. <xs:simpleType>
  693. <xs:restriction base="xs:token">
  694. <xs:enumeration value="strict" />
  695. <xs:enumeration value="loose" />
  696. </xs:restriction>
  697. </xs:simpleType>
  698. </xs:attribute>
  699. <xs:attribute name="author" type="xs:token" />
  700. <xs:attribute name="agent" type="xs:token" />
  701. </xs:complexType>
  702. </xs:element>
  703. </xs:schema>