Skip to content

Should salmodule ontologies have a defined schema? #178

Closed

Description

@C-Loftus

Currently there is no schema for salmodule ontologies. There is an ontology that defines the properties that should be in the jsonld but users can fundamentally add any property in any shape. This makes it tricky to validate the contents and provide explicit feedback for what the user needs to add for the file to be valid and where the file such changes belong. I am worried that if there are no constraints on things like the stdoutShape / taskShape developers will have confusion during development since json-ld is so flexible and has many directives that are not immediately intuitive.

Example, I want to add additional functionality for

  1. initializing a new salmodule and populating it from an intuitive browser-based UI.
  2. validating a salmodule ontology by using ubiquitous tooling that integrates with the IDE like jsonschema. This will provide specific feedback in which json blocks which properties are missing.

As such, I would suggest that we constrain at least parts of the ontology file to a specific schema to allow for this. This would allow me to give the user precise, explicit feedback on what to fix if something is wrong, and what to remove if it is unnecessarily added.

Two options:

  1. Any unstructured or general triples that don't affect how to call the salmodule belong in the output of the salmodule itself. The entire ontology.jsonld can be validated according to a schema.
  2. All nodes in the @graph of the ontology that are typed as a salmodule:Task have an explicit schema and expected structure. For other nodes, they are schemaless and the user can define them as desired.

Activity

  1. C-Loftus commented on Sep 17, 2026

    @C-Loftus
    MemberAuthor

    The gist: since parts of the salmodule ontology are acting less like a graph and more like a configuration specification, it might make sense to add a schema around it. You could still have a particular unstructured section if desired

  2. C-Loftus commented on Oct 1, 2026

    @C-Loftus
    MemberAuthor

    From discussion with Andrew, we will be making the salmodule ontology a closed shape and defining a specific schema for easier validation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions