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

Intégrer le context JSON-LD dans le fichier ontologies.json #1046

Closed
srosset81 opened this issue Sep 30, 2022 · 3 comments
Closed

Intégrer le context JSON-LD dans le fichier ontologies.json #1046

srosset81 opened this issue Sep 30, 2022 · 3 comments

Comments

@srosset81
Copy link
Contributor

Problématique
Actuellement lorsqu'on fait une instance SemApps, il faut toujours jongler entre deux fichiers: le fichier ontologies.json et le fichier context.json. Si l'on ajoute une ontologie dans le fichier ontologies.json mais qu'on oublie de la mettre dans le fichier context.json, on va avoir des problèmes de formattage.
L'autre problème, c'est que le fichier context.json est d'une seule pièce. Il ne permet pas d'ajouter ou de composer des ontologies facilement.

Proposition
Je propose d'ajouter au fichier ontologies.json une entrée "jsonContext" qui pourrait prendre, par exemple pour l'ontologie dc, ce format:

{
  "prefix": "dc",
  "owl": "",
  "url": "http://purl.org/dc/terms/"
  "jsonContext": {
    "dc:created": {
      "@type": "xsd:dateTime"
    },
    "dc:modified": {
      "@type": "xsd:dateTime"
    },
    "dc:creator" : {
      "@type" : "@id"
    }
  }
}

Ensuite le service jsonld pourrait prendre ce fichier en paramètre et générer un fichier de context à la volée en fonction de toutes les ontologies passées. Cela serait très facile. Et bien sûr on le garderait en cache pour pas avoir à le générer à chaque fois.

Cela permettrait aussi de facilement définir des ontologies core, et des ontologies supplémentaires. On pourrait même imaginer que les différents services puissent ajouter eux-mêmes les ontologies dont ils ont besoin.

@srosset81
Copy link
Contributor Author

srosset81 commented Oct 17, 2022

Pour assurer la compatibilité avec Mastodon, il faudrait aussi pouvoir définir le contexte juste avec un URL (au lieu d'un objet comme ci-dessus). On utiliserait ensuite un array de fichiers comme ça pour le context par défaut:

@context: [
"https://www.w3.org/ns/activitystreams",
"https://w3id.org/security/v1",
"https://4b4e-212-194-162-116.ngrok.io/context.json"
],

@srosset81
Copy link
Contributor Author

Maybe use this library to put together contexts: https://github.com/rubensworks/jsonld-context-parser.js

@srosset81
Copy link
Contributor Author

Duplicate of #1205

@srosset81 srosset81 marked this as a duplicate of #1205 Dec 8, 2023
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

1 participant