Skip to main content

No project description provided

Project description

MkRDF

[!WARNING]

This project is still under development and does not yet covers all use cases of Jekyll RDF. The interface are unstable and might break in future versions.

MkDocs plugin to build pages from RDF Graphs.

A use case it to covers the representation of an entire graph with templates to represent instances of each class.

You need to install mkrdf e.g. with pip and configure your mkdocs setup to use it.

The section in your mkdocs.yml file could look as follows:

[…]

plugins:
  - mkrdf:
      graph_file: simpsons.ttl
      base_iri: https://simpsons.example.org/
      selection:
        preset: subject_relative
      class_template_map:
        http://xmlns.com/foaf/0.1/Person: person.html
      instance_template_map:
        https://simpsons.example.org/Marge: marge.html

Selection

The selection is responsible to choose for which IRIs from the provided graph a page should be build. The configuration key has four sub keys, preset, query, list, and file. If multiple of the keys are set, the union of the selections is build.

  • preset can hold the values subject_relative (default), subject_all, or none,
    • subject_relative selects all subject IRIs that share the configured base_iri, i.e. SELECT ?resourceIri { ?resourceIri ?p ?o . FILTER regex(str(?resourceIri), concat("^", str(?base_iri))) },
    • subject_relative selects all subject IRIs irrespective of the base_iri, i.e. SELECT ?resourceIri { ?resourceIri ?p ?o }.
    • none will skip all other selections and not IRI is selected
  • query or queries needs to provide a string (or list of strings) with a valid SPARQL 1.1 query, that binds the variable ?resourceIri to all selected IRIs.
  • list an explicit list of IRIs
  • file a file explicitly listing the IRIs

Related Projects

The implementation of jinja-rdf, kisumu, and mkrdf is a result of the lessons learned from JekyllRDF.

Jinja RDF

Jinja RDF

The library that provides the filters and data model (the core).

Kisumu

kisumu

A simple command line tool and library to render a template + an RDF graph -> a static document. It is also build on top of Jinja RDF.

Jekyll RDF

Jekyll RDF

The implementation of jinja-rdf, kisumu, and mkrdf is a result of the lessons learned from JekyllRDF. Currently the three tools don't cover all features, that were implemented in JekyllRDF, if you miss a feature that you need, please provide a pull request to one of the projects. (Read more about the relation.)

Migrate from Jekyll RDF

If you migrate from Jekyll RDF you need to setup a new mkdocs project, adjust your templates and configuration. Many things are named differently with the hope to make it simpler for users of mkrdf without previous knowledge about Jekyll RDF.

Configuration

path is now graph_file restriction is now selection (note, that the query now binds the variable ?resourceIri instead of ?resourceUri) baseiri is now base_iri

Filters

Those are the filters provided by JekyllRDF.

  • rdf_get (not available)
  • rdf_property -> property, properties Resource[]
  • rdf_inverse_property -> property_inv, properties_inv
  • sparql_query -> query
  • rdf_container (not available, TODO)
  • rdf_collection (not available, TODO)

Versioning

For now, I follow the 0ver scheme.

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

mkrdf-0.2.3.tar.gz (8.9 kB view details)

Uploaded Source

Built Distribution

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

mkrdf-0.2.3-py3-none-any.whl (9.8 kB view details)

Uploaded Python 3

File details

Details for the file mkrdf-0.2.3.tar.gz.

File metadata

  • Download URL: mkrdf-0.2.3.tar.gz
  • Upload date:
  • Size: 8.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.13.9 Linux/6.16.10-200.fc42.x86_64

File hashes

Hashes for mkrdf-0.2.3.tar.gz
Algorithm Hash digest
SHA256 c63c5b0623842a7fb0bb858e032aaad12b173e0fc016ebb95854c1dd361a0ee5
MD5 7863ffee0726f8a3f445de8f82fb4cb4
BLAKE2b-256 8cffb39838daa74c2e208f75ae96a9cca009ee04f563d8d937be74ac04ad7c99

See more details on using hashes here.

File details

Details for the file mkrdf-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: mkrdf-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 9.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.13.9 Linux/6.16.10-200.fc42.x86_64

File hashes

Hashes for mkrdf-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 94caccbeb256eb29d0ff0f63fa0e8a05a0e8d2d40ac529b1dc2a954aeb6075d8
MD5 8292a725be8e841eea9be00a28d99bf9
BLAKE2b-256 0763cfa23b5e9fcac389ca91aa7d3ca4318fe254f627d59973cf5128b9fb8326

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