Encoding DC in (X)HTML, XML and RDF Andy Powell UKOLN, University of Bath, UK UKOLN is supported by: Tutorial.

Slides:



Advertisements
Similar presentations
Numbers Treasure Hunt Following each question, click on the answer. If correct, the next page will load with a graphic first – these can be used to check.
Advertisements

Repaso: Unidad 2 Lección 2
1 A B C
Variations of the Turing Machine
AP STUDY SESSION 2.
Ali Alshowaish. dc.coverage element articulates limitations in the scope of the resource, typically along the following lines: geographical, temporal,
1
Select from the most commonly used minutes below.
Chapter 7 System Models.
1 Copyright © 2013 Elsevier Inc. All rights reserved. Chapter 4 Computing Platforms.
Putting the Pieces Together Grace Agnew Slide User Description Rights Holder Authentication Rights Video Object Permission Administration.
A centre of expertise in digital information management The OAI Protocol for Metadata Harvesting Andy Powell UKOLN,
Agents and the DC Abstract Model Andy Powell UKOLN, University of Bath DC Agents WG Meeting DC-2005, Madrid.
DC Architecture WG meeting Monday Sept 12 Slot 1: Slot 2: Location: Seminar Room 4.1.E01.
OLAC Metadata Steven Bird University of Melbourne / University of Pennsylvania OLAC Workshop 10 December 2002.
David Burdett May 11, 2004 Package Binding for WS CDL.
CALENDAR.
A centre of expertise in digital information management IMS Digital Repositories Interoperability Andy Powell UKOLN,
Putting together a METS profile. Questions to ask when setting down the METS path Should you design your own profile? Should you use someone elses off.
UKOLN, University of Bath
Andy Powell, Eduserv Foundation July 2006 Repository Roadmap – technical issues.
Andy Powell, Eduserv Foundation Feb 2007 The Dublin Core Abstract Model – a packaging standard?
Dublin Core, OAI-PMH and the eBank UK schema Monica Duke UKOLN, University of Bath, UK UKOLN is supported by:
February Harvesting RDF metadata Building digital library portals with harvested metadata workshop EU-DL All Projects concertation meeting DELOS.
Dr. Alexandra I. Cristea CS 253: Topics in Database Systems: C3.
1 Click here to End Presentation Software: Installation and Updates Internet Download CD release NACIS Updates.
The 5S numbers game..
Media-Monitoring Final Report April - May 2010 News.
Break Time Remaining 10:00.
Turing Machines.
Anything But Typical Learning to Love JavaScript Prototypes Page 1 © 2010 Razorfish. All rights reserved. Dan Nichols March 14, 2010.
PP Test Review Sections 6-1 to 6-6
Collections and services in the information environment JISC Collection/Service Description Workshop, London, 11 July 2002 Pete Johnston UKOLN, University.
Operating Systems Operating Systems - Winter 2010 Chapter 3 – Input/Output Vrije Universiteit Amsterdam.
Exarte Bezoek aan de Mediacampus Bachelor in de grafische en digitale media April 2014.
Copyright © 2012, Elsevier Inc. All rights Reserved. 1 Chapter 7 Modeling Structure with Blocks.
A centre of expertise in digital information management UKOLN is supported by: XML and the DCMI Abstract Model DC Architecture WG Meeting,
Lilian Blot PART III: ITERATIONS Core Elements Autumn 2012 TPOP 1.
Adding Up In Chunks.
Encoding DC in (X)HTML, XML and RDF Andy Powell UKOLN, University of Bath, UK UKOLN is supported by: Tutorial.
An Introduction to Dublin Core
FAFSA on the Web Preview Presentation December 2013.
MaK_Full ahead loaded 1 Alarm Page Directory (F11)
1 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt Synthetic.
Dr. Alexandra I. Cristea XHTML.
: 3 00.
5 minutes.
1 hi at no doifpi me be go we of at be do go hi if me no of pi we Inorder Traversal Inorder traversal. n Visit the left subtree. n Visit the node. n Visit.
1 Let’s Recapitulate. 2 Regular Languages DFAs NFAs Regular Expressions Regular Grammars.
Types of selection structures
Speak Up for Safety Dr. Susan Strauss Harassment & Bullying Consultant November 9, 2012.
1 Titre de la diapositive SDMO Industries – Training Département MICS KERYS 09- MICS KERYS – WEBSITE.
Chapter 12 Working with Forms Principles of Web Design, 4 th Edition.
Converting a Fraction to %
Clock will move after 1 minute
Chapter 11 Creating Framed Layouts Principles of Web Design, 4 th Edition.
Physics for Scientists & Engineers, 3rd Edition
Select a time to count down from the clock above
1.step PMIT start + initial project data input Concept Concept.
Steffen Staab 1WeST Web Science & Technologies University of Koblenz ▪ Landau, Germany Structured Data on the Web Introduction to.
9. Two Functions of Two Random Variables
Introduction Peter Dolog dolog [at] cs [dot] aau [dot] dk Intelligent Web and Information Systems September 9, 2010.
Developing a Metadata Exchange Format for Mathematical Literature David Ruddy Project Euclid Cornell University Library DML 2010 Paris 7 July 2010.
UKOLUG - July Metadata for the Web RDF and the Dublin Core Andy Powell UKOLN, University of Bath UKOLN.
1 Dublin Core & DCMI – an introduction Some slides are from DCMI Training Resources at:
Pete Johnston, Eduserv Foundation 16 April 2007 An Introduction to the DCMI Abstract Model JISC.
DC Architecture WG meeting Wednesday Seminar Room: 5205 (2nd Floor)
Describing resources II: Dublin Core CERN-UNESCO School on Digital Libraries Rabat, Nov 22-26, 2010 Annette Holtkamp CERN.
Presentation transcript:

