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.0_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.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.3-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d02976135143825d6392925171614388bb1791df71ef3f91c657a60d1cb92ece |
|
MD5 | f12b09811a734936fc5d2a187ac98201 |
|
BLAKE2b-256 | ce5e981cd76a4a2a979a95312c1674b77d527b39b6173a17704dc6ce0d52eb8d |