Skip to main content

Features Reference

A structured checklist of what RDFArchitect does, organised by the role most likely to care about it. Each feature links to the full explanation in the User Guide where appropriate.

For electrical engineers and CIM modellers

Import a CGMES / ENTSO-E profile

Open .rdf, .ttl, or .nt files directly from the UI. Every file becomes one graph inside a dataset of your choice. Multiple profiles from the same release (EQ / TP / SSH / SV, or the different Network Code Profiles) can live side-by-side in one dataset.

The navigation tree mirrors the UML package structure of the profile. The diagram canvas always shows exactly the package you selected, with associations that cross into other packages drawn at the boundary.

Inspect a class in full

The class editor shows label, URI namespace, package, super class, stereotypes («enumeration», «CIMDatatype», «Primitive», «Compound», …), AsciiDoc comment, all attributes, all associations, enum entries if applicable, and class-level constraints (SHACL) — all on one page.

Create and edit classes, attributes, associations, enum entries

Full create/update/delete for every modelling element, with inline validation (duplicate label/namespace combinations, duplicate URIs, invalid characters, cardinality conflicts).

Attribute datatypes and ranges

Attribute datatypes and ranges can come from CIM primitive types, CIM datatypes, enumerations, or XSD base types.

Enum entries as first-class content

When a class carries the «enumeration» stereotype, its enum entries appear as an ordered list in the class editor. Each entry has label, URI, and comment and is exported as SHACL sh:in automatically.

Work with the profile header

Edit the ontology metadata block (title, version, conformsTo, keyword, license, description, …). A library of known ENTSO-E and DCAT fields can be added with one click.

UML-style diagrams

Diagrams render classes with full attribute and association detail, inheritance arrows, stereotypes, and cardinalities. SvelteFlow is the default renderer (pan/zoom/auto-layout); Mermaid is available as an alternative, for example for embedding in Markdown-based documentation.

Visualise SHACL constraints on the class you are looking at

Every attribute and association row in the class editor has a SHACL icon that opens exactly the constraints that target that property on that class. No need to grep through a SHACL file.

For software architects and schema maintainers

Dataset / graph / package model

Many in-memory datasets, many graphs per dataset, many packages per graph. The hierarchy is enforced by the UI and by the REST API, and every edit is scoped by it.

Namespace management

Per-dataset namespace table with validation for unique prefixes. Prefixes can be added, renamed, and deleted. Export honours the active namespace table.

Undo, redo, and version history

Graph edits are journaled. Up to 256 versions per graph by default; older states are compressed as history grows. Undo and redo are global per graph and available via menu and keyboard shortcut.

Changelog view

A dedicated page that lists the change history of a graph: additions, updates, deletions, grouped by class, with full triple-level diff (green for additions, red for deletions) for each change.

Restore previous versions

Roll a graph back to any earlier tracked state from the changelog.

Schema comparison

Three-way compare: stored↔stored, upload↔stored, upload↔upload. Package-level and class-level summary with drill-down into attributes, associations, enum entries, and comments. Whitespace-normalised comment diffs avoid noise.

Schema migration wizard

A five-step wizard that turns the difference between two schema versions into a SPARQL UPDATE script:

  1. Select source and target schemas.
  2. Confirm class renames.
  3. Confirm attribute / association / enum entry renames.
  4. Choose default values for newly added properties.
  5. Generate and download the script.

The script can be run against any SPARQL 1.1 endpoint to migrate instance data from the source schema to the target.

SHACL generation

SHACL shapes are generated automatically from the schema. They include, among other things, constraints for association multiplicities and attribute datatypes, and stay in sync with the current graph.

Custom SHACL side-by-side

Import the official SHACL of a CGMES/ENTSO-E release and store it next to the generated shapes. Custom SHACL can be edited freely and is not regenerated when the schema changes. Both sets are visible at graph level and at class level.

Read-only datasets

