#compdef rudof

autoload -U is-at-least

_rudof() {
    typeset -A opt_args
    typeset -a _arguments_options
    local ret=1

    if is-at-least 5.2; then
        _arguments_options=(-s -S -C)
    else
        _arguments_options=(-s -C)
    fi

    local context curcontext="$curcontext" state line
    _arguments "${_arguments_options[@]}" : \
'*-d[Increase logging verbosity]' \
'*--debug[Increase logging verbosity]' \
'-h[Print help]' \
'--help[Print help]' \
'-V[Print version]' \
'--version[Print version]' \
":: :_rudof_commands" \
"*::: :->rudof" \
&& ret=0
    case $state in
    (rudof)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:rudof-command-$line[1]:"
        case $line[1] in
            (shapemap)
_arguments "${_arguments_options[@]}" : \
'-m+[ShapeMap (FILE, URI or - for stdin)]:INPUT:_default' \
'--shapemap=[ShapeMap (FILE, URI or - for stdin)]:INPUT:_default' \
'-f+[ShapeMap format, default = compact]:FORMAT:(compact internal json details csv)' \
'--format=[ShapeMap format, default = compact]:FORMAT:(compact internal json details csv)' \
'--base-data=[Base IRI for data]:IRI:_default' \
'--base-schema=[Base IRI for Schema]:IRI:_default' \
'-r+[Result shapemap format, default = compact]:FORMAT:(compact internal json details csv)' \
'--result-format=[Result shapemap format, default = compact]:FORMAT:(compact internal json details csv)' \
'-o+[Output file name, default = terminal]:FILE:_files' \
'--output-file=[Output file name, default = terminal]:FILE:_files' \
'--force-overwrite[Force overwrite to output file if it already exists]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(shex)
_arguments "${_arguments_options[@]}" : \
'-s+[Schema, FILE, URI or - for stdin]:INPUT:_default' \
'--schema=[Schema, FILE, URI or - for stdin]:INPUT:_default' \
'-f+[Schema format (ShExC, ShExJ, Turtle, ...), default = ShExC]:FORMAT:(internal simple shexc shexj json jsonld turtle ntriples rdfxml trig n3 nquads)' \
'--format=[Schema format (ShExC, ShExJ, Turtle, ...), default = ShExC]:FORMAT:(internal simple shexc shexj json jsonld turtle ntriples rdfxml trig n3 nquads)' \
'-r+[Result schema format]:FORMAT:(internal simple shexc shexj json jsonld turtle ntriples rdfxml trig n3 nquads)' \
'--result-format=[Result schema format]:FORMAT:(internal simple shexc shexj json jsonld turtle ntriples rdfxml trig n3 nquads)' \
'-l+[shape label]:LABEL:_default' \
'--shape-label=[shape label]:LABEL:_default' \
'-t+[Show processing time]:BOOL:(true false)' \
'--show-time=[Show processing time]:BOOL:(true false)' \
'--statistics=[Show statistics about the schema]:BOOL:(true false)' \
'-b+[Base IRI]:IRI:_default' \
'--base=[Base IRI]:IRI:_default' \
'--reader-mode=[RDF Reader mode (strict or lax)]:MODE:(lax strict)' \
'--show-dependencies=[Show dependencies between shapes]:BOOL:(true false)' \
'--compile=[Compile Schema to Internal representation]:BOOL:(true false)' \
'-c+[Config file name]:FILE:_files' \
'--config-file=[Config file name]:FILE:_files' \
'-o+[Output file name, default = terminal]:FILE:_files' \
'--output-file=[Output file name, default = terminal]:FILE:_files' \
'--show-schema[]' \
'--no-show-schema[]' \
'--force-overwrite[Force overwrite to output file if it already exists]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(validate)
_arguments "${_arguments_options[@]}" : \
'-M+[Validation mode (ShEx or SHACL)]:MODE:(shex shacl)' \
'--mode=[Validation mode (ShEx or SHACL)]:MODE:(shex shacl)' \
'-s+[Schema used for validatio, FILE, URI or - for stdin]:INPUT:_default' \
'--schema=[Schema used for validatio, FILE, URI or - for stdin]:INPUT:_default' \
'-f+[Schema format]:FORMAT:(internal simple shexc shexj json jsonld turtle ntriples rdfxml trig n3 nquads)' \
'--schema-format=[Schema format]:FORMAT:(internal simple shexc shexj json jsonld turtle ntriples rdfxml trig n3 nquads)' \
'-m+[ShapeMap used for validation, FILE, URI or - for stdin]:INPUT:_default' \
'--shapemap=[ShapeMap used for validation, FILE, URI or - for stdin]:INPUT:_default' \
'--shapemap-format=[ShapeMap format]:FORMAT:(compact internal json details csv)' \
'--base-data=[Base IRI for data]:IRI:_default' \
'--base-schema=[Base IRI for Schema]:IRI:_default' \
'--sort_by=[Sort result by (default = node)]:SORT_MODE:(node details)' \
'-n+[Node to validate]:NODE:_default' \
'--node=[Node to validate]:NODE:_default' \
'-l+[shape label (default = START)]:LABEL:_default' \
'--shape-label=[shape label (default = START)]:LABEL:_default' \
'-t+[RDF Data format (default = turtle)]:FORMAT:(turtle ntriples rdfxml trig n3 nquads jsonld)' \
'--data-format=[RDF Data format (default = turtle)]:FORMAT:(turtle ntriples rdfxml trig n3 nquads jsonld)' \
'-e+[Endpoint with RDF data]:ENDPOINT:_default' \
'--endpoint=[Endpoint with RDF data]:ENDPOINT:_default' \
'--max-steps=[max steps to run during validation]:NUMBER:_default' \
'-S+[SHACL validation mode (default = native)]:MODE:(native sparql)' \
'--shacl-mode=[SHACL validation mode (default = native)]:MODE:(native sparql)' \
'--reader-mode=[RDF Reader mode]:MODE:(lax strict)' \
'-r+[Ouput result format, default = compact]:FORMAT:(turtle ntriples rdfxml trig n3 nquads compact details json csv)' \
'--result-format=[Ouput result format, default = compact]:FORMAT:(turtle ntriples rdfxml trig n3 nquads compact details json csv)' \
'--map-state=[MapState file name]:FILE:_files' \
'-c+[Config file name]:FILE:_files' \
'--config-file=[Config file name]:FILE:_files' \
'-o+[Output file name, default = terminal]:FILE:_files' \
'--output-file=[Output file name, default = terminal]:FILE:_files' \
'--force-overwrite[Force overwrite to output file if it already exists]' \
'-h[Print help]' \
'--help[Print help]' \
'*::data:_default' \
&& ret=0
;;
(shex-validate)
_arguments "${_arguments_options[@]}" : \
'-s+[Schema file name, URI or - (for stdin)]:INPUT:_default' \
'--schema=[Schema file name, URI or - (for stdin)]:INPUT:_default' \
'-f+[ShEx Schema format]:FORMAT:(internal simple shexc shexj json jsonld turtle ntriples rdfxml trig n3 nquads)' \
'--schema-format=[ShEx Schema format]:FORMAT:(internal simple shexc shexj json jsonld turtle ntriples rdfxml trig n3 nquads)' \
'-m+[ShapeMap]:INPUT:_default' \
'--shapemap=[ShapeMap]:INPUT:_default' \
'--shapemap-format=[ShapeMap format]:FORMAT:(compact internal json details csv)' \
'-n+[Node to validate]:NODE:_default' \
'--node=[Node to validate]:NODE:_default' \
'--sort_by=[Sort result by (default = node)]:SORT_MODE:(node shape status details)' \
'-l+[shape label (default = START)]:LABEL:_default' \
'--shape-label=[shape label (default = START)]:LABEL:_default' \
'-t+[RDF Data format]:FORMAT:(turtle ntriples rdfxml trig n3 nquads jsonld)' \
'--data-format=[RDF Data format]:FORMAT:(turtle ntriples rdfxml trig n3 nquads jsonld)' \
'--base-schema=[Base Schema (used to resolve relative IRIs in Schema)]:IRI:_default' \
'--base-data=[Base RDF Data IRI (used to resolve relative IRIs in RDF data)]:IRI:_default' \
'--reader-mode=[RDF Reader mode]:MODE:(lax strict)' \
'-e+[Endpoint with RDF data (name or URL)]:NAME:_default' \
'--endpoint=[Endpoint with RDF data (name or URL)]:NAME:_default' \
'-r+[Ouput result format]:FORMAT:(details turtle ntriples rdfxml trig n3 nquads compact json csv)' \
'--result-format=[Ouput result format]:FORMAT:(details turtle ntriples rdfxml trig n3 nquads compact json csv)' \
'--map-state=[MapState file name]:FILE:_files' \
'-c+[Config file name]:FILE:_files' \
'--config-file=[Config file name]:FILE:_files' \
'-o+[Output file name, default = terminal]:FILE:_files' \
'--output-file=[Output file name, default = terminal]:FILE:_files' \
'--force-overwrite[Force overwrite to output file if it already exists]' \
'-h[Print help]' \
'--help[Print help]' \
'*::data:_default' \
&& ret=0
;;
(shacl-validate)
_arguments "${_arguments_options[@]}" : \
'-t+[RDF Data format]:FORMAT:(turtle ntriples rdfxml trig n3 nquads jsonld)' \
'--data-format=[RDF Data format]:FORMAT:(turtle ntriples rdfxml trig n3 nquads jsonld)' \
'--base-data=[Base IRI (used to resolve relative IRIs in RDF data)]:IRI:_default' \
'--reader-mode=[RDF Reader mode]:MODE:(lax strict)' \
'-s+[Shapes graph\: file, URI or -, if not set, it assumes the shapes come from the data]:INPUT:_default' \
'--shapes=[Shapes graph\: file, URI or -, if not set, it assumes the shapes come from the data]:INPUT:_default' \
'-f+[Shapes file format]:FORMAT:(internal turtle ntriples rdfxml trig n3 nquads jsonld)' \
'--shapes-format=[Shapes file format]:FORMAT:(internal turtle ntriples rdfxml trig n3 nquads jsonld)' \
'--base-shapes=[Base IRI (used to resolve relative IRIs in Shapes)]:IRI:_default' \
'-e+[Endpoint with RDF data (URL or name)]:ENDPOINT:_default' \
'--endpoint=[Endpoint with RDF data (URL or name)]:ENDPOINT:_default' \
'-m+[Execution mode]:MODE:(native sparql)' \
'--mode=[Execution mode]:MODE:(native sparql)' \
'-r+[Ouput result format]:FORMAT:(details turtle ntriples rdfxml trig n3 nquads minimal compact json csv)' \
'--result-format=[Ouput result format]:FORMAT:(details turtle ntriples rdfxml trig n3 nquads minimal compact json csv)' \
'--sort_by=[Sort result by]:SORT_MODE:(severity node component value path sourceshape details)' \
'-c+[Config file name]:FILE:_files' \
'--config-file=[Config file name]:FILE:_files' \
'-o+[Output file name, default = terminal]:FILE:_files' \
'--output-file=[Output file name, default = terminal]:FILE:_files' \
'--force-overwrite[Force overwrite to output file if it already exists]' \
'-h[Print help]' \
'--help[Print help]' \
'*::data:_default' \
&& ret=0
;;
(data)
_arguments "${_arguments_options[@]}" : \
'-t+[RDF Data format]:FORMAT:(turtle ntriples rdfxml trig n3 nquads jsonld)' \
'--data-format=[RDF Data format]:FORMAT:(turtle ntriples rdfxml trig n3 nquads jsonld)' \
'-b+[Base IRI]:IRI:_default' \
'--base=[Base IRI]:IRI:_default' \
'-e+[Endpoint with RDF data (URL or name)]:Endpoint:_default' \
'--endpoint=[Endpoint with RDF data (URL or name)]:Endpoint:_default' \
'--reader-mode=[RDF Reader mode]:MODE:(lax strict)' \
'-r+[Ouput result format]:FORMAT:(turtle ntriples jsonld rdfxml trig n3 nquads compact json plantuml svg png)' \
'--result-format=[Ouput result format]:FORMAT:(turtle ntriples jsonld rdfxml trig n3 nquads compact json plantuml svg png)' \
'-c+[Config file name]:FILE:_files' \
'--config-file=[Config file name]:FILE:_files' \
'-o+[Output file name, default = terminal]:FILE:_files' \
'--output-file=[Output file name, default = terminal]:FILE:_files' \
'--force-overwrite[Force overwrite to output file if it already exists]' \
'-h[Print help]' \
'--help[Print help]' \
'*::data:_default' \
&& ret=0
;;
(node)
_arguments "${_arguments_options[@]}" : \
'-n+[Node to show information (can be a URI or prefixed name)]:Node:_default' \
'--node=[Node to show information (can be a URI or prefixed name)]:Node:_default' \
'-t+[RDF Data format]:FORMAT:(turtle ntriples rdfxml trig n3 nquads jsonld)' \
'--data-format=[RDF Data format]:FORMAT:(turtle ntriples rdfxml trig n3 nquads jsonld)' \
'-e+[Endpoint with RDF data (URL or name)]:Endpoint:_default' \
'--endpoint=[Endpoint with RDF data (URL or name)]:Endpoint:_default' \
'-b+[Base IRI]:IRI:_default' \
'--base=[Base IRI]:IRI:_default' \
'--reader-mode=[RDF Reader mode]:MODE:(lax strict)' \
'-m+[Mode used to show the node information]:MODE:(outgoing incoming both)' \
'--show-node-mode=[Mode used to show the node information]:MODE:(outgoing incoming both)' \
'--show-hyperlinks=[Show hyperlinks in the output]:SHOW_HYPERLINKS:(true false)' \
'*-p+[List of predicates to show]:PREDICATES:_default' \
'*--predicates=[List of predicates to show]:PREDICATES:_default' \
'-d+[outgoing number of levels, default = 1]:NUMBER:_default' \
'--depth=[outgoing number of levels, default = 1]:NUMBER:_default' \
'-c+[Config file name]:FILE:_files' \
'--config-file=[Config file name]:FILE:_files' \
'-o+[Output file name, default = terminal]:FILE:_files' \
'--output-file=[Output file name, default = terminal]:FILE:_files' \
'--force-overwrite[Force overwrite to output file if it already exists]' \
'-h[Print help]' \
'--help[Print help]' \
'*::data:_default' \
&& ret=0
;;
(shacl)
_arguments "${_arguments_options[@]}" : \
'-t+[RDF Data format]:FORMAT:(turtle ntriples rdfxml trig n3 nquads jsonld)' \
'--data-format=[RDF Data format]:FORMAT:(turtle ntriples rdfxml trig n3 nquads jsonld)' \
'--reader-mode=[RDF Reader mode]:MODE:(lax strict)' \
'-e+[Endpoint with RDF data (URL or name)]:Endpoint:_default' \
'--endpoint=[Endpoint with RDF data (URL or name)]:Endpoint:_default' \
'-s+[Shapes graph\: File, URI or - for stdin, if not set, it assumes the shapes come from the data]:INPUT:_default' \
'--shapes=[Shapes graph\: File, URI or - for stdin, if not set, it assumes the shapes come from the data]:INPUT:_default' \
'-f+[Shapes file format]:FORMAT:(internal turtle ntriples rdfxml trig n3 nquads jsonld)' \
'--shapes-format=[Shapes file format]:FORMAT:(internal turtle ntriples rdfxml trig n3 nquads jsonld)' \
'--base-data=[Base RDF Data (used to resolve relative IRIs in RDF data)]:IRI:_default' \
'--base-shapes=[Base RDF Data (used to resolve relative IRIs in Shapes)]:IRI:_default' \
'-r+[Result shapes format]:FORMAT:(internal turtle ntriples rdfxml trig n3 nquads jsonld)' \
'--result-shapes-format=[Result shapes format]:FORMAT:(internal turtle ntriples rdfxml trig n3 nquads jsonld)' \
'-c+[Config file name]:FILE:_files' \
'--config-file=[Config file name]:FILE:_files' \
'-o+[Output file name, default = terminal]:FILE:_files' \
'--output-file=[Output file name, default = terminal]:FILE:_files' \
'--force-overwrite[Force overwrite to output file if it already exists]' \
'-h[Print help]' \
'--help[Print help]' \
'*::data:_default' \
&& ret=0
;;
(dctap)
_arguments "${_arguments_options[@]}" : \
'-s+[DCTap source file]:FILE:_default' \
'--source-file=[DCTap source file]:FILE:_default' \
'-f+[DCTap file format]:FORMAT:(csv)' \
'--format=[DCTap file format]:FORMAT:(csv)' \
'-r+[Ouput results format]:FORMAT:(internal json)' \
'--result-format=[Ouput results format]:FORMAT:(internal json)' \
'-c+[Config file name]:FILE:_files' \
'--config-file=[Config file name]:FILE:_files' \
'-o+[Output file name, default = terminal]:FILE:_files' \
'--output-file=[Output file name, default = terminal]:FILE:_files' \
'--force-overwrite[Force overwrite to output file if it already exists]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(convert)
_arguments "${_arguments_options[@]}" : \
'-m+[Input mode]:MODE:(shacl shex dctap)' \
'--input-mode=[Input mode]:MODE:(shacl shex dctap)' \
'-s+[Source file name (URI, file or - for stdin)]:INPUT:_default' \
'--source-file=[Source file name (URI, file or - for stdin)]:INPUT:_default' \
'-f+[Input file format]:FORMAT:(csv shexc shexj turtle)' \
'--format=[Input file format]:FORMAT:(csv shexc shexj turtle)' \
'-b+[Base IRI (used to resolve relative IRIs)]:IRI:_default' \
'--base=[Base IRI (used to resolve relative IRIs)]:IRI:_default' \
'-r+[Result format]:FORMAT:(default internal json shexc shexj turtle plantuml html svg png)' \
'--result-format=[Result format]:FORMAT:(default internal json shexc shexj turtle plantuml html svg png)' \
'-t+[Target folder]:FOLDER:_files' \
'--target-folder=[Target folder]:FOLDER:_files' \
'-e+[Templates folder]:FOLDER:_files' \
'--templates-folder=[Templates folder]:FOLDER:_files' \
'-l+[shape label (default = START)]:LABEL:_default' \
'--shape-label=[shape label (default = START)]:LABEL:_default' \
'--reader-mode=[RDF Reader mode]:MODE:(lax strict)' \
'-x+[Result mode for conversion]:MODE:(sparql shex uml html shacl)' \
'--export-mode=[Result mode for conversion]:MODE:(sparql shex uml html shacl)' \
'--show-time=[Show processing time]:SHOW_TIME:(true false)' \
'-c+[Config file name]:FILE:_files' \
'--config-file=[Config file name]:FILE:_files' \
'-o+[Output file name, default = terminal]:FILE:_files' \
'--output-file=[Output file name, default = terminal]:FILE:_files' \
'--force-overwrite[Force overwrite to output file if it already exists]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(compare)
_arguments "${_arguments_options[@]}" : \
'--mode1=[Input mode first schema]:MODE:(shacl shex dctap service)' \
'--mode2=[Input mode second schema]:MODE:(shacl shex dctap service)' \
'--schema1=[Schema 1 (URI, file or - for stdin)]:INPUT:_default' \
'--schema2=[Schema 2 (URI, file or - for stdin)]:INPUT:_default' \
'--format1=[File format 1]:FORMAT:(shexc shexj turtle rdfxml ntriples)' \
'--format2=[File format 2]:FORMAT:(shexc shexj turtle rdfxml ntriples)' \
'--base1=[Base IRI for 1st Schema]:IRI:_default' \
'--base2=[Base IRI for 2nd Schema]:IRI:_default' \
'-r+[Result format]:FORMAT:(internal json)' \
'--result-format=[Result format]:FORMAT:(internal json)' \
'-t+[Target folder]:FOLDER:_files' \
'--target-folder=[Target folder]:FOLDER:_files' \
'--shape1=[shape1 (default = START)]:LABEL:_default' \
'--shape2=[shape2 (default = START)]:LABEL:_default' \
'--reader-mode=[RDF Reader mode]:MODE:(lax strict)' \
'--show-time=[Show processing time]:SHOW_TIME:(true false)' \
'-c+[Config file name]:FILE:_files' \
'--config-file=[Config file name]:FILE:_files' \
'-o+[Output file name, default = terminal]:FILE:_files' \
'--output-file=[Output file name, default = terminal]:FILE:_files' \
'--force-overwrite[Force overwrite to output file if it already exists]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(rdf-config)
_arguments "${_arguments_options[@]}" : \
'-s+[Source file name (URI, file or - for stdin)]:INPUT:_default' \
'--source-file=[Source file name (URI, file or - for stdin)]:INPUT:_default' \
'-r+[Output result rdf-config format]:FORMAT:(internal yaml)' \
'--result-format=[Output result rdf-config format]:FORMAT:(internal yaml)' \
'-f+[rdf-config format]:FORMAT:(yaml)' \
'--format=[rdf-config format]:FORMAT:(yaml)' \
'-c+[Config file name]:FILE:_files' \
'--config-file=[Config file name]:FILE:_files' \
'-o+[Output file name, default = terminal]:FILE:_files' \
'--output-file=[Output file name, default = terminal]:FILE:_files' \
'--force-overwrite[Force overwrite to output file if it already exists]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(service)
_arguments "${_arguments_options[@]}" : \
'-s+[SPARQL service URL]:URL:_default' \
'--service=[SPARQL service URL]:URL:_default' \
'-f+[SPARQL service format]:FORMAT:(turtle ntriples rdfxml trig n3 nquads jsonld)' \
'--format=[SPARQL service format]:FORMAT:(turtle ntriples rdfxml trig n3 nquads jsonld)' \
'-r+[Output result service format]:FORMAT:(internal mie json)' \
'--result-format=[Output result service format]:FORMAT:(internal mie json)' \
'--reader-mode=[RDF Reader mode]:MODE:(lax strict)' \
'--base=[Base used to resolve relative IRIs in the service description]:IRI:_default' \
'-c+[Config file name]:FILE:_files' \
'--config-file=[Config file name]:FILE:_files' \
'-o+[Output file name, default = terminal]:FILE:_files' \
'--output-file=[Output file name, default = terminal]:FILE:_files' \
'--force-overwrite[Force overwrite to output file if it already exists]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(query)
_arguments "${_arguments_options[@]}" : \
'-t+[RDF Data format]:FORMAT:(turtle ntriples rdfxml trig n3 nquads jsonld)' \
'--data-format=[RDF Data format]:FORMAT:(turtle ntriples rdfxml trig n3 nquads jsonld)' \
'-b+[Base IRI (used to resolve relative IRIs in RDF data)]:IRI:_default' \
'--base=[Base IRI (used to resolve relative IRIs in RDF data)]:IRI:_default' \
'--query-type=[Query type (SELECT, ASK, CONSTRUCT, DESCRIBE)]:TYPE:(select construct ask describe)' \
'--reader-mode=[RDF Reader mode]:MODE:(lax strict)' \
'-q+[SPARQL query]:INPUT:_default' \
'--query=[SPARQL query]:INPUT:_default' \
'-e+[Endpoint with RDF data (URL or name)]:Endpoint:_default' \
'--endpoint=[Endpoint with RDF data (URL or name)]:Endpoint:_default' \
'-r+[Result query format]:FORMAT:(internal turtle ntriples jsonld rdfxml csv trig n3 nquads)' \
'--result-format=[Result query format]:FORMAT:(internal turtle ntriples jsonld rdfxml csv trig n3 nquads)' \
'-c+[Config file name]:FILE:_files' \
'--config-file=[Config file name]:FILE:_files' \
'-o+[Output file name, default = terminal]:FILE:_files' \
'--output-file=[Output file name, default = terminal]:FILE:_files' \
'--force-overwrite[Force overwrite to output file if it already exists]' \
'-h[Print help]' \
'--help[Print help]' \
'*::data:_default' \
&& ret=0
;;
(generate)
_arguments "${_arguments_options[@]}" : \
'-s+[]:Schema file (ShEx or SHACL):_default' \
'--schema=[]:Schema file (ShEx or SHACL):_default' \
'-f+[]:Schema format:(auto shex shacl)' \
'--schema-format=[]:Schema format:(auto shex shacl)' \
'-n+[]:Number of entities to generate:_default' \
'--entities=[]:Number of entities to generate:_default' \
'-r+[]:Output RDF format:(turtle ntriples rdfxml trig n3 nquads jsonld)' \
'--result-format=[]:Output RDF format:(turtle ntriples rdfxml trig n3 nquads jsonld)' \
'--seed=[]:Random seed for reproducible generation:_default' \
'-p+[]:Number of parallel threads:_default' \
'--parallel=[]:Number of parallel threads:_default' \
'-c+[Config file name]:FILE:_files' \
'--config-file=[Config file name]:FILE:_files' \
'-o+[Output file name, default = terminal]:FILE:_files' \
'--output-file=[Output file name, default = terminal]:FILE:_files' \
'--force-overwrite[Force overwrite to output file if it already exists]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(materialize)
_arguments "${_arguments_options[@]}" : \
'-s+[ShEx schema, FILE, URI or - for stdin]:INPUT:_default' \
'--schema=[ShEx schema, FILE, URI or - for stdin]:INPUT:_default' \
'-f+[ShEx schema format (ShExC, ShExJ, ...), default = ShExC]:FORMAT:(internal simple shexc shexj json jsonld turtle ntriples rdfxml trig n3 nquads)' \
'--schema-format=[ShEx schema format (ShExC, ShExJ, ...), default = ShExC]:FORMAT:(internal simple shexc shexj json jsonld turtle ntriples rdfxml trig n3 nquads)' \
'--reader-mode=[RDF reader mode (strict or lax)]:MODE:(lax strict)' \
'-b+[Base IRI for the schema]:IRI:_default' \
'--base=[Base IRI for the schema]:IRI:_default' \
'-m+[JSON file containing the MapState produced by ShEx validation with Map semantic actions]:FILE:_files' \
'--map-state=[JSON file containing the MapState produced by ShEx validation with Map semantic actions]:FILE:_files' \
'-n+[IRI of the root subject node; a fresh blank node is used when omitted]:IRI:_default' \
'--node=[IRI of the root subject node; a fresh blank node is used when omitted]:IRI:_default' \
'-r+[RDF output format for the materialized graph (Turtle, NTriples, ...)]:FORMAT:(turtle ntriples jsonld rdfxml trig n3 nquads compact json plantuml svg png)' \
'--result-format=[RDF output format for the materialized graph (Turtle, NTriples, ...)]:FORMAT:(turtle ntriples jsonld rdfxml trig n3 nquads compact json plantuml svg png)' \
'-c+[Config file name]:FILE:_files' \
'--config-file=[Config file name]:FILE:_files' \
'-o+[Output file name, default = terminal]:FILE:_files' \
'--output-file=[Output file name, default = terminal]:FILE:_files' \
'--force-overwrite[Force overwrite to output file if it already exists]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(completion)
_arguments "${_arguments_options[@]}" : \
'-o+[Output file name, default = terminal]:FILE:_files' \
'--output-file=[Output file name, default = terminal]:FILE:_files' \
'--force-overwrite[Force overwrite to output file if it already exists]' \
'-h[Print help]' \
'--help[Print help]' \
':shell:(bash elvish fig fish powershell zsh)' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_rudof__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:rudof-help-command-$line[1]:"
        case $line[1] in
            (shapemap)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(shex)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(validate)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(shex-validate)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(shacl-validate)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(data)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(node)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(shacl)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(dctap)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(convert)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(compare)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(rdf-config)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(service)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(query)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(generate)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(materialize)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(completion)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
}

