PYSHACL(1)

πŸ“¦
version 0.30.1 Β· 2 versions
, in fedora 43

πŸ’– PYSHACL πŸ’–

okay bestie, sit DOWN, because we're about to talk about PySHACL β€” the manual page for PySHACL Version: 0.30.1. it's a validator command line tool and it is genuinely iconic, no cap. πŸ¦‹


✨ NAME ✨

PySHACL β€” the manual page for PySHACL Version: 0.30.1. that's the whole vibe. she validates. πŸ’…


🌸 DESCRIPTION 🌸

so here's the usage line, and yes it's a lot, but we love a maximalist queen:

usage: pyshacl_validate [-h] [-s [SHACL]] [-e [ONT]]
       [-i {none,rdfs,owlrl,both}] [-m] [-q] [-im] [-a] [-j]
       [-it] [--abort] [--allow-info] [-w] [--max-depth [MAX_DEPTH]]
       [-d] [--focus [FOCUS]] [--shape [SHAPE]] [-f
       {human,table,turtle,xml,json-ld,nt,n3}] [-df
       {auto,turtle,xml,json-ld,nt,n3}] [-sf
       {auto,turtle,xml,json-ld,nt,n3}] [-ef
       {auto,turtle,xml,json-ld,nt,n3}] [-V] [-o [OUTPUT]] [--rules]
       [--server] [DataGraph]

PySHACL 0.30.1 Validator command line tool. that's her. that's the whole rΓ©sumΓ©. πŸ‘‘

πŸŽ€ positional arguments πŸŽ€

  • DataGraph β€” the file or endpoint holding your Target Data Graph. this is the thing getting validated, bestie. it's the main character.

🧚 options 🧚

  • -h, --help β€” shows this help message and then dips. classic. ✨
  • -s, --shapes, --shacl [SHACL] β€” a file containing the SHACL Shapes Graph. your shapes live here.
  • -e, --ont-graph [ONT] β€” a file path or URL pointing at a document with extra ontological info. the RDFS and OWL definitions in there get used to inoculate the DataGraph. yes, inoculate, like a lil vaccine for your graph πŸ’‰
  • -i, --inference {none,rdfs,owlrl,both} β€” pick what kind of inferencing runs against the Data Graph before validation. options are exactly none, rdfs, owlrl, both.
  • -m, --metashacl β€” validates the SHACL Shapes graph against the shaclshacl Shapes Graph before it validates the Data Graph. meta af. πŸͺž
  • -q, --sparql-mode β€” treats the DataGraph as a SPARQL endpoint and validates the graph at that SPARQL endpoint. remote girlie behavior.
  • -im, --imports β€” lets sub-graphs be imported when they're defined in statements with owl:imports.
  • -a, --advanced β€” turns on features from the SHACL Advanced Features specification. advanced. she's leveled up.
  • -j, --js β€” turns on features from the SHACL-JS Specification. javascript in my shapes? it's more likely than you think πŸ’€
  • -it, --iterate-rules β€” runs the Shape's SHACL Rules over and over, iteratively, until the data_graph reaches a steady state. she will NOT stop until it's stable, periodt.
  • --abort β€” aborts on the first invalid data. no second chances, no mercy. πŸ™ˆ
  • --allow-info, --allow-infos β€” shapes marked with a severity of Info won't make the result invalid.
  • -w, --allow-warning, --allow-warnings β€” shapes marked with a severity of Warning or Info won't make the result invalid. so forgiving, so generous.
  • --max-depth [MAX_DEPTH] β€” the maximum number of SHACL shapes "deep" the validator can go before it hits an "endpoint" constraint. don't go too deep bestie, there be dragons πŸ‰
  • -d, --debug β€” outputs extra verbose runtime messages. for when you need the tea β˜•
  • --focus [FOCUS] β€” optional IRIs of focus nodes from the DataGraph; the shapes will validate only these nodes. it's a comma-separated list, so mind the commas.
  • --shape [SHAPE] β€” optional IRIs of a NodeShape or PropertyShape from the SHACL ShapesGraph; only these shapes get used to validate the DataGraph. also a comma-separated list.
  • -f, --format {human,table,turtle,xml,json-ld,nt,n3} β€” choose an output format. Default is "human".
  • -df, --data-file-format {auto,turtle,xml,json-ld,nt,n3} β€” explicitly state the RDF file format of the input DataGraph file. Default="auto".
  • -sf, --shacl-file-format {auto,turtle,xml,json-ld,nt,n3} β€” explicitly state the RDF file format of the input SHACL file. Default="auto".
  • -ef, --ont-file-format {auto,turtle,xml,json-ld,nt,n3} β€” explicitly state the RDF file format of the extra ontology file. Default="auto".
  • -V, --version β€” shows the PySHACL version and exits. quick little flex. ⭐
  • -o, --output [OUTPUT] β€” sends output to a file (and it defaults to stdout, obviously).
  • --rules β€” ignores the validation options and runs PySHACL in Rules Expansion mode. same as pyshacl_rules.
  • --server β€” ignores literally all the rest of the options and starts the HTTP Server. same as pyshacl_server. πŸ–₯️✨
⚠️ heads up: --rules and --server both go "ignore everything else", so if you were hoping your other flags would do something, they will Not. respect the override, bestie.

🌈 SEE ALSO 🌈

the full documentation for PySHACL is maintained as a Texinfo manual. if the info and PySHACL programs are properly installed at your site, this command:

info PySHACL

should give you access to the complete manual. go get that full lore, iykyk πŸ“–


and that's the whole page bestie!! 🫢 this is PySHACL Version: 0.30.1, dated September 2025, and it's giving PYSHACL(1) energy from start to finish. slay, validate, and stay steady-state. πŸ’–πŸŽ€πŸ¦‹βœ¨πŸ”₯πŸ‘‘πŸ’…

πŸ“¦ where this page comes from