Skip to main content

Documentation

A slightly opinionated, common set of 'rules' for creating rdf data using 'rdf-engine':

  • Data Rules: for loading tables (csv, parquet), hierarchical (json), and rdf (ttl).
  • Mapping rule: SPARQL construct
  • Ontology rules: Inference and validation using Shifty

These rules come together in the 'engine'.

Development

History/context: This framework is a generalization of BIM2RDF.

Develop with uv sync --all-packages --all-extras.

Run python tasks.py stamp_ver before pypi publishing.

Design Choices

These are choices given the common use case of mapping data to an ontology. They are somewhat firm.

  • RDF1.2 annotates tripes with metadata as <<?s ?p ?o>> ?mp ?mo where ?mp and ?mo correspond to simple (key,value) pairs of metadata.
  • Mappings are in the form of SPARQL constructs stored as files with a .mapping.rq extension (can also be .mapping.sparql).
  • Each (specified) ontology will be processed separately.
  • By default, no assumption about data identifier uniqueness is made: A random unique identifier node, with the default 'anon.id' prefix 'urn:rdf-rules:anon🆔', will be created to identify data (table 'rows' or json data). It is the user's responsibility to make 'nice' named nodes: This can be by making a 'rule' to SPARQL construct nodes or by specifying json2rdf_options={'subject_id_keys': {'id'}, id_prefix=(..., ...) } argument for Table or JSON data rules. With these options, nodes can be made unique over all data.

Usage

Examine how rules are fed into an engine in the tests. The common workflow is:

  1. Specify rules. Each rule is constructed by providing arguments to mkrule. mkrule processes objects such as file paths and data objects. A distinction is made for 'data rules'; These are only triggered once in the beginning.

  2. Specify engine run parameters. See run function documentation.

  3. Extract data subsets with queries. 'System' queries are mapped_and_inferred and validation (results). It's best to extract these using the query function as they slightly depend on configuration.

Metadata

Release files for rdf-rules 2026.10.82

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for rdf-rules 2026.10.82
File Size Uploaded
rdf_rules-2026.10.82.tar.gz 9.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for rdf-rules 2026.10.82
File Interpreter ABI Platform
rdf_rules-2026.10.82-py3-none-any.whl Python 3 none any Details

Total release size: 23.9 kB

Release files / rdf_rules-2026.10.82.tar.gz

Download URL rdf_rules-2026.10.82.tar.gz
Size 9.3 kB
Tags Source
SHA-256 checksum
How to use checksums
0d6b1f7e5d68bf3a15a913ae37a929735e2b5d545dcf3dccd4a01bdbd1dbd42a
BLAKE2b-256 checksum
How to use checksums
752d22f6c110012b54a7b9a17ee7efb432c16c4c32f00e2fb31995a5167d79c6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 6, 2026.

Transparency log

Release files / rdf_rules-2026.10.82-py3-none-any.whl

Download URL rdf_rules-2026.10.82-py3-none-any.whl
Size 14.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e9e4a00f2ee1b57c2531b660b060aec96019f07ecc878c7481de34c6dcf44f6b
BLAKE2b-256 checksum
How to use checksums
74f0f343ca9707b85668704a6c93c217ac0fdf39d49daf2e908b0c2d4ba6b4c6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 6, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page