Troeps XML DTDs

DTDs

The DTD is complete with regard to the Troeps system. A DTD is also available for the lexicon and soon there will be a DTD for expressing a hierarchy of actions on a knowledge base (through the Troeps API). This one will be used in displaying the differences between to bases or in communicating a set of modifications between two bases.
Here are the DTD for Troeps XML documents:

troeps.dtd
For the Troeps entities
trapi.dtd
For specifying modification of these entities
trlex.dtd
For Troeps lexicon

References

These DTDs can be referenced in XML documents by the insertion of (for Troeps): <!DOCTYPE CONCEPT SYSTEM "troeps.dtd"> and in other DTD by: <!ENTITY % troepsDTD SYSTEM "troeps.dtd"> %troepsDTD; or better: <!DOCTYPE CONCEPT SYSTEM "http://co4.inrialpes.fr/xml/troeps.dtd"> and <!ENTITY % troepsDTD SYSTEM "http://co4.inrialpes.fr/xml/troeps.dtd"> %troepsDTD;

Sample XML files

real-estate.xml
an example of a Troeps knowledge base (with nearly complete coverage of the DTD and Troeps capabilities);
mypgm.xml
an example of the use of trapi which modifies the base loaded by the previous xml document;
lex.xml
an example of lexitem;
knife.xml
an example of an important knowledge base (generated by Troeps XML converter): Knife.

These files have been generated by Troeps XML dumper

Troeps XML dumper and loader

Troeps can dump any knowledge base in an XML file complying with the above DTD. Non covered features are annotations and external types.

A loader for generating Troeps elements from XML documents (complying with the Troeps DTD) is developped. It uses SAX (just like the actual Troeps format is event-parsed) and has been developped thanks to the XML4J parser. Its main pitfall is that it does not allows circular references yet.
The loader has been developped in Java, so it is quite slow...

The dumper is directly available with the Troeps distribution (from release 1.3).

The loader (called XXT) is available from:

https://www.inrialpes.fr/sherpa/files/logiciels/xxt/current.tar.gz.

It requires Java 1.2.

Future developments

Some developments will be carried on in the future:

Old versions

Philosophy

The design rationale beyond these particular DTDs are described in [Euzenat2000a].

Samples from the paper

The full files corresponding to the examples given in [Euzenat2000a] are provided below.

PROTEIN sample

Here are the files for the simple PROTEIN example:

The XML and DTD have been tested with the XML4J parser from IBM.

$ java -cp .:xml4j.jar:xml4jSamples.jar ui.TreeViewer protein.xml
The HTML has been generated with the combination of XP/XT from James Clark through the following instructions: $ setenv CLASSPATH xp.jar:xt.jar:sax.jar:$CLASSPATH $ java com.jclark.xsl.sax.Driver protein.xml protein.xsl protein.html

Immediate translation

Reified version

The reified version in the paper does not use the Troeps DTD due to lack of space. Instead the RCO.DTD is used. The following files can be recovered.

Semantics

References

[Euzenat2000a] Jérôme Euzenat, XML est-il le langage de représentation de l'an 2000 ?, Actes 6e LMO, Mont Saint-Hilaire (CA), 2000 à paraître.


https://co4.inrialpes.fr/xml/troeps

Updated by Jerome . Euzenat À inria . fr on 17/12/2021