Understanding the Semantic Web and Drupal, DrupalCon Chicago 2011
Upcoming SlideShare
Loading in...5
×
 

Understanding the Semantic Web and Drupal, DrupalCon Chicago 2011

on

  • 1,420 views

 

Statistics

Views

Total Views
1,420
Views on SlideShare
1,418
Embed Views
2

Actions

Likes
2
Downloads
29
Comments
0

2 Embeds 2

http://twitter.com 1
http://www.linkedin.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Understanding the Semantic Web and Drupal, DrupalCon Chicago 2011 Understanding the Semantic Web and Drupal, DrupalCon Chicago 2011 Presentation Transcript

    • 1
    • Semantic Web benefits 2
    • Semantic Web benefits Programsand sites can exchange information 2
    • Semantic Web benefits Programsand sites can my-site.net your-site.org exchange information 2
    • Semantic Web benefits Programsand sites can my-site.net company.com your-site.org exchange information 2
    • Semantic Web benefits Programsand sites can my-site.net company.com your-site.org exchange information 2
    • Semantic Web benefits Programsand sites can my-site.net company.com your-site.org exchange information 2
    • Semantic Web benefits Programsand sites can my-site.net company.com your-site.org exchange information 2
    • Semantic Web benefits Programsand sites can my-site.net company.com your-site.org exchange information Search engines can display more relevant information in results 2
    • Semantic Web benefits Programsand sites can my-site.net company.com your-site.org exchange information Search engines can display more relevant information in results 2
    • Semantic Web benefits Programsand sites can my-site.net company.com your-site.org exchange information Search engines can display more relevant information in results Data mashers can combine data from different datasets to find new and astounding things 2
    • Semantic Web benefits Programsand sites can my-site.net company.com your-site.org exchange information Search engines can display more relevant information in results Data mashers can combine data from different datasets to find new and astounding things 2
    • Semantic Web benefits Programsand sites can my-site.net company.com your-site.org exchange information Search engines can display more relevant information in results Data mashers can + combine data from different datasets to find new and astounding things 2
    • Semantic Web benefits Programsand sites can my-site.net company.com your-site.org exchange information Search engines can display more relevant information in results Data mashers can + combine data from different datasets to find new and astounding things 2
    • Key (confusing) terms 3
    • Key (confusing) terms Machine Understandable 3
    • Key (confusing) terms Machine Understandable RDF 3
    • Key (confusing) terms Machine Understandable Linked Data RDF 3
    • Key (confusing) terms Machine Understandable Linked DataSPARQL RDF 3
    • Key (confusing) terms Machine Understandable Linked DataSPARQL RDF Federated Dataset 3
    • Key (confusing) terms Machine Understandable Linked DataSPARQL RDF Giant Federated Dataset Global Graph 3
    • Machine Understandable 4
    • Machine Understandable 4
    • Machine Understandable 4
    • Machine Understandable 4
    • Machine Understandable 4
    • Machine Understandable 4
    • Machine Understandable 4
    • Machine Understandable The Semantic Web helps machines understand what the information on a Web page is... 4
    • Machine Understandable The Semantic Web helps machines understand what the information on a Web page is... 4
    • Machine Understandable The Semantic Web helps Lin Clarkis a name machines understand what the information on a Web page is... 4
    • Machine Understandable Lin Clarkis a name 4
    • Machine Understandable and the relationships Lin Clarkis a name between different pieces of information. 4
    • Machine Understandable and the relationships between different pieces of information. 4
    • Machine Understandablelinclark.jpgis a picture and the relationshipsof a person named between different pieces of Lin Clark information. 4
    • RDF R esource Description F ramework 5
    • RDF Everything is a resource 6
    • RDF Everything is a resource A resource is a named thing 6
    • RDF Everything is a resource A resource is a named thing this 6
    • RDF Everything is a resource this 6
    • RDF Everything is a resource 6
    • RDF Everything is a resource http://lin-clark.com/page.html#this 6
    • RDF Everything is a resource URI http://lin-clark.com/page.html#this 6
    • RDF Everything is a resource http://lin-clark.com/page.html#this 6
    • RDF Everything is a resource 6
    • RDF Everything is a resource lin:this 6
    • RDF Everything is a resourceNamespacexmlns:lin=”http://lin-clark.com/page.html# lin:this 6
    • RDF Everything is a resourceNamespacexmlns:lin=”http://lin-clark.com/page.html# CURIE lin:this 6
    • RDF A resource can be a document dblp:this 7
    • RDF A resource can be a document foaf:Document dblp:this 7
    • RDF A resource can be a company deri:this 8
    • RDF A resource can be a company foaf:Organization deri:this 8
    • RDF A resource can even be a person lin:me 9
    • RDF A resource can even be a person foaf:Person lin:me 9
    • RDF You can describe properties of that person... lin:me 10
    • RDF You can describe properties of that person... foaf:name Lin Clark lin:me 10
    • RDF You can describe properties of that person... foaf:name Lin Clark foaf:mbox lin.clark@deri.org lin:me 10
    • RDF You can describe properties of that person... foaf:name Lin Clark foaf:mbox lin.clark@deri.org foaf:birthday 07-01 lin:me 10
    • RDF and describe how that person is related to other resources foaf:made swrc:employs lin:me dblp:this deri:this 11
    • SVO 12
    • SVO 12
    • SVO Subject 12
    • SVO Subject Verb 12
    • SVO Subject Verb Object 12
    • SVO 13
    • SVO SVO 13
    • SVO SVO My 13
    • SVO SVO My name is 13
    • SVO SVO My name is Lin Clark 13
    • SVO SVO My name is Lin Clark<http://lin-clark.com/#me> 13
    • SVO SVO My name is Lin Clark<http://lin-clark.com/#me> <http://xmlns.com/foaf/0.1/name> 13
    • SVO SVO My name is Lin Clark<http://lin-clark.com/#me> <http://xmlns.com/foaf/0.1/name> “Lin Clark” 13
    • SVO SVO My name is Lin Clark<http://lin-clark.com/#me> <http://xmlns.com/foaf/0.1/name> “Lin Clark” 14
    • SVO SVO My name is Lin Clark<http://lin-clark.com/#me> <http://xmlns.com/foaf/0.1/name> “Lin Clark” prefix=”lin: http://lin-clark.com/#” 14
    • SVO SVO My name is Lin Clark <http://xmlns.com/foaf/0.1/name> “Lin Clark”prefix=”lin: http://lin-clark.com/#” 14
    • SVO SVO My name is Lin Clark lin:me <http://xmlns.com/foaf/0.1/name> “Lin Clark”prefix=”lin: http://lin-clark.com/#” 14
    • SVO SVO My name is Lin Clark lin:me <http://xmlns.com/foaf/0.1/name> “Lin Clark”prefix=”lin: http://lin-clark.com/#”prefix=”foaf : http://xmlns.com/foaf/ 14
    • SVO SVO My name is Lin Clark lin:me “Lin Clark”prefix=”lin: http://lin-clark.com/#”prefix=”foaf : http://xmlns.com/foaf/ 14
    • SVO SVO My name is Lin Clark lin:me foaf:name “Lin Clark”prefix=”lin: http://lin-clark.com/#”prefix=”foaf : http://xmlns.com/foaf/ 14
    • SVO SVO My name is Lin Clark lin:me foaf:nameprefix=”lin: http://lin-clark.com/#”prefix=”foaf : http://xmlns.com/foaf/ 14
    • SVO SVO My name is Lin Clark lin:me foaf:name “Lin Clark”prefix=”lin: http://lin-clark.com/#”prefix=”foaf : http://xmlns.com/foaf/ 14
    • SVO SVO My name is Lin Clark lin:me foaf:name “Lin Clark” I know Stéphaneprefix=”lin: http://lin-clark.com/#”prefix=”foaf : http://xmlns.com/foaf/ 15
    • SVO SVO My name is Lin Clark lin:me foaf:name “Lin Clark” I know Stéphane lin:meprefix=”lin: http://lin-clark.com/#”prefix=”foaf : http://xmlns.com/foaf/ 15
    • SVO SVO My name is Lin Clark lin:me foaf:name “Lin Clark” I know Stéphane lin:me foaf:knowsprefix=”lin: http://lin-clark.com/#”prefix=”foaf : http://xmlns.com/foaf/ 15
    • SVO SVO My name is Lin Clark lin:me foaf:name “Lin Clark” I know Stéphane lin:me foaf:knows scor:meprefix=”lin: http://lin-clark.com/#”prefix=”foaf : http://xmlns.com/foaf/ 15
    • SVO SVO My name is Lin Clark lin:me foaf:name “Lin Clark” } Literal I know Stéphane lin:me foaf:knows scor:meprefix=”lin: http://lin-clark.com/#”prefix=”foaf : http://xmlns.com/foaf/ 15
    • SVO SVO My name is Lin Clark lin:me foaf:name “Lin Clark” } Literal I know Stéphane lin:me foaf:knows scor:me } Resourceprefix=”lin: http://lin-clark.com/#”prefix=”foaf : http://xmlns.com/foaf/ 15
    • Federated Dataset foaf:made swrc:employs lin:me dblp:this deri:this 16
    • Federated Dataset Because we are using http URIs,these resources don’t need to be in the same database foaf:made swrc:employs lin:me dblp:this deri:this 16
    • Federated Dataset the resources can be distributed across the Web in a federated way 17
    • Giant Global Graph And when all resources are described this way, the Web becomes one giant database... 18
    • Giant Global Graph And when all resources are described this way, the Web becomes one giant database... 18
    • Giant Global Graph And when all resources are described this way, the Web becomes one giant database... 18
    • Giant Global Graph And when all resources are described this way, the Web becomes one giant database... 18
    • Giant Global Graph And when all resources are described this way, the Web becomes one giant database... 18
    • Giant Global Graph And when all resources are described this way, the Web becomes one giant database... 18
    • Giant Global Graph And when all resources are described this way, the Web becomes one giant database... 18
    • Giant Global Graph And when all resources are described this way, the Web becomes one giant database... 18
    • Giant Global Graph And when all resources are described this way, the Web becomes one giant database... 18
    • Giant Global Graph And when all resources are described this way, the Web becomes one giant database... 18
    • Giant Global Graph And when all resources are described this way, the Web becomes one giant database... 18
    • Giant Global Graph 18
    • SPARQL Find and retrieve information from the graph 19
    • SPARQL Find and retrieve information from the graph 19
    • SPARQL Find and retrieve information from the graph 19
    • SPARQL Find and retrieve information from the graph 19
    • SPARQL Find and retrieve information from the graph 19
    • SPARQL Find and retrieve information from the graph 19
    • SPARQL Find and retrieve information from the graph 19
    • SPARQL Find and retrieve information from the graph using SQL? 19
    • SPARQL Find and retrieve information from the graph 19
    • SPARQL Find and retrieve information from the graph using SPARQL 19
    • The Semantic Web 20
    • The Semantic Web Machine Understandable 20
    • The Semantic Web Machine Understandable RDF 20
    • The Semantic Web Machine Understandable Linked Data RDF 20
    • The Semantic Web Machine Understandable Linked DataSPARQL RDF 20
    • The Semantic Web Machine Understandable Linked DataSPARQL RDF Federated Dataset 20
    • The Semantic Web Machine Understandable Linked DataSPARQL RDF Giant Federated Dataset Global Graph 20
    • Why Drupal? 21
    • Why Drupal?Similarities 21
    • Why Drupal?Similarities• Both have structured data 21
    • Why Drupal?Similarities• Both have structured data• Data is structured in a similar way— instances of types with properties and relationships 21
    • Why Drupal? 22
    • Why Drupal?Differences 22
    • Why Drupal?Differences• Drupal’s structure stays hidden in the database, RDF structure is exposed on the page 22
    • Why Drupal?Differences• Drupal’s structure stays hidden in the database, RDF structure is exposed on the page• Drupal’s field names are unique to the site and not explicitly defined, RDF terms are universally dereferencable and explicitly defined 22
    • RDF in Drupal 7 core <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:dc="http://purl.org/dc/ elements/1.1/" version="XHTML+RDFa 1.0" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Lin-Clark | Pittsburgh-based Web developer</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link type="text/css" rel="stylesheet" media="all" href="/sites/all/modules/admin_menu/admin_menu.css?8" /> <link type="text/css" rel="stylesheet" media="all" href="/sites/all/modules/views/css/views.css?8" /> <link type="text/css" rel="stylesheet" media="all" href="/sites/default/files/css/ css_92e513ffd2110f82d787173e8b07d9c7.css" /> <link type="text/css" rel="stylesheet" media="print" href="/sites/default/files/css/ css_9c70a5072a56f4bc83a718ec42481c1a.css" /> <!--[if IE]> <link type="text/css" rel="stylesheet" media="all" href="/sites/all/themes/zen/zen/ie.css?8" /> <![endif]--> <script type="text/javascript" src="/sites/default/files/js/js_f68bf536b867998e80bb0bd586727a4a.js"></script> <script type="text/javascript"> <!--//--><![CDATA[//><!-- jQuery.extend(Drupal.settings, { "basePath": "/", "admin_menu": { "margin_top": 1, "position_fixed": 1 }, "cobalt": { "state": "1", "path": "node/33", "bindings": [ "Alt+space", "Ctrl+space" ], "nodes_current": "33" }, "googleanalytics": { "trackOutgoing": 1, "trackMailto": 1, "trackDownload": 1, "trackDownloadExtensions": "7z|aac| avi|csv|doc|exe|flv|gif|gz|jpe?g|js|mp(3|4|e?g)|mov|pdf|phps|png|ppt|rar|sit|tar|torrent|txt|wma|wmv|xls|xml| zip" }, "jcarousel": { "#viewscarousel-Site-Screenshots-block-1": { "scroll": 1, "visible": 1, "animation": "slow", "auto": 6, "wrap": "both", "skin": "ie7" } } }); //--><!]]> </script> </head> <body class="front logged-in node-type-page one-sidebar sidebar-right"> <div id="page"><div id="page-inner"> <a id="navigation-top"></a> <div id="header"><div id="header-inner" class="clear-block"> 23
    • RDF in Drupal 7 core <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:dc="http://purl.org/dc/ elements/1.1/" version="XHTML+RDFa 1.0" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Lin-Clark | Pittsburgh-based Web developer</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link type="text/css" rel="stylesheet" media="all" href="/sites/all/modules/admin_menu/admin_menu.css?8" /> <link type="text/css" rel="stylesheet" media="all" href="/sites/all/modules/views/css/views.css?8" /> <link type="text/css" rel="stylesheet" media="all" href="/sites/default/files/css/ css_92e513ffd2110f82d787173e8b07d9c7.css" /> <link type="text/css" rel="stylesheet" media="print" href="/sites/default/files/css/ css_9c70a5072a56f4bc83a718ec42481c1a.css" /> <!--[if IE]> <link type="text/css" rel="stylesheet" media="all" href="/sites/all/themes/zen/zen/ie.css?8" /> <![endif]--> <script type="text/javascript" src="/sites/default/files/js/js_f68bf536b867998e80bb0bd586727a4a.js"></script> <script type="text/javascript"> <!--//--><![CDATA[//><!-- jQuery.extend(Drupal.settings, { "basePath": "/", "admin_menu": { "margin_top": 1, "position_fixed": 1 }, "cobalt": { "state": "1", "path": "node/33", "bindings": [ "Alt+space", "Ctrl+space" ], "nodes_current": "33" }, "googleanalytics": { "trackOutgoing": 1, "trackMailto": 1, "trackDownload": 1, "trackDownloadExtensions": "7z|aac| avi|csv|doc|exe|flv|gif|gz|jpe?g|js|mp(3|4|e?g)|mov|pdf|phps|png|ppt|rar|sit|tar|torrent|txt|wma|wmv|xls|xml| zip" }, "jcarousel": { "#viewscarousel-Site-Screenshots-block-1": { "scroll": 1, "visible": 1, "animation": "slow", "auto": 6, "wrap": "both", "skin": "ie7" } } }); //--><!]]> </script> </head> <body class="front logged-in node-type-page one-sidebar sidebar-right"> <div id="page"><div id="page-inner"> <a id="navigation-top"></a> <div id="header"><div id="header-inner" class="clear-block"> 23
    • RDF in Drupal 7 core Universities in RDF Submitted by Lin on Sat, 2009-05-02 10:28 24
    • RDF in Drupal 7 core Universities in RDF Submitted by Lin on Sat, 2009-05-02 10:28 <div class="submitted"> Submitted by <a href="/user/1">Lin</a> on Sat, 2009-05-02 10:28 </div> 24
    • RDF in Drupal 7 core Universities in RDF Submitted by Lin on Sat, 2009-05-02 10:28 24
    • RDF in Drupal 7 core Universities in RDF Submitted by Lin on Sat, 2009-05-02 10:28 <div class="submitted"> Submitted by <span rel="sioc:has_creator"> <a href="/user/1">Lin</a></span> on Sat, 2009-05-02 10:28 </div> 24
    • RDF in Drupal 7 core Universities in RDF Submitted by Lin on Sat, 2009-05-02 10:28 24
    • RDF in Drupal 7 core Universities in RDF Submitted by Lin on Sat, 2009-05-02 10:28 <div class="submitted"> Submitted by <span rel="sioc:has_creator"> <a href="/user/1" typeof="sioc:User" property="foaf:name">Lin</a></span> on Sat, 2009-05-02 10:28 </div> 24
    • ? 25
    • 25
    • 25
    • Microformats 26
    • MicroformatsBring structured data to HTML 26
    • MicroformatsBring structured data to HTML 26
    • MicroformatsBring structured data to HTMLLimitations 26
    • MicroformatsBring structured data to HTMLLimitations• Not extensible — if your use case doesn’t match the existing formats, you can’t make your own 26
    • MicroformatsBring structured data to HTMLLimitations• Not extensible — if your use case doesn’t match the existing formats, you can’t make your own• Not scopable — properties set on child elements get misinterpreted as properties of parents 26
    • RDFa and Microdata 27
    • RDFa and MicrodataRDFa 27
    • RDFa and MicrodataRDFa• about 27
    • RDFa and MicrodataRDFa• about• property, rel 27
    • RDFa and MicrodataRDFa• about• property, rel• typeof 27
    • RDFa and MicrodataRDFa Microdata• about• property, rel• typeof 27
    • RDFa and MicrodataRDFa Microdata• about • itemid• property, rel• typeof 27
    • RDFa and MicrodataRDFa Microdata• about • itemid• property, rel • itemprop• typeof 27
    • RDFa and MicrodataRDFa Microdata• about • itemid• property, rel • itemprop• typeof • itemtype 27
    • RDFa and MicrodataRDFa Microdata• about • itemid• property, rel • itemprop• typeof • itemtype 27
    • A closer look at the RDF that Drupal 7 includes out of the box 28
    • RDF for free in Drupal 7•All entity types: node comment user file term vocabulary 29
    • RDF for free in Drupal 7•Attributes: title date (created, updated) all fields* comment count reply of (comment) creator * provided a mapping has been defined for it 30
    • Drupal 7 entities “cool URIs”•All entities have their own URI •node/3 •comment/6#comment-6 •user/2 •taxonomy/term/5 http://www.w3.org/TR/cooluris/ 31
    • Drupal 7 RDFa goodness •FOAF, SIOC, SKOS, DC “out of the box” •All users have a WebID URI user/3#me => foaf:Person 32
    • Drupal 7 default mappings dc:title name vocabulary rdfs:comment term description skos:Concept Scheme skos:inScheme skos:prefLabel, name rdfs:label term skos:definition description skos:Concept skos:broader dc:subject dc:title title node dc:created, dc:date creation date user sioc:has_creator sioc:Item, sioc:User foaf:Document dc:modified modification date Account content:encoded body sioc:num_replies number replies foaf:page foaf:name sioc:has_creator sioc:reply_of dc:title title homepage user name comment dc:created, dc:date creation date sioc:Post, sioct:Comment dc:modified modification date content:encoded sioc:reply_of body 33
    • RDFa demo: how machines see Drupal pages •Ubiquity RDFa •Sig.ma - Semantic Information Mashup http://ubiquity-rdfa.googlecode.com/svn/trunk/ubiquity-loader.js 34
    • 35
    • History of Semantics in Drupal•rdf.php (2000, Dries)•FOAF, vCard (2004, walkah)•Relationship (2005, dman)•Semantic Search (2006, hendler) 36
    • History of Semantics in Drupal•RDF (2007, Arto)•OpenCalais (febbraro, 2008)•RDF CCK (2008, scor)•and more... 37
    • RDF in Drupal 7 - the story so far 38
    • RDF in Drupal 7 - the story so far May 2009 DERI, Galway 39
    • RDF in Drupal 7 - the story so far•61 issues in total•11 months of coding•401 lines of code•372 lines of documentation•537 lines of tests 40
    • RDFa growth•fastest growing data format on the Web•3.6% of the pages in the Web•510% growth in the last year http://tripletalk.wordpress.com/2011/01/25/rdfa-deployment-across-the-web/ 41
    • RDFa and e-Commerce: BestBuy•GoodRelations•30 % percent increase in traffic•Yahoo observes a 15% increase in the Click-through-Rate http://rdfa.info/2009/12/11/best-buy-and-rdfa/ 42
    • Why RDF and RDFa?•W3C standards•BBC, New York Times, Reuters, Facebook•Google, Yahoo! 43
    • RDF in contrib 44
    • RDF in contrib RDF Mapping User Interface for site administrators to customize mappings 44
    • RDF in contrib 45
    • RDF in contrib SPARQL Endpoint: anyone can query your site data with SPARQL queries 45
    • RDF in contrib SPARQL Endpoint: anyone can query your site data with SPARQL queries Figure 3.6: A list of SPARQL results (left) and an RDF (right). 45
    • RDF in contribWhat’s coming up 46
    • RDF in contribWhat’s coming upSPARQL Views: A way of connecting to external RDFsources and displaying the results within the contextof your site, using different styles as appropriate. 46
    • RDF in contribWhat’s coming upSPARQL Views: A way of connecting to external RDFsources and displaying the results within the contextof your site, using different styles as appropriate. my-site.net company.com your-site.org 46
    • RDF in Drupal 7 for developers http://api.drupal.org/api/group/rdf/7 47
    • RDF namespaces declaration 48
    • 3 ways to set RDF mappings1. Entity type level defaults: hook_rdf_mappings() bundle => RDF_DEFAULT_BUNDLE,2. Content type / bundle level override: hook_rdf_mappings() bundle => my_content_type,3. Alter mappings for existing bundles: rdf_mapping_save() 49
    • Entity type level RDF mappings 50
    • Entity type level RDF mappings dc:title name vocabulary rdfs:comment term description skos:Concept Scheme skos:inScheme skos:prefLabel, name rdfs:label term skos:definition description skos:Concept skos:broader dc:subject dc:title title node dc:created, dc:date creation date user sioc:has_creator sioc:Item, sioc:User foaf:Document dc:modified modification date Account content:encoded body sioc:num_replies number replies foaf:page foaf:name sioc:has_creator sioc:reply_of dc:title title homepage user name comment dc:created, dc:date creation date sioc:Post, sioct:Comment dc:modified modification date content:encoded sioc:reply_of body 51
    • Content type / bundle level RDF mappings 52
    • Content type / bundle level RDF mappings 53
    • Custom mappings with rdf_mapping_save() 54
    • Custom mappings with rdf_mapping_save() 55
    • Drupal 7 RDFa internals •Mappings cached with entity info (fast) •RDFa markup added via the theme layer. Impacts performance on pages with many comments: turn on page cache. 56
    • Credits Mark Birbeck Christopher Ruppel Johannes Keizer Alex Bronstein Kanok Ausawawaranun Hobury John Breslin John Breslin Benjamin Doherty Benjamin Doherty Scriptall Giorgos Kontopoulos Stefan Freudenberg cocoate Thomas Speer Rolf Guescini Frank Febbraro Łukasz Kowalski Daniel F. Kudwien Dirk Ruediger Raul Pedro Fernandes Santos Florian Lorétan Lin Clark Alexander Langer Frédéric Marand Prometheus Robert Douglass Benjamin Melançon William Hayes Rob Loach John Morahan Christopher Albrecht Andrew Kennedy Dries Buytaert Roundabout Publications Knud Möller Angie Byron Aris Vidalis Udo Gerhards catch Gerard Roos Kevin Bridges chx Ludovico Fischer Peter Galiba Peter Wolanin Barry Jaspan yched 57
    • Sponsored by 58
    • http://cph2010.drupal.org/node/14733 59