4. Validation

As we explained in the Elements and Tags page of our General Remarks section, it is not enough for your XML to be well-formed, it also has to be valid. This means that it has to conform to a specific validation schema. The all-encompassing schema that the TEI has developed for this purpose is tei_all. But, as we explained in First Things First: Markup, we don't use all the TEI's tags at the BDMP. This makes the tei_all schema too heavy and self-contradictory for our purposes. To solve this problem, Lou Burnard encourages encoders to develop more limited, project-specific customizations of the TEI schema in his recent monograph What is the Text Encoding InitiativeIn addition, such custom schemata can be used to indicate where the project deviates from the TEI, and to provide useful encoding suggestions in XML editors with on-the-fly validation like oXygen.

At the BDMP, we developed our custom schema through Roma. This generates an ODD ('One Document Does it all') document in XML that includes all the necessary validation information, as well as a detailed description of all the (TEI-compliant) tags that are used. Because we use RelaxNG schemata to validate our XML, we used OxGarage to transform that 'ODD document' into a 'RelaxNG compact schema'. Both files can be downloaded by clicking on the button below. If you want, you can use the ODD file to generate different outputs through OxGarage yourself.

Please note, however, that we use this schema for validation purposes only. For a more detailed and nuanced explanation of which tags we use where, and why, please refer to the Encoding Manual itself – and especially its section on The Tags.


One of the places where the BDMP's schema deviates from the TEI, is that it allows plain text to be written in side <space> elements. If you want to know why we felt this deviation was necessary, please refer to '"(Hiatus in MS.) Towards a TEI Compliant Typology of Textual Lacunae in Samuel Beckett's Works'.

Download Schema

Schema version number: 9.0. Last updated on 18 November 2016.