Encoding DC in (X)HTML, XML and RDF Andy Powell UKOLN, University of Bath, UK UKOLN is supported by: Tutorial at DC-2004, Shanghai October 2004

DC-2004 tutorial - Shanghai, Oct About me… Andy Powell UKOLN, University of Bath, UK UKOLN is a ‘centre of expertise in digital information management for the UK’ member of the DC Usage Board chair of the DC Architecture Working Group

DC-2004 tutorial - Shanghai, Oct About you… How many of you are librarians? How many of you are software developers (computer programmers) How many of you have created a Dublin Core description in HTML (or XML or RDF/XML)?

DC-2004 tutorial - Shanghai, Oct Contents an abstract model for DC (30 mins) encoding DC in XHTML (15 mins) encoding DC in XML (15 mins) encoding DC in RDF/XML (5 mins) practical examples OAI Protocol for Metadata Harvesting and RSS (20 mins)

Important DCMI documents… DCMI Abstract Model – DRAFT Expressing Dublin Core in HTML/XHTML meta and link elements Guidelines for implementing Dublin Core in XML Expressing Simple Dublin Core in RDF/XML Expressing Qualified Dublin Core in RDF/XML Namespace Policy for the DCMI DCMI Metadata Terms

DC-2004 tutorial - Shanghai, Oct Implementing DC this tutorial is about the mechanics of implementing DC in HTML, XML and RDF it doesn’t really consider which implementation strategy is the best! ask yourself two questions… what am I trying to achieve? does using HTML, XML or RDF help me achieve it? do software and services exist that will support the creation and use of my metadata?

DC-2004 tutorial - Shanghai, Oct DCMI abstract model

DC-2004 tutorial - Shanghai, Oct Why an abstract model? the first part of this tutorial isn’t going to show any syntax! why? because before we start creating DCMI descriptions we need to understand what kinds of things we want to be able to say about ‘resources’ known as the DCMI abstract model note: a very simplified view of the model is presented here

DC-2004 tutorial - Shanghai, Oct What is a resource? W3C/IETF definition of resource is “…anything that has identity. Familiar examples include an electronic document, an image, a service (e.g., "today's weather report for Los Angeles"), and a collection of other resources. Not all resources are network "retrievable"; e.g., human beings, corporations, and bound books in a library can also be considered resources.” i.e. a resource is “anything” physical things (books, cars, people) digital things (Web pages, digital images) conceptual things (colours, points in time, subjects)

