RDF representations for AppStream data, etc. ?

Olivier Berger olivier.berger at it-sudparis.eu
Mon Nov 19 08:14:55 PST 2012


Hi.

I've been working on ideas like interlinking descriptions of Free
Software tools in different plateforms for some time, and hence, got
interested in the AppStream efforts on a similar topic.

Has anyone worked on representing the metadata with RDF ?

RDF [0] allows to define extensible representations, for instance for
integrating a common standard (like AppData schema) and extensions
(Distribution specific).

I'm wondering if the Linked Data approach [1] could help interlinking
public descriptions of applications, something that wouldn't need a
server (in the sense of dedicated APIs), but just RDF descriptions
hosted on the Web, pointing to each-other... I'm not sure how well this
could fit in the current architecture and plans.

One example of RDF meta-data about applications can be the work I've
done to implement a RDF description for all source packages managed by
the Debian PTS (Package Tracking System) [2], which is now in
production.

There are also quite many upstream projects describing their
software/project with DOAP [4], so their descriptions could be used
directly "from the source" to document applications.

Tthinking in terms of RDF, I've tried and represent the example FireFox
appdata.xml file [3] as Turtle [5].

It would go like this :
----
@prefix appdata: <http://freedesktop.org/ontology/appdata.rdf#>.
@prefix mediatypes: <http://purl.org/NET/mediatypes#>.

<>
        a appdata:Document ;
        appdata:version "0.1".

<#applications>
        appdata:application <#firefox.desktop>;
        appdata:describedBy <>.

<#firefox.desktop>
        a appdata:DesktopApplication ;
        appdata:pkgname "firefox-bin";
        appdata:name "Firefox";
        appdata:name "Firefoux"@en_GB;
        appdata:summary "Web browser";
        appdata:summary "Navigateur web"@fr_FR;
        appdata:keyword "internet", "web", "browser", "navigateur"@fr_FR;
        appdata:icon [
                     a appdata:StockIcon ;
                     appdata:name "web-browser"
                     ];
        appdata:appcategory "network", "web";
        appdata:mimetype <mediatypes:text/html>, <mediatypes:text/xml>, <mediatypes:application/xhtml+xml>, <mediatypes:application/vnd.mozilla.xul+xml>, <mediatypes:text/mml>, <mediatypes:application/x-xpinstall>, <mediatypes:x-scheme-handler/http>, <mediatypes:x-scheme-handler/https>;
        appdata:homepageUrl <http://www.mozilla.com>.
----

Maybe this format is close enough to the Debian DEP11 format, while
still being parseable by RDF aware clients for applications.

An interesting question is how to relate such a description of FireFox
with the one the Debian PTS produces at
http://packages.qa.debian.org/i/iceweasel.rdf then ;)

Any comments ?

Hope this helps.

Best regards,

[0] http://en.wikipedia.org/wiki/Resource_Description_Framework
[1] http://en.wikipedia.org/wiki/Linked_Data
[2] http://www-public.telecom-sudparis.eu/~berger_o/weblog/2012/08/29/debian-package-tracking-system-now-produces-rdf-description-of-source-packages/
[3] http://gitorious.org/appstream/resources/blobs/master/appdata.xml
[4] https://github.com/edumbill/doap/wiki
[5] http://en.wikipedia.org/wiki/Turtle_%28syntax%29
-- 
Olivier BERGER 
http://www-public.it-sudparis.eu/~berger_o/ - OpenPGP-Id: 2048R/5819D7E8
Ingenieur Recherche - Dept INF
Institut Mines-Telecom, Telecom SudParis, Evry (France)



More information about the Distributions mailing list