{"categories":[{"label":"Compilers","url":"https://skillfed.io/packages/category/software-development-compilers"}],"enrichment":{"capability":"PyShEx parses and validates RDF data against Shape Expressions (ShEx) schemas, implementing the ShEx 2.0 specification to check whether RDF graphs conform to defined structural constraints.","skillfed_tags":["rdf-validation","semantic-web","schema-validation"],"use_cases":["Validate RDF data against organizational or domain-specific shape constraints before ingesting into a knowledge graph.","Test RDF export pipelines to ensure generated triples conform to expected structural schemas.","Query SPARQL endpoints and validate the results against ShEx schemas in a single workflow.","Batch-validate large RDF files or multiple datasets using the shexeval CLI with focus node selection by type or predicate.","Integrate shape validation into linked data publishing pipelines to catch schema violations early."],"what_it_does":"PyShEx is a Python implementation of the Shape Expressions Language 2.0 specification, allowing you to parse ShEx schemas (in both ShExC and ShExJ formats) and validate RDF graphs against them. It determines whether RDF nodes and their properties conform to the structural and type constraints defined in a ShEx schema, supporting features like SPARQL-based focus node selection, RDF Collections flattening, and detailed validation reporting.\n\nThe package wraps the formal ShEx specification closely in Python code, translating semantic rules directly into executable logic. It includes a command-line tool (shexeval) for batch validation and integrates with rdflib for RDF parsing and SPARQL endpoints. The package depends on ShExJSG for AST representation, pyshexc for ShExC parsing, and several RDF utilities (rdflib-shim, sparqlwrapper, sparqlslurper) to handle diverse RDF sources and query patterns.","worth_installing":"Yes, with conditions. Install if you need to validate RDF against ShEx schemas and can tolerate that some unit tests are failing due to a long maintenance gap. The package is actively maintained now and supports current Python versions (3.10\u20133.14), but review the open issues and test manifest before relying on complex or edge-case validation logic. No known security vulnerabilities."},"id":"pyshex","links":{"html":"https://skillfed.io/packages/pyshex","md":"https://skillfed.io/packages/pyshex.md","pypi":"https://pypi.org/project/pyshex/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-05-07","license_spdx":null,"license_treatment":"permissive","name":"PyShEx","python_support":"supports_current","summary":"Python ShEx interpreter"},"popularity":{"monthly_downloads":302591,"position":7820,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.9.0"}
