Convertir json en nodes/links ?

Fermé
user42312 Messages postés 1 Date d'inscription lundi 26 mars 2018 Statut Membre Dernière intervention 26 mars 2018 - 26 mars 2018 à 11:43
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 - 11 avril 2018 à 00:54
Bonjour,
Je veux visualiser l'ontologie pizza.owl comme un "force-directed graph" en utilisant D3.js
J'ai converti pizza.owl en json en utilisant "OWL2VOWL.jar". Et j'ai obtenu le syntaxe suivant:
"instances" : 0
}, {
"id" : "class23",
"label" : {
"IRI-based" : "MeatyPizza",
"pt" : "PizzaDeCarne",
"en" : "MeatyPizza"
},
"iri" : "http://www.co-ode.org/ontologies/pizza/pizza.owl#MeatyPizza",
"attributes" : [ "external", "equivalent" ],
"annotations" : {
"prefLabel" : [ {
"identifier" : "prefLabel",
"language" : "en",
"value" : "Meaty Pizza",
"type" : "label"
} ],
"definition" : [ {
"identifier" : "definition",
"language" : "en",
"value" : "Any pizza that has at least one meat topping",
"type" : "label"
} ]
},
"instances" : 0,
"intersection" : [ "class63", "class75" ]
}, {
"id" : "class99",
"label" : {
"IRI-based" : "RealItalianPizza",
"pt" : "PizzaItalianaReal",
"en" : "RealItalianPizza"
},
"iri" : "http://www.co-ode.org/ontologies/pizza/pizza.owl#RealItalianPizza",
"attributes" : [ "external", "equivalent" ],
"annotations" : {
"prefLabel" : [ {
"identifier" : "prefLabel",
"language" : "en",
"value" : "Real Italian Pizza",
"type" : "label"
} ],

Mais en fait D3.js force directed graph nécessite que les données json soient avec le format (nodes/links) comme dans l'exemple du lien ci dessous:
https://bl.ocks.org/jpurma/6dd2081cf25a5d2dfcdcab1a4868f237#graph.js

A partir de mon syntax, comment je peux obtenir le format suivant ?

{
"nodes": [
{"id": "Myriel", "group": 1},
{"id": "Napoleon", "group": 1},
{"id": "Mlle.Baptistine", "group": 1},
{"id": "Mme.Magloire", "group": 1},
{"id": "CountessdeLo", "group": 1},
{"id": "Geborand", "group": 1},
...],
"links": [
{"source": "Napoleon", "target": "Myriel", "value": 1},
{"source": "Mlle.Baptistine", "target": "Myriel", "value": 8},
{"source": "Mme.Magloire", "target": "Myriel", "value": 10},
{"source": "Mme.Magloire", "target": "Mlle.Baptistine", "value": 6},
{"source": "CountessdeLo", "target": "Myriel", "value": 1},
{"source": "Geborand", "target": "Myriel", "value": 1},
....]}

1 réponse

jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
11 avril 2018 à 00:54
Bonjour,

Il va falloir que tu boucles sur ta sources et que tu recrée un objet json correspondant à tes besoins.

Si tu veux de l'aide, commence par nous montrer le résultat attendu en utilisant les mêmes données que celles de ta sources ( pizza.owl).

0