60 likes | 79 Views
Handle System Workshop System Updates Laurence Lannom 21 June 2007 Corporation for National Research Initiatives Reston, VA http://www.cnri.reston.va.us/ http://www.handle.net/. New Features in Upcoming Releases Server Side. Berkeley DB JE support Increased performance Increased scalability
E N D
Handle System WorkshopSystem UpdatesLaurence Lannom21 June 2007Corporation for National Research InitiativesReston, VAhttp://www.cnri.reston.va.us/http://www.handle.net/
New Features in Upcoming ReleasesServer Side • Berkeley DB JE support • Increased performance • Increased scalability • Template resolution, aka virtual handles • All handles that match a given pattern, e.g., 123/456*, will resolve to the same data, e.g., a single URL at which all objects are found • Currently a fixed value per pattern, but could be extended to be a function of the handle presented for resolution (think limited regular expressions), e.g., 123/456.abc, resolved by any client, wouldresolve to the pattern http://openurl.xyz.org/openurl?id={hdl}&v=19.1234 and the server would return http://openurl.xyz.org/openurl?id=123/456.abc&v=19.1234 Corporation for National Research Initiatives
New Features in Upcoming ReleasesClient Side • ‘Choose by’ facility - currently being deployed in the proxy service • Pack alternatives into a single handle value using XML • Include criteria for selecting among them, to be evaluated by the client • Example: alternatives = geographic locations, criteria = incoming IP, proxy matches incoming IP to IP tables and picks best location, other clients could be configured to select country in some other way. • For some handle, the value of type CNRI.RSRC_LOC <locations chooseby="locatt,country,weighted"> <location id=0 href=“http://acme.com/uk” country="gb” weight=0 /> <location id=1 href=“http://acme.com/notuk weight=1 /> <location id=2 href=“http://acme2.org/” weight=1 /> </locations> Corporation for National Research Initiatives
New Features in Upcoming ReleasesClient Side • Extended Handle client library to provide higher level API • Creation: handleValue = hsClient.createHandleValue(1,”URL”,"http://acme.."); hsClient.createHandle(handle, new HandleValue[] {handleValue}); • Deletion: hsClient.deleteHandle(handle); • Resolver.xml • Local file containing override or default values for specific handles • If override, local client never goes to handle system for that handle, but just uses the given value • If default, local client uses that value if it cannot resolve the handle for whatever reason, e.g., on an airplane • Web services interface to HS at multiple levels • Added to current set of proxies • Released as a stand-alone interface that could employed by other organizations as needed • Handle plug-in for Acrobat Reader re-released for Reader 8 Corporation for National Research Initiatives
The Issue of Handle Types(Not Types of Handles) • Handle Records may be thought of as sets of handle triples: handle:type:value • Clients rely on types in order to interpret the values • All of this is transparent to HS servers - they simply store and deliver type:value pairs - type is completely open, no type police • A few standard types • Admin types - what the HS itself needs to operate • Common types, e.g., URL • Registered as handles, e.g., 0.TYPE/URL • Lots of projects using the HS invent types for their own purposes • Two issues coming to the fore • What can a client do with a type it doesn’t know about ahead of time? • What sort of synergies across projects are we missing through wheel re-invention? Corporation for National Research Initiatives
Proposed Registry of Handle Types • Keep the 0.TYPE mechanism in place • Encourage registration, with low barriers • Is it in use? • Is it understandable? • Is it harmful to the overall HS? • Expand the required type/values under the 0.TYPE handle • Human-readable description • Responsible party • Dates of creation and last revision • Related handle types • Searchable registry in which the type is registered • Introduce a searchable Registry of Handle Types • Publicly available for searching • Searchable version of the complete set of 0.TYPE records • Added fields and examples? • Issues • Ontologies: are two types really the same but using different descriptions or languages? • Trial vs accepted types Corporation for National Research Initiatives