Skip to main content

RDFVR: RDF Validation Report

Project description

RDFVR

RDFVR (RDF Validation Report) is a pure Python package to generate readable reports for the validation of RDF graphs against Shapes Constraint Language (SHACL) graphs.

Installation

Install with pip (Python 3 pip installer pip3):

$ pip3 install rdfvr

Command Line Use

$ rdfvr -f /path/to/rdf_graph -ff rdf_graph_format -s path/to/schema_of_rdf_graph -sf schema_of_rdf_graph_format -m path/to/mappings -o path/to/report -of report_format --no-datetime

Where

  • -f is the path of the RDF graph file to be validated (also supports multiple files)
  • -ff is the format of the RDF graph file (also supports multiple file formats when we have multiple RDF graph files)
  • -s is the path of the the RDF graph's schema
  • -sf is the format of the RDF graph's schema
  • -m is the path of mappings to shorten the report
  • -o is the path of the validation report without extension (also supports multiple files when we have multiple RDF graph files)
  • -of is the format of the validation report (also supports multiple file formats when we have multiple RDF graph files)
  • --no-datetime disables the datetime line in the output

Full CLI Usage Options:

$ rdfvr -h
usage: rdfvr [-h] [--file FILE] [--schema SCHEMA] [--fileformat FILEFORMAT]
             [--schemaformat {xml,n3,turtle,nt,pretty-xml,trix,trig,nquads,json-ld,hext}]
             [--mappings MAPPINGS] [--output OUTPUT] [--outputformat OUTPUTFORMAT]
             [--no-datetime]

optional arguments:
  -h, --help            show this help message and exit
  --file FILE, -f FILE  File(s) of the RDF graph(s) to be validated (list[str] | str ): please use comma (no space) to split multiple file paths (e.g.
                        file1,file2,file3).
  --schema SCHEMA, -s SCHEMA
                        Schema of the RDF graph, i.e., Shapes Constraint Language (SHACL) graph (str): path of the file.
  --fileformat FILEFORMAT, -ff FILEFORMAT
                        File format(s) of the RDF graph(s) to be validated (list[str] | str ). Orders should be consistent with the input of --file. Default format is
                        json-ld. If all input files have the same format, only need to write once.
  --schemaformat {xml,n3,turtle,nt,pretty-xml,trix,trig,nquads,json-ld,hext}, -sf {xml,n3,turtle,nt,pretty-xml,trix,trig,nquads,json-ld,hext}
                        File format of the schema (str). Default format is ttl.
  --mappings MAPPINGS, -m MAPPINGS
                        File of the mappings to shorten the report (str): path of the JSON file, where the key is the original text and the value is the shorter text.
  --output OUTPUT, -o OUTPUT
                        Path(s) of the validation report without extension (list[str] | str ). If no value, then output will be a string. Please use comma (no space) to split
                        multiple file paths (e.g. file1,file2,file3).
  --outputformat OUTPUTFORMAT, -of OUTPUTFORMAT
                        File format(s) of the output, validation report (list[str] | str ). Orders should be consistent with the input of --output. Default format is
                        txt. Each item can only be one of {txt,html}. Please use comma (no space) to split multiple formats (e.g. format1,format2,format3). If all
                        output files have the same format, only need to write once.
  --no-datetime         Disable the datetime line in the output.

Python Module Use

You can call the validation_report function of the rdfvr module as follows:

from rdfvr import validation_report
validation_report(file_path, file_format, schema, schema_format, output_path, output_format, mappings, no_datetime)

Where

  • file_path is the file path (string) of a RDF graph
  • file_format is the format (string) of the RDF graph file
  • schema is the file path (string) of the RDF graph's schema
  • schema_format is the format (string) of the schema file
  • output_path is the file path (string) of the validation report without extension
  • output_format is the format (string) of the validation report, i.e., txt or html
  • mappings is the mappings (dictionary) to shorten the report
  • no_datetime is a boolean (default False) to disable the datetime line in the output

The return value is None.

The output will be either a txt file, a html file, or a string print in Bash.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rdfvr-0.3.6.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rdfvr-0.3.6-py3-none-any.whl (7.0 kB view details)

Uploaded Python 3

File details

Details for the file rdfvr-0.3.6.tar.gz.

File metadata

  • Download URL: rdfvr-0.3.6.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.1

File hashes

Hashes for rdfvr-0.3.6.tar.gz
Algorithm Hash digest
SHA256 4e997be39bad04c1da098cb3c1eb7daf44e19af97c4b990751d8ca5ff81658af
MD5 3bb3760a96d3db5ae275afe2cdd57c68
BLAKE2b-256 c79a387eff68d10d688a8f958229d6ee468b522d7585f7e7ceea90ef19278162

See more details on using hashes here.

File details

Details for the file rdfvr-0.3.6-py3-none-any.whl.

File metadata

  • Download URL: rdfvr-0.3.6-py3-none-any.whl
  • Upload date:
  • Size: 7.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.1

File hashes

Hashes for rdfvr-0.3.6-py3-none-any.whl
Algorithm Hash digest
SHA256 a4b9d70be70a8cb0ee753111446d986e84fa5a22c6317d1faae252f13f9ccbdd
MD5 5d0b54d583c02978c176b67fb910bb85
BLAKE2b-256 9fcfb7a91f9933ead5f0005ba6baf4776f51c2d4edbb1683ccba54abd45f5595

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page