DC-2004 tutorial - Shanghai, Oct DC and resources but… this seems to be too wide for the things we can describe with DC! can we really describe people using DC? do people have titles and subjects? no… in general we only use DC to describe a sub-set of all resources anything covered by the DCMIType list… Collection, Dataset, Event, Image (Still or Moving), Interactive Resource, Service, Software, Sound, Text, Physical Object

DC-2004 tutorial - Shanghai, Oct DCMI abstract model a description is made up of one or more statements (about one, and only one, resource) and optionally, the URI of the resource being described (resource URI ) each statement is made up of a property URI (that identifies a property) a value URI (that identifies a value) and/or one or more representations of the value (value representations)

DC-2004 tutorial - Shanghai, Oct Value strings each value representation may take the form of a value string, a rich value or a related description note: not going to discuss rich values and related descriptions in this tutorial each value string is a simple, human- readable string that represents the resource that is the value of the property each value string may have an associated value string language that is an ISO language tag (e.g. en-GB)

DC-2004 tutorial - Shanghai, Oct Elements and refinements within DCMI, we often use the phrases ‘element’ and ‘element refinement’ an ‘element’ is just another word for a property an ‘element refinement’ is a special kind of property (a sub-property) that shares some meaning with one other property but has narrower semantics e.g. if “Ben is the illustrator of a Book” then it is also true to say that “Ben is a contributor to the Book” sub-property property

DC-2004 tutorial - Shanghai, Oct Encoding schemes values and value strings can be ‘qualified’ by using encoding schemes a vocabulary encoding scheme is used to indicate the class of the value e.g. the value is taken from LCSH a syntax encoding scheme is used to indicate how the value string is structured e.g. the value string is a date structured according to the W3CDTF rules (“ ”)

DC-2004 tutorial - Shanghai, Oct The 1:1 principle notice that the model indicates that each description describes one, and only one, resource this is commonly referred to as the 1:1 principle however…

DC-2004 tutorial - Shanghai, Oct Description sets real-world metadata applications tend to be based on loosely grouped sets of descriptions (where the described resources are typically related in some way) known in the abstract model as description sets for example, a description set might comprise descriptions of both a painting and the artist

DC-2004 tutorial - Shanghai, Oct Records description sets are instantiated, for the purposes of exchange between software applications, in the form of metadata records each record conforms to one of the DCMI encoding guidelines (XHTML meta tags, XML, RDF/XML, etc.) a document andy powell record

DC-2004 tutorial - Shanghai, Oct Simple vs. qualified DC? within DCMI, we often use the phrases “simple DC” and “qualified DC” “simple DC” only supports a single description using the 15 DCMES elements with value strings “qualified DC” supports all the features of the abstract model, and allows the use of all DCMI terms as well as other, non-DCMI, terms note that not everyone agrees with my definitions!

DC-2004 tutorial - Shanghai, Oct Dumb-down ignore any property that isn't in the Dublin Core Metadata Element Set use value URI (if present) or value string as new value string recursively resolve sub- property relationships until one of the 15 properties in the DCMES is reached, otherwise ignore use knowledge of rich values, related descriptions or the value string and the syntax encoding scheme to create a new value string elementvalue uninformed informed the process of translating qualified DC into simple DC is normally referred to as ‘dumbing- down’

DC-2004 tutorial - Shanghai, Oct Model summary record (encoded as XHTML, XML or RDF/XML) description set description (about a resource (URI)) statement property (URI) value (URI) representationvalue string OR rich value OR related description vocabulary encoding scheme (URI) syntax encoding scheme (URI) language (e.g. en-GB)

DC-2004 tutorial - Shanghai, Oct Encoding DC in XHTML (and HTML!)

