[ _altro post mediamente tecnico e non lungo .) _]

Visto che mi sento in tema di esempi di applicazione del Semantic Web, in confronto a tecniche consolidate di text-mining e di ricerca, ho scovato un altro esempio very cool, che stavolta non faro’ direttamente io pero’.

Mi sembrava particolarmente significativo.

-> Querying DBpedia - And looking forward to more.

Per chi non lo sapesse, Dbpedia e’ uno dei progetti di maggior successo nel far arrivare alla massa il significato e i reali vantaggi che il Semantic Web porta con se’. [ ne avevo parlato un po’ tempo fa ]

-> DBpedia.org

DBpedia is a community effort to extract structured information from Wikipedia and to make this information available on the Web. DBpedia allows you to ask sophisticated queries against Wikipedia and to link other datasets on the Web to Wikipedia data.

Bob sta cercando di visionare tutte le possibili scritte che Bart Simpson ha dovuto scrivere alla lavagna a scuola, nella serie dei Simpsons. Non e’ una domanda banale, direi.

Instead of a “Hello World” example, I went with more of an “I will not publish the principal’s credit report” example: a list of things written by Bart on the school blackboard at the beginning of a collection of Simpsons episodes.

La parte piu’ complessa a cui deve andare incontro per formulare la query in SPARQL e’ capire come vengono identificate le risorse di cui ha bisogno: cioe’ che URI usare per identificare Bart Simpson, per identificare la lavagna e qualcosa per la serie o almeno una delle serie del cartone animato.

Once I knew the following three things, I could create the SPARQL query:

  • The Simpson episode Wikipedia pages are the identified “things” that we would consider as the subjects of our RDF triples (or, put another way, as the objects in the {object, attribute name, attribute value} triplets that contain our data).
  • The bottom of the Wikipedia page for the “Tennis the Menace” episode tells us that it is a member of the Wikipedia category “The Simpsons episodes, season 12”.
  • The episode’s DBpedia page tells us that p:blackboard is the property name for the Wikipedia infobox “Chalkboard” field.

Questo perche’ nel mondo di RDF tutto e’ almeno una TRIPLA di informazione, dove ogni componente puo’ essere un URI, un modo univoco di identificare qualcosa.
Questo e’ ancora lo scoglio piu’ grande in effetti, da rendere trasparente per l’utente medio, per capire come chiedere qualcosa al sistema.

Ma, se ci pensiamo, non e’ un problema da poco identificare qualcosa a livello non ambiguo, e a livello mondiale.
E’ vero che ci sono piu’ modi per identificare la stessa cosa, e ognuno puo’ usare il suo, a patto che dica che quel modo e’ equivalente ad un altro gia’ conosciuto, in modo da potersi gestire con la transitivita’ della referenza che si sta facendo. [ owl:sameAs docet ]

Ma su questo ci torneremo. ( un dibattito durato parecchio sulla questione delle URI, qc ne avevo accennato tempo fa, molto per fortuna e’ cambiato in meglio, stay tuned ).

Tornando a noi, ecco invece la query SPARQL ottenuta:

SELECT ?episode,?chalkboard_gag WHERE {
?episode skos:subject
<http://dbpedia.org/resource/Category:The_Simpsons_episodes%2C_season_12>.
?episode dbpedia2:blackboard ?chalkboard_gag
}

Si vuole selezionare l’episodio e la scritta dove:

?episode skos:subject <http://dbpedia.org/resource/Category:The_Simpsons_episodes%2C_season_12>.

l’episodio abbia la proprieta’ skos:subject con l’uri che identifica la dodicesima stagione della serie, e

?episode dbpedia2:blackboard ?chalkboard_gag

e che il medesimo episodio abbia un qualsiasi valore della proprieta’ blackboard, che sara’ parte della risposta, of course.

Se si vuole vedere la risposta a questo quesito, basta andare a questo indirizzo:
-> the URL version of the query as created by the SNORQL interface.

Il caro Bob vuole poi provare ad estendere la query, per trovare i riferimenti su tutti gli episodi del Simpsons, e non solo sulla 12 serie….
C’e’ un problema:

For my next step, I was hoping to list what Bart wrote in all the episodes, not just season 12. The bottom of the Wikipedia page for season 12 tells us that that this category is part of the category The Simpsons episodes, but I haven’t found a variation on the query above that makes the connection.

Appena trovo un po’ di tempo, un po’ di prove per risolvere l’arcano: intanto se qualcuno vuole cimentarsi, e’ il benvenuto :)

Mi pare di aver intravisto proprio una pagina di Wikipedia che raccoglieva tali scritte…