The Rome Statute
October 19th, 2005
The Rome Statute of the International Criminal Court is a multilingual document. This example is an excellent case to show how metalex:TextVersion tags can be used for storing different language versions of one source in one MetaLex document. Please note that Chinese and Cyrillic fonts need to be installed for viewing the unicode characters used in this example.
The MetaLex distribution contains an excerpt of this statute, consisting of articles 1-4 in the languages English, Dutch, Russian and Chinese. Have a look at the MetaLex XML source of the excerpt (rome-xml_ex.xml):
- The Statute in MetaLex
Language Versions
The different language versions are separated using metalex:TextVersion tags as follows:
<Sentence>
<TextVersion xml:lang="en">An International Criminal Court ("<Reference xlink:href="#a1">the Court</Reference>") is hereby established.</TextVersion>
<TextVersion xml:lang="nl">Een Internationaal Strafhof (,,<Reference xlink:href="#a1">het Hof</Reference>'') wordt hierbij opgericht.</TextVersion>
<TextVersion xml:lang="zh">兹设立国际刑事法院(“<Reference xlink:href="#a1">本法院</Reference>”)。</TextVersion>
<TextVersion xml:lang="ru">Настоящим учреждается Международный уголовный суд ("<Reference xlink:href="#a1">Суд</Reference>").</TextVersion>
</Sentence>
Note that Textversion elements are used to separate both languageversions and versions in time of the same text. We will show this functionality in a later example.
Publishing MetaLex documents
MetaLex can be transformed to viewable formats using the stylesheets provided in the distribution. At the moment we support the conversion of MetaLex XML to both XHTML and XSL:FO (which can be published to PDF). These stylesheets can be found in the transform directory of the distribution.
In general, the publishing stylesheets need a selector variable to select the proper language version of the text. We have provided for a number of pre-fab selector stylesheets for English, Dutch, French, Chinese and Russian in the en, nl, fr, zh and ru directories respectively.
To have a look at the results of applying the stylesheets to the Rome Statue example, click on the following links:
- The Statute in English, HTML version
- The Statute in Dutch, HTML version
- The Statute in Chinese, HTML version
- The Statute in Russian, HTML version
- The Statute in English, PDF version (Generated from XSL:FO using Apache FOP)
- The Statute in Dutch, PDF version
Schema Localization
Using the substGroup mechanism of XML Schema, the MetaLex schema can be transparently extended with locale specific versions of MetaLex elements. A useful application of this functionality lies for instance in the development of locale-independent editors for legal documents.
A Dutch locale schema, and XSL stylesheets for translating between the generic version and the locale specific version are included in the distribution (the transform/nl directory). The difference between locales is illustrated using the following example files:
- The Statute in 4 languages, generic version
- The Statute in 4 languages, Dutch version
Entry Filed under: Examples
Trackback this post