Skip to main content

CELINE Ontologies support libraries

Project description

CELINE Ontology

Semantic artifacts and mapping tools for the CELINE project, supporting:

  • semantic interoperability across datasets
  • Digital Twins (WP3)
  • Demonstrators, KPIs, and evaluation (WP5)
  • mapping from tabular data to RDF / JSON-LD

The CELINE ontology is a unified ontology profile — not a standalone domain ontology — that connects PECO, SAREF, SOSA, BIGG and EM-KPI into a coherent semantic target for the CELINE ecosystem.

Namespace: https://w3id.org/celine-eu#

Documentation: https://celine-eu.github.io/ontologies/


Repository structure

specs/          Ontology source artifacts (versioned)
  current/      → symlink to latest version
  v0.3/
    celine.ttl           OWL/RDF definition (Turtle)
    celine.shacl.ttl     SHACL validation shapes
    celine.jsonld        JSON-LD context
    celine.schema.json   JSON Schema for API validation

releases/       Generated WIDOCO HTML documentation (versioned)
  current/      → symlink to latest version
  v0.3/         index-en.html + supporting assets

src/            Python package (celine-ontologies)
  celine/
    mapper/     Declarative data→RDF mapping engine
    ontologies/ Ontology management CLI

Ontology artifacts

Artifact Description
celine.ttl Formal OWL/RDF definition
celine.shacl.ttl SHACL shapes for semantic validation
celine.jsonld JSON-LD @context for APIs and pipelines
celine.schema.json JSON Schema for API-level payload validation

Python package

# Mapper API only (OutputMapper, CelineGraphBuilder)
pip install celine-ontologies[mapper]

# Ontology management CLI (fetch, analyze, tree)
pip install celine-ontologies[cli]

# Everything
pip install celine-ontologies[all]

Mapper usage

from pathlib import Path
from celine.mapper import OutputMapper

mapper = OutputMapper.from_yaml_path(
    Path("src/celine/mapper/specs/obs_rec_energy.yaml"),
    context={"community_key": "it-folgaria"},
)
nodes = mapper.map_many(rows)

CLI

# Validate a mapping spec
celine-ontologies mapper validate-spec path/to/spec.yaml

# Map data to JSON-LD
celine-ontologies mapper map spec.yaml input.json

# Map + SHACL validation (requires [mapper])
celine-ontologies mapper shacl-check spec.yaml input.json

# Ontology utilities
celine-ontologies fetch
celine-ontologies analyze
celine-ontologies tree

How the semantic stack fits together

Tabular data
  ↓  mapping spec (YAML)
JSON-LD  ←  celine.jsonld context
  ↓  celine.schema.json
JSON Schema validation
  ↓  RDF expansion
SHACL validation  ←  celine.shacl.ttl
  ↓
CELINE Knowledge Graph / Digital Twin

Releasing a new version

# 1. Add specs/vX.X/ with the new ontology artifacts

# 2. Update the specs/current symlink and tag
task release:ontology

# 3. Generate WIDOCO HTML docs locally (requires Docker)
task docs:widoco           # latest version
task docs:widoco -- vX.X  # specific version

WIDOCO docs are also generated automatically in CI on every push that changes a specs/v*/celine.ttl.


Design principles

  • Standards first: reuse ETSI SAREF, W3C SOSA/SSN, BIGG, EM-KPI
  • Thin CELINE layer: only project-specific glue concepts are defined here
  • Modular & versionable: specs/ and releases/ evolve independently
  • Tool-friendly: compatible with rdflib, JSON-LD processors, SHACL engines

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

celine_ontologies-1.2.0.tar.gz (384.9 kB view details)

Uploaded Source

Built Distribution

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

celine_ontologies-1.2.0-py3-none-any.whl (33.6 kB view details)

Uploaded Python 3

File details

Details for the file celine_ontologies-1.2.0.tar.gz.

File metadata

  • Download URL: celine_ontologies-1.2.0.tar.gz
  • Upload date:
  • Size: 384.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for celine_ontologies-1.2.0.tar.gz
Algorithm Hash digest
SHA256 6ec674617506646a2c1db2a167eab261e2cbf0fbc2e29e1280216d96fefe64e6
MD5 828be6105ba71956342c4689e66cc9ea
BLAKE2b-256 97a1ef762704f72ffb230cb9e8843d8ae49a24a31e061a1d931b80dee7bd3d19

See more details on using hashes here.

Provenance

The following attestation bundles were made for celine_ontologies-1.2.0.tar.gz:

Publisher: release.yaml on celine-eu/ontologies

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

File details

Details for the file celine_ontologies-1.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for celine_ontologies-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 46a7b15abd5d38f8f531f3ad0e9ee45889b88d0c1de777178cd4dcc9c6b8d7e3
MD5 7b1a512eee8b2e7f750e69a4016c02a4
BLAKE2b-256 ed967e7f6dd3f4ca40b09362ed3f7bca38ceae875cd701a11670a854449c5628

See more details on using hashes here.

Provenance

The following attestation bundles were made for celine_ontologies-1.2.0-py3-none-any.whl:

Publisher: release.yaml on celine-eu/ontologies

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