State Machines; IBM's XMI?

James Tauber jtauber at jtauber.com
Fri Apr 9 03:21:07 BST 1999


> Does anyone know of efforts to represent state machines (FSA) in XML? From
> their DTD, it would seem that IBM's XMI (XML Metadata Interchange) does,
but
> a quick search of their 2 PDF docs didn't reveal "state machine", just
> "state".

I was playing around with FSAs in XML a little while ago (actually, all
sorts of things: recognizers, generators, transducers; finite-state,
recursive).

My initial work was using the DTD:

<!ELEMENT FSTN (state+)>
<!ATTLIST FSTN
    ID    ID    #REQUIRED
    start    IDREF    #REQUIRED
>

<!ELEMENT state (arc*)>
<!ATTLIST state
    ID    ID    #REQUIRED
>

<!ELEMENT arc (#PCDATA)>
<!-- content of arc is label. arc is a jump arc if empty content -->
<!ATTLIST arc
    to    IDREF    #REQUIRED
>

I considered using an NMTOKEN attribute for the label of the arc, ie:

<!ELEMENT arc EMPTY>
<!ATTLIST arc
    to    IDREF    #REQUIRED
    label    NMTOKEN    #IMPLIED
>

Another possibility would have been to "declare" labels:

<!ELEMENT FSTN (labels,states)>
<!ELEMENT labels (label+)>
<!ELEMENT states (state+)>
<!ELEMENT label (#PCDATA)>
<!ATTLIST label
    ID    ID    #REQUIRED
>
<!ATTLIST arc
    to    IDREF    #REQUIRED
    label    IDREF    #IMPLIED
>

If people have comments on this, I'm more than willing to put something more
formal together.

James


xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)




More information about the Xml-dev mailing list