Update SL DTD

This commit is contained in:
Matt Nadareski
2022-11-03 17:04:31 -07:00
parent d35faea5a9
commit 58db62cadd

View File

@@ -28,63 +28,59 @@ namespace SabreTools.DatFiles.Formats
/// <remarks> /// <remarks>
/// TODO: See if there's an updated DTD and then check for required fields /// TODO: See if there's an updated DTD and then check for required fields
/// </remarks> /// </remarks>
private const string SoftwareListDTD = @"<!ELEMENT softwarelist (software+)> private const string SoftwareListDTD = @"<!ELEMENT softwarelist (notes?, software+)>
<!ATTLIST softwarelist name CDATA #REQUIRED> <!ATTLIST softwarelist name CDATA #REQUIRED>
<!ATTLIST softwarelist description CDATA #IMPLIED> <!ATTLIST softwarelist description CDATA #IMPLIED>
<!ELEMENT software (description, year, publisher, info*, sharedfeat*, part*)> <!ELEMENT notes (#PCDATA)>
<!ATTLIST software name CDATA #REQUIRED> <!ELEMENT software (description, year, publisher, notes?, info*, sharedfeat*, part*)>
<!ATTLIST software cloneof CDATA #IMPLIED> <!ATTLIST software name CDATA #REQUIRED>
<!ATTLIST software supported (yes|partial|no) string.Emptyyesstring.Empty> <!ATTLIST software cloneof CDATA #IMPLIED>
<!ELEMENT description (#PCDATA)> <!ATTLIST software supported (yes|partial|no) ""yes"">
<!ELEMENT year (#PCDATA)> <!ELEMENT description (#PCDATA)>
<!ELEMENT publisher (#PCDATA)> <!ELEMENT year (#PCDATA)>
<!ELEMENT info EMPTY> <!ELEMENT publisher (#PCDATA)>
<!ATTLIST info name CDATA #REQUIRED> <!ELEMENT info EMPTY>
<!ATTLIST info value CDATA #IMPLIED> <!ATTLIST info name CDATA #REQUIRED>
<!ELEMENT sharedfeat EMPTY> <!ATTLIST info value CDATA #IMPLIED>
<!ATTLIST sharedfeat name CDATA #REQUIRED> <!ELEMENT sharedfeat EMPTY>
<!ATTLIST sharedfeat value CDATA #IMPLIED> <!ATTLIST sharedfeat name CDATA #REQUIRED>
<!ELEMENT part (feature*, dataarea*, diskarea*, dipswitch*)> <!ATTLIST sharedfeat value CDATA #IMPLIED>
<!ATTLIST part name CDATA #REQUIRED> <!ELEMENT part (feature*, dataarea*, diskarea*, dipswitch*)>
<!ATTLIST part interface CDATA #REQUIRED> <!ATTLIST part name CDATA #REQUIRED>
<!-- feature is used to store things like pcb-type, mapper type, etc. Specific values depend on the system. --> <!ATTLIST part interface CDATA #REQUIRED>
<!ELEMENT feature EMPTY> <!-- feature is used to store things like pcb-type, mapper type, etc. Specific values depend on the system. -->
<!ATTLIST feature name CDATA #REQUIRED> <!ELEMENT feature EMPTY>
<!ATTLIST feature value CDATA #IMPLIED> <!ATTLIST feature name CDATA #REQUIRED>
<!ELEMENT dataarea (rom*)> <!ATTLIST feature value CDATA #IMPLIED>
<!ATTLIST dataarea name CDATA #REQUIRED> <!ELEMENT dataarea (rom*)>
<!ATTLIST dataarea size CDATA #REQUIRED> <!ATTLIST dataarea name CDATA #REQUIRED>
<!ATTLIST dataarea width (8|16|32|64) string.Empty8string.Empty> <!ATTLIST dataarea size CDATA #REQUIRED>
<!ATTLIST dataarea endianness (big|little) string.Emptylittlestring.Empty> <!ATTLIST dataarea width (8|16|32|64) ""8"">
<!ELEMENT rom EMPTY> <!ATTLIST dataarea endianness (big|little) ""little"">
<!ATTLIST rom name CDATA #IMPLIED> <!ELEMENT rom EMPTY>
<!ATTLIST rom size CDATA #IMPLIED> <!ATTLIST rom name CDATA #IMPLIED>
<!ATTLIST rom crc CDATA #IMPLIED> <!ATTLIST rom size CDATA #IMPLIED>
<!ATTLIST rom md5 CDATA #IMPLIED> <!ATTLIST rom crc CDATA #IMPLIED>
<!ATTLIST rom sha1 CDATA #IMPLIED> <!ATTLIST rom sha1 CDATA #IMPLIED>
<!ATTLIST rom sha256 CDATA #IMPLIED> <!ATTLIST rom offset CDATA #IMPLIED>
<!ATTLIST rom sha384 CDATA #IMPLIED> <!ATTLIST rom value CDATA #IMPLIED>
<!ATTLIST rom sha512 CDATA #IMPLIED> <!ATTLIST rom status (baddump|nodump|good) ""good"">
<!ATTLIST rom offset CDATA #IMPLIED> <!ATTLIST rom loadflag (load16_byte|load16_word|load16_word_swap|load32_byte|load32_word|load32_word_swap|load32_dword|load64_word|load64_word_swap|reload|fill|continue|reload_plain|ignore) #IMPLIED>
<!ATTLIST rom value CDATA #IMPLIED> <!ELEMENT diskarea (disk*)>
<!ATTLIST rom status (baddump|nodump|good) string.Emptygoodstring.Empty> <!ATTLIST diskarea name CDATA #REQUIRED>
<!ATTLIST rom loadflag (load16_byte|load16_word|load16_word_swap|load32_byte|load32_word|load32_word_swap|load32_dword|load64_word|load64_word_swap|reload|fill|continue|reload_plain|ignore) #IMPLIED> <!ELEMENT disk EMPTY>
<!ELEMENT diskarea (disk*)> <!ATTLIST disk name CDATA #REQUIRED>
<!ATTLIST diskarea name CDATA #REQUIRED> <!ATTLIST disk sha1 CDATA #IMPLIED>
<!ELEMENT disk EMPTY> <!ATTLIST disk status (baddump|nodump|good) ""good"">
<!ATTLIST disk name CDATA #REQUIRED> <!ATTLIST disk writeable (yes|no) ""no"">
<!ATTLIST disk md5 CDATA #IMPLIED> <!ELEMENT dipswitch (dipvalue*)>
<!ATTLIST disk sha1 CDATA #IMPLIED> <!ATTLIST dipswitch name CDATA #REQUIRED>
<!ATTLIST disk status (baddump|nodump|good) string.Emptygoodstring.Empty> <!ATTLIST dipswitch tag CDATA #REQUIRED>
<!ATTLIST disk writeable (yes|no) string.Emptynostring.Empty> <!ATTLIST dipswitch mask CDATA #REQUIRED>
<!ELEMENT dipswitch (dipvalue*)> <!ELEMENT dipvalue EMPTY>
<!ATTLIST dipswitch name CDATA #REQUIRED> <!ATTLIST dipvalue name CDATA #REQUIRED>
<!ATTLIST dipswitch tag CDATA #REQUIRED> <!ATTLIST dipvalue value CDATA #REQUIRED>
<!ATTLIST dipswitch mask CDATA #REQUIRED> <!ATTLIST dipvalue default (yes|no) ""no"">
<!ELEMENT dipvalue EMPTY>
<!ATTLIST dipvalue name CDATA #REQUIRED>
<!ATTLIST dipvalue value CDATA #REQUIRED>
<!ATTLIST dipvalue default (yes|no) string.Emptynostring.Empty>
"; ";
/// <summary> /// <summary>