SlideShare a Scribd company logo
What’s in a structured value? Andy Powell UKOLN, University of Bath
Background for some time DC has had a slightly fuzzy notion of things called ‘structured values’ DCSV recommendation, complex data-structures in RDF/XML, use of vCard, use of things like DC.Creator.Address, etc. with the exception of RDF/XML, these tend to be fairly ad hoc attempts to squeeze ‘structured’ information into DC records
Simple DC model a  simple DC record  is made up of one or more  properties  and their associated  values   each  property  is an attribute of the  resource  being described  each  property  must be one of the 15 DCMES elements  properties  may be repeated  each  value  is a string  each string  value  may have an associated language (e.g. en-GB)
Qualified DC model a  qualified DC record  is made up of one or more  properties  and their associated  values   each  property  is an attribute of the  resource  being described  each  property  must be either:  one of the elements recommended by the DCMI (i.e. the 15 DC elements and audience),  one of the DCMI  element refinements
Qualified DC model (2) properties  may be repeated  each  value  is a string  each  value  may have an associated  encoding scheme   each  encoding scheme  has a  URI   each string  value  may have an associated language (e.g. en-GB)
But… qualified DC model too simple w.r.t RDF not able to support requirements coming out of DC Agents WG sometimes the value string isn’t just a string… sometimes it is a string that contains some structure i.e. sometimes it is a ‘structured value’
Types of structured values labelled strings DCSV (DC Box, …), OpenURL, vCard unlabelled strings W3CDTF markup HTML markup (various flavours), XML-based markup (CML, MathML, …), or non-XML markup such as TeX related resource descriptions full vCard, DC.Creator.Address, RDF
Definitions a “structured value” is a string that contains machine-parsable component parts (and which has an associated “syntax encoding scheme” that indicates how the component parts are encoded within the string) a string value that includes some markup a description of a related resource
Name and identifiers as values dc:creator, dc:contributor, dc:publisher, dc:relation, dc:source name or identify a related resource identifiers typically in the form of a URI names typically in the form of person or organisation name (sometimes with the addition of extra information)
Linking/embedding requirement in the case of these 5 elements, there appears to be a requirement to form linkage between description of resource and description of one or more related resources i.e. between the resource being described and the resource that is named or identified by the element achieved by embedding or linking
Example 1 – dc:creator <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <dc:creator> <rdf:Description> <rdf:value> Andy Powell </rdf:value> <my:email> [email_address] </my:email> </rdf:Description> </dc:creator> </rdf:Description> </rdf:RDF> Example RDF description using dc:creator…
Example 1 – dc:creator dc:creator Andy Powell… my:affiliation a.powell@uko… my:email … and the RDF model it represents. UKOLN, Univ… a.powell@uko… Andy Po… rdfs:label my:name <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <dc:creator> <rdf:Description> <rdf:value> Andy Powell </rdf:value> <my:email> [email_address] </my:email> </rdf:Description> </dc:creator> </rdf:Description> </rdf:RDF>
Example 1 – dc:creator dc:creator Andy Powell… my:affiliation a.powell@uko… my:email UKOLN, Univ… a.powell@uko… Andy Po… rdfs:label my:name But… we don’t want to embed all this information into every instance metadata record do we? relatedMetadata <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <dc:creator> <rdf:Description> <rdf:value> Andy Powell </rdf:value> <my:email> [email_address] </my:email> </rdf:Description> </dc:creator> </rdf:Description> </rdf:RDF>
Example 1 – dc:creator dc:creator Andy Powell… rdfs:label my:affiliation a.powell@uko… my:email UKOLN, Univ… a.powell@uko… Andy Po… my:name Need to separate part of the information out and store it in a single place – in this case in a directory service… <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <dc:creator> <rdf:Description> <rdf:value> Andy Powell </rdf:value> </rdf:Description> </dc:creator> </rdf:Description> </rdf:RDF> <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <my:name> Andy Powell </my:name> <my:email> [email_address] </my:email> </rdf:Description> </rdf:RDF>
Example 1 – dc:creator valueURI dc:creator Andy Powell… rdfs:label valueURI my:affiliation a.powell@uko… my:email UKOLN, Univ… a.powell@uko… Andy Po… my:name To do this we need to assign a URI (the ‘valueURI’) to the anonymous ‘value’ node… <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <dc:creator> <rdf:Description> <rdf:value> Andy Powell </rdf:value> </rdf:Description> </dc:creator> </rdf:Description> </rdf:RDF> <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <my:name> Andy Powell </my:name> <my:email> [email_address] </my:email> </rdf:Description> </rdf:RDF>
Example 1 – dc:creator valueURI dc:creator Andy Powell… rdfs:label valueURI my:affiliation a.powell@uko… my:email UKOLN, Univ… a.powell@uko… Andy Po… my:name relatedMetadataURI The document containing this information is itself an RDF resource (the ‘relatedMetadata’) and has a URI <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <dc:creator> <rdf:Description> <rdf:value> Andy Powell </rdf:value> </rdf:Description> </dc:creator> </rdf:Description> </rdf:RDF> <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <my:name> Andy Powell </my:name> <my:email> [email_address] </my:email> </rdf:Description> </rdf:RDF>
Example 1 – dc:creator valueURI dc:creator Andy Powell… rdfs:label valueURI my:affiliation a.powell@uko… my:email UKOLN, Univ… a.powell@uko… Andy Po… my:name relatedMetadataURI rdfs:seeAlso Use rdf:seeAlso to form linkage between description and relatedMetadata… <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <dc:creator> <rdf:Description> <rdf:value> Andy Powell </rdf:value> <my:email> [email_address] </my:email> </rdf:Description> </dc:creator> </rdf:Description> </rdf:RDF> <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <dc:creator> <rdf:Description> <rdf:value> Andy Powell </rdf:value> <my:email> [email_address] </my:email> </rdf:Description> </dc:creator> </rdf:Description> </rdf:RDF>
Example 2 – dc:subject <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <rdf:Description> <dc:subject> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> <rdfs:label> Formate Dehydrogenase </rdfs:label> </dcterms:MESH> </dc:subject> </rdf:Description> </rdf:RDF> Example RDF description using dc:subject (taken from Qualified DC in RDF recommendation…
Example 2 – dc:subject <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <rdf:Description> <dc:subject> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> <rdfs:label> Formate Dehydrogenase </rdfs:label> </dcterms:MESH> </dc:subject> </rdf:Description> </rdf:RDF> dcterms:MESH dc:subject rdf:type D08.586… rdf:type rdfs:label Formated… rdfs:value … and the RDF model it represents.
Example 2 – dc:subject <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <rdf:Description> <dc:subject> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> <rdfs:label> Formate Dehydrogenase </rdfs:label> </dcterms:MESH> </dc:subject> </rdf:Description> </rdf:RDF> dcterms:MESH dc:subject rdf:type rdf:type But… we don’t want to embed all this information into every instance metadata record do we? relatedMetadata D08.586… rdfs:label Formated… rdfs:value
Example 2 – dc:subject <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <rdf:Description> <dc:subject> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> </dcterms:MESH> </dc:subject> </rdf:Description> </rdf:RDF> dcterms:MESH dc:subject rdf:type rdf:type <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> <rdfs:label> Formate Dehydrogenase </rdfs:label> </dcterms:MESH> </rdf:RDF> dcterms:MESH D08.586… Formated… Need to separate part of the information out and store it in a single place – in this case with the terminology owner… rdfs:label Formated…
Example 2 – dc:subject <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <rdf:Description> <dc:subject> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> </dcterms:MESH> </dc:subject> </rdf:Description> </rdf:RDF> valueURI dcterms:MESH dc:subject rdf:type rdf:type <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> <rdfs:label> Formate Dehydrogenase </rdfs:label> </dcterms:MESH> </rdf:RDF> valueURI dcterms:MESH D08.586… Formated… To do this we need to assign a URI (the ‘valueURI’) to the anonymous ‘value’ node… rdfs:label Formated…
Example 2 – dc:subject <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <rdf:Description> <dc:subject> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> </dcterms:MESH> </dc:subject> </rdf:Description> </rdf:RDF> valueURI dcterms:MESH dc:subject rdf:type rdf:type <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> <rdfs:label> Formate Dehydrogenase </rdfs:label> </dcterms:MESH> </rdf:RDF> valueURI dcterms:MESH D08.586… Formated… relatedMetadataURI The document containing this information is itself an RDF resource (the ‘relatedMetadata’) and has a URI rdfs:label Formated…
Example 2 – dc:subject <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <rdf:Description> <dc:subject> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> </dcterms:MESH> </dc:subject> </rdf:Description> </rdf:RDF> valueURI dcterms:MESH dc:subject rdf:type rdf:type <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> <rdfs:label> Formate Dehydrogenase </rdfs:label> </dcterms:MESH> </rdf:RDF> valueURI dcterms:MESH D08.586… Formated… relatedMetadataURI rdfs:seeAlso Use rdf:seeAlso to form linkage between description and relatedMetadata… rdfs:label Formated…
Abstract DC model <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <rdf:Description> <dc:subject> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> </dcterms:MESH> </dc:subject> </rdf:Description> </rdf:RDF> valueURI dcterms:MESH dc:subject rdf:type rdf:type <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> <rdfs:label> Formate Dehydrogenase </rdfs:label> </dcterms:MESH> </rdf:RDF> valueURI dcterms:MESH D08.586… Formated… relatedMetadataURI rdfs:seeAlso resource property valueURI valueString In terms of abstract DC model we now have: resource, property, valueURI, valueString (and valueStringLang), encodingScheme, relatedMetadata resource property valueURI relatedMetadata encodingScheme rdfs:label Formated… valueString (valueStringLang)
Need to extend abstract model each [DCMI property] ‘value’ has a ‘valueURI’ each ‘value’ has a ‘valueString’ each ‘valueString’ may have an ‘encoding scheme’ each ‘encoding scheme’ has a URI each ‘valueString’ may have a ‘language’ each ‘value’ may have a linked or embedded ‘complexValue’ (markup or related resource description)
relatedMetadata related resource description known as ‘relatedMetadata’ particular encoding syntaxes may support instantiation of relatedMetadata by embedding explicit link using ‘relatedMetadataURI’ both
Qualified DC model a  qualified DC record  is made up of one or more  properties  and their associated  values   each  property  is an attribute of the  resource  being described  each  property  must be either:  one of the elements recommended by the DCMI (i.e. the 15 DC elements and audience),  one of the DCMI  element refinements properties  may be repeated
Qualified DC model (2) each  value  may have a  valueURI each  value  may have a  valueString   each  valueString  may have an associated  encoding scheme   each  encoding scheme  has a  URI   each  valueString  may have an associated language (e.g. en-GB) each  value  may have a linked or embedded  complexValue  ( markup  or  relatedMetadata )

More Related Content

What's hot (20)

PPT
Introduction to RDF
Narni Rajesh
 
PPTX
469 talk
AlisonNoel
 
PPT
Semantic web
tariq1352
 
ODP
Dublin core Presentation
Mary Jo Chrabasz
 
PDF
Semantic Web(Web 3.0) SPARQL
Daniel D.J. UM
 
ODP
Xml Overview
kevinreiss
 
PPT
Rdf
Imran Babar
 
PDF
Jesús Barrasa
Connected Data World
 
PDF
Debunking some “RDF vs. Property Graph” Alternative Facts
Neo4j
 
PPT
Rdf Overview Presentation
Ken Varnum
 
PDF
RDF Tutorial - SPARQL 20091031
kwangsub kim
 
PPT
Ist16-04 An introduction to RDF
Emanuele Della Valle
 
PPT
Ontologies in RDF-S/OWL
Emanuele Della Valle
 
PDF
Introduction to DTD
torp42
 
PPT
4 xml namespaces and xml schema
gauravashq
 
PDF
Two graph data models : RDF and Property Graphs
andyseaborne
 
PPT
2 dtd - validating xml documents
gauravashq
 
PPT
An Introduction to the DCMI Abstract Model
Eduserv Foundation
 
PPTX
Introduction to XML
Abhra Basak
 
PPT
RDF briefing
Frank van Harmelen
 
Introduction to RDF
Narni Rajesh
 
469 talk
AlisonNoel
 
Semantic web
tariq1352
 
Dublin core Presentation
Mary Jo Chrabasz
 
Semantic Web(Web 3.0) SPARQL
Daniel D.J. UM
 
Xml Overview
kevinreiss
 
Jesús Barrasa
Connected Data World
 
Debunking some “RDF vs. Property Graph” Alternative Facts
Neo4j
 
Rdf Overview Presentation
Ken Varnum
 
RDF Tutorial - SPARQL 20091031
kwangsub kim
 
Ist16-04 An introduction to RDF
Emanuele Della Valle
 
Ontologies in RDF-S/OWL
Emanuele Della Valle
 
Introduction to DTD
torp42
 
4 xml namespaces and xml schema
gauravashq
 
Two graph data models : RDF and Property Graphs
andyseaborne
 
2 dtd - validating xml documents
gauravashq
 
An Introduction to the DCMI Abstract Model
Eduserv Foundation
 
Introduction to XML
Abhra Basak
 
RDF briefing
Frank van Harmelen
 

Viewers also liked (8)

PPT
Open, social and linked - what do current Web trends tell us about the future...
Andy Powell
 
PPT
Open for Business - Open Archives, OpenURL, RSS and the Dublin Core
Andy Powell
 
PPT
The Open Archives Initiative Protocol for Metadata Harvesting
Andy Powell
 
PPT
The JISC Information Environment and collection description
Andy Powell
 
PPTX
Linked Data as an enabling framework for resource discovery across libraries,...
Andy Powell
 
PPTX
Open, social and linked - A ménage à trois of content exploitation
Andy Powell
 
PPTX
The Google Book Settlement - and what it means for learners and researchers i...
Andy Powell
 
PPT
Content packaging and MPEG-21 DID
Andy Powell
 
Open, social and linked - what do current Web trends tell us about the future...
Andy Powell
 
Open for Business - Open Archives, OpenURL, RSS and the Dublin Core
Andy Powell
 
The Open Archives Initiative Protocol for Metadata Harvesting
Andy Powell
 
The JISC Information Environment and collection description
Andy Powell
 
Linked Data as an enabling framework for resource discovery across libraries,...
Andy Powell
 
Open, social and linked - A ménage à trois of content exploitation
Andy Powell
 
The Google Book Settlement - and what it means for learners and researchers i...
Andy Powell
 
Content packaging and MPEG-21 DID
Andy Powell
 
Ad

Similar to What’s in a structured value? (20)

PDF
SPARQL and the Open Linked Data initiative
Fulvio Corno
 
PPT
A Semantic Multimedia Web (Part 2)
Raphael Troncy
 
PPT
Publishing data on the Semantic Web
Peter Mika
 
PDF
Introduction to RDF
Dr Sukhpal Singh Gill
 
PPTX
SWT Lecture Session 2 - RDF
Mariano Rodriguez-Muro
 
PDF
Graph databases & data integration v2
Dimitris Kontokostas
 
PPTX
Linked data and rdf
Daniel Nüst
 
PPTX
Lecture the semantic_web_part_2
IKS - Project
 
PDF
An introduction to Semantic Web and Linked Data
Fabien Gandon
 
KEY
How RDFa works
JISC Netskills
 
KEY
RDFa Introductory Course Session 2/4 How RDFa
Platypus
 
PDF
Introduction to RDF & SPARQL
Open Data Support
 
PPT
Rdf And Rdf Schema For Ontology Specification
chenjennan
 
PPTX
Sem webmaubeuge
Jose Emilio Labra Gayo
 
PDF
RDF: what and why plus a SPARQL tutorial
Jerven Bolleman
 
PPT
DC-Text: a simple text-based format for DC metadata
Eduserv Foundation
 
PPTX
Creating Linked Data 2/5 Semtech2011
Juan Sequeda
 
PDF
2011 4IZ440 Semantic Web – RDF, SPARQL, and software APIs
Josef Petrák
 
PDF
Using MongoDB as a high performance graph database
Chris Clarke
 
PPT
RDFa: The Semantic Web's Missing Link
Mark Birbeck
 
SPARQL and the Open Linked Data initiative
Fulvio Corno
 
A Semantic Multimedia Web (Part 2)
Raphael Troncy
 
Publishing data on the Semantic Web
Peter Mika
 
Introduction to RDF
Dr Sukhpal Singh Gill
 
SWT Lecture Session 2 - RDF
Mariano Rodriguez-Muro
 
Graph databases & data integration v2
Dimitris Kontokostas
 
Linked data and rdf
Daniel Nüst
 
Lecture the semantic_web_part_2
IKS - Project
 
An introduction to Semantic Web and Linked Data
Fabien Gandon
 
How RDFa works
JISC Netskills
 
RDFa Introductory Course Session 2/4 How RDFa
Platypus
 
Introduction to RDF & SPARQL
Open Data Support
 
Rdf And Rdf Schema For Ontology Specification
chenjennan
 
Sem webmaubeuge
Jose Emilio Labra Gayo
 
RDF: what and why plus a SPARQL tutorial
Jerven Bolleman
 
DC-Text: a simple text-based format for DC metadata
Eduserv Foundation
 
Creating Linked Data 2/5 Semtech2011
Juan Sequeda
 
2011 4IZ440 Semantic Web – RDF, SPARQL, and software APIs
Josef Petrák
 
Using MongoDB as a high performance graph database
Chris Clarke
 
RDFa: The Semantic Web's Missing Link
Mark Birbeck
 
Ad

More from Andy Powell (20)

PDF
The OCRE Cloud Framework
Andy Powell
 
PPTX
Shared responsibility - a model for good cloud security
Andy Powell
 
PPTX
Building the modern institution: how Jisc can support your cloud-based digita...
Andy Powell
 
PPTX
Developing a Cloud Based Infrastructure to Transform Working Practices and Se...
Andy Powell
 
PPTX
Open data as an enabler of citizen engagement
Andy Powell
 
PPTX
AWS Bath User Group - Meetup #2
Andy Powell
 
PPTX
AWS IoT: a cloud platform for building IoT applications
Andy Powell
 
PDF
Internet of Car Parks - a discussion about IoT
Andy Powell
 
PPTX
Digital Marketplace/G-Cloud - the good, the bad and the ugly
Andy Powell
 
PPTX
G cloud - what is it?
Andy Powell
 
PPTX
IT : Strategy, management and DIY in HE - a breakout group summary
Andy Powell
 
PPTX
Eduserv Education Cloud
Andy Powell
 
PPTX
Eduserv Education Cloud
Andy Powell
 
PPTX
UK university adoption of ‘shared’ cloud services
Andy Powell
 
PPTX
UMF Cloud Pilot
Andy Powell
 
PPTX
UMF Cloud Pilot: architecturing an IaaS offer for higher education
Andy Powell
 
PPTX
RDTF Metadata Guidelines: an update
Andy Powell
 
PPTX
Unified Social Sign-on
Andy Powell
 
PPTX
What current trends tell us about the future of federated access management i...
Andy Powell
 
PPTX
Linked data - the long and winding road
Andy Powell
 
The OCRE Cloud Framework
Andy Powell
 
Shared responsibility - a model for good cloud security
Andy Powell
 
Building the modern institution: how Jisc can support your cloud-based digita...
Andy Powell
 
Developing a Cloud Based Infrastructure to Transform Working Practices and Se...
Andy Powell
 
Open data as an enabler of citizen engagement
Andy Powell
 
AWS Bath User Group - Meetup #2
Andy Powell
 
AWS IoT: a cloud platform for building IoT applications
Andy Powell
 
Internet of Car Parks - a discussion about IoT
Andy Powell
 
Digital Marketplace/G-Cloud - the good, the bad and the ugly
Andy Powell
 
G cloud - what is it?
Andy Powell
 
IT : Strategy, management and DIY in HE - a breakout group summary
Andy Powell
 
Eduserv Education Cloud
Andy Powell
 
Eduserv Education Cloud
Andy Powell
 
UK university adoption of ‘shared’ cloud services
Andy Powell
 
UMF Cloud Pilot
Andy Powell
 
UMF Cloud Pilot: architecturing an IaaS offer for higher education
Andy Powell
 
RDTF Metadata Guidelines: an update
Andy Powell
 
Unified Social Sign-on
Andy Powell
 
What current trends tell us about the future of federated access management i...
Andy Powell
 
Linked data - the long and winding road
Andy Powell
 

Recently uploaded (20)

PPTX
Universal immunization Programme (UIP).pptx
Vishal Chanalia
 
PPTX
Growth and development and milestones, factors
BHUVANESHWARI BADIGER
 
PDF
Generative AI: it's STILL not a robot (CIJ Summer 2025)
Paul Bradshaw
 
PDF
Women's Health: Essential Tips for Every Stage.pdf
Iftikhar Ahmed
 
PDF
Exploring the Different Types of Experimental Research
Thelma Villaflores
 
PPT
Talk on Critical Theory, Part II, Philosophy of Social Sciences
Soraj Hongladarom
 
PDF
Chapter-V-DED-Entrepreneurship: Institutions Facilitating Entrepreneurship
Dayanand Huded
 
PPTX
Neurodivergent Friendly Schools - Slides from training session
Pooky Knightsmith
 
PDF
The History of Phone Numbers in Stoke Newington by Billy Thomas
History of Stoke Newington
 
PPTX
Unit 2 COMMERCIAL BANKING, Corporate banking.pptx
AnubalaSuresh1
 
PDF
Knee Extensor Mechanism Injuries - Orthopedic Radiologic Imaging
Sean M. Fox
 
PPTX
How to Create a PDF Report in Odoo 18 - Odoo Slides
Celine George
 
PPTX
Identifying elements in the story. Arrange the events in the story
geraldineamahido2
 
PPTX
Stereochemistry-Optical Isomerism in organic compoundsptx
Tarannum Nadaf-Mansuri
 
PPTX
PPT-Q1-WK-3-ENGLISH Revised Matatag Grade 3.pptx
reijhongidayawan02
 
PDF
The Constitution Review Committee (CRC) has released an updated schedule for ...
nservice241
 
PPTX
How to Set Up Tags in Odoo 18 - Odoo Slides
Celine George
 
PDF
Aprendendo Arquitetura Framework Salesforce - Dia 03
Mauricio Alexandre Silva
 
PPTX
GRADE-3-PPT-EVE-2025-ENG-Q1-LESSON-1.pptx
EveOdrapngimapNarido
 
PDF
DIGESTION OF CARBOHYDRATES,PROTEINS,LIPIDS
raviralanaresh2
 
Universal immunization Programme (UIP).pptx
Vishal Chanalia
 
Growth and development and milestones, factors
BHUVANESHWARI BADIGER
 
Generative AI: it's STILL not a robot (CIJ Summer 2025)
Paul Bradshaw
 
Women's Health: Essential Tips for Every Stage.pdf
Iftikhar Ahmed
 
Exploring the Different Types of Experimental Research
Thelma Villaflores
 
Talk on Critical Theory, Part II, Philosophy of Social Sciences
Soraj Hongladarom
 
Chapter-V-DED-Entrepreneurship: Institutions Facilitating Entrepreneurship
Dayanand Huded
 
Neurodivergent Friendly Schools - Slides from training session
Pooky Knightsmith
 
The History of Phone Numbers in Stoke Newington by Billy Thomas
History of Stoke Newington
 
Unit 2 COMMERCIAL BANKING, Corporate banking.pptx
AnubalaSuresh1
 
Knee Extensor Mechanism Injuries - Orthopedic Radiologic Imaging
Sean M. Fox
 
How to Create a PDF Report in Odoo 18 - Odoo Slides
Celine George
 
Identifying elements in the story. Arrange the events in the story
geraldineamahido2
 
Stereochemistry-Optical Isomerism in organic compoundsptx
Tarannum Nadaf-Mansuri
 
PPT-Q1-WK-3-ENGLISH Revised Matatag Grade 3.pptx
reijhongidayawan02
 
The Constitution Review Committee (CRC) has released an updated schedule for ...
nservice241
 
How to Set Up Tags in Odoo 18 - Odoo Slides
Celine George
 
Aprendendo Arquitetura Framework Salesforce - Dia 03
Mauricio Alexandre Silva
 
GRADE-3-PPT-EVE-2025-ENG-Q1-LESSON-1.pptx
EveOdrapngimapNarido
 
DIGESTION OF CARBOHYDRATES,PROTEINS,LIPIDS
raviralanaresh2
 

What’s in a structured value?

  • 1. What’s in a structured value? Andy Powell UKOLN, University of Bath
  • 2. Background for some time DC has had a slightly fuzzy notion of things called ‘structured values’ DCSV recommendation, complex data-structures in RDF/XML, use of vCard, use of things like DC.Creator.Address, etc. with the exception of RDF/XML, these tend to be fairly ad hoc attempts to squeeze ‘structured’ information into DC records
  • 3. Simple DC model a simple DC record is made up of one or more properties and their associated values each property is an attribute of the resource being described each property must be one of the 15 DCMES elements properties may be repeated each value is a string each string value may have an associated language (e.g. en-GB)
  • 4. Qualified DC model a qualified DC record is made up of one or more properties and their associated values each property is an attribute of the resource being described each property must be either: one of the elements recommended by the DCMI (i.e. the 15 DC elements and audience), one of the DCMI element refinements
  • 5. Qualified DC model (2) properties may be repeated each value is a string each value may have an associated encoding scheme each encoding scheme has a URI each string value may have an associated language (e.g. en-GB)
  • 6. But… qualified DC model too simple w.r.t RDF not able to support requirements coming out of DC Agents WG sometimes the value string isn’t just a string… sometimes it is a string that contains some structure i.e. sometimes it is a ‘structured value’
  • 7. Types of structured values labelled strings DCSV (DC Box, …), OpenURL, vCard unlabelled strings W3CDTF markup HTML markup (various flavours), XML-based markup (CML, MathML, …), or non-XML markup such as TeX related resource descriptions full vCard, DC.Creator.Address, RDF
  • 8. Definitions a “structured value” is a string that contains machine-parsable component parts (and which has an associated “syntax encoding scheme” that indicates how the component parts are encoded within the string) a string value that includes some markup a description of a related resource
  • 9. Name and identifiers as values dc:creator, dc:contributor, dc:publisher, dc:relation, dc:source name or identify a related resource identifiers typically in the form of a URI names typically in the form of person or organisation name (sometimes with the addition of extra information)
  • 10. Linking/embedding requirement in the case of these 5 elements, there appears to be a requirement to form linkage between description of resource and description of one or more related resources i.e. between the resource being described and the resource that is named or identified by the element achieved by embedding or linking
  • 11. Example 1 – dc:creator <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <dc:creator> <rdf:Description> <rdf:value> Andy Powell </rdf:value> <my:email> [email_address] </my:email> </rdf:Description> </dc:creator> </rdf:Description> </rdf:RDF> Example RDF description using dc:creator…
  • 12. Example 1 – dc:creator dc:creator Andy Powell… my:affiliation a.powell@uko… my:email … and the RDF model it represents. UKOLN, Univ… a.powell@uko… Andy Po… rdfs:label my:name <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <dc:creator> <rdf:Description> <rdf:value> Andy Powell </rdf:value> <my:email> [email_address] </my:email> </rdf:Description> </dc:creator> </rdf:Description> </rdf:RDF>
  • 13. Example 1 – dc:creator dc:creator Andy Powell… my:affiliation a.powell@uko… my:email UKOLN, Univ… a.powell@uko… Andy Po… rdfs:label my:name But… we don’t want to embed all this information into every instance metadata record do we? relatedMetadata <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <dc:creator> <rdf:Description> <rdf:value> Andy Powell </rdf:value> <my:email> [email_address] </my:email> </rdf:Description> </dc:creator> </rdf:Description> </rdf:RDF>
  • 14. Example 1 – dc:creator dc:creator Andy Powell… rdfs:label my:affiliation a.powell@uko… my:email UKOLN, Univ… a.powell@uko… Andy Po… my:name Need to separate part of the information out and store it in a single place – in this case in a directory service… <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <dc:creator> <rdf:Description> <rdf:value> Andy Powell </rdf:value> </rdf:Description> </dc:creator> </rdf:Description> </rdf:RDF> <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <my:name> Andy Powell </my:name> <my:email> [email_address] </my:email> </rdf:Description> </rdf:RDF>
  • 15. Example 1 – dc:creator valueURI dc:creator Andy Powell… rdfs:label valueURI my:affiliation a.powell@uko… my:email UKOLN, Univ… a.powell@uko… Andy Po… my:name To do this we need to assign a URI (the ‘valueURI’) to the anonymous ‘value’ node… <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <dc:creator> <rdf:Description> <rdf:value> Andy Powell </rdf:value> </rdf:Description> </dc:creator> </rdf:Description> </rdf:RDF> <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <my:name> Andy Powell </my:name> <my:email> [email_address] </my:email> </rdf:Description> </rdf:RDF>
  • 16. Example 1 – dc:creator valueURI dc:creator Andy Powell… rdfs:label valueURI my:affiliation a.powell@uko… my:email UKOLN, Univ… a.powell@uko… Andy Po… my:name relatedMetadataURI The document containing this information is itself an RDF resource (the ‘relatedMetadata’) and has a URI <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <dc:creator> <rdf:Description> <rdf:value> Andy Powell </rdf:value> </rdf:Description> </dc:creator> </rdf:Description> </rdf:RDF> <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <my:name> Andy Powell </my:name> <my:email> [email_address] </my:email> </rdf:Description> </rdf:RDF>
  • 17. Example 1 – dc:creator valueURI dc:creator Andy Powell… rdfs:label valueURI my:affiliation a.powell@uko… my:email UKOLN, Univ… a.powell@uko… Andy Po… my:name relatedMetadataURI rdfs:seeAlso Use rdf:seeAlso to form linkage between description and relatedMetadata… <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <dc:creator> <rdf:Description> <rdf:value> Andy Powell </rdf:value> <my:email> [email_address] </my:email> </rdf:Description> </dc:creator> </rdf:Description> </rdf:RDF> <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:my=&quot;http://purl.org…&quot;> <rdf:Description> <dc:creator> <rdf:Description> <rdf:value> Andy Powell </rdf:value> <my:email> [email_address] </my:email> </rdf:Description> </dc:creator> </rdf:Description> </rdf:RDF>
  • 18. Example 2 – dc:subject <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <rdf:Description> <dc:subject> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> <rdfs:label> Formate Dehydrogenase </rdfs:label> </dcterms:MESH> </dc:subject> </rdf:Description> </rdf:RDF> Example RDF description using dc:subject (taken from Qualified DC in RDF recommendation…
  • 19. Example 2 – dc:subject <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <rdf:Description> <dc:subject> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> <rdfs:label> Formate Dehydrogenase </rdfs:label> </dcterms:MESH> </dc:subject> </rdf:Description> </rdf:RDF> dcterms:MESH dc:subject rdf:type D08.586… rdf:type rdfs:label Formated… rdfs:value … and the RDF model it represents.
  • 20. Example 2 – dc:subject <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <rdf:Description> <dc:subject> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> <rdfs:label> Formate Dehydrogenase </rdfs:label> </dcterms:MESH> </dc:subject> </rdf:Description> </rdf:RDF> dcterms:MESH dc:subject rdf:type rdf:type But… we don’t want to embed all this information into every instance metadata record do we? relatedMetadata D08.586… rdfs:label Formated… rdfs:value
  • 21. Example 2 – dc:subject <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <rdf:Description> <dc:subject> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> </dcterms:MESH> </dc:subject> </rdf:Description> </rdf:RDF> dcterms:MESH dc:subject rdf:type rdf:type <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> <rdfs:label> Formate Dehydrogenase </rdfs:label> </dcterms:MESH> </rdf:RDF> dcterms:MESH D08.586… Formated… Need to separate part of the information out and store it in a single place – in this case with the terminology owner… rdfs:label Formated…
  • 22. Example 2 – dc:subject <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <rdf:Description> <dc:subject> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> </dcterms:MESH> </dc:subject> </rdf:Description> </rdf:RDF> valueURI dcterms:MESH dc:subject rdf:type rdf:type <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> <rdfs:label> Formate Dehydrogenase </rdfs:label> </dcterms:MESH> </rdf:RDF> valueURI dcterms:MESH D08.586… Formated… To do this we need to assign a URI (the ‘valueURI’) to the anonymous ‘value’ node… rdfs:label Formated…
  • 23. Example 2 – dc:subject <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <rdf:Description> <dc:subject> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> </dcterms:MESH> </dc:subject> </rdf:Description> </rdf:RDF> valueURI dcterms:MESH dc:subject rdf:type rdf:type <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> <rdfs:label> Formate Dehydrogenase </rdfs:label> </dcterms:MESH> </rdf:RDF> valueURI dcterms:MESH D08.586… Formated… relatedMetadataURI The document containing this information is itself an RDF resource (the ‘relatedMetadata’) and has a URI rdfs:label Formated…
  • 24. Example 2 – dc:subject <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <rdf:Description> <dc:subject> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> </dcterms:MESH> </dc:subject> </rdf:Description> </rdf:RDF> valueURI dcterms:MESH dc:subject rdf:type rdf:type <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> <rdfs:label> Formate Dehydrogenase </rdfs:label> </dcterms:MESH> </rdf:RDF> valueURI dcterms:MESH D08.586… Formated… relatedMetadataURI rdfs:seeAlso Use rdf:seeAlso to form linkage between description and relatedMetadata… rdfs:label Formated…
  • 25. Abstract DC model <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <rdf:Description> <dc:subject> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> </dcterms:MESH> </dc:subject> </rdf:Description> </rdf:RDF> valueURI dcterms:MESH dc:subject rdf:type rdf:type <?xml version=&quot;1.0&quot;?> <rdf:RDF xmlns:rdf=http://www…. xmlns:rdfs=http://www.w3.org/… xmlns:dc=http://purl.org/dc/… xmlns:dcterms=&quot;http://purl.org…&quot;> <dcterms:MESH> <rdf:value> D08.586.682.075.400 </rdf:value> <rdfs:label> Formate Dehydrogenase </rdfs:label> </dcterms:MESH> </rdf:RDF> valueURI dcterms:MESH D08.586… Formated… relatedMetadataURI rdfs:seeAlso resource property valueURI valueString In terms of abstract DC model we now have: resource, property, valueURI, valueString (and valueStringLang), encodingScheme, relatedMetadata resource property valueURI relatedMetadata encodingScheme rdfs:label Formated… valueString (valueStringLang)
  • 26. Need to extend abstract model each [DCMI property] ‘value’ has a ‘valueURI’ each ‘value’ has a ‘valueString’ each ‘valueString’ may have an ‘encoding scheme’ each ‘encoding scheme’ has a URI each ‘valueString’ may have a ‘language’ each ‘value’ may have a linked or embedded ‘complexValue’ (markup or related resource description)
  • 27. relatedMetadata related resource description known as ‘relatedMetadata’ particular encoding syntaxes may support instantiation of relatedMetadata by embedding explicit link using ‘relatedMetadataURI’ both
  • 28. Qualified DC model a qualified DC record is made up of one or more properties and their associated values each property is an attribute of the resource being described each property must be either: one of the elements recommended by the DCMI (i.e. the 15 DC elements and audience), one of the DCMI element refinements properties may be repeated
  • 29. Qualified DC model (2) each value may have a valueURI each value may have a valueString each valueString may have an associated encoding scheme each encoding scheme has a URI each valueString may have an associated language (e.g. en-GB) each value may have a linked or embedded complexValue ( markup or relatedMetadata )