DC-2004 tutorial - Shanghai, Oct What is being described? a DC description embedded in an (X)HTML document describes that document if you want to describe something else, don’t embed it in the (X)HTML document! …not everyone would agree with this…

DC-2004 tutorial - Shanghai, Oct The basics the DC description is embedded into the section of the (X)HTML document …DC description goes here… …

DC-2004 tutorial - Shanghai, Oct DCMES elements use the ‘ name ’ and ‘ content ’ attributes of the XHTML element to encode the DC element (one of the 15 DCMES elements) and its value string. Use the following pattern: for example: …the element names of the 15 DCMES elements always have a lower-case first letter…

DC-2004 tutorial - Shanghai, Oct Value strings value strings go in the XHTML element ‘content’ attribute… the string in the ‘ content ’ attribute is defined to be CDATA, i.e. a sequence of characters from the document character set which may include character entities … long value strings may be wrapped across multiple lines as necessary… …will need to escape some characters, &, <, >, etc…

DC-2004 tutorial - Shanghai, Oct Value string language where the language of the value string is indicated, it should be encoded using the ‘ xml:lang ’ attribute of the XHTML element. For example:

DC-2004 tutorial - Shanghai, Oct Repeated elements multiple property values should be encoded by repeating the XHTML element for that property, for example:

DC-2004 tutorial - Shanghai, Oct Other DC elements DC also has elements that are not part of the DCMES (the original 15), e.g. Audience use the same pattern but with a ‘DCTERMS’ prefix: for example: …element names may be mixed-case but should always have a lower-case first letter…

DC-2004 tutorial - Shanghai, Oct Element refinements use the same pattern for element refinements: for example:

DC-2004 tutorial - Shanghai, Oct Encoding schemes encoding schemes are encoded using the ‘ scheme ’ attribute of the XHTML element, using the following pattern: for example:

DC-2004 tutorial - Shanghai, Oct The case of names elements, element refinements and encoding schemes should use the names specified in DCMI Metadata Terms

DC-2004 tutorial - Shanghai, Oct The case of names (2) element and element refinement names may be mixed-case but should always have a lower-case first letter encoding scheme names may be mixed- case but should always start with an upper-case letter

DC-2004 tutorial - Shanghai, Oct Handling namespaces… the ‘DC.’ and ‘DCTERMS.’ prefixes are used to indicate the namespace from which the property is taken put the namespace URI in an XHTML element: while any string is allowable as the prefix, current practice is to use ‘DC.’ and ‘DCTERMS.’

DC-2004 tutorial - Shanghai, Oct Value URIs where the value of a property is the URI of another resource (e.g. DC.relation) an alternative form of encoding using the XHTML element is preferred. Use the following pattern: for example:

DC-2004 tutorial - Shanghai, Oct Mixing DC and non-DC DC metadata can be mixed with non-DC metadata in XHTML elements the following example embeds DC, AGLS and unspecified metadata properties in the same XHTML Web page:

DC-2004 tutorial - Shanghai, Oct A couple of examples Simple DC example 1 example 1 Qualified DC example 2 example 2 ScreenCam of using DC-dot

DC-2004 tutorial - Shanghai, Oct Encoding DC in XML

DC-2004 tutorial - Shanghai, Oct Properties and values encode properties as XML elements and value strings as the content of those elements the name of the XML element should be an XML qualified name (QName) of the property Dublin Core in XML do not use constructs like

DC-2004 tutorial - Shanghai, Oct DCMES property names the property names for the 15 DCMES elements should be all lower-case Dublin Core in XML do not use Dublin Core in XML

DC-2004 tutorial - Shanghai, Oct Repeating properties multiple value strings should be encoded by repeating the XML element for that property First title Second title

DC-2004 tutorial - Shanghai, Oct Value string language where the language of the value is indicated, it should be encoded using the ‘ xml:lang ’ attribute seafood fruits de mer

DC-2004 tutorial - Shanghai, Oct Container elements note that it is anticipated that records will be encoded within one or more container XML element(s) of some kind this tutorial makes no recommendations for the name of any container element, nor for the namespace that the element should be taken from candidate container element names include,,, and

