2016-06-28 1 views
0

Je suis en train d'écrire du code Java en extrayant des données et en les écrivant en tant que données liées, en utilisant la syntaxe TRIG.J'utilise maintenant Jena, et Fuseki Pour créer un point de terminaison SPARQL pour interroger et visualiser ces donnéesChargement d'un fichier .trig avec inférence à Fuseki en utilisant le chargeur en bloc 'tdbloader'

Les données sont écrites de façon à ce que chaque ensemble de données source me fournisse un fichier .trig contenant un graphe nommé, donc je veux charger ces fichiers dans Fuseki. ne semble pas comprendre la syntaxe Trig ...

Si je supprime les graphiques nommés, et renomme les fichiers en .ttl, tout se charge parfaitement dans les graphiques par défaut.Mais si j'essaie d'importer des fichiers trig:

  • utilisant le Uploader webapp de Fuseki, soit il se bloque (« ne peut pas faire de nouveaux graphiques ») ou ajoute rien à l'exception des préfixes, comme si les graphiques autres que ceux par défaut ne peuvent être ajoutés (les journaux ne disent rien utile sauf le code d'erreur et la description). En utilisant le code Java, le processus est trop lent. J'ai utilisé cette technique: "Loading a .trig file into TDB?" mais mes fichiers trig sont assez gros, donc cette solution n'est pas très bonne pour moi. J'ai donc essayé d'utiliser le chargeur en bloc, la commande console 'tdbloader'. Cette fois tout semble bien, mais dans la webapp, il n'y a toujours pas de données.

Vous pouvez voir le processus va bien ici: Quads are added just fine

Mais le résultat conserve encore que le graphique par défaut et ses données d'origine: Nothing is added

Alors, je ne sais pas quoi faire . Les gars derrière Jena et Fuseki ont suggéré de ne pas utiliser le chargeur en vrac dans le code Java (plutôt que l'outil de ligne de commande), donc c'est une solution que je voudrais éviter.

Ai-je manqué quelque chose de flagrant sur la façon de charger les fichiers TRIG sur Fuseki? Merci.

MISE À JOUR: Comme il semblait être un problème dans ma configuration (voir les commentaires de ce post pour un lien vers mon fichier de configuration, je ne peux pas poster plus de 2 liens), j'ai essayé d'ajouter une sorte de spécification pour certains graphiques nommés Je voudrais voir ajouté à l'ensemble de données sur Fuseki.

J'ai ajouté du code pour lier (avec ja: namedgraph) les graphes externes que j'ai ajoutés via tdbloader. Cela semble fonctionner. Génial!

Maintenant, un autre problème: il n'y a pas d'inférence, même lorsque mon fichier de configuration spécifie un modèle d'inférence ... Je demande que les requêtes soient appliquées avec des graphes nommés fusionnés, mais cela ne semble pas porter l'OWL. règles ... Donc les requêtes simples fonctionnent, mais j'ai 1/pour spécifier le graphique que je demande (avec "FROM") et 2/aucune inférence dans mes données.

+0

"Les gars derrière Jena et Fuseki ont suggéré" - avez-vous un lien avec cette conversation? – AndyS

+0

Quelle version de Fuseki utilisez-vous? Quelle est la configuration pour/ds? – AndyS

+0

Je pense que c'était cette conversation: http://mail-archives.apache.org/mod_mbox/jena-users/201307.mbox/%[email protected]%3e Qui semble être de ... vous, J'imagine? Peut-être que j'ai eu la mauvaise interprétation de cette phrase, cependant. – RdNetwork

Répondre

0

Les deux méthodes consistent à utiliser le bulkloader tdb hors ligne ou à envoyer directement des données dans l'ensemble de données. (c'est-à-dire des opérations HTTP POST à ​​http://localhost:3030/ds).

Vous pouvez tester où votre graphique sont là avec une requête comme

SELECT (count(*) AS ?C) { GRAPH ?g { ?s ?p ?o } } 

Les graphiques named apparaissent lorsque le serveur est démarré Fuseki à moins que votre configuration des services SPARQL exporte un seul graphique.

+0

Après l'importation de 2 graphiques nommés/fichiers TriG, cela renvoie "0", donc je suppose qu'il y a effectivement un problème avec la configuration – RdNetwork