Files
JIMRI/xml/DTD/roster-config.dtd
2026-06-17 14:00:51 +02:00

80 lines
3.3 KiB
DTD

<!-- Defines XML documenting a locomotive roster -->
<!-- This DTD is part of JMRI. Copyright 2001, 2003, 2007. -->
<!-- -->
<!-- JMRI is free software; you can redistribute it and/or modify it under -->
<!-- the terms of version 2 of the GNU General Public License as published -->
<!-- by the Free Software Foundation. See the "COPYING" file for a copy -->
<!-- of this license. -->
<!-- -->
<!-- JMRI is distributed in the hope that it will be useful, but WITHOUT -->
<!-- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -->
<!-- FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -->
<!-- for more details. -->
<!ELEMENT roster-config (roster*, rosterGroup*)>
<!ELEMENT roster (locomotive*)>
<!-- The locomotive entries each define a specific locomotive -->
<!ELEMENT locomotive (dateupdated?, decoder, locoaddress*, functionlabels?, attributepairs?) >
<!ELEMENT dateupdated (#PCDATA) >
<!-- Key used in lists, etc - User identification for this loco -->
<!ATTLIST locomotive id CDATA #REQUIRED>
<!-- The whole point of this is to identify a definition file, based at prefs/roster/ -->
<!ATTLIST locomotive fileName CDATA #REQUIRED>
<!ATTLIST locomotive groupName CDATA #IMPLIED>
<!-- The identification attributes must be kept the same as the ones in the locomotive DTD -->
<!-- The copy in the locomotive file is used if we have to import an existing file into a roster -->
<!-- Manual identification -->
<!ATTLIST locomotive roadName CDATA #IMPLIED>
<!ATTLIST locomotive roadNumber CDATA #IMPLIED>
<!ATTLIST locomotive mfg CDATA #IMPLIED>
<!ATTLIST locomotive owner CDATA #IMPLIED>
<!ATTLIST locomotive model CDATA #IMPLIED>
<!ATTLIST locomotive dccAddress CDATA #IMPLIED> <!-- DCC address, obsolete form -->
<!ATTLIST locomotive comment CDATA #IMPLIED>
<!ATTLIST locomotive maxSpeed CDATA #IMPLIED>
<!ATTLIST locomotive imageFilePath CDATA #IMPLIED>
<!ATTLIST locomotive iconFilePath CDATA #IMPLIED>
<!ATTLIST locomotive URL CDATA #IMPLIED>
<!-- The decoder optional section identifies the installed decoder -->
<!ELEMENT decoder EMPTY >
<!ATTLIST decoder family CDATA #REQUIRED>
<!ATTLIST decoder model CDATA #REQUIRED>
<!ATTLIST decoder comment CDATA #IMPLIED>
<!-- define general locomotive address -->
<!ELEMENT locoaddress (dcclocoaddress) >
<!-- define DCC locomotive address -->
<!ELEMENT dcclocoaddress EMPTY >
<!ATTLIST dcclocoaddress number CDATA #IMPLIED>
<!ATTLIST dcclocoaddress longaddress ( yes | no) "no">
<!ELEMENT functionlabels (functionlabel*) >
<!ELEMENT functionlabel (#PCDATA) >
<!ATTLIST functionlabel num CDATA #REQUIRED>
<!ATTLIST functionlabel lockable (true | false) "true">
<!ATTLIST functionlabel functionImage CDATA #IMPLIED>
<!ATTLIST functionlabel functionImageSelected CDATA #IMPLIED>
<!ELEMENT attributepairs (keyvaluepair*) >
<!ELEMENT keyvaluepair (key, value) >
<!ELEMENT key (#PCDATA) >
<!ELEMENT value (#PCDATA) >
<!ELEMENT rosterGroup (group*)>
<!ELEMENT group (#PCDATA)>