Title: A Roadmap for Implementing Dublin Core
1A Roadmap for Implementing Dublin Core
- Douglas Campbell
- National Library of New Zealand Te Puna
Matauranga o Aotearoa - GOVIS Conference, 13 November 2003
2Agenda
- What is it? Why is it useful? How do I use it?
Resources
- Metadata
- Dublin Core
- DCMI
- Application Profile
- Registry
- NZGLS
- HTML meta tags
- XML
- Namespaces
- Encoding in XML
- Semantic Web
- RDF
3With thanks to
- Andy Powell, UKOLN, University of Bath
- Rachel Heery, UKOLN, University of Bath
- Eric Miller, W3C World Wide Web Consortium
- Tom Baker, Fraunhofer-Gesellschaft
- Makx Dekker, DCMI
- Simon Phipps, IBM UK
- Adrienne Kebbell, National Library of New
Zealand
4Key
- Horizon watchers
- Implementers
- Geeks ya_gotta_luv_it
5Metadata
6Metadata What is it?
- Structured data about data
- Separate (eg. library catalogue card, phone book)
or Embedded (eg. CIP, HTML META tags) - Machine-generated or Human created (because
machines dont always get it right) - Resource Discovery Metadata enough
information to be able to find things, often
layered on top of various application-specific
metadata
7Metadata Why is it useful?
- Information about something you dont have in
front of you - Help reduce information overload from vast
quantities of undifferentiated data
8Dublin Core Roadmap
Resource
9Dublin Core
10Dublin Core What is it?
- Simple yet effective element set for describing
a wide range of networked resources. - Small language for making a particular class of
statements about resources. - Created by the best brains from around the world!
11Dublin Core - What is it?
- Some terminology (see also the DC Abstract Model)
- Resource - anything covered by DCMIType
listCollection, Dataset, Event, Interactive
Resource, Moving Image, Physical Object, Service,
Software, Sound, Still Image, Text - Property - a specific aspect, characteristic,
attribute, or relation used to describe a
resource - Record - some structured metadata about a
resource comprising one or more properties and
their associated values - DC defines a set of elements to use as properties
12Dublin Core Why is it useful?
- Better searching, especially across unlike
sources - Answers the question what elements should I have
in my metadata? - Its practical
- Simplicity of creation and maintenance
- Commonly understood semantics
- International scope
- Extensibility
13Dublin Core Why is it useful?
- Its a standard
- ANSI/NISO Z39.85 - US standard, October 2001
- ISO 15836 international standard, April 2003
- Dominant standard for cross-discipline resource
discovery on Internet - Standards arent about making it hard but about
allowing mix-and-match modularity - Interoperable - its naïve to think youre
isolated from the global environment
14Dublin Core Why is it useful?
- Resource Discovery adds high-level cross-domain
layer so can search across unrelated data, then
dig down into richer metadata
MARC
DCQ
Encoded Archival Description
NZGLS
DUBLIN CORE
National Library of New Zealand Metadata
Standards Framework, 2000
15Dublin Core How do I use it?
15 core elements what you need to describe
something
16Dublin Core Roadmap
Description
Element Value
Resource
Value
17Dublin Core How do I use it?
- Examples of how to implement DC records
- Create directly into a DC-based systemeg. use
HTML meta tagsor create/edit DC records in a
database - Crosswalkconvert existing metadata records into
DC requires a mapping from your existing fields
to DC elements - Expose your metadata to look like DC (like
crosswalk but in real time)eg. OAI harvest-able
interface which converts your proprietary data
into DC (only when it is requested)
18Dublin Core How do I use it?
- Qualifiers
- Allow more precision to be specified
- 1. Refinements narrow the meaning (never
extend), eg. Date created, Date modified - 2. Encoding Schemes give context
- Controlled vocabulary, eg. list of country codes
- Formal notation (formatting rules), eg date
format - Are optional the Dumb down principle means a
user can strip qualifiers leaving just the Core
19Dublin Core Roadmap
DCMES
Description
Element Name
Element Value
Resource
Name
Value
20Dublin Core How do I use it?
- Matapihi a Dublin Core success story
- National Digital Forum pilot for
2004ndf.natlib.govt.nz - Gateway to five online digital image collections
Alexander Turnbull Library, Auckland and
Christchurch City Libraries, Auckland Art
Gallery, and Otago Museum - Dublin Core metadata stored centrally, click-thru
to the images and detailed metadata stored on
each organisations website - Similar to the PictureAustralia service
21Dublin Core How do I use it?
Matapihi
DC MetadataDC MetadataDC Metadata
DC MetadataDC MetadataDC Metadata
DC MetadataDC MetadataDC Metadata
Websites
DC MetadataDC MetadataDC MetadataOther
MetadataOther MetadataOther MetadataOther
Metadata
DC MetadataDC MetadataDC MetadataOther
MetadataOther MetadataOther MetadataOther
Metadata
DC MetadataDC MetadataDC MetadataOther
MetadataOther MetadataOther MetadataOther
Metadata
22Dublin Core Resources
- Dublin Core usage guidehttp//www.dublincore.org/
documents/usageguide/ - DC grammar/definitionshttp//dublincore.org/usage
/documents/principles/http//dublincore.org/usage
/terms/ - Current DC elements and qualifiershttp//dublinco
re.org/documents/dcmi-terms/ - Dubline Core Abstract Model proposalhttp//www.
ukoln.ac.uk/metadata/dcmi/abstract-model/ - National Library of New Zealand Metadata
Standards Frameworkhttp//www.natlib.govt.nz/en/w
hatsnew/4initiatives.htmlmeta
23DCMI
24DCMI What is it?
- Dublin Core Metadata Initiative
- Organization dedicated to promoting the
widespread adoption of interoperable metadata
standards and developing specialized metadata
vocabularies for describing resources that enable
more intelligent information discovery systems. - Since 1995
25DCMI Why is it useful?
- A model of open participation
- International, multilingual, cross-industry,
cross-profession - Anyone can join/contribute
- Aim for consensus
- Full of helpful, knowledgeable, passionate
people!
26DCMI How do I use it?
Board of Trustees (7)
AdvisoryBoard (41)
UsageBoard (9)
Directorate (2)
Special Interest Groups (6)
27DCMI How do I use it?
- Process
- Proposal to DC-General (anyone can do this)
- Working Group may discuss/develop further
- Final proposal to DC-General for comments
- Usage Board reviews (for usefulness, clarity of
definition, overlap with existing terms) - Gets Recommended status (or rejected)
- Status levels
- Recommended
- Conforming (if only applies to certain domains)
- Obsolete
- Registered (encoding schemes)
28DCMI How do I use it?
- Down-under DCMI affiliate DC-ANZ
- DC-ANZ Support network and forum for metadata
users in Australia and New Zealand - Locally-focussed guides, conferences, education,
translations, schema development, etc. - MetaMatters clearinghouse http//www.dc-anz.org/m
etamatters/ - Listserv forum for down-under localsDC-ANZ-subscr
ibe_at_DC-ANZ.org
29Dublin Core Roadmap
DCMES
Description
Element Name
Element Value
Refinement
Scheme
Lang
Resource
Name
Value
Refinement
Scheme
Lang
30DCMI - Resources
- About DCMIhttp//dublincore.org/about/
- Usage Board Administrative Processeshttp//dublin
core.org/usage/documents/process/ - DC Working Groupshttp//dublincore.org/groups/
- DC Working Groups mailing list archiveshttp//www
.jiscmail.ac.uk/mailinglists/a-z/d.htm - DC-ANZ Australia New Zealand
supporthttp//www.dc-anz.org/
31Application Profile
32Application Profile What is it?
- An element set optimised for a particular local
application. It may include terms (metadata
elements) drawn from one or more element sets. - Declaration (documentation) of usage reusing
terms already defined elsewhere or using terms
from a local element set. - Does not re-declare elements defined by others
- Eg. My project uses a to qualify b, etc...
33Application Profile Why is it useful?
- Allows metadata layering to be interoperable
with other sets but also have additional
complexity for local needs - Solves the tension between alignment and
differentiation - Extensibility isnt new, eg
- MIME types image/jpeg image/gif image/...
- MARC local tags9xx xx9
34Application Profile How do I use it?
- Element Set
- Declares new terms
- Defines identifiers, definitions, and comments
- Standalone
- Application Profile
- Declares terms to use together in a particular
application or domain - Refines usage requirements
- Re-uses terms from elsewhere
35Dublin Core Roadmap
DCMI community
DCMES
Description
Element Name
Element Value
Refinement
Scheme
Lang
Resource
Name
Value
Refinement
Scheme
Lang
Value
36Application Profile How do I use it?
- Simple DC vs Qualified DC vs Application Profile
- If you use DC terms other than just the 15 core
elements, you are using Qualified DC - If you use more than the DC defined qualifiers
(ie. the element refinements and encoding schemes
defined in DC Terms), you are using an
application profile
37Application Profile How do I use it?
- Process
- Define metadata requirements
- Select most appropriate existing standard
metadata element set - Where possible use existing standard elements for
locally required elements, possibly narrowing
semantics and adding local rules and encoding
schemes - Define remaining elements in private namespace
38Application Profile How do I use it?
- Application Profile declaration
- Terms used plus sources
- Obligation of use, eg. mandatory, recommended,
optional - Any refinements in definition for terms from
external sources - Encoding schemes to use
- Other rules for content
- CEN AP guidelines are a good place to start
- Register your AP with a registry
- Health warning not for the faint of heart!
39Application Profile How do I use it?
- Beware the re-declaring trap!
- Suggest how externally defined terms should be
used, but do not re-declare what the term means - Why not? Any change in scope or meaning of a term
means it is no longer interoperable - Aim confident we can extract the terms belonging
to an external set and the data will comply with
the external set - Adopt not adaptEncourage diversity but limit
divergence
40DC metadata use in National Library of NZ
Picture Australia
MARC
Matapihi
ISAD(G)
DescriptiveRecords
Govt Portal
Discover
Digital Archive
41DC metadata use in the National Library
- Dublin Core metadata does work as a core in
multiple contexts - Discovered the DC layer must be pure to work in
multiple contexts i.e. strictly follow DCMI
recommendations and international best-practice
42Application Profile - Resources
- DC Usage Board Review of Application
Profileshttp//dublincore.org/usage/documents/pro
files/ - Ariadne journal article, September
2000http//www.ariadne.ac.uk/issue25/app-profiles
/ - CEN Guidelines for Application Profiles (CWA
14855)http//www.cenorm.be/cenorm/businessdomains
/businessdomains/informationsocietystandardization
system/applyingtechnologies/meta-data(dublincor
e)workshop/mmi-dublincoreworkshop.asp - DC-Libraries Application Profile
proposalhttp//dublincore.org/documents/library-a
pplication-profile/ - DC-Gov Application Profile (in development)
- DC-Ed Application Profile (in development)
43Application Profile - Resources
- AGLS ex Australian Government Locator Service
http//www.naa.gov.au/recordkeeping/gov_online/ag
ls/summary.html - NZGLS NZ Government Locator Servicehttp//www.e
-government.govt.nz/nzgls/index.asp - E-GMS UK Government Metadata Standardhttp//www
.govtalk.gov.uk/interoperability/metadata.asp - RSLP Collection Descriptionhttp//www.ukoln.ac.uk
/metadata/rslp/ - Digital Resource Description (in
development)http//www.natlib.govt.nz/dr/drd.html
44Registry
45Registry What is it?
- A tool for managing shareable data - a
comprehensive, authoritative source of reference
information about data - An index of terms
- Multiple schemas accessible from one view
- Links to definitions stored externally,
orharvests into a central utility - Still fairly new (DC Registry up Sept 2002)
46Registry Why is it useful?
- Increase reuse of existing terms (rather than
having to reinvent them) - Provides implementation experience to assist
schema development - Able to obtain reliable and trusted information
about schemas - Improve interoperability
- Implementors use standards in pragmatic ways-
standards are published but local
adaptations/extensions are not widely available
47Registry How do I use it?
- Search registry to identify element sets to use
in an Application Profile - Disclose your local element sets and Application
Profiles in appropriate registry - DCMI Registry
- Phase 1 offers mutlilingual search over DC
elements, terms, DCMI Type - Future phases will include registering encoding
schemes, a machine-readable interface for
validation, and a distributed registry model
48Dublin Core Roadmap
DCMI community
DCMES
Description
Element Name
Element Value
Refinement
Scheme
Lang
Resource
Name
Value
Refinement
Scheme
Lang
Other Elements
Name
Value
Refinement
Scheme
Lang
Application Profile
49Registry - Resources
- The DCMI Registryhttp//dublincore.org/dcregistry
/ - DC Registry Working Grouphttp//dublincore.org/gr
oups/registry/ - Ariadne article Registry for the Semantic
Webhttp//www.dlib.org/dlib/may02/wagner/05wagne
r.html - DESIRE Metadata Registryhttp//desire.ukoln.ac.uk
/registry - ISO/IEC 11179 - data elements definitionshttp//w
ww.iso.org/iso/en/CatalogueListPage.CatalogueList?
ICS135ICS240
50NZGLS
51NZGLS What is it?
- New Zealand Government Locator Service
- Dublin Core based Application Profile for
creating discovery level metadata in the New
Zealand Government sector - Originally derived from AGLS (Australia)
- v1.0 Apr 2001, v2.0 in Aug 2001, v2.1 soon
- State Services Commission is the steward,
Archives New Zealand acts as custodian,Nationa
l Library acts as custodian for the two custom
developed thesauri (SONZ and FONZ)
52NZGLS Why is it useful?
- Agreement on how to describe resources using
Dublin Core within NZ Government agencies - Better Government-wide resource discovery (e.g.
in the govt.nz portal) as the metadata is more
consistent - Tackles describing services as well as documents
- Cabinet enourages NZGLS compliance in the State
sector and local authorities to improve
accessibility
53NZGLS How do I use it?
- It is for resource discovery (use other metadata
schemas for more detailed interactions), eg. - www.govt.nz portal
- inter-agency searching
- Intranet
- Creation
- Metalogue tool (for portal)
- HTML meta tags
- XML or RDF/XML data
- Your own database (eg. intranet or CMS)
54NZGLS How do I use it?
- In relation to Dublin Core
- four additional elements plus extra refinements
- additional vocabularies and encoding schemes
- rules and guidelines for best practices
- Five elements are defined differently in DC and
NZGLS so to comply with both schemas those
elements need to be repeated - However version 2.1 of NZGLS will start
re-aligning more with Dublin Core
55NZGLS Resources
- NZGLS homehttp//www.e-government.govt.nz/nzgls/
- Cabinet decision on use, March 2002http//www.dpm
c.govt.nz/cabinet/circulars/co02/3.html - NZGLS compliance study, December
2001http//www.e-government.govt.nz/docs/nzgls-co
mpliance-study/
56Syntax for encoding metadata
- Instatiate/encode abstract DC data using an
appropriate syntax - HTML
- XML
- RDF
57Dublin Core Roadmap
DCMI community
Syntax - HTML/XML/RDF
DCMES
Description
Element Name
Element Value
Refinement
Scheme
Lang
Resource
Name
Value
Refinement
Scheme
Lang
Other Elements
Name
Value
Refinement
Scheme
Lang
Registry
Application Profile
58HTML encoding
59HTML encoding What is it?
- DC Record describing an HTML document embedded
inside the actual HTML document itself (dont
usually embed a record about something else) - Uses the ltmetagt tags in HTML (in ltheadgt)
- These days its best to use XHTML for
future-proofing
60HTML encoding Why is it useful?
- Easy to create
- Easy to harvest
- Metadata wont get lost its attached to the
resource! - Downsides
- limit to the richness you can show (compared to
XML or RDF) - you can only describe one resource
- harder to do central maintenance/QA
61HTML encoding How do I use it?
- Attributes in the ltmetagt tag
- Name (element/refinement name)
- Content (data value)
- Lang (language of data value, not the resource)
- Scheme (encoding scheme for data value)
- ltmeta nameDC.element.refinement
contentvalue string langvalue
string language schemeencoding
scheme /gt
62HTML encoding How do I use it?
- Examples
- ltmeta nameDC.subject contentfruit /gtltmeta
nameDC.subject contentcake /gt - ltmeta nameDCtitle langen
valueAbout New Zealand /gtltmeta
nameDCtitle langmi
valueM333 Aotearoa /gt - ltmeta nameDC.date.created
content2002-02-28 schemeW3CDTF /gt
63HTML encoding How do I use it?
- Notes
- Encode multiple values with multiple ltmetagts
- Values in attributes (eg. content) are CDATA
- Must be from the document character set (ie.
text) - Some characters are escaped (eg. amp lt gt
etc) - Current best practice is
- Elements and refinements start with lower case
letter - Encoding schemes start with an upper case letter
64HTML encoding How do I use it?
- Notes
- Can use full-stop or colon, ie. these are
equivalent - ltmeta nameDCTERMS.Audience contentparents
/gt - ltmeta namedctermsaudience contentparents
/gt - Use DC element names, refinements, and encoding
schemes as term name appears in the current
list http//dublincore.org/documents/dcmi-terms/
65HTML encoding How do I use it?
- Namespace prefix mixing with other elements
- Prefixes indicate source for each term, link to
the reference using ltlinkgt tag - ltlink relschema.DC hrefhttp//purl.org/dc/ele
ments/1.1/ /gt - ltlink relschema.DCTERMS hrefhttp//purl.org/d
c/terms/ /gt - ltlink relschema.NZGLS hrefhttp//www.e-g
overnment.govt.nz/nzgls/standard/2.0/ /gt - ltmeta nameDC.title contentE- Government /gt
- ltmeta name"DC.type.aggregationLevel"
content"collection" /gt - ltmeta nameDCTERMS.audience contentall /gt
- ltmeta nameNZGLS.function schemeFONZ
contentstrategic policymaking /gt
66HTML encoding How do I use it?
- XHTML considerations
- ltmetagt tags are empty tags so require terminating
slash /gt at end - Use xmllang instead of just lang attribute
in XHTML 1.1 - XHTML 2.0 in Working Draft - may be some changes
to ltmetagt tag, but DCMI are in discussion with
the W3C
67HTML encoding - Resources
- Encoding Dublin Core Metadata in
HTMLhttp//www.ietf.org/rfc/rfc2731.txt - Expressing Qualified Dublin Core in HTML/XHTML
meta elementsproposed recommendationhttp//dub
lincore.org/documents/dcq-html/ - W3C HTML/XHTML specificationshttp//www.w3c.org/M
arkUp/
68XML
69XML What is it?
- Extensible Markup Language
- A markup language for structured information.
- A subset of SGML (Standardized General Markup
Language), richer than HTML. - The new CSV
- Think of as a grammar (establishing rules for new
formats) rather than a language - Its just a tool, it wont save the world by
itself!
70XML Why is it useful?
- Content and presentation are separated
71(No Transcript)
72ltHTMLgt ltHEADgtltTITLEgtPavlova Recipelt/TITLEgtlt/HEAD
gt ltBODYgt ltIMG SRCcake.jpg
ALIGNrightgt ltH2 ALIGNcentergtPavlovalt/H1
gt ltIgtLight meringue and cream cake with a
marshmallow-like centre, named after the
famous ballerina. Originated in New Zealand in
the 1920s. lt/Igt ltH4gtIngredientslt/H4gt
ltTABLE CELLPADDING5gt ltTRgt
ltTDgt3 egg whiteslt/TDgt ltTDgt1
teaspoon vinegarlt/TDgt ltTDgt3
tablespoons cold waterlt/TDgt lt/TRgt
ltTRgt ltTDgt1 teaspoon vanilla
essencelt/TDgt ltTDgt1 cup castor
sugarlt/TDgt ltTDgt3 teaspoons
cornflourlt/TDgt lt/TRgt lt/TABLEgt
HTML
73lt?xml version1.0?gt lt!DOCTYPE RecipeML SYSTEM
RecipeML.dtdgt ltRecipeMLgt ltrecipegt
lttitlegtPavlovalt/titlegt ltsourcegtEdmonds
Cookbooklt/sourcegt ltdescriptiongtLight
meringue and cream cake with a marshmallow-like
centre, named after the famous ballerina.
Originated in New Zealand in the 1920s.
lt/descriptiongt ltingredient
quantity3gtegg whitelt/ingredientgt
ltingredient quantity1 measureteaspoongtvinega
rlt/ingredientgt ltingredient quantity3
measuretablespoongtcold
waterlt/ingredientgt ltingredient quantity1
measureteaspoongtvanilla
essencelt/ingredientgt ltingredient
quantity1 measurecupgtcastor
sugarlt/ingredientgt ltingredient quantity3
measureteaspoongtcornflourlt/ingredientgt
ltinstructiongtBeat ltingredientgtegg
whiteslt/ingredientgt until
stiff.lt/instructiongt ltinstructiongtAdd
ltingredientgtcold waterlt/ingredientgt and beat
again.lt/instructiongt
XML
74XML Why is it useful?
- Though still use HTML for delivery/presentation
Server
Server
XML
XSL
XML
XSL
HTML
Browser
IE5
HTML
75lt?xml version"1.0"?gt ltxslstylesheet
version"1.0 xmlnsxsl"http//www.w3.o
rg/1999/XSL/Transform"gt ltxsltemplate
match/RecipeML/recipegt ltHTMLgt ltHEADgt
ltTITLEgtltxslvalue-of select"title"/gtRecipelt/TITLE
gt lt/HEADgt ltBODYgt ltIMG SRC"image/url"
ALIGN"right"/gt ltH2 ALIGN"center"gtltxslvalue
-of select"title"/gtlt/H2gt ltIgtltxslvalue-of
select"description"/gtlt/Igt
ltH4gtIngredientslt/H4gt ltULgt ltxslfor-each
selectingredientgt
ltLIgtltxslvalue-of select"_at_quantity"/gt
ltxslvalue-of select"_at_measure"/gt
ltxslif select"_at_quantitygt1"gtslt/xsl
ifgt ltxslvalue-of
select"."/gt lt/LIgt
XSLT
76XML Why is it useful?
- Is both human-readable and machine-readable and
thats by any machine (Windows/Mac/Unix) - Is structured and self-describing can be
re-purposed - Extensible so wont become obsolete is now a
family of technologies based on the XML format
(eg. XHTML, XPATH, XLINK, XSL Schema, DOM, XQL,
SOAP) - Widely used (5th birthday on 10 Feb 2003)
77XML Why it is useful
- The significance of XML
- Platform-centric system components are complex
and inter-dependent so if one fails, others will
too. - XML is the last piece in the solution-centric
computing model jigsaw. This means you can have
just a business relationship with customers
without having to have a technical relationship
too!
Simon Phipps
78Program
Data
Network
Delivery
Component
Platform-centric
Solution-centric
Delivery Network Program Data
Proprietary mainframe/terminalProprietary
server/client Proprietary Proprietary Proprietary
Web model TCP/IP Java XML
79XML Resources
- W3C XMLhttp//www.w3.org/XML/http//www.w3.org/X
ML/Activity - xml.com
80Namespace
81Namespace What is it?
- In the context of XML
- A collection of names, identified by a URI
reference - (URIs (Uniform Resource Identifiers) are short
strings that refer to resources ie. URLs and
URNs) - May appear in a qualified name which has
- Namespace prefix (associated with a URI)
- Local part
- mystuff where myhttp//here.com/this/
means http//here.com/this/stuff
82Namespace Why is it useful?
- The same terms in different element sets can be
identified separately, eg. mynow ltgt yournow - By making local terms unique globally (by adding
a namespace) they can be shared unambiguously,
making it possible to share semantics.
83Namespace How do I use it?
- lt?xml version"1.0" ?gt
- ltmetadata xmlnsdc"http//purl.org/dc/elements/1.
1/" - xmlnsdcterms"http//purl.org/d
c/terms/" - xmlnsnzgls"http//www.e-govern
ment.govt.nz/"gt - ltdctitlegtE-Governmentlt/dctitlegt
- ltnzglsaggregationLevelgtcollectionlt/nzglsaggreg
ationLevelgt - ltdctermsaudiencegtalllt/dctermsaudiencegt
- ltnzglsfunctiongtltnzglsFONZgtstrategic
policymakinglt/nzglsFONZgt - lt/nzglsfunctiongt
- lt/metadatagt
84Namespace - Resources
- Namespaces in XML W3 recommendationhttp//www.w
3.org/TR/REC-xml-names/ - Naming and Addressing URIs, URLs,
...http//www.w3.org/Addressing/ - Namespace Policy for the DCMIhttp//www.dublincor
e.org/documents/dcmi-namespace/
85Encoding in XML
86Encoding in XML What is it?
- RDF/XML is DCMIs preferred XML encoding, but
there are also guidelines for encoding DC in XML - DCMI maintains a list of XML schemas in use
87DC XML guidelines
- Use XML SchemasImplementors should base their
XML applications on XML Schemas rather than XML
DTDs - Use XML NamespacesImplementors should use XML
Namespaces to uniquely identify DC elements,
element refinements and encoding schemes
88DC XML guidelines
- Data in elements, not attributesImplementors
should encode properties as XML elements and
values as the content of those elements - Use lowercase element namesThe property names
for the 15 DC elements should be all lower-case - Repeat elements for multiple valuesMultiple
property values should be encoded by repeating
the XML element for that property
89DC XML guidelines
- lt?xml version"1.0"?gt
- ltmetadata xmlns"http//example.org/myapp/"
xmlnsxsi"http//www.w3.org/2001/XMLSchema-instan
ce" xsischemaLocation"http//exa
mple.org/myapp/ http//example.org/myapp/schema.
xsd" xmlnsdc"http//purl.org/dc/elements/1.1/"gt - ltdctitlegtPapers Pastlt/dctitlegt
- ltdcdescriptiongtPapers Past showcases selected
19th century New Zealand newspapers and
periodicals.lt/dcdescriptiongt - ltdcpublishergtNational Library of New
Zealandlt/dcpublishergt - ltdcidentifiergthttp//paperspast.natlib.govt.nz
/lt/dcidentifiergt - lt/metadatagt
90DC XML guidelines
- Refinements as standalone XML elements Element
refinements should be treated in the same way as
other properties - ltdctermsavailablegt2002-06lt/dctermsavailablegt ?
- rather than
- ltdcdate refinement"available"gt2002-06lt/dcdategt
? - ltdcdate type"available"gt2002-06lt/dcdategt ?
- ltdcdategt
- ltdctermsavailablegt2002-06lt/dctermsavailab
legt - lt/dcdategt ?
91DC XML guidelines
- Encoding schemes use xsitype attributeEncoding
schemes should be implemented using the
'xsitype' attribute of the XML element for the
property - Use the DC name not labelElement refinements
and encoding schemes should use the names
specified in the DC Qualifiers recommendation
(listed as the 'Name', not as the 'Label') - Use xmllang for data value languageWhere the
language of the value is indicated, it should be
encoded using the 'xmllang' attribute
92DC XML guidelines
- lt?xml version"1.0"?gt
- ltmetadata xmlns"http//example.org/myapp/"
xmlnsxsi"http//www.w3.org/2001/XMLSchema-instan
ce" xsischemaLocation"http//example.org/myapp/
http//example.org/myapp/schema.xsd"
xmlnsdc"http//purl.org/dc/elements/1.1/xmlns
dcterms"http//purl.org/dc/terms/"gt - ltrecordgt
- ltdctitlegtPapers Pastlt/dctitlegt
- ltdcdescriptiongtPapers Past showcases selected
19th century New Zealand newspapers and
periodicals.lt/dcdescriptiongt - ltdcdescription xmllangmi"gtAnei e
whakatairangatia ake ana 275nei n363pepa o
mua n333 Niu T299reni, i mahue mai ai i te
rau tau 1800-1899.lt/dcdescriptiongt
93DC XML guidelines
- ltdcpublishergtNational Library of New
Zealandlt/dcpublishergt - ltdctermsavailable xsitype"dctermsW3CDTF"gt20
01-08-22 lt/dctermsavailablegt - ltdcformat xsitype"dctermsIMT"gtimage/tifflt/d
cformatgt - ltdcidentifier xsitype"dctermsURI"gthttp//pa
perspast.natlib.govt.nz/ lt/dcidentifiergt - ltdctermstemporal xsitypedctermsW3CDTFgt184
0/1900 lt/dctermstermporalgt - ltdctermsspatial xsitypedctermsISO3166gtNZlt
/dctermsspatialgt - lt/recordgt
- lt/metadatagt
94DC XML - Resources
- Guidelines for implementing Dublin Core in
XMLhttp//www.dublincore.org/documents/dc-xml-gui
delines/ - DCMI term declarations in XML schema
languagehttp//www.dublincore.org/schemas/xmls/ - Open Archives Initiative Protocol for Metadata
Harvesting XML examplehttp//www.openarchives.o
rg/OAI/openarchivesprotocol.html
95Semantic Web
96Semantic Web What is it?
- The abstract representation of data on the World
Wide Web - An extension of the current web in which
information is given well-defined meaning, better
enabling computers and people to work in
cooperation - Information is maintained in structured form
rather than in natural language
97Semantic Web Why is it useful?
- The next simple technology that revolutionises
- IP - allowed computers to talk to each other
giving us the Internet - URI - allowed resources to be uniquely locatable
allowing hyperlinking giving us the
Web - Triple - allows information to be communicated in
a standard way giving us the Semantic
Web
Aaron Swartz
98Semantic Web - Why is it useful?
- For documents everything is simple and smooth,
but for data we are still pre-Web - The Web requires a human driver to determine
which links might be relevant to follow and to
understand the content of each page - The Semantic Web structures information so
computers can understand it - Then they can make useful connections, eg.
finding a free slot with the nearest dentist and
booking you in (plus updating your diary)
99Semantic Web - Why is it useful?
Resource
Resource
linksTo
linksTo
Resource
linksTo
linksTo
linksTo
Resource
Resource
Resource
linksTo
Resource
100Semantic Web - Why is it useful?
Image
Document
isBasedOn
isPartOf
Document
hasAuthor
subject
subject
Person
Topic
Topic
livesAt
Place
101Encoding in RDF
102RDF - What is it?
- Resource Description Framework
- Formal grammar for the Semantic Web
- Currently the only serialisation/syntax available
is RDF/XML
103RDF - How do I use it?
- Describe resources by making statements
- Statements consist of three parts, a "triple",
eg. - "X has a Y which is Z"
- "Z is a Y of X"
- Subject - the resource
- Predicate - the property name
- Object - the property's value
104RDF - How do I use it?
- Each part identified using a URI so it is
unambiguous (allows matching and validation) - Subject http//www.example.org/index.html
- Predicate http//purl.org/dc/elements/1.1/crea
tor - Object John Smith
egindex.html
John Smith
dccreator
105Roadmap a side road RDF Triples
Property Name
Value
Property Name
Property Name
Value
Property Name
Value
106RDF - How do I use it?
- Matching statements on URIs allows applications
to make connections (navigate the Semantic Web) - egindex.html dccreator
staffjohnstaffjohn vcardn
"John Smithstaffjohn vcardemail
"john_at_example.com"
egindex.html
staffjohn
dccreator
107Encoding in RDF/XML - How do I do it?
- egindex.html dctitle "Home
Page" - egindex.html dccreator "John Smith"
- ltrdfRDF xmlnsrdf"http//www.w3c.org/1999/0
2/ 22-rdf-syntax-ns" - xmlnseg"http//example.com/"
- xmlnsdc"http//purl.org/dc/elements/1.1
/"gt - ltrdfDescription rdfabout"egindex.html"gt
- ltdctitlegtHome Pagelt/dccreatorgt
- ltdccreatorgtJohn Smithlt/dccreatorgt
- lt/rdfDescriptiongt
- lt/rdfRDFgt
108Roadmap triples in a syntax
Syntax - RDF/XML
Property Name
Value
Property Name
Property Name
Value
Property Name
Value
109Encoding in RDF/XML - How do I do it?
- RDF Schema
- A language for defining RDF semantics
- XML Schemas define XML documents, RDF Schemas
define RDF models - Similar to defining an Application Profile
- Allows defining of properties and also classes
(to group resources together) plus data-typing
(range and domain)
110Encoding in RDF/XML - How do I do it?
- RDF Schema example
- Creator is a property
- Creator has a label whose value is Author
- ltrdfRDF xmlnsrdf"http//www.w3c.org/1999/02/
22-rdf-syntax-ns" - xmlnsrdfs"http//www.w3c.org/2000/01/rd
f-schema" - xmlnsdc"http//purl.org/dc/elements/1.1
/"gt - ltrdfProperty rdfabout"dccreator"gt
- ltrdfslabelgtAuthorlt/rdfslabelgt
- lt/rdfPropertygt
- lt/rdfRDFgt
111RDF - Resources
- W3C Semantic Web homehttp//www.w3.org/2001/sw/
- W3C RDF homehttp//www.w3.org/RDF/
- W3C RDF online validator servicehttp//www.w3.org
/RDF/Validator/
112Comparing the encoding syntaxes
This is why DCMI recommends RDF/XML
113Summary
114Dublin Core Roadmap
DCMI community
Syntax - HTML/XML/RDF
DCMES
Description
Element Name
Element Value
Refinement
Scheme
Lang
Resource
Name
Value
Refinement
Scheme
Lang
Other Elements
Name
Value
Refinement
Scheme
Lang
Registry
Application Profile
XML Schema
RDF Schema
115Questions
DC-ANZDublin Core Australia New Zealand
supporthttp//www.dc-anz.org/
116A Roadmap for Implementing Dublin Core
- Douglas Campbell
- National Library of New Zealand Te Puna
Matauranga o Aotearoa - THE END