If you can't read please download the document
Upload
drupalcon-paris
View
2.213
Download
0
Embed Size (px)
Citation preview
Galway, Ireland
Tough job, but someone had to go.
The State of RDF in Drupal 7
(Drupal and the Semantic Web)
or
Everything you wanted to know aboutRDFabut didn't know how to ask
Welcome to Cambridge for Design For Drupal Boston! For those of you who have traveled a ways to get here, Boston is just over the Charles river that way.
Now, if we had RDFa in Drupal today, we would know where we are.
In fact, with RDFa, the camp website could continue to say "Boston" while your calendar and map applications could be told the exact, correct location.
It's hard to communicate here, but this semantic web deal is bigger than Drupal.
No really. Much bigger.
Bigger than Drupal even including the whole Drupal community.
*
Small proviso:
All right, it's not bigger than Drupal yet, because it doesn't exist.
RDF = Random Dries Favorite?
Who knows what RDF stands for?
Very good, does anyone know what the "a" stands for in RDFa?
Overview of the Semantic Web, Drupal, and RDFa
RDF is Resource Description Framework, a way of breaking down any information into statements made up of subject, predicate, and object each with an unambiguous URI.
RDF is coming first to Drupal as RDFa, inline markup of content, which puts the theme layer front and center of ushering in the Semantic Web.
The fundamental issue is that computers, all attempts at artificial intelligence notwithstanding, are not as good at understanding the written word as people are.
The fundamental issue is that computers, all attempts at artificial intelligence notwithstanding, are not as good at understanding the written word as people are.
A Pedestrian Example
Hi Jim, I can meet you in Cit Universit at 5 o'clock to talk about RDF.
Everything in green could be given an unambiguous meaning in RDF, and your calendar program and address book could add it all instantly.
This could be marked up inline, in the HTML, with RDFa.
That is unlikely in any scenaria.
But if this were an event content type you could see how each field could map to a meaning.
Which brings us to Drupal.
The Promise of RDF
In a nutshell, the goal is to give true meaning to Drupal's data. Drupal is capable of collecting and presenting a lot of data, in no small part thanks to CCK, now Fields in Core for Drupal 7. This data is still meaningless in the Semantic Web sense because other computer agents can't make sense of the data that Drupal presents.
This Web of Data promises to be browsable just like a huge database, e.g. by means of query languages for RDF such as SPARQL (the name similarity with SQL is not a coincidence).
Dries blogged this on the occasion of this May's Galway RDF in Core code sprint.
This is awesome stuff, right? The latest and greatest in technology!
Yup, the latest and greatest... for the last ten years.
Drupal 1.00 offers backend/headline generation with RSS/RDF.
Drupal's long, checkered past with RDF
In the year 2000, on May 18, in the first commit to the CVS repository that still holds the Drupal project back when Drupal was called drop Drupal founder Dries Buytaert included a file called rdf.php.
Placed in the root directory of the young CMS, the rdf.php file had an object-oriented implementation of a basic RDF-focused XML parser and had an RDF headline generator.
A month later it was replacedwith a general framework geared to non-semantic RSS XML.
A moment of silence, please.
Drupal spent years wandering in the non-semantic wilderness
It shouldn't be this hard.
Drupal wasn't alone.
The whole World Wide Web wandered in the non-semantic wilderness.
It was just too hard to make the machine-readable data
This is an actual cover page slide of an actual presentation (about two years old) on actually doing the Semantic Web... they're doing it wrong.
http://www.slideshare.net/carsonified/practical-semantic-web
If you have to be a skilled craftsperson to make RDFa available online
If making your entire website present semantic data is like making this thing fly..
It is not going to happen.
Which will come first?
We still have our problem though.
Stephne Corlosquet - scor - calls this the chicken and egg problem.
Too few people would make applications that used semantic data when not many sources were making it available.
And too few people were willing to do the work to make data available that no one would use.
Which would come first?
As long as people had to handcode HTML to blog and comment, there was no interactive web.
As long as people have to painstakingly make meaning of their information machine-readable, there will be no semantic web.
But this is Drupal.
Our toddlers attend conferences.
We blow everything up every major release just to make it better.
We put in a registry system and take it out again between releases.
Enter the Heroes
Arto Bendikenhttp://ar.toRDF, SPARQL, Exhibit modules
with, on RDF moduleMiglius Alaburda, Ben Lavender,Jeff Miccolis, Frank Febbraro
a couple boosters
Boris Mannhttp://bmannconsulting.com
Dries Buytaerthttp://buytaert.net
And some guy named Dries keeps going on about RDF too.
Another person to look for there is Mike Anello of DrupalEasy.com
And all kinds of things from Drupal shops like Lullabot.
And the one who answered the call
Stephne Corlosquet scorhttp://openspring.net
scor has the coolest modules
as well as the coolest username
evoc
RDF External Vocabulary Mapper provides a way to import external RDF ontologies into Drupal for use by other modules (getting to that).
Out of the box, this module pulls in the Dublin Core, Friend-of-a-Friend, and SIOC ontologies. You can then import any ontology RDF Calendar ontology and it will be available to the RDF CCK module.
There is of course one more indispensable party we can't forget.
The Drupal Community
There are some guys in the community too, i think, but not many important ones.
Let's see RDFa in action.
Enough preliminaries.
Web site without RDFa.
This is a web site without RDFa.
Web site with RDFa.
This is a web site with RDFa.
With.
[Flip back.] Without.
[Flip.] With. [Flip.] Without.
[Flip.]
With RDFa.
Any questions?
Robot Food
Boris Mann knows how to cook to keep robots happy.
RDFa makes sense to computers. Honest.
I few months ago, I had a bar-b-cue at my house and invited the Internet to come over.http://www.commoncraft.com/pre-gnomedex-bbq-retrospective
Boris Mann, pictured, uses the phrase robot food to describe what RDFa is.
Boris is the one with the burgers. Not the Lullabot.
So... not meant to be read by people.
http://rdfa.digitalbazaar.com/fuzz/trac/
But computers can do cool things with it.
RDFa in DrupalExamples and Use Caseshttp://groups.drupal.org/node/20167
What Dries wanted.
1. Dublin core. 2. SIOC. 3. Match up RDFa output options to fields (with CCK in core) 4. Export straight RDF also for same data 5. Drupal 8: Import RDF!
Dries Buytearts priorities (as mentioned in a bar in Boston months ago) for Semantic information in Drupal core.
The Sprint
Scor invited a bunch of people to the Digital Enterprise Research Institute (DERI), National University of Ireland, Galway.
Rolf Guescini, scor, stefan of Agaric, Frederic Marand, florian Lortan, John Morahan.
Missing from that shot is Mark Birbeck and John Breslin.
And some guy named Ben Melanon.
Having traveled from all different countries to be together, we split into two groups.
Map?
One group focused on figuring out the best ontology mappings for standard Drupal content.
Trying to answer questions like, What's the best way to mark up an article with comments with RDF? What ontologies should we use? What's the best way to mark up taxonomy terms?
Guided by Mark Birbeck
He is in Wikipedia as the original proposer of RDFa.
I don't have anything to add to that.
Map!
In the other group we didn't worry about what ontologies would do what mapping, but how anyone could add any mapping.
Did that make sense? Let's try again.
This is not RDFa, it is a straight RDFa mapping, but you can already see how it relates to adding meaning to Drupal's markup output.
The 'created' field contains a more complex array because it needs to be output as iso8601 and with a specific datatype.
RDFa touches parts all over Drupal
CCKBody, title, username, date as fields?
User interface in core?
Taxonomy as Fields
Comments as Fields
User Profiles using fields
What content types and field and vocabulary setup ships in a core profile? Currently, just "tags."
What is left to do?
5 weeks to finish the incredible features we want to see in Drupal 7, of which RDFa is one interrelated part.
http://drupal.org/project/issues/search/drupal?issue_tags=RDF
Questions?
The End
Everything mentioned here
will be posted tohttp://groups.drupal.org/semantic-web
and will be linked fromhttp://agaric.com/rdfa
People Making it Happen
Florian LortanJohn BreslinFrdric MarandRolf GuesciniBenjamin DohertyStefan Freudenberg
Peter WolaninBarry Jaspin