Skip to main content

SeMPyRO (for Semantic Models Python Pydantic RDF Ontology) is a Pydantic models representing classes of DCAT-AP v3 data model.

Project description

SeMPyRO Data Models

SeMPyRO (for Semantic Models Python/Pydantic RDF Ontology) is a Python package containing Pydantic models representing classes of the DCAT-AP v3 data model. It is designed to streamline data validation, conversion to RDF, and schema generation processes.

Key Features

  • Data Validation: Easily validate data against schemas, ensuring its correctness, integrity and DCAT-AP compatibility.
  • RDF Graph Conversion: Convert data into RDF graphs effortlessly, enabling integration with RDF-based systems and applications.
  • Schema Generation: Generate JSON/YAML schemas compatible with the DCAT-AP v3 profile, facilitating interoperability and compliance with standards.
  • Pydantic Integration: Built upon the robust Pydantic library, leveraging its powerful validation capabilities and extending them for RDF handling.

Models

The table below shows the version of the models to which SeMPyRO adheres to.

Model Version URL
Health-RI v2.0.2 health-ri-metadata
DCAT-AP 3.0.0 DCAT-AP
Health-DCAT-AP 6.0.0 Health-DCAT-AP

Note: The Health-DCAT-AP implementation currently includes the minimal subset of fields needed to support the GDI use case.

Background

DCAT

DCAT is an RDF vocabulary designed to facilitate interoperability between data catalogs published on the Web.

DCAT enables a publisher to describe datasets and data services in a catalog using a standard model and vocabulary that facilitates the consumption and aggregation of metadata from multiple catalogs. This can increase the discoverability of datasets and data services. It also makes it possible to have a decentralized approach to publishing data catalogs and makes federated search for datasets across catalogs in multiple sites possible using the same query mechanism and structure. Aggregated DCAT metadata can serve as a manifest file as part of the digital preservation process.

Official DCAT v3 specification

DCAT-AP

DCAT-AP is a DCAT profile for sharing information about Catalogues containing Datasets and Data Services descriptions in Europe, under maintenance by the SEMIC action, Interoperable Europe. This Application Profile provides a minimal common basis within Europe to share Datasets and Data Services cross-border and cross-domain.

Official DCAT-AP v3 specification

Health-RI core data model

Health-RI is a no profit organization in the Netherlands dedicated to improving the reuse of health data for policy, research, and innovation to achieve a learning healthcare system. We have published a Core Metadata Model based on DCAT-AP specification for the sharing of Dutch healthcare-related datasets. Current package includes Pydantic classes for the Health-RI Core model.

Installation

To install the package run

pip install sempyro

Documentation folder contains usage examples executable in Jupiter Notebook. If you want to explore them follow official Jupyter installation guid. Additionally you may need to install pandas and/or erdantic.

Licence

Apache-2.0

Documentation

For more information on package content and usage see:

To push metadata manually to a FAIR Data Point, you can use this Juypter notebook: Pushing metadata to an FDP.

Known issues

Method .get_fields_types() from the ModelAnnotationUtil object returned by RDFModel.annotate_model() returns an AttributeError when run under Python 3.9. This method does work in Python 3.10 and up. See issue #43.

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

sempyro-2.2.0.tar.gz (15.6 MB view details)

Uploaded Source

Built Distribution

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

sempyro-2.2.0-py3-none-any.whl (98.8 kB view details)

Uploaded Python 3

File details

Details for the file sempyro-2.2.0.tar.gz.

File metadata

  • Download URL: sempyro-2.2.0.tar.gz
  • Upload date:
  • Size: 15.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for sempyro-2.2.0.tar.gz
Algorithm Hash digest
SHA256 1eb1bf7c141870de019238d9ea94cb2ca0b7908aa0f7fd3368341cd0dafc00c2
MD5 38a6167cfe6ea24ecde84c300338e50b
BLAKE2b-256 abfdd3f5458457972f504b0c1aa77bda3375eec8980896d4459ddd7d1050567e

See more details on using hashes here.

Provenance

The following attestation bundles were made for sempyro-2.2.0.tar.gz:

Publisher: publish_package.yml on Health-RI/SeMPyRO

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sempyro-2.2.0-py3-none-any.whl.

File metadata

  • Download URL: sempyro-2.2.0-py3-none-any.whl
  • Upload date:
  • Size: 98.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for sempyro-2.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2708a2e1be353fa17d5f1771ba216c6ebb7a0df432a5edcd9fe440074baa59f3
MD5 8b656837b2b8b882cf4ac7cbe3247cce
BLAKE2b-256 86c386e1a2c07660f6bce3c443c942e1dd629db414e451c6387332fa68896261

See more details on using hashes here.

Provenance

The following attestation bundles were made for sempyro-2.2.0-py3-none-any.whl:

Publisher: publish_package.yml on Health-RI/SeMPyRO

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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