A toggle that locks a dataset against all editing actions. Imported datasets and snapshot views are read-only by default, and can be unlocked with Enable Editing when changes are needed.

Snapshots

One-click immutable copy of a dataset, stored in Fuseki, reachable by a URL with a base64 token. Anyone with the URL can load the full dataset — navigation, diagrams, SHACL — as a read-only dataset without installing anything. The loaded dataset can be made editable, but the stored snapshot is not modified.

Export

Every graph can be exported to RDF/XML, Turtle, or N-Triples, using the active namespace table and an optional auto-generated profile header placed as the first resource (matching ENTSO-E release conventions). SHACL can be exported separately as TTL.

Open REST API

Every feature in the UI is backed by a REST endpoint. Swagger UI is served at /swagger-ui.html on the backend and lists every operation with full request/response schemas. This makes RDFArchitect scriptable for CI pipelines (e.g. export a canonical representation on every commit, run a diff in a pull request, generate a release note from the changelog).

For project managers and product owners

Sharing and review

Snapshots let you hand a complete, navigable view of a profile to a stakeholder without installing software, without sending RDF files, and without risk of accidental edits. This is the primary feature for review cycles between modellers and non-modellers.

Changelog and release notes

Every tracked graph change is listed with the added, updated, or deleted content. The changelog view in the UI is directly usable as a starting point for release notes.

Compare releases

The compare view produces a structured difference between two schema versions that can be read at package level, at class level, or drilled down to attribute level. Suitable for a release readiness meeting.

Migration planning

The migration wizard externalises every decision that has to be made to migrate instance data from one profile version to the next: class renames, property renames, defaults for new fields. The output is a reviewable SPARQL script that can be run in a controlled way on staging data before touching production.

No vendor lock-in

Apache 2.0 licence. Data is RDF throughout; imports and exports are standard W3C formats. Snapshots are stored in Apache Jena Fuseki. The generated migration scripts are plain SPARQL. Nothing in the tool chain is proprietary.

Predictable dependencies

Spring Boot backend, SvelteKit frontend, Apache Jena, Apache Jena Fuseki. All mature, widely adopted, and available as container images.

Feature-by-feature: where in the UI

FeatureLocation
Import schema (RDFS)File → Import → Schema (RDFS)
Import SHACLFile → Import → Constraints (SHACL)
Export schemaFile → Export → Schema (RDFS)
Export SHACLFile → Export → Constraints (SHACL)
Share snapshotFile → Share Snapshot
Delete schemaFile → Delete → Schema (RDFS)
Delete datasetFile → Delete → Dataset
New classEdit → New → Class
New packageEdit → New → Package
New empty schemaEdit → New → Schema (RDFS)
Edit profile headerEdit → Edit → Profile header
Edit packageEdit → Edit → Package
Undo / RedoEdit → Undo / Redo (Ctrl+Z / Ctrl+Y)
Enable / Disable editingEdit → Enable / Disable Editing
Manage namespacesEdit → Manage Namespaces
Delete profile headerEdit → Delete → Profile header
Delete packageEdit → Delete → Package
ChangelogView → Changelog
Compare schemasView → Compare Schemas
Migrate schema (5-step wizard)View → Migrate Schema
Full SHACL view (generated+custom)View → Constraints (SHACL)
Help / feedback / aboutHelp menu
Search across the datasetSearch bar at the top
Property-specific constraints (SHACL)Class editor → SHACL icon next to each row
Class-level constraints (SHACL)Class editor → SHACL section
API documentation (Swagger UI)http://<backend-host>:8080/swagger-ui.html

Current limitations (as of 1.0.0)

  • The migration script generator does not yet handle every edge case; multiplicity changes on associations in particular need manual review. It is strongly recommended to validate migrated data against the target profile's SHACL with an external validator after running the script.
  • Snapshots cannot currently be deleted via the UI.
  • Access control is per-snapshot-link; there is no built-in user management. For multi-user deployments this is typically handled by putting the service behind an SSO-capable reverse proxy.