Exemple de requêtes SPARQL sur la liste des BSV
100 bulletins avec leurs informations associées région, type de culture et date de publication présentées en mode texte
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT ?document ?dateT ?culture ?labregion
WHERE {
?document a vespa:Bulletin .
?document vespa:date_publication ?date.
?document vespa:subject ?culture.
?document vespa:date_texte ?dateT.
?document vespa:spatial ?region.
?region rdfs:label ?labregion
} LIMIT 100
Liste des types de culture en région Rhône-Alpes
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT DISTINCT ?culture ?region
WHERE {
[] vespa:spatial [ rdfs:label ?region ] ;
vespa:subject ?culture.
FILTER REGEX(?region, "rh.ne.?alpes", "i")
}
Ne sachant pas comment est orthographiée la région, le filtre se base sur des expressions régulières, ce qui permet au passage de préciser l'insensibilité à la casse (le "i"). Le point, dans l'expression régulière, peut être remplacé par n'importe quel caractère et le point d'interrogation signifie que le caractère qui précède est optionnel.
100 bulletins avec l'ensemble des dates extraites des différents processus
?document a vespa:Bulletin .
?document vespa:date_publication ?date.
?document vespa:date_texte ?dateT.
OPTIONAL { ?document vespa:date_nom_fichier ?dateF.}
OPTIONAL { ?document vespa:date_contenu_gate ?dateG.}
OPTIONAL {?document vespa:date_metadonnees ?dateM.}
OPTIONAL {?document vespa:date_vespamining ?dateV.}
} LIMIT 100
Quels sont les bulletins publiés entre le 15 juillet 2013 et 15 août 2015 heure de Paris et qui traitent d'Arboriculture (annotation directe)?
Les bulletins doivent être associés au concept skos http://ontology.irstea.fr/bsv/cropusage/Arboriculture défini dans le thésaurus sur l'usage des cultures
PREFIX irstea_crop: <http://ontology.irstea.fr/bsv/cropusage/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
SELECT DISTINCT ?bsv
WHERE {
?bsv a vespa:Bulletin ;
vespa:subject irstea_crop:Arboriculture ;
vespa:date_publication ?dt .
FILTER ( (?dt >= "2013-07-15T00:00:00+02:00"^^xsd:dateTime) && (?dt < "2015-08-15T00:00:00+02:00"^^xsd:dateTime) )
}
Quels sont les bulletins publiés entre le 15 juillet 2013 et 15 août 2015 heure de Paris et qui traitent d'Arboriculture (annotation indirecte)?
Cette fois le bulletin n'est pas forcément associé directement au concept skos Arboriculture, mais par l'un de ces concepts fils. La requête utilise le lien skos:broader défini dans le thésaurus sur l'usage des cultures.
PREFIX irstea_crop: <http://ontology.irstea.fr/bsv/cropusage/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
SELECT DISTINCT ?bsv
WHERE {
?bsv a vespa:Bulletin ;
vespa:subject ?concept ;
vespa:date_publication ?dt .
?concept skos:broader* irstea_crop:Arboriculture.
FILTER ( (?dt >= "2013-07-15T00:00:00+02:00"^^xsd:dateTime) && (?dt < "2015-08-15T00:00:00+02:00"^^xsd:dateTime) )
}
Liste des bulletins publiés entre septembre et novembre en 2011 ou en 2012
PREFIX irstea_crop: <http://ontology.irstea.fr/bsv/cropusage/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
SELECT DISTINCT ?mois ?annee ?bsv WHERE {
VALUES ?m { 09 10 11 }.
VALUES ?y { 2011 2012 } .
?bsv a vespa:Bulletin ;
vespa:date_publication ?dt .
BIND (xsd:integer(SUBSTR(xsd:string(?dt),6,2)) AS ?mois) .
BIND (xsd:integer(SUBSTR(xsd:string(?dt),1,4)) AS ?annee) .
FILTER ( (?mois = ?m) && (?annee = ?y) )
}
Autre solution utilisant les fonctions year et month définies dans la norme sparql 1.1 sur les types de données xsd:DateTime
WHERE {
?document a vespa:Bulletin .
?document vespa:date_publication ?date.
?document vespa:date_texte ?dateT.
FILTER ( (YEAR(?date)=2011 || YEAR(?date)=2012) && (MONTH(?date) IN (09, 10, 11)) )
}
Liste des annotations automatiques
Un nouveau graphe indépendant du graphe des annotations de base a été créé pour stocker des annotations suivant le schéma Open Annotation Data Model. Nous avons utilisé l'outil namazu pour construire des annotations automatiques. Le poids des annotations automatiques a été stocké à l'aide de la propriété DUL:hasDataProperty.
PREFIX cnt: <http://www.w3.org/2011/content#>
PREFIX dul:<http://www.loa-cnr.it/ontologies/DUL.owl#>
SELECT ?document ?pdf ?unLabel ?poids ?anno
FROM <http://ontology.irstea.fr:3030/bsv/data/annotation>
WHERE {
?anno oa:hasTarget ?pdf.
?anno oa:hasBody ?unNode.
?anno dul:hasDataValue ?poids.
?unNode cnt:chars ?unLabel.
?anno oa:serializedBy <http://ontology.irstea.fr/bsv/annotation/sofwtare/namazu>.
}
ORDER BY ?pdf
LIMIT 100
les annotations automatiques et manuelles des bulletins de 2011
PREFIX oa: <http://www.w3.org/ns/oa#>
PREFIX cnt: <http://www.w3.org/2011/content#>
PREFIX dul:<http://www.loa-cnr.it/ontologies/DUL.owl#>
SELECT ?pdf ?anno
WHERE {
?bsv vespa:isRealizedBy ?pdf.
?bsv vespa:date_publication ?date. FILTER ( YEAR(?date)=2011)
GRAPH <http://ontology.irstea.fr:3030/bsv/data/annotation>
{
?anno oa:hasTarget ?pdf.
?anno oa:hasBody ?unNode.
}
}
ORDER BY DESC(?pdf)
LIMIT 30