28/12/2014

inserer un nouveau projet doap au serveur Fuseki

Comment insérer un nouveau projet au serveur Fuseki du projet Smag0 :

Code source (App Inventor) et fichier pour Android au bas de cet article.

Dans le cadre Sparql Update de : http://fuseki-smag0.rhcloud.com/
 (selectionner "Control Panel" puis "ds" )

En remplacant test2 par le nom de votre projet

saisir :
 PREFIX rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs:   <http://www.w3.org/2000/01/rdf-schema#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX ex:   <http://example.org/>
PREFIX doap: <http://usefulinc.com/ns/doap#>
PREFIX smag:   <http://smag0.blogspot.fr/NS/>

INSERT DATA {
GRAPH <http://smag0.blogspot.fr/Projets>{
smag:test2 rdf:type doap:Project .

}
}


ou remplacez  "Titre Projet" "description Projet" par vos valeurs (attention, essayer de trouver un id unique, pour l'instant j'utilise le timestamp avec un "P" devant

PREFIX rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs:   <http://www.w3.org/2000/01/rdf-schema#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX ex:   <http://example.org/>
PREFIX doap: <http://usefulinc.com/ns/doap#>
PREFIX smag:   <http://smag0.blogspot.fr/ns/smag0#>
PREFIX dc: <http://purl.org/dc/elements/1.1/>

INSERT DATA {
GRAPH <http://smag0.blogspot.fr/Projets>{
smag:id rdf:type smag:Projet .
smag:id dc:title  "Titre Projet" .
smag:id dc:description  "description Projet" .
}
}


SELECTION DES PROJETS : (dans le cadre Sparql Query)

select ?projet ?titre ?description where {
?projet <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://smag0.blogspot.fr/ns/smag0#Projet> .
?projet <http://purl.org/dc/elements/1.1/title> ?titre .
?projet <http://purl.org/dc/elements/1.1/description> ?description .
}
ORDER BY DESC(?projet)
LIMIT 100

résultat de la requete attendu


RECUPERER LES PROPRIETES DU PROJET DONT LE TITRE EST "SPHERO-CARTO"

PREFIX dc: <http://purl.org/dc/elements/1.1/>
PREFIX smag:   <http://smag0.blogspot.fr/ns/smag0#>

select * where {
?projet dc:title "Sphero-Carto" .
?projet ?propriete ?objet .
}

résultat attendu

idem avec Smag0 :

PREFIX dc: <http://purl.org/dc/elements/1.1/>
PREFIX smag:   <http://smag0.blogspot.fr/ns/smag0#>

select * where {
?projet dc:title "Smag0" .
?projet ?propriete ?objet .
}


résultat attendu



une application android créée avec App-Inventor permet d'inserer et de lire les informations RDF présentes sur ce serveur, elles sont récupérées au format JSON.

Cette démo est un premier test... juste pour la preuve du concept.
Maintenant je peux envoyer des infos sur mon serveur FUSEKI, et les récupérer sur mon smartphone Android. Utile pour envoyer des infos au système multi-agent Smag qui gère mon domicile.

ici se trouve le code source et l'apk : https://drive.google.com/folderview?id=0B0zEK4yLB5C6UUVsMWNkbDZ0WEU&usp=sharing

le fichier Projet.aia est à importer en tant que nouveau projet sur App-inventor : http://ai2.appinventor.mit.edu/

le fichier Projet.apk est prêt à l'emploi

deux fonctions sont incluses pour l'instant : Derniers projets et Ajout d'un projet (Connection internet /wifi activée nécessairement)
Parfois le serveur fuseki met du temps à démarrer. attendez 30 secondes et renouvelez en cas d'échec

!!!! première étape franchie !!! Yahou !!!!