ZBW is member of the Leibniz AssociationLinked Data Enhanced Publishingfor Special CollectionsJoachim NeubertZBW – German ...
Motivation• Special collections often consist of specific (sometimes unique)kinds of objects with special attributes (e.g....
My own background• Scientific software developer at ZBW – German National Library forEconomics, mainly concerned with Link...
Page 4Further Agenda1) Linked Data, Content Management Systems, and Drupal2) Customizing Drupal 7 for special collections3...
Why semantic enhancement? – An examplePage 5https://www.goodreads.com/book/show/91767.Frida
Semantic enhancement via RDFPage 6http://commonplace.net/2009/06/linked-data-for-libraries/
Weaving the web of Linked DataPage 7http://www.worldcat.org/oclc/8281462http://viaf.org/viaf/213505112http://dbpedia.org/r...
Page 8Linking Open Data cloud diagram, by Richard Cyganiak and Anja Jentzsch. http://lod-cloud.net/
So, why linked data enhanced publishing?• Differentiate the subjects of your web pages and their attributes• Thus, foster ...
Why use a content management system?• Standard tasks (browser compatibility, page templates, responsivecss, site navigatio...
Why Drupal?• Open & modular architecture● Extensible by modules● Standards-based● Scalable• Widely used all over the world...
Drupal 7 default RDF schemaPage 12http://openspring.net/blog/2011/05/01/background-research-work-leading-to-rdf-in-drupal-...
Page 13
Customizing Drupal 7 for special collectionsPage 14
Page 15
Creating a custom content (node) typeCan be done by the site builder (without coding)Page 16
Page 17
Page 18Requires:• RDF UI module enabled• Prefixes for additionalnamespaces, e.g. doap,defined (via UI)
Creating custom fieldsPage 19
Defining custom field´s RDF mappingPage 20
Output in RDFa• Drupal renders RDF mappings as HTML attributes• No frickling in HTML producing code or templates• Works ou...
M<http://zbw.eu/labs/project/zbw-labs> a schema:CreativeWork,doap:Project;dc:description """ZBW Labs Website is a semantic...
Additional Linked Data / RDF features• Serialize Drupal RDF data in RDF/XML, Turtle, NT (Modules: RDFx,RESTful Web Service...
Web Taxonomy: Using vocabularies from the web• Autocomplete widget for Drupal fields, powered by vocabulariesmaintained el...
Page 25Plugin example: Economics TaxonomiesCode downloadable and installable from https://drupal.org/sandbox/jneubert/1447...
Extending Drupal even furtherDrupal is not only a CMS, but also a Content Mangement Framework• Well defined APIs (database...
Current limitations of RDF/LD support in Drupal 7Page 27
Cool URIs require work1) out-of-the-box default URIhttp://zbw.eu/labs/en?q=node/252) with the „Clean URLs“ feature enabled...
Nested RDF structures only with custom codeWorkarround example:Git repository URI in DOAP ontology demands a separate node...
Further limitations in Drupal 7• RDFa support currently works for single entities – pages with multipleentities (search re...
Outlook to Drupal 8• Drupal base functionalities refactored for using Symphony framework• Aimed at an extended service-ori...
To sum up• Linked data publishing via a CMS, in particular Drupal, is a validoption• If your data can be mapped to an esse...
Page 33Thank you!Joachim NeubertZBW – Leibniz Information Centre for Economicsj.neubert@zbw.euhttp://zbw.eu/labs
Nächste SlideShare
Wird geladen in …5
×

Linked data enhanced publishing for special collections (with Drupal)

4.240 Aufrufe

Veröffentlicht am

Veröffentlicht in: Bildung, Technologie
0 Kommentare
4 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

Keine Downloads
Aufrufe
Aufrufe insgesamt
4.240
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
2
Aktionen
Geteilt
0
Downloads
0
Kommentare
0
Gefällt mir
4
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Linked data enhanced publishing for special collections (with Drupal)

  1. 1. ZBW is member of the Leibniz AssociationLinked Data Enhanced Publishingfor Special CollectionsJoachim NeubertZBW – German National Library of EconomicsLeibniz Information Centre for EconomicsELAG 2013Ghent, Belgium29.5.2013
  2. 2. Motivation• Special collections often consist of specific (sometimes unique)kinds of objects with special attributes (e.g., type or material,selected from a list) which require non-standard data structures• Custom navigation (e.g., by historical period or dynasty) is eligible• Static pages (e.g., a “news” section, “about” or “help” pages) areoften required, too Turn-key “standard” systems for these requirements are notavailablePage 2
  3. 3. My own background• Scientific software developer at ZBW – German National Library forEconomics, mainly concerned with Linked Open Data andknowledge organization systems and services• Published 20th Century Press Archives in 2010, with some 100,000digitized newspaper articles in dossiers (http://zbw.eu/beta/p20,custom application written in Perl)• Published a repository of ZBW Labs projects recently – basiclyproject descriptions and a blog (http://zbw.eu/labs, Drupal based)Page 3
  4. 4. Page 4Further Agenda1) Linked Data, Content Management Systems, and Drupal2) Customizing Drupal 7 for special collections3) Current limitations of RDF/LD support in Drupal 74) Outlook
  5. 5. Why semantic enhancement? – An examplePage 5https://www.goodreads.com/book/show/91767.Frida
  6. 6. Semantic enhancement via RDFPage 6http://commonplace.net/2009/06/linked-data-for-libraries/
  7. 7. Weaving the web of Linked DataPage 7http://www.worldcat.org/oclc/8281462http://viaf.org/viaf/213505112http://dbpedia.org/resource/Frida_Kahlo
  8. 8. Page 8Linking Open Data cloud diagram, by Richard Cyganiak and Anja Jentzsch. http://lod-cloud.net/
  9. 9. So, why linked data enhanced publishing?• Differentiate the subjects of your web pages and their attributes• Thus, foster data reuse in 3rd party services and applications• Mashups• Search engines• Create meaningful links, adding value for usersPage 9
  10. 10. Why use a content management system?• Standard tasks (browser compatibility, page templates, responsivecss, site navigation, search, form handling, calendar, wysiwyg,revisions, translations, permissions, data management , security)made easy• Easy-to-add web 2.0 features (blogging and comments, tags, rating,forums, …)• Know-how available outside a single development teamPage 10
  11. 11. Why Drupal?• Open & modular architecture● Extensible by modules● Standards-based● Scalable• Widely used all over the world• Vibrant open source community,and commercial services, tooPage 11http://drupal.org/getting-started/before/overviewhttp://de.slideshare.net/scorlosquet/drupal-as-a-semantic-web-platform
  12. 12. Drupal 7 default RDF schemaPage 12http://openspring.net/blog/2011/05/01/background-research-work-leading-to-rdf-in-drupal-7-released-as-part-of-my-masters
  13. 13. Page 13
  14. 14. Customizing Drupal 7 for special collectionsPage 14
  15. 15. Page 15
  16. 16. Creating a custom content (node) typeCan be done by the site builder (without coding)Page 16
  17. 17. Page 17
  18. 18. Page 18Requires:• RDF UI module enabled• Prefixes for additionalnamespaces, e.g. doap,defined (via UI)
  19. 19. Creating custom fieldsPage 19
  20. 20. Defining custom field´s RDF mappingPage 20
  21. 21. Output in RDFa• Drupal renders RDF mappings as HTML attributes• No frickling in HTML producing code or templates• Works out of the box for different Drupal themes (screen designs)• In Drupal 7, by default XHTML/RDFa 1.0• Themes for HTML5/RDFa 1.1 available (e.g., Zen)Page 21
  22. 22. M<http://zbw.eu/labs/project/zbw-labs> a schema:CreativeWork,doap:Project;dc:description """ZBW Labs Website is a semantically enriched directory of ZBW LabsProjects. Labs projects range from small showcases, which may or maynot be part of a larger project, to full-fleged applications in betastate.The new ZBW Labs website is based on Drupal 7 and uses RDFa, which ispart of Drupal Core. Used vocabularies are Dublin Core Terms (dc),Description of a Project (doap) und Schema.org (schema)."""@en;dc:subject <http://zbw.eu/labs/en/taxonomy/term/1>,<http://zbw.eu/labs/en/taxonomy/term/11>,<http://zbw.eu/labs/en/taxonomy/term/3>,<http://zbw.eu/labs/en/taxonomy/term/50>;dc:title "ZBW Labs Website"@en;schema:name "ZBW Labs Website"@en;[...]doap:created "2012-04"^^xsd:gYearMonth,"2012-04-01T00:00:00+02:00"^^xsd:gYearMonth;doap:homepage <http://zbw.eu/labs>;doap:name "ZBW Labs Website"@en;doap:shortdesc "ZBW Labs projects exposed as Linked Open Data"@en;xhv:license <http://creativecommons.org/publicdomain/zero/1.0/> .<http://zbw.eu/labs/en/taxonomy/term/3> a skos:Concept;rdfs:label "Publishing Technologies"@en;skos:prefLabel "Publishing Technologies"@en . Page 22
  23. 23. Additional Linked Data / RDF features• Serialize Drupal RDF data in RDF/XML, Turtle, NT (Modules: RDFx,RESTful Web Services) *, JSON-LD (Modules: JSON-LD, restws)• Expose Drupal RDF data in a SPARQL endpoint (Module: SPARQL)• Support microdata output (Module: Microdata)• Consume RDF data from other SPARQL endpoints and display it aspart of a Drupal site (Module: SPARQL Views)• Add links to other Linked Data entities (Module: Web Taxonomy)* currently does not work with PostgreSQL – for a workarround, see http://drupal.org/node/1999754#comment-7438562Page 23
  24. 24. Web Taxonomy: Using vocabularies from the web• Autocomplete widget for Drupal fields, powered by vocabulariesmaintained elsewhere• Prerequisites:• a web-accessible autosuggest service which delivers terms andtheir URIs (may be JSON, SPARQL results or even SOAP)• a custom coded plugin to access the servicePage 24
  25. 25. Page 25Plugin example: Economics TaxonomiesCode downloadable and installable from https://drupal.org/sandbox/jneubert/1447918• Third party thesauri, such as STW Thesaurus for Economics, can bere-used for indexing a collection
  26. 26. Extending Drupal even furtherDrupal is not only a CMS, but also a Content Mangement Framework• Well defined APIs (database abstraction layer, Field API, RDFMapping API, Form API, Entity API, …)• Entity API allows building custom entities with arbitrary properties• … even residing in remote databases requires substantial programming skillsPage 26
  27. 27. Current limitations of RDF/LD support in Drupal 7Page 27
  28. 28. Cool URIs require work1) out-of-the-box default URIhttp://zbw.eu/labs/en?q=node/252) with the „Clean URLs“ feature enabledhttp://zbw.eu/labs/en/node/253) with the (core) „Path“ module enabled and an alias definedhttp://zbw.eu/labs/en/project/zbw-labs4) removing the language path element (en/de) in multilingual sites fora language-independent resource URI requires custom codehttp://zbw.eu/labs/project/zbw-labs(see code example in http://groups.drupal.org/node/247058#comment-798823)Page 28
  29. 29. Nested RDF structures only with custom codeWorkarround example:Git repository URI in DOAP ontology demands a separate node, e.g.,<> a schema:CreativeWork, doap:Project;doap:repository [ a doap:GitRepository;doap:location "http://github.com/some/id.git" ];• Create field_gitrepository and map to doap:location• Create a custom template file for the field (field--field_gitrepository--lproject.tpl.php)<div rel="doap:repository" class="field-items"<?php print $content_attributes; ?>><div about="[_:repos]" typeof="doap:GitRepository"><?php foreach ($items as $delta => $item): ?><div class="field-item"<?php print $item_attributes[$delta]; ?>><?phpprint render($item); ?></div><?php endforeach; ?></div></div></div>Page 29
  30. 30. Further limitations in Drupal 7• RDFa support currently works for single entities – pages with multipleentities (search results, term pages, views, etc.) are not supported• RDFa output may break under certain special conditions(http://drupal.org/node/1778226)Page 30
  31. 31. Outlook to Drupal 8• Drupal base functionalities refactored for using Symphony framework• Aimed at an extended service-oriented architecture – design goal:“Each piece of content gets its own URL”(http://www.unleashedmind.com/en/blog/sun/drupal-8-the-path-forward)• RDF module split up into a plain RDF mapping module and anothermodule for creating RDFa markupPage 31
  32. 32. To sum up• Linked data publishing via a CMS, in particular Drupal, is a validoption• If your data can be mapped to an essentially flat RDF data structure,linked data can be added mostly by site builders, without muchadditional effort• Sometimes research is required on how to solve problems, and attimes glue code has to be written• But: most of the code for your web application is already there, and issupported by a large and helpful Open Source communityPage 32
  33. 33. Page 33Thank you!Joachim NeubertZBW – Leibniz Information Centre for Economicsj.neubert@zbw.euhttp://zbw.eu/labs

×