(( $+functions[_rudof_commands] )) ||
_rudof_commands() {
    local commands; commands=(
'shapemap:Show information about ShEx ShapeMaps' \
'shex:Show information about ShEx schemas' \
'validate:Validate RDF data using ShEx or SHACL' \
'shex-validate:Validate RDF using ShEx schemas' \
'shacl-validate:Validate RDF data using SHACL shapes' \
'data:Show information about RDF data' \
'node:Show information about a node in an RDF Graph' \
'shacl:Show information about SHACL shapes The SHACL schema can be passed through the data options or the optional schema options to provide an interface similar to Shacl-validate' \
'dctap:Arguments for the \`dctap\` command' \
'convert:Arguments for the \`convert\` command' \
'compare:Compare two shapes (which can be in different formats)' \
'rdf-config:Show information about rdf config' \
'service:Show information about SPARQL service' \
'query:Run SPARQL queries' \
'generate:Generate synthetic RDF data from ShEx or SHACL schemas' \
'materialize:Materialize an RDF graph from a ShEx schema and Map semantic-action state' \
'completion:Generates a shell completion script for the specified shell' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'rudof commands' commands "$@"
}
(( $+functions[_rudof__compare_commands] )) ||
_rudof__compare_commands() {
    local commands; commands=()
    _describe -t commands 'rudof compare commands' commands "$@"
}
(( $+functions[_rudof__completion_commands] )) ||
_rudof__completion_commands() {
    local commands; commands=()
    _describe -t commands 'rudof completion commands' commands "$@"
}
(( $+functions[_rudof__convert_commands] )) ||
_rudof__convert_commands() {
    local commands; commands=()
    _describe -t commands 'rudof convert commands' commands "$@"
}
(( $+functions[_rudof__data_commands] )) ||
_rudof__data_commands() {
    local commands; commands=()
    _describe -t commands 'rudof data commands' commands "$@"
}
(( $+functions[_rudof__dctap_commands] )) ||
_rudof__dctap_commands() {
    local commands; commands=()
    _describe -t commands 'rudof dctap commands' commands "$@"
}
(( $+functions[_rudof__generate_commands] )) ||
_rudof__generate_commands() {
    local commands; commands=()
    _describe -t commands 'rudof generate commands' commands "$@"
}
(( $+functions[_rudof__help_commands] )) ||
_rudof__help_commands() {
    local commands; commands=(
'shapemap:Show information about ShEx ShapeMaps' \
'shex:Show information about ShEx schemas' \
'validate:Validate RDF data using ShEx or SHACL' \
'shex-validate:Validate RDF using ShEx schemas' \
'shacl-validate:Validate RDF data using SHACL shapes' \
'data:Show information about RDF data' \
'node:Show information about a node in an RDF Graph' \
'shacl:Show information about SHACL shapes The SHACL schema can be passed through the data options or the optional schema options to provide an interface similar to Shacl-validate' \
'dctap:Arguments for the \`dctap\` command' \
'convert:Arguments for the \`convert\` command' \
'compare:Compare two shapes (which can be in different formats)' \
'rdf-config:Show information about rdf config' \
'service:Show information about SPARQL service' \
'query:Run SPARQL queries' \
'generate:Generate synthetic RDF data from ShEx or SHACL schemas' \
'materialize:Materialize an RDF graph from a ShEx schema and Map semantic-action state' \
'completion:Generates a shell completion script for the specified shell' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'rudof help commands' commands "$@"
}
(( $+functions[_rudof__help__compare_commands] )) ||
_rudof__help__compare_commands() {
    local commands; commands=()
    _describe -t commands 'rudof help compare commands' commands "$@"
}
(( $+functions[_rudof__help__completion_commands] )) ||
_rudof__help__completion_commands() {
    local commands; commands=()
    _describe -t commands 'rudof help completion commands' commands "$@"
}
(( $+functions[_rudof__help__convert_commands] )) ||
_rudof__help__convert_commands() {
    local commands; commands=()
    _describe -t commands 'rudof help convert commands' commands "$@"
}
(( $+functions[_rudof__help__data_commands] )) ||
_rudof__help__data_commands() {
    local commands; commands=()
    _describe -t commands 'rudof help data commands' commands "$@"
}
(( $+functions[_rudof__help__dctap_commands] )) ||
_rudof__help__dctap_commands() {
    local commands; commands=()
    _describe -t commands 'rudof help dctap commands' commands "$@"
}
(( $+functions[_rudof__help__generate_commands] )) ||
_rudof__help__generate_commands() {
    local commands; commands=()
    _describe -t commands 'rudof help generate commands' commands "$@"
}
(( $+functions[_rudof__help__help_commands] )) ||
_rudof__help__help_commands() {
    local commands; commands=()
    _describe -t commands 'rudof help help commands' commands "$@"
}
(( $+functions[_rudof__help__materialize_commands] )) ||
_rudof__help__materialize_commands() {
    local commands; commands=()
    _describe -t commands 'rudof help materialize commands' commands "$@"
}
(( $+functions[_rudof__help__node_commands] )) ||
_rudof__help__node_commands() {
    local commands; commands=()
    _describe -t commands 'rudof help node commands' commands "$@"
}
(( $+functions[_rudof__help__query_commands] )) ||
_rudof__help__query_commands() {
    local commands; commands=()
    _describe -t commands 'rudof help query commands' commands "$@"
}
(( $+functions[_rudof__help__rdf-config_commands] )) ||
_rudof__help__rdf-config_commands() {
    local commands; commands=()
    _describe -t commands 'rudof help rdf-config commands' commands "$@"
}
(( $+functions[_rudof__help__service_commands] )) ||
_rudof__help__service_commands() {
    local commands; commands=()
    _describe -t commands 'rudof help service commands' commands "$@"
}
(( $+functions[_rudof__help__shacl_commands] )) ||
_rudof__help__shacl_commands() {
    local commands; commands=()
    _describe -t commands 'rudof help shacl commands' commands "$@"
}
(( $+functions[_rudof__help__shacl-validate_commands] )) ||
_rudof__help__shacl-validate_commands() {
    local commands; commands=()
    _describe -t commands 'rudof help shacl-validate commands' commands "$@"
}
(( $+functions[_rudof__help__shapemap_commands] )) ||
_rudof__help__shapemap_commands() {
    local commands; commands=()
    _describe -t commands 'rudof help shapemap commands' commands "$@"
}
(( $+functions[_rudof__help__shex_commands] )) ||
_rudof__help__shex_commands() {
    local commands; commands=()
    _describe -t commands 'rudof help shex commands' commands "$@"
}
(( $+functions[_rudof__help__shex-validate_commands] )) ||
_rudof__help__shex-validate_commands() {
    local commands; commands=()
    _describe -t commands 'rudof help shex-validate commands' commands "$@"
}
(( $+functions[_rudof__help__validate_commands] )) ||
_rudof__help__validate_commands() {
    local commands; commands=()
    _describe -t commands 'rudof help validate commands' commands "$@"
}
(( $+functions[_rudof__materialize_commands] )) ||
_rudof__materialize_commands() {
    local commands; commands=()
    _describe -t commands 'rudof materialize commands' commands "$@"
}
(( $+functions[_rudof__node_commands] )) ||
_rudof__node_commands() {
    local commands; commands=()
    _describe -t commands 'rudof node commands' commands "$@"
}
(( $+functions[_rudof__query_commands] )) ||
_rudof__query_commands() {
    local commands; commands=()
    _describe -t commands 'rudof query commands' commands "$@"
}
(( $+functions[_rudof__rdf-config_commands] )) ||
_rudof__rdf-config_commands() {
    local commands; commands=()
    _describe -t commands 'rudof rdf-config commands' commands "$@"
}
(( $+functions[_rudof__service_commands] )) ||
_rudof__service_commands() {
    local commands; commands=()
    _describe -t commands 'rudof service commands' commands "$@"
}
(( $+functions[_rudof__shacl_commands] )) ||
_rudof__shacl_commands() {
    local commands; commands=()
    _describe -t commands 'rudof shacl commands' commands "$@"
}
(( $+functions[_rudof__shacl-validate_commands] )) ||
_rudof__shacl-validate_commands() {
    local commands; commands=()
    _describe -t commands 'rudof shacl-validate commands' commands "$@"
}
(( $+functions[_rudof__shapemap_commands] )) ||
_rudof__shapemap_commands() {
    local commands; commands=()
    _describe -t commands 'rudof shapemap commands' commands "$@"
}
(( $+functions[_rudof__shex_commands] )) ||
_rudof__shex_commands() {
    local commands; commands=()
    _describe -t commands 'rudof shex commands' commands "$@"
}
(( $+functions[_rudof__shex-validate_commands] )) ||
_rudof__shex-validate_commands() {
    local commands; commands=()
    _describe -t commands 'rudof shex-validate commands' commands "$@"
}
(( $+functions[_rudof__validate_commands] )) ||
_rudof__validate_commands() {
    local commands; commands=()
    _describe -t commands 'rudof validate commands' commands "$@"
}

if [ "$funcstack[1]" = "_rudof" ]; then
    _rudof "$@"
else
    compdef _rudof rudof
fi
