Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

uco-core:Bundle should not to be used #18

Open
fabrizio-turchi opened this issue Sep 8, 2023 · 1 comment
Open

uco-core:Bundle should not to be used #18

fabrizio-turchi opened this issue Sep 8, 2023 · 1 comment

Comments

@fabrizio-turchi
Copy link
Contributor

  • It is better not to use the uco-core:Bundle class to indicate the UCO/CASE version and the general description of the JSON-LD file. New properties will be introduced in next releases. Alternatively a generic ObservableObject with rdf:comments can be used inside the uco-core:object property array:
  • Example:
{
    "@id": "kb:cbd39ad4-ab25-452d-b03e-10364c7fd40e",
    "@type": "uco-observable:ObservableObject",
    "rdfs:comment": "name: D.F. Expert",
    "rdfs:comment": "version: CASE 1.0.0",
    "rdfs:comment": "description: Device example complied with UCO/CASE 1.0.0"
  }
ajnelson-nist added a commit that referenced this issue Jun 6, 2024
Fix #18 issue, aligned Bundle class with the ontology
@ajnelson-nist
Copy link
Member

(Note I do use JSON and JSON-LD distinctly below.)

The current usage of Bundle is as the root JSON object, which ends up housing the JSON-LD context dictionary.

In CASE example graphs, the root JSON object instead houses a "graph" JSON-LD structure - keys @graph and @context.

Bundle currently gives a way to list all of the involved objects being conveyed in a transit bundle, and this still has semantic relevance worth preserving. But it makes storing non-UcoObjects (e.g. types:Hash) in the graph awkward because there is a need to track whether the object has been inlined somewhere already.

If Bundle is to be removed from its current role, I think a "Graph" class (not ontological---a JSON-LD structural maintenance item) should be added to base.py, and some method added to handle adding any UcoThing to it.

@ajnelson-nist ajnelson-nist reopened this Jun 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants