Archive for the ‘Semantic Web’ Category.

Relations API enhancement

Just posted a patch: Expanded predicates for Relations API that gets one step closer to being able to combine free tagging with RDF. Basically the idea is simple: use the existing free tagging capabilities of Drupal to let users build up a smart domain-specific vocabulary, and use those words as predicates in RDF statements. I’m kind of surprised there didn’t seem to already be an easy way to do this.

The patch above does the step of including the vocabulary terms as predicates for Relations API. I still need to do another patch, probably to taxonomy_xml, to automatically expose them as RDF, and then expose something that makes it easy to output them in nice clean RDFa with the nodes. Once that is done, it seems pretty powerful to me. I like being able to write something and in a structured way say it was inspired by a book, that it implements a philosophy, or that it is useful for some specific goal.

This is partly done at bteaching.com now; the relations are visible to the user along with each node. They aren’t output in RDFa yet, though, that still needs to be done along with the automatic vocabulary exposure as RDF.

Anyway, I wanted to post what I have so far, as its in production on a live site and might be useful for someone else in its current form.

expand on the rel= link attribute

It seems sort of amazing, that with all the man-hours of development of the semantic web, that I’m still not aware of a widely-used standard for tagging a link with a meaning. Page tagging has gotten us pretty far, but as I understand it what Tim BL’s original app did, was to assign a meaning to each link.

We do have the rel= attribute, which we’re allowed to expand upon according to the spec:
http://www.w3.org/TR/html401/types.html#type-links

Since a source doc, target doc, and link tag comprise a triple, why not leverage this more by encouraging the use of vocabularies in the rel= attribute? It would seem to me to be the simplest possible solution and could be supported by many different tools.

rel= is indeed used within the RDFa spec, but I’d argue that by itself a link containing a rel= tag is sufficient to define a triple. I’d also like to see a commonly used curie of

en:anyword

to mean ‘anyword’ in the english language. Lets also leverage the existing structure of language – Google does!

Vocabulary reuse not well solved yet…but RDFCCK may just be a step

Some links relevent to vocab reuse/microformats. In particular RDF vocabs should be simple to import into all the modern CMS’s, but we’re not there yet.

esw.w3.org/VocabularyMarket

esw.w3.org/SeedApplications

Evoc drupal module for importing RDF vocabs and exposing properties in Drupal
RDFCCK drupal module by the same author, Stephane “scor” Corlosquet
article by Marco Neumann on importing semantics into Drupal

Import SKOS into Drupal taxonomy but then do you need to use the RDFa module to have your Drupal content part of the linked data initiative?
————-
Follow-up (If I post as a comment, not visible from front page – need to configure WP to do follow-up threads better):

Reading Scor’s paper, sounds like work is heading in the right direction. The autocompletion sounds promising

“To this end, our module adds a new tab “Manage RDF mappings” to the content
type administration panel of CCK for managing such mappings cf. Fig. 2. An autocomplete list of suggested terms is shown, based on the keyword entered by the user.

The terms are coming from two different sources, which are detailed below.

External vocabulary importer service

The module RDF external vocabulary importer…”