[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Triplification of bugs in UDD



Hi.

In case some of you would be bored at the DebConf, they may try and test
using triplify [0] to produce RDF output on the contents of UDD, to
explore Semantic Web interlinking of people and bugs they have
submitted...

Here's a first working set of PHP, that requires a few custom tables /
view be setup on UDD :
http://picoforge.int-evry.fr/websvn/listing.php?repname=helios_wp3&path=%2Ftrunk%2Ftriplify%2FUDD%2F&rev=0&sc=0

Feel free to checkout and test ;)

It will give things like the following N3 RDF triples.

The ontologies used are :
FOAF for people
SIOC for accounts (bugs submitters From values)
EvoVont BOM (for bugs)
HeliosBT (a complement of BOM describing Debian/Debbugs specific bits)

$ php index.php issue # outputs n3 RDF for 'bugs' table :
<http://my.test.com> <comment> "Generated by Triplify V0.5 (http://Triplify.org)" .
<http://my.test.com> <http://creativecommons.org/ns#license> <http://creativecommons.org/licenses/by/3.0/us/> .
<http://my.test.com/triplify/issue/17803> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.ifi.uzh.ch/ddis/evoont/2008/11/bom#Issue> .
<http://my.test.com/triplify/issue/17803> <http://www.ifi.uzh.ch/ddis/evoont/2008/11/bom#number> "17803" .
<http://my.test.com/triplify/issue/17803> <http://www.ifi.uzh.ch/ddis/evoont/2008/11/bom#name> "ipip: Insufficient documentation" .
<http://my.test.com/triplify/issue/17803> <http://www.ifi.uzh.ch/ddis/evoont/2008/11/bom#hasState> <http://www.helios-platform.org/ontologies/2009/6/helios_bt.owl#DebianStatuspending> .
<http://my.test.com/triplify/issue/17803> <http://www.ifi.uzh.ch/ddis/evoont/2008/11/bom#hasReporter> <http://my.test.com/triplify/submitter/2ff4d0916f69ea8e036d1d5cf91b9876c7767931> .
<http://my.test.com/triplify/issue/18024> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.ifi.uzh.ch/ddis/evoont/2008/11/bom#Issue> .
<http://my.test.com/triplify/issue/18024> <http://www.ifi.uzh.ch/ddis/evoont/2008/11/bom#number> "18024" .
<http://my.test.com/triplify/issue/18024> <http://www.ifi.uzh.ch/ddis/evoont/2008/11/bom#name> "tkdesk app bar defaults could fit Debian better" .
<http://my.test.com/triplify/issue/18024> <http://www.ifi.uzh.ch/ddis/evoont/2008/11/bom#hasState> <http://www.helios-platform.org/ontologies/2009/6/helios_bt.owl#DebianStatuspending> .
<http://my.test.com/triplify/issue/18024> <http://www.ifi.uzh.ch/ddis/evoont/2008/11/bom#hasReporter> <http://my.test.com/triplify/submitter/83abb160ff2e7cf1cc34314d1e07c435c4f7cf33> .
<http://my.test.com/triplify/issue/18129> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.ifi.uzh.ch/ddis/evoont/2008/11/bom#Issue> .
<http://my.test.com/triplify/issue/18129> <http://www.ifi.uzh.ch/ddis/evoont/2008/11/bom#number> "18129" .
<http://my.test.com/triplify/issue/18129> <http://www.ifi.uzh.ch/ddis/evoont/2008/11/bom#name> "bbdb: wish for location handling" .
<http://my.test.com/triplify/issue/18129> <http://www.ifi.uzh.ch/ddis/evoont/2008/11/bom#hasState> <http://www.helios-platform.org/ontologies/2009/6/helios_bt.owl#DebianStatuspending> .
<http://my.test.com/triplify/issue/18129> <http://www.ifi.uzh.ch/ddis/evoont/2008/11/bom#hasReporter> <http://my.test.com/triplify/submitter/1e8a3df08c9664e96467d4a3a7d9b341d00a7d38> .
...

