Modularization of XHTML in TREX

This directory contains an implementataion in TREX of the modularization of XHTML specified by the Modularization of XHTML Candidate Recommendation.

The TREX patterns have not been mechanically derived from the DTDs. Rather, they have been hand-crafted so as to produce good quality TREX patterns. However, they may well contain bugs. The TREX patterns do not aim to be bug-compatible with the DTDs. I have deviated from the DTDs in cases where the DTDs appeared to have errors. See my messages to editors (1, 2, 3, 4).

The modules directory contains all the modules; xhtml-basic.trex uses the modules to implement XHTML Basic; xhtml-strict.trex uses the modules to implement XHTML 1.0 strict; xhtml.trex uses the modules to implement the union of XHTML 1.0 transitional and XHTML 1.0 frameset. You can download everything as a zip file. To create a custom version of XHTML, simply copy xhtml.trex and delete the inclusions of the modules that you do not want.

The biggest difference between the TREX implementation and the DTD implementation is that the TREX implementation does not require you to create a model module specific to the combination of XHTML modules you are using. Instead, simply include the modules you want. The modules take care of redefining the content models appropriately.

Note also the following differences:

James Clark