ONIX validation library and commandline tool
Project description
Onixcheck - Book Trade Metadata Validation
Introduction
ONIX for Books is an international XML standard for the publishing and book trade industry.
onixcheck is a Python library and command line tool for validating ONIX metadata. It allows you to validate ONIX versions 2.1 and 3.0 against the official XML Schema.
Free software: BSD license
Installation
On Windows you can download the standalone binary command line tool: onixcheck-0.9.4_win.zip
If you have Python or PyPy installed on your system you can do the usual:
pip install onixcheck
Quickstart
Command line usage examples
Validate all .xml, .onx, .onix files in current directory:
onixcheck
Validate a single onix file:
onixcheck myonixfile.xml
Validate all .xml files in /onixdata and its subdirectories:
onixcheck --path /onixdata --ext xml --recursive
Show help:
onixcheck -h
Using onixcheck as a python lib
Simple usage with onixcheck.validate:
>>> import onixcheck
>>> errors = onixcheck.validate('src/onixcheck/data/invalid_onix3_ref.xml')
>>> print(errors[0].short)
ERROR - SCHEMASV - invalid_onix3_ref.xml:4:0 - Element 'SentDateTime': This element is not expected. Expected is ( Sender ).
errors is either a list of Message objects (INVALID file) or an empty list (VALID file)
Documentation
Development
To run the all tests run:
tox
Contributions/suggestions are welcome.
Changelog
0.9.5 (2016-08-19)
Update Onix 3 to Code List issue 34
Remove build artifacts from source distribution
0.9.4 (2016-07-15)
Fix issue with windows console output encoding
Update windows build to pyinstaller 3.1
0.9.3 (2016-05-10)
Update ONIX 3.0 Schemas to Revision 3
Add support for RELAX NG and custom schema validations
Added validator name to short message output
0.9.2 (2016-04-11)
Fix ExtentType in custom validation profile
Fix false alarm with multiple Price elements in custom profile
0.9.1 (2016-04-11)
Inital support for custom validation profiles
Custom Google Play Books onix 3.0 validation profile
0.9.0 (2016-03-27)
Added Python 3.5 testing / support
Update to ONIX to Code List Issue 32 / 2016-01-24
0.8.1 (2015-07-23)
More extensive documentation
0.8.0 (2015-07-23)
Added CLI-support for fast directory traversal validation
Secured XML-Parsing via defusedxml
Catch basic XML syntax errors
Windows standalone binary builds
0.4.0 (2015-07-18)
First release on PyPI.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for onixcheck-0.9.5-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 390731c9db3b73de5450e24c6823ca6a0eabbd1cbce5b3f698bb1a54a2d7918b |
|
MD5 | 40d002589fa75dd9084604882f7ef132 |
|
BLAKE2b-256 | f9d3ac0f4407f0b6f6a2415b8a49e9228a5d7bef0bcee86a72fed271a5d8f234 |