DC-2004 tutorial - Shanghai, Oct Simple DC example example 3

DC-2004 tutorial - Shanghai, Oct Element refinements element refinements should be treated in the same way as other properties for example: do not use any of the following:

DC-2004 tutorial - Shanghai, Oct Encoding schemes encoding schemes should be implemented using the ' xsi:type ' attribute of the XML element for the property the name of the encoding scheme should be given as the attribute value, and should be in the form of an XML qualified name (QName):

DC-2004 tutorial - Shanghai, Oct The case of names elements, element refinements and encoding schemes should use the names specified in DCMI Metadata Terms …note, the 15 DCMES element names all start with a lowercase letter…

DC-2004 tutorial - Shanghai, Oct Some examples Qualified DC example 4 example 4 DC and IEEE LOM example 5 example 5 DC, IMS and ODRL example 6 example 6 HEALTH WARNING Examples 5 and 6 may seriously damage your interoperability!

DC-2004 tutorial - Shanghai, Oct Encoding DC in RDF

DC-2004 tutorial - Shanghai, Oct What is RDF? Resource Description Framework W3C recommendation for metadata model and syntax(es) RDF is commonly encoded as XML for use on the Web underpins the ‘semantic Web’ W3C - Resource Description Framework (RDF)

DC-2004 tutorial - Shanghai, Oct Why use RDF? RDF provides shared metadata ‘model’… …shared ‘meaning’ metadata can be shared between applications that have little or no knowledge about each other e.g. an RDF-based bibliographic application can consume RDF-based geospatial metadata and have 'some' knowledge of what it means …with (X)HTML and XML encodings, software applications must have ‘understanding’ hard-coded into them…

DC-2004 tutorial - Shanghai, Oct DC in RDF DC abstract model maps easily onto the RDF model (because RDF was the basis for it!) DC in RDF/XML syntax is an encoding of the RDF model in XML simple DC is similar to the non-RDF XML we've seen already… …but with the addition of and container elements example 7 qualified DC is too complex to cover here!

DC-2004 tutorial - Shanghai, Oct Practical examples – OAI and RSS

DC-2004 tutorial - Shanghai, Oct OAI-PMH OAI Protocol for Metadata Harvesting simple protocol for sharing metadata records between applications currently at version 2.0 based on HTTP, XML, XML Schema and XML namespaces allows a harvester to ask a remote repository for some or all of its metadata records

DC-2004 tutorial - Shanghai, Oct OAI-PMH (2) simple DC is default (mandatory) record format supports any record format provided it can be encoded using XML (e.g. DC, IEEE LOM, MARC, ODRL, …) Open Archives Initiative

DC-2004 tutorial - Shanghai, Oct OAI-PMH example record from the American Memory repository at the Library of Congress example 8 ScreenCam of using the ‘repository explorer’ScreenCam‘repository explorer’ GetRecord for record identifier oai:lcoa1.loc.gov:loc.gmd/g3701p.rr003570

DC-2004 tutorial - Shanghai, Oct RSS RDF Site Summary or Rich Site Summary (or even Really Simple Syndication) at least 3 different versions (0.91, 1.0 and 2.0) all based on XML but not compatible simple format for sharing news feeds on the Web RSS ‘channel’ – list of ‘items’ channels updated by updating XML file RSS clients gather XML on regular basis

DC-2004 tutorial - Shanghai, Oct RSS 1.0 and DC example RSS 1.0 based on RDF most flexible and extensible of the RSS ‘family’ - not necessarily the most widely deployed can include DC in both ‘channel’ and ‘item’ descriptions example 9 full documentation at: RDF Site Summary 1.0 Modules: Qualified Dublin Core

DC-2004 tutorial - Shanghai, Oct What have we learned? an abstract model for DC encoding DC in XHTML encoding DC in XML encoding DC in RDF/XML two practical examples OAI Protocol for Metadata Harvesting RSS

DC-2004 tutorial - Shanghai, Oct Questions?