FSML

Contents

LingML Overview

The OTML project is part of a general project devoted to developing logical encodings of theoretical objects in linguistic theory in XML. These encodings can then be rendered with standard formatting tools (HTML, LaTeX, PDF, etc.) or be subject to further computational processing.

The idea is to liberate the linguist from the tedium of formatting, while at the same time, tying our linguistic diagrams and formalisms to clear testable claims.

If you are interested in participating in this enterprise or would like to contribute resources for any theoretical framework within linguistic theory, see the LingML homepage.

FSML Overview

The XML resources on this page are intended to demonstrate the LingML approach with respect to finite-state automata (FSAs).

Encoding FSAs

FSAs can be encoded using the fsa.dtd. A sample encoding is given in mynet.xml. To encode your own FSA, download the sample and then use it to create your own.

FSAs are represented as a set of nodes in a net. Each node includes an attribute specifying whether it is a valid start state and whether it is a valid final state. Note that node names must be unique and must begin with a letter.

In addition, each node includes a set of arcs, each indicating which nodes can be reached with which symbols.

Text Representation of FSAs

FSAs can be rendered as a text description in HTML using the fsahtml.xsl XSL stylesheet.

Graphical Representation of FSAs

FSAs can be rendered in a traditional node/arc format using the fsadot.xsl stylesheet and the Graphviz package. You must first transform your XML file using the XSL stylesheet and then process the resulting file further with the dot program (from the Graphviz suite).

Testing/Running FSAs

Last, you can check if some string is accepted or generated with your FSA by using the fsarun.xsl stylesheet. (At the current time, this can only be done with a command-line XSL parser like Xalan.)


Mike Hammond