$ php index.php carnivore # outputs n3 RDF (FOAF) for 'carnivore' people who happen to sometimes have submitted bugs (holdsAccount relations):
<http://my.test.com> <comment> "Generated by Triplify V0.5 (http://Triplify.org)" .
<http://my.test.com> <http://creativecommons.org/ns#license> <http://creativecommons.org/licenses/by/3.0/us/> .
<http://my.test.com/triplify/carnivore/3> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> .
<http://my.test.com/triplify/carnivore/3> <http://xmlns.com/foaf/0.1/name> "Debian Libvirt Maintainers" .
<http://my.test.com/triplify/carnivore/3> <http://xmlns.com/foaf/0.1/email_sha1sum> "8fc2e1196bc17489d8ef29c0cb1f21b589ca072e" .
<http://my.test.com/triplify/carnivore/7> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> .
<http://my.test.com/triplify/carnivore/7> <http://xmlns.com/foaf/0.1/name> "Michael Schlueter" .
<http://my.test.com/triplify/carnivore/7> <http://xmlns.com/foaf/0.1/email_sha1sum> "27de25cb861416a44f332cfc6c97580a81a97825" .
<http://my.test.com/triplify/carnivore/7> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> .
<http://my.test.com/triplify/carnivore/7> <http://xmlns.com/foaf/0.1/email_sha1sum> "8d731c75c9cd2894441c406cb846d961976f9dfa" .
<http://my.test.com/triplify/carnivore/7> <http://xmlns.com/foaf/0.1/email_sha1sum> "1ff515cbbdc951ea1648666b51600b5065c859b7" .
<http://my.test.com/triplify/carnivore/9> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> .
<http://my.test.com/triplify/carnivore/9> <http://xmlns.com/foaf/0.1/name> "Richard Jones" .
<http://my.test.com/triplify/carnivore/9> <http://xmlns.com/foaf/0.1/email_sha1sum> "dee814e3ccf1b4d997bacebd98a37e45e9681f3d" .
<http://my.test.com/triplify/carnivore/11> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> .
<http://my.test.com/triplify/carnivore/11> <http://xmlns.com/foaf/0.1/name> "Nelson A. de Oliveira" .
<http://my.test.com/triplify/carnivore/11> <http://xmlns.com/foaf/0.1/email_sha1sum> "d42e15e16d7e539a56736a2c1f6bb9f37135c5b7" .
<http://my.test.com/triplify/carnivore/11> <http://xmlns.com/foaf/0.1/holdsAccount> <http://my.test.com/triplify/submitter/6b0bfccaaa1019f67cadc0040e7febfb7c082374> .
<http://my.test.com/triplify/carnivore/11> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> .
<http://my.test.com/triplify/carnivore/11> <http://xmlns.com/foaf/0.1/holdsAccount> <http://my.test.com/triplify/submitter/5f50d65fa42a1cb9ad0ee5db31916f929728be13> .
<http://my.test.com/triplify/carnivore/11> <http://xmlns.com/foaf/0.1/holdsAccount> <http://my.test.com/triplify/submitter/d3fb5b620cb12d91f5e0cb1ce3ceb3c8c5ae16f0> .
<http://my.test.com/triplify/carnivore/11> <http://xmlns.com/foaf/0.1/name> "Nelson Antônio de Oliveira" .
<http://my.test.com/triplify/carnivore/11> <http://xmlns.com/foaf/0.1/name> "Nelson Antonio de Oliveira" .
<http://my.test.com/triplify/carnivore/11> <http://xmlns.com/foaf/0.1/email_sha1sum> "e20643146342a85b22c7263f01b9caacc5ccb6f9" .
<http://my.test.com/triplify/carnivore/11> <http://xmlns.com/foaf/0.1/email_sha1sum> "06478a0bf063694f548f712e8bc5e2030432ad9c" .
<http://my.test.com/triplify/carnivore/11> <http://xmlns.com/foaf/0.1/email_sha1sum> "cc6802b418ca5b0bab03aa6eefe2b37ad0c81e71" .
<http://my.test.com/triplify/carnivore/11> <http://xmlns.com/foaf/0.1/email_sha1sum> "6c1a75e152515f2fa6d90741297599343f96f608" .
<http://my.test.com/triplify/carnivore/11> <http://xmlns.com/foaf/0.1/email_sha1sum> "1b3c562758d146570521e25361c97c761c73bf11" .
<http://my.test.com/triplify/carnivore/14> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> .
<http://my.test.com/triplify/carnivore/14> <http://xmlns.com/foaf/0.1/name> "David Fernandez Vaamonde" .
<http://my.test.com/triplify/carnivore/14> <http://xmlns.com/foaf/0.1/email_sha1sum> "c992a0231335e3f24159d7b2bf0f0aa332aa3220" .
...
(in this snippet, you can see that apparently only carnivore person 11
seems to have submitted bugs still present in the 'bugs' table).

and finally :
$ php index.php submitter # outputs n3 RDF for bug submitters (SHA1 encoding of the bugs.submitter column)
<http://my.test.com> <comment> "Generated by Triplify V0.5 (http://Triplify.org)" .
<http://my.test.com> <http://creativecommons.org/ns#license> <http://creativecommons.org/licenses/by/3.0/us/> .
<http://my.test.com/triplify/submitter/00024e8d4bb0202f5385cdd81cedc552f40b44d4> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://rdfs.org/sioc/ns#User> .
<http://my.test.com/triplify/submitter/000a4f6137284eb2c425be6a7a2aa72d61ef1563> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://rdfs.org/sioc/ns#User> .
<http://my.test.com/triplify/submitter/000e3390bc460bd17929f80793956fb19b8875f5> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://rdfs.org/sioc/ns#User> .
<http://my.test.com/triplify/submitter/000ec09145f9cedb263c4c264ea71a218af158d2> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://rdfs.org/sioc/ns#User> .

So you can see that these RDF entities, put together, would interlink
bugs (issues) to bug submitters (kind of person's accounts) and persons
(when known by carnivore), when these persons have emails that can be
seen in UDD both in bugs.submitter and carnivore_email

As triplify is quite easy to install, it would allow a quick testing on
udd.debian.org ;)

The hard part is the change in the database schema to split the
submitters email into name and email, to easily be able to match
carnivore entries with bug submitters (for some outdated explanations of
the views I used for doing so, see [1]).

Thanks in advance for your comments.

Best regards,

[0]: http://triplify.org/
[1]: https://picoforge.int-evry.fr/cgi-bin/twiki/view/Helios_wp3/Web/UltimateDebianDatabaseToRDF

-- 
Olivier BERGER <olivier.berger@it-sudparis.eu>
http://www-public.it-sudparis.eu/~berger_o/ - OpenPGP-Id: 1024D/6B829EEC
Ingénieur Recherche - Dept INF
Institut TELECOM, SudParis (http://www.it-sudparis.eu/), Evry (France)


Reply to: