Hi. Olivier Berger <ober...@debian.org> writes:
> Hi. > > I've started working on #685605, i.e. adding some RDF+XML documents > generated for the PTS static pages. > > Appologies for those not Semantic Web aware in advance ;-) I hope the > code and following example can help illustrate my goal, still, beyond > the jargon. > It seems no one complained, so lemme go forward one more step. The latest commit in SVN now implements the generation of such metadata about apache2 (this time in turtle format, less verbose than RDF, once converted from the generated RDF+XML output, in attachment). I add some comments below for documentation @base <http://packages.qa.debian.org/apache2> . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix admssw: <http://purl.org/adms/sw/> . @prefix doap: <http://usefulinc.com/ns/doap#> . @prefix dcterms: <http://purl.org/dc/terms/> . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . @prefix foaf: <http://xmlns.com/foaf/0.1/> . @prefix schema: <http://schema.org/> . @prefix spdx: <http://www.spdx.org/rdf/terms#> . @prefix : <http://www.w3.org/1999/xhtml> . @prefix str: <http://exslt.org/strings> . # # First the packaging project for apache2 in Debian # # <http://packages.qa.debian.org/apache2> resource : <> a admssw:SoftwareProject ; doap:name "apache2" ; doap:description "Debian apache2 source packaging" ; doap:homepage "http://packages.debian.org/src:apache2" ; schema:contributor [ a foaf:OnlineAccount ; foaf:accountName "Debian Apache Maintainers" ; foaf:accountServiceHomepage <http://qa.debian.org/developer.php?login=debian-apa...@lists.debian.org> ], [ a foaf:OnlineAccount ; foaf:accountName "Stefan Fritsch" ; foaf:accountServiceHomepage <http://qa.debian.org/developer.php?login=s...@debian.org> ], [ a foaf:OnlineAccount ; foaf:accountName "Steinar H. Gunderson" ; foaf:accountServiceHomepage <http://qa.debian.org/developer.php?login=se...@debian.org> ], [ a foaf:OnlineAccount ; foaf:accountName "Arno Töll" ; foaf:accountServiceHomepage <http://qa.debian.org/developer.php?login=a...@debian.org> ] ; # pointer to the release in the different suites : doap:release <apache2_2.2.16-6+squeeze7>, <apache2_2.2.22-11>, <apache2_2.4.2-2> . # # Now the different debian package source releases # # <http://packages.qa.debian.org/apache2_2.2.16-6+squeeze7> resource <apache2_2.2.16-6+squeeze7> a admssw:SoftwareRelease ; rdfs:label "apache2 2.2.16-6+squeeze7" ; admssw:project <> ; dcterms:description "Debian apache2 source package version 2.2.16-6+squeeze7" ; doap:revision "2.2.16-6+squeeze7" . # This one is the reference version for the PTS as in unstable, so # contains more details than the others <apache2_2.2.22-11> a admssw:SoftwareRelease ; rdfs:label "apache2 2.2.22-11" ; admssw:project <> ; dcterms:description "Debian apache2 source package version 2.2.22-11" ; doap:revision "2.2.22-11" ; # this release contains two components admssw:includedAsset <apache2/apache2_2.2.22-11_debian>, <apache2/apache2_2.2.22_orig> ; # this release can be downloaded as one package (with dget) admssw:package <apache2/apache2_2.2.22-11.dsc> ; # it also has a related release somewhere else dcterms:relation <https://launchpad.net/ubuntu/+source/apache2/2.2.22-6ubuntu2> . <apache2_2.4.2-2> a admssw:SoftwareRelease ; rdfs:label "apache2 2.4.2-2" ; dcterms:description "Debian apache2 source package version 2.4.2-2" ; admssw:project <> ; doap:revision "2.4.2-2" . # Then the .dsc file for the current unstable version <apache2/apache2_2.2.22-11.dsc> a admssw:SoftwarePackage ; dcterms:description "Debian source package descriptor file for apache2 version 2.2.22-11" ; schema:downloadUrl "http://cdn.debian.net/debian/pool/main/a/apache2/apache2_2.2.22-11.dsc" ; schema:fileSize "2885" ; spdx:checksum [ a spdx:Checksum ; spdx:algorithm <#checksumAlgorithm_md5sum> ; spdx:checksumValue "d7d03719b9f6432beeecd3aa04f7b22c" ] . # # Then the upstream project # <apache2/apache2_orig> a admssw:SoftwareProject ; doap:description "The apache2 upstream project" ; # either its name or homepage can be matched against other ADMS.SW # or DOAP descriptors doap:name "apache2" ; doap:homepage "http://httpd.apache.org/" . # And a upstream release 2.2.22 <apache2/apache2_2.2.22_orig> a admssw:SoftwareRelease ; rdfs:label "Upstream apache2 release 2.2.22" ; dcterms:description "Upstream source release for apache2 version 2.2.22" ; doap:revision "2.2.22" ; admssw:project <apache2/apache2_orig> ; # and a link to the upstream source tarball's description admssw:package <apache2/apache2_2.2.22.orig.tar.gz> . # now the (potentially re-archived) upstream source archive for that release <apache2/apache2_2.2.22.orig.tar.gz> a admssw:SoftwarePackage ; dcterms:description "Upstream source archive for apache2 version 2.2.22-11 (potentially re-archived by Debian)" ; schema:downloadUrl "http://cdn.debian.net/debian/pool/main/a/apache2/apache2_2.2.22.orig.tar.gz" ; # Those 2 bits should help match packagings of the same tarball if needed schema:fileSize "7200529" ; spdx:checksum [ a spdx:Checksum ; spdx:algorithm <#checksumAlgorithm_md5sum> ; spdx:checksumValue "d77fa5af23df96a8af68ea8114fa6ce1" ] . # # Now, document specific details of the second component : Debian # packaging files archive # <apache2/apache2_2.2.22-11_debian> a admssw:SoftwareRelease ; rdfs:label "Package sources apache2_2.2.22-11" ; dcterms:description "Debian packaging sources for apache2 version 2.2.22-11" ; doap:revision "2.2.22-11" ; admssw:package <apache2/apache2_2.2.22-11.debian.tar.gz> . <apache2/apache2_2.2.22-11.debian.tar.gz> a admssw:SoftwarePackage ; dcterms:description "Debian source package files archive for apache2 version 2.2.22-11" ; schema:downloadUrl "http://cdn.debian.net/debian/pool/main/a/apache2/apache2_2.2.22-11.debian.tar.gz" ; schema:fileSize "195980" ; spdx:checksum [ a spdx:Checksum ; spdx:algorithm <#checksumAlgorithm_md5sum> ; spdx:checksumValue "d3d4146ccad51129636b7dbff284a110" ] ; # # Now, we also weave links with the Ubuntu counterparts # <https://launchpad.net/ubuntu/+source/apache2> a admssw:SoftwareProject ; doap:description "\"apache2\" source package in Ubuntu" ; # this one promises some trolls and flames admssw:forkOf <> ; doap:homepage "https://launchpad.net/ubuntu/+source/apache2" ; doap:release <https://launchpad.net/ubuntu/+source/apache2/2.2.22-6ubuntu2> . # and its release known by the PTS <https://launchpad.net/ubuntu/+source/apache2/2.2.22-6ubuntu2> a admssw:SoftwareRelease ; rdfs:label "apache2 2.2.22-6ubuntu2" ; dcterms:description "\"apache2\" 2.2.22-6ubuntu2 source package in Ubuntu" ; doap:revision "2.2.22-6ubuntu2" ; admssw:project <https://launchpad.net/ubuntu/+source/apache2> . > > Now, there are tons of other informations that may be added in these RDF > documents, including links to binary packages, etc. I've not yet started this. > The most interesting things I'd ultimately like to be able to add > would be inter-links between upstream project and other downstreams > RDF descriptions and the PTS' so that one can "navigate" the Linked > Open Data cloud between versions of packages cross project and cross > distros without any converter involved, as everyone would compatible > formats, based on ADMS.SW, SPDX or likes. There are early bits of such navigating / matching bits present, now, see the comments. Again, any comments much welcome. I haven't counted how many triples the whole PTS contains when this is activated, but... quite a nice contribution to the Linked Open Data cloud for sure (next steps on my side, with the researcher har on). Best regards, -- 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) -- To UNSUBSCRIBE, email to debian-qa-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/878vd4b7gw....@inf-8657.int-evry.fr