Schema Validation
XTS ships with XML schema files (RELAX NG and XSD) that describe the layout language. A good XML editor can use these schemas to provide auto-complete, validation, and inline documentation – making layout editing much faster and less error-prone.
What schemas give you
- Auto-complete: Type
<and see all valid commands - Attribute suggestions: See which attributes are available and their allowed values
- Inline documentation: Read command descriptions without leaving your editor
- Instant validation: Catch syntax errors as you type
Without a schema
XTS checks the attributes itself when it runs a layout. An attribute that a command does not know is ignored, and XTS writes a warning with the line, the command and the attribute that was probably meant:
Layout line 12: unknown attribute "colum" on PlaceObject, did you mean "column"?Attribute names are matched exactly, including the hyphen in names such as background-color. Attributes in a namespace, such as xml:lang, are left alone. This check only says whether XTS reads an attribute; the schema checks more, such as the allowed values and where a command may appear, and shows mistakes while you type.
Schema files
The schema files are in the schema/ directory of your XTS installation:
| File | Description |
|---|---|
layoutschema-en.rng |
RELAX NG, English documentation |
layoutschema-de.rng |
RELAX NG, German documentation |
layoutschema-en.xsd |
XML Schema, English documentation |
layoutschema-de.xsd |
XML Schema, German documentation |
Visual Studio Code (recommended)
The easiest way to get schema support in VS Code is the speedata extension. It supports both the speedata Publisher and XTS layout files out of the box – no manual schema configuration needed.
- Open the Extensions marketplace and search for
speedata. - Install the Speedata Publisher extension (
vscode-speedata). It supports XTS as well. - That’s it. Layout files with the XTS namespace are automatically recognized.

The extension provides auto-complete, validation, and inline documentation based on RELAX NG.
Alternative: Red Hat XML extension
If you prefer the generic XML extension, you can configure it manually:
- Install the XML extension by Red Hat from the marketplace.
- Open VS Code settings and find
xml.catalogs. - Add the path to
catalog-schema-en.xmlfrom your XTS installation.


Once configured, any layout file with the namespace urn:speedata.de/2021/xts/en gets full auto-complete:

oXygen XML
- Open Preferences > Document Type Association.
- Click New to create a new association.
- Add a namespace rule for
urn:speedata.de/2021/xts/en. - Set the schema type to RELAX NG and select
layoutschema-en.rng.


After setup, you get auto-complete for both elements and attributes:


Other editors
Any XML editor that supports RELAX NG or XSD can use the XTS schemas:
- XMLSpy (Windows)
- XML Blueprint (Windows)
- GNU Emacs with nxml-mode (cross-platform, free)
- jEdit (cross-platform, free)