DDI3 Uniform Resource Names: Locating and Providing the Related DDI3 Objects Part of Session: DDI 3 Tools: Possibilities for Implementers IASSIST Conference,

Slides:



Advertisements
Similar presentations
Contextual Linking Architecture Christophe Blanchi June Corporation for National Research Initiatives Approved for.
Advertisements

Technical Highlights 25th August 2011 Sebastian Peters German National Library of Science and Technology.
© 2008 EBSCO Information Services SUSHI, COUNTER and ERM Systems An Update on Usage Standards Ressources électroniques dans les bibliothèques électroniques.
DC2001, Tokyo DCMI Registry : Background and demonstration DC2001 Tokyo October 2001 Rachel Heery, UKOLN, University of Bath Harry Wagner, OCLC
4.01 How Web Pages Work.
Identity Management Based on P3P Authors: Oliver Berthold and Marit Kohntopp P3P = Platform for Privacy Preferences Project.
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
DDI URN Enabling identification and reuse of DDI metadata IDSC of IZA/GESIS/RatSWD Workshop: Persistent Identifiers for the Social Sciences Joachim Wackerow.
Internet Networking Spring 2006 Tutorial 12 Web Caching Protocols ICP, CARP.
COS 420 DAY 23. Agenda Assignment 4 Corrected 2 B’s Assignment 5 posted Chap Due May 4 Final exam will be take home and handed out May 4 and Due.
Grid Computing, B. Wilkinson, 20043a.1 WEB SERVICES Introduction.
Web Servers How do our requests for resources on the Internet get handled? Can they be located anywhere? Global?
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #13 Web Caching Protocols ICP, CARP.
Exanda A Flexible On-Line Tabulation System Using DDI 3 Part of Session: DDI 3 Tools: Possibilities for Implementers IASSIST Conference, Cornell University,
OAI Standards for Sheet Music Meeting March 28-29, 2002 Basic OAI Principals How They Apply to Sheet Music Presenter: Curtis Fornadley, Senior Programmer/Analyst.
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 7: Planning a DNS Strategy.
1 CS 502: Computing Methods for Digital Libraries Lecture 4 Identifiers and Reference Links.
CORDRA Philip V.W. Dodds March The “Problem Space” The SCORM framework specifies how to develop and deploy content objects that can be shared and.
11.1 © 2004 Pearson Education, Inc. Exam Managing and Maintaining a Microsoft® Windows® Server 2003 Environment Lesson 11: Introducing WINS, DNS,
Introduction to UDDI From: OASIS, Introduction to UDDI: Important Features and Functional Concepts.
EPICUR Kathrin Schroeder ERPANET-Workshop „Persistent Identifiers“ (17th June 2004) Uniform Resource Names (URN) – Overview Die Deutsche Bibliothek.
Chinese-European Workshop on Digital Preservation, Beijing July 14 – Network of Expertise in Digital Preservation 1 Persistent Identifiers Reinhard.
Locating objects identified by DDI3 Uniform Resource Names Part of Session: Concurrent B2: Reports and Updates on DDI activities 2nd Annual European DDI.
Web Servers Web server software is a product that works with the operating system The server computer can run more than one software product such as .
Web Architecture Dr. Frank McCown Intro to Web Science Harding University This work is licensed under a Creative Commons Attribution-NonCommercial- ShareAlike.
Enabling Embedded Systems to access Internet Resources.
DP&NM Lab. POSTECH, Korea - 1 -Interaction Translation Methods for XML/SNMP Gateway Interaction Translation Methods for XML/SNMP Gateway Using XML Technologies.
TCP/IP Protocols Dr. Sharon Hall Perkins Applications World Wide Web(HTTP) Presented by.
1 HKU CSIS DB Seminar: HKU CSIS DB Seminar: Web Services Oriented Data Processing and Integration Speaker: Eric Lo.
1 Apache. 2 Module - Apache ♦ Overview This module focuses on configuring and customizing Apache web server. Apache is a commonly used Hypertext Transfer.
October 8, 2015 University of Tulsa - Center for Information Security Microsoft Windows 2000 DNS October 8, 2015.
Indo-US Workshop, June23-25, 2003 Building Digital Libraries for Communities using Kepler Framework M. Zubair Old Dominion University.
Web Services based e-Commerce System Sandy Liu Jodrey School of Computer Science Acadia University July, 2002.
19/10/20151 Semantic WEB Scientific Data Integration Vladimir Serebryakov Computing Centre of the Russian Academy of Science Proposal: SkTech.RC/IT/Madnick.
1 Schema Registries Steven Hughes, Lou Reich, Dan Crichton NASA 21 October 2015.
ILDG Middleware Status Chip Watson ILDG-6 Workshop May 12, 2005.
XML Web Services Architecture Siddharth Ruchandani CS 6362 – SW Architecture & Design Summer /11/05.
Web Client-Server Server Client Hypertext link TCP port 80.
Introduction to Server-Side Web Development Introduction to Server-Side Web Development using JSP and Web Services JSP and Web Services 18 th March 2005.
CSE 6590 Department of Computer Science & Engineering York University 111/9/ :26 AM.
OAI Overview DLESE OAI Workshop April 29-30, 2002 John Weatherley
INT-9: Implementing ESB Processes with OpenEdge ® and Sonic ™ David Cleary Principal Software Engineer.
DNS DNS overview DNS operation DNS zones. DNS Overview Name to IP address lookup service based on Domain Names Some DNS servers hold name and address.
Globally Unique Identifiers in Biodiversity Informatics Kevin Richards Landcare Research NZ TDWG 2008.
1 Registry Services Overview J. Steven Hughes (Deputy Chair) Principal Computer Scientist NASA/JPL 17 December 2015.
Module: Software Engineering of Web Applications Chapter 2: Technologies 1.
1 State and Session Management HTTP is a stateless protocol – it has no memory of prior connections and cannot distinguish one request from another. The.
REST By: Vishwanath Vineet.
1 CS 502: Computing Methods for Digital Libraries Guest Lecture William Y. Arms Identifiers: URNs, Handles, PURLs, DOIs and more.
TIC Updates EDDI 2010 Wendy Thomas – 6 Dec Schedule and Process Changes Production schedule is moving to: – Summer / Winter release schedule January.
Active Directory Domain Services (AD DS). Identity and Access (IDA) – An IDA infrastructure should: Store information about users, groups, computers and.
Linked Data Publishing on the Semantic Web Dr Nicholas Gibbins
Getting a Leg Up on OAI for the NSDL
Domain Name System (DNS)
Introduction to Persistent Identifiers
REST- Representational State Transfer Enn Õunapuu
An Overview of Data-PASS Shared Catalog
Node.js Express Web Services
Hypertext Transport Protocol
Working at a Small-to-Medium Business or ISP – Chapter 7
Internet Networking recitation #12
Net 323 D: Networks Protocols
Working at a Small-to-Medium Business or ISP – Chapter 7
OAI and Metadata Harvesting
Working at a Small-to-Medium Business or ISP – Chapter 7
TCP/IP Protocol Suite: Review
A GJXDM-Based Approach for Federated Information Sharing
WebDAV Design Overview
SDMX IT Tools SDMX Registry
Presentation transcript:

DDI3 Uniform Resource Names: Locating and Providing the Related DDI3 Objects Part of Session: DDI 3 Tools: Possibilities for Implementers IASSIST Conference, Cornell University, June 1-4, 2010 Joachim Wackerow, GESIS – Leibniz Institute for the Social Sciences

Overview Introduction – Background in DDI – Relationship URI / URN / URL URN Resolution – DNS-based approach Query Protocol Proposal

Introduction: Background in DDI DDI is expressed in XML 120 elements/objects can be identified by IDs This adds reusability of these objects to the hierarchical structure of a DDI instance The IDs have a local scope, often related to a DDI scheme A DDI scheme is an list of items which is maintained by a DDI agency – altogether 31 maintainable objects, the most important ones are 14 DDI schemes The IDs and the information about the maintainable object build the basis to construct DDI URNs URNs are globally unique identifiers and can be seen as persistent identifiers DDI URNs add reusability of DDI objects in a network of DDI instances

Use cases of distributed DDI resources Examples of possible main usage as reusable resource package – Question bank – Standard demographic variables DDI Instance Study DataCollection QuestionScheme QuestionReference URN DDI Instance ResourcePackage DataCollection QuestionScheme

DDI URN Example The DDI element Variable with the ID “age” and the version “1.0.0” Variable.age.1.0.0VariableScheme.vs :urn:ddi:de.gesis : is contained in the VariableScheme with the ID “vs1786” and the version “4.2.3” which is maintained by the DDI agency identified by “de.gesis” in the URN namespace “ddi”

Relationship URI / URN / URL The Uniform Resource Identifier (URI) identifies a name or a resource on the Internet The Uniform Resource Name (URN) defines an item's identity An URN is a persistent, location-independent resource identifier The Uniform Resource Locator (URL) specifies where an identified resource is available and the mechanism for retrieving it.

DDI URN Resolution A DDI object is identified by a DDI URN The DDI URN is a globally unique identifier The DDI URN must be resolved to an URL to find the identified object on the Internet A DDI object with an unique URN can have multiple locations identified by multiple URLs

URN Resolution Service Different approaches Specialized resolution services for persistent identifiers – Examples Handle, DOI, PURL – Not URN compliant, can only be used by application on top of it – Dependency from additional framework, possible costs DNS-based resolution – hierarchical naming system for computers on the Internet, "phone book" for the Internet – existing, well maintained infrastructure

DNS-based URN Resolution Service Approach focuses on simplicity and uses existing infrastructure DNS can be used for URN resolution with additional preparation steps – No out-of-the-box resolution for URNs available Assumption: all DDI objects of a DDI agency or sub-agency are provided by services with a single entry point – Example: HTTP-based service

DNS-based URN Resolution Service Structure Focusing just on the agency id Application queries DNS: which services are available for DDI objects maintained by a specific agency? Response from DNS: list of available services for this agency Application selects a service (e.g. a DDI repository) and queries this service – – Variable.age :VariableScheme.vs :Variable.age.1.0.0urn:ddi:de.gesis

Algorithm Input is complete URN. Example: urn:ddi:de.gesis:VariableScheme.vs :Variable.age Extraction of the maintaining agency id. Example: de.gesis Transformation of the agency id to an Internet domain name. Example: gesis.de.ddi.urn.arpa. (URN is below "arpa“) Sending the agency id (in this format) as request to the DNS. The DNS response is a list of available services for DDI objects of this agency. Example: DDI repository providing DDI objects by a RESTful interface. The response should be cached by the resolution middleware. The application selects an appropriate service from the list of services. The application queries the service.

DNS Details Delegation to name servers of DDI agencies by NS records Resolution of an DDI agency id to a DDI service by – NAPTR records (base URL can be specified) – Combination of NAPTR and SRV records (flexible protocol specification) Properties of DDI service can be specified in a detailed way – host name, Internet protocol, port, base URL, type of service, priority, replication of services, load balancing

Requirements for DNS-based DDI URN Resolution Application for the URN namespace “ddi” by a formal Request for Comments (RFC) document DNS servers at ddialliance.org as central entry point for DDI URN resolution. Few configuration records (ca. 3) for each DDI agency DNS configuration for DDI services in DNS server of each DDI agency

Extensibility Delegation to DNS servers of sub-agencies is possible – For DDI objects below urn:ddi:project1.de.gesis: dns.gesis.org can delegate to dns.project1.gesis.org An additional delegation level can be introduced on the country level, when the amount of DDI agencies increases – Agency ids must have a country code like “de.gesis”, international organizations use “int”. For specific purposes, a resolution for the URN of single DDI objects can be configured – The planned DNS-based resolution is actually providing services for DDI objects of a DDI agency, it is not a URN resolution

DNS-based DDI URN Resolution Summary Lightweight approach Main focus is the level of the DDI agency Can point to different DDI services in a flexible way Existing DNS infrastructure is used Efficient processing possible, because DNS cache structure is used, and the resolution middleware can additionally cache the query results. Extension possible: additional delegation on country level, resolution for single DDI objects

DDI Services Different DDI services will be available Simple repository serving DDI objects Full registry with index and search Major use case is probably the simple DDI repository – Standard query protocol should be available

Query Protocol Proposal REST-based approach, i.e. an URL represents a DDI object – REpresentational State Transfer (REST) can be understood as a “simple web service” – REST is an architecture style not a standard Query uses only HTTP GET and the HTTP error codes, e.g. “404 not found” REST is strong in infrastructure reusability – HTTP Framework with features like access control, encryption, compression, response caching

Query Protocol: Structure (like Usage of query parameters for all properties of requested object – Name/value pairs are robust, no positional parameters like in a path – Query parameters have exact meaning, no ambiguity like with HTTP content negotiation – Query parameters can be easily processed by client and server software. – Query String is extensible, additional parameters can be added in future

Query Protocol: Parameters Single DDI object urn: URN of the requested object in DDI URN syntax ddiVersion: resolveReferences: yes | no | asIs view: complete, index, … mimeType: (can make sense for proxy service)

Query Protocol: Response DDI instance wrapped in DDIInstance Valid DDI – At least valid according to DDI XML Schemas – Preferable valid according to secondary validation tools – DDI instance is valid according to a DDI profile related to a specific purpose

Query Protocol: Parameters Repository-specific Parameters for indexing and harvesting purposes (loosely related to OAI-PMH) – repository: listObjects (list of available DDI objects) listVersions (list of available DDI versions) – elementType: Response can be represented as a DDI instance with the answer items as variables and the data (list of items) as DataSet in-line

Acknowledgements Peter Koch from DENIC (central registry for all domains under the top level Domain.de) Ad-hoc group at IASSIST 2009 in Tampere Dan Smith from Algenta