Serialization subteam: Toy Example

David Kemp

Serialization subteam members:  Alexios contributed a toy example JSON file for Issue #89, which illustrates both the correspondence and the difference between any Set class defined in a logical model and the JSON data used to serialize that class.

A small example like that can be used to demonstrate our entire workflow of starting with a logical model in some "single source of truth" format:
1) drawio diagram
2) rdf + shacl + ???
3) template markdown files
4) other?

and generating all of our desired outputs including serialized data examples in all supported formats in a way that is guaranteed to be consistent with the single source of truth.  Using a toy example exercises the workflow process and tooling without depending on anything SPDX-specific.

The Issue includes a tiny information model that validates the JSON example along with a discussion of the various assumptions needed when reverse-engineering a logical model from data (for example, what is the name of the class that is a set of people?)  For Thursday's serialization meeting it would be helpful if Alexios or others created a logical model diagram from which the data is derived.  The information model contains some additional information (primarily class types and property positions) needed to perform the serialization.

We can then extend the process to additional data formats, including human-readable alternatives like Turtle, TOML, and YAML, independently of SPDX.