Skip to content

Latest commit

 

History

History
51 lines (38 loc) · 2.16 KB

README.rst

File metadata and controls

51 lines (38 loc) · 2.16 KB

Robot Framework and Libdoc schema definitions

This directory contains schema definitions for Robot Frameworks XML output files as well as for XML and JSON spec files created by Libdoc.

Only the latest schema versions are directly available and they may not be compatible with older Robot Framework versions. If you need to access old schema files, switch to an appropriate version control tag using the selector at the top of the page.

Schema files

Schema standard versions

XML schema definitions use XSD 1.0 due to XSD 1.1 not being widely adopted. Schema files themselves contain embedded documentation and comments explaining the structure in more detail. They also contain instructions how to make them XSD 1.1 compatible if needed.

Libdoc's JSON schema uses JSON Schema Draft 2020-12.

Updating schemas

XSD schemas are created by hand and updates need to be done directly to them.

Libdoc's JSON schema is generated based on a model created using pydantic. To modify the schema, update the model in libdoc_json_schema.py file and execute the file to regenerate libdoc.json.

Testing schemas

Schema definitions are tested as part of acceptance test runs by validating created outputs against the appropriate schemas. Most output.xml files created during test runs are not validated, however, because that would slow down test execution a bit too much. Full validation can be enabled separately and that should be done if the schema is updated or output.xml structure is changed.