Skip to content

Diffing RDF artefacts to generate release notes #231

@rousso

Description

@rousso

The objective of this task is to accurately capture and document changes in RDF artefacts (OWL & SHACL) by generating comprehensive, human and machine-readable release notes. These release notes are crucial for ensuring transparency, traceability, and consistency in the evolution of the Semantic Data Specification, as well as assessing the impact of changes on RML mappings and SPARQL queries.

The release notes must include:

  • Change Summary: A concise overview of all changes, such as additions, deletions, and modifications to the RDF artefacts.
  • Detailed Descriptions: Detailed descriptions of changes for each affected element, including the nature of the change (e.g., property added, class modified).
  • Versioning Information: Information about the versions of the RDF artefacts being compared, including timestamps and version numbers.

Format and Representation:

  • Structured Format: The release notes should be provided in JSON, accompanied by a JSON Schema defining the structure and expected content of the release notes. This JSON later will be used to produce RDF using an appropiate vocabulary such as OWL change ontology .
  • AsciiDoc Output: Given a release notes JSON, produce the corresponding AsciiDoc so it can be integrated with existing documentation systems.

The implementer is expected to deliver the following:

  • Provide draft release notes format: A draft representation and examples of the release notes in JSON, using the ePO as the use case.
  • Provide a AsciiDoc Output: Demonstrating the Release notes in HTML format, using ePO as the use case.
  • Develop a Diffing Test Suite: A robust test suite covering a variety of edge cases, including changes, annotations, complex class expressions, and version-specific behaviours. The tests should validate that the diffing tool correctly captures all types of changes—additions, deletions, and modifications—ensuring no relevant changes are missed.
  • Provide an RDF diffing command line tool: A command-line tool or script capable of comparing RDF artefacts and generating release notes. The tool must allow users to run comparisons and produce release notes directly from terminal.
  • Provide an AsciiDoc Generator Tool: A command-line tool that takes release notes in JSON and generates release notes in AsciiDoc.
  • Write release notes documentation: Comprehensive documentation detailing the diffing process, the release notes generation, how to interpret the release notes, and how to integrate the tool into existing workflows, Github and documentation systems. This documentation should include clear instructions on running both the diffing tool and the AsciiDoc generator tool from the command line.

Note

This ticket replaces model2owl#215

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions