OCLC Developer Network

News

Syndicate content

WorldCat Mashathon starts tomorrow

Amsterdam Mashathon LocationWe're getting ready for the WorldCat Mashathon today. Yesterday I was traveling, and then Ralph M. from the Leiden office and I started in on the details.

Come Mash with us in Amsterdam

We are pleased to announce the WorldCat Mashathon registration for Amsterdam is now open. Here is the *official* announcement: Join fellow coders for the WorldCat Mashathon in Amsterdam, May 13-14. Sponsored by the OCLC Developer Network and International Institute of Social History (IISH), the two-day event will be held Wednesday and Thursday at IISH headquarters in Amsterdam. The European Mashathon follows on the heels of a previous WorldCat Hackathon in New York City. Participants will spend the two days brainstorming and coding mash-ups with local systems, OCLC Web Services, and many other Web Services to embellish existing, and create new, library services. WorldCat includes national catalogues from the Netherlands, the UK, Ireland, Iceland, Germany, Sweden, Finland, Denmark, France, Spain, Switzerland, Czech Republic, Lithuania, Russia and many more--so there are plenty of potential uses and apps just waiting to happen. Why attend the WorldCat Mashathon?

Introduction to Information Cards

Information Cards introduce a new paradigm in on-line authentication that replaces conventional Username and Password login. The new paradigm is based on the very familiar 'real world' experience of presenting credentials. When I want to purchase something and I don't have cash; I present a credit card. When I want to rent a car I pull out my driver's license and when I want to borrow a book from the library I pull out my library card. Despite the number of cards I may have in my wallet; 3 credit, 1 debit, healthcare, dental care, library, 3 museum memberships, 2 frequent flyer, etc... It is very easy and intuitive for me to select the right card at the right time. The mechanics of trust that 'real life' cards represent is also interesting. When I present my driver's license, the 'claims' on the card; age, address, etc... are packaged in such a way that the person looking at the card can establish 'trust'. They can compare the picture on the card to my face. They can compare the age represented on the card to their view of how old I am; they can compare the eye-color listed to my eyes. Finally, they can identify the state that issued the card. The trust mechanics dictate that: The card does not appear to have been tampered with. The photo to face matching indicates that this card was issued to this person by the State of California. I trust the State of California I can therefore trust the claims on this card. The interesting thing to note is that there is no need for trust to be established between the person presenting the card and the person accepting the card. The person accepting the card only has to trust the State that issued the card; even though the state isn't present, or in any way involved in the transaction. This is similar with credit card processing; a shop keeper doesn't trust you to give them money 'later' ("I'll gladly pay you Tuesday for a hamburger today"), but they do trust Visa, the issuer of the card. Information Cards bring this paradigm and these mechanics to our online experience. When you login to a web site with Information Cards (I-Cards) you are asked to select an I-Card from your virtual wallet. The analogy isn't perfect so the wallet, otherwise known as; The Card Selector, has some smarts to make things easier. The Card Selector, which is a piece of 'secure' software running on your machine, remembers places that you have logged in before. Each time you start to log into a site that you haven't logged into before, you get an informational dialog that tells you about the site you are logging into. This largely eliminates concerns about 'phishing' attacks, scams where a site pretends to be a site it's not to get your username and password. Even if a site manages to fool you into logging in with an I-Card ; they don't get something they can use somewhere else. When you click on the 'login' link, the site you are trying to log into tells your computer what it wants to know about you. If you are trying to leave a blog comment that might just be a nickname, if you are trying to purchase beer it might be a claim that you are over 18 years of age. When the wallet opens, only those cards that are capable of satisfying the sites 'policy' (what the site wants to know) are selectable. This interaction means that the user doesn't have to go through and select from ALL their cards every time they login, the choice comes down to selecting from one or two for any given context; Visa or American Express? If you want to play with Information Cards the best place to start would be http://www.azigo.com/icards.html this site is provided by Parity Inc.; THE leaders in implementing this technology. If you click through the Equifax Card sign-up process you will have the Card Selector installed and get your first i-Card, one that can 'prove' you are over 18 (if you are) without exposing any other information about you. The Minuteman Library Network is the first Library Card i-Card project and probably of special interest to the readers of this blog; I am working on this project and will keep you informed of its progress.

OCLC at Code4Lib

Most of my fellow OCLC Developer Network staffers are still at Code4Lib soaking up all the great ideas, making technology intersections and creating new possibilities for library development projects.

What is SSO?

One of the hottest issues in Identity Management is often referred to as SSO; Single Sign-On. However it is a horribly misunderstood and misused term. I will try to give a brief overview of what SSO is and isn't. What most people mean when they say SSO is the user experience of accessing multiple services and systems but only having to 'log-in' once. On the face of it SSO sounds great but there are some pitfalls that we have to be wary of. If we aren't very careful, the 'ease' of SSO is bought at the cost of privacy. The type of SSO that I am going to explore is the "HTTP Redirect" SSO mechanisms that are widely deployed for SSO on the web. This includes OpenID, Shibboleth (Web SSO), SAML (WebSSO), FaceBook, Yahoo! and Google, to name a few. These protocols differ in many details and have different strengths and weaknesses but they all share the same underlying HTTP Redirect mechanism. The basic pattern is this: 1. Jane navigates to a web-site and she wants to log-in using a username and password that support SSO. 2. Jane clicks on the 'login' button on the page. 3. Jane has to tell the web-site who her SSO service provider is. This is known as the Where Are You From problem, otherwise known as WAYF. More about WAYF in a moment. 4. Once Jane has told the web-site who her SSO service is; a HTTP Redirect is sent to the browser to send Jane off to her SSO service. 5. At her SSO service Jane is asked to provide her UserName and Password. 6. If Jane convinces the SSO service that she is, in fact, Jane, then she is returned (via HTTP Redirect) to the original web-site with a 'token' that says "I am SSO service XYZ and I believe this is Jane" 7. The web-site and SSO service communicate in such a way that the web-site can validate that this is really SSO service XYZ talking AND if it knows and trusts service XYZ it can go ahead and accept that this is Jane. At this point we have performed 3rdParty Authentication or Federated Sign-On NOT SSO. 8. Having done what she came to do Jane now navigates to another web-site. 9. When Jane arrives at the second web-site she is NOT recognized as being logged in. This site has no knowledge who she is or that she has logged in somewhere else before. If Jane wants to access 'protected' resources at this web-site she is going to have to click on the log-in button. 10. Again Jane will be asked Where Are You From and she will select her SSO service provider. 11. The web-site will then send Jane off to her SSO provider asking... "Who is this?" 12. Because Jane logged into her SSO service just a few minutes earlier the SSO service doesn't ask Jane for a UserName and Password this time, it immediately returns back to the web-site with a 'token' that says "I am SSO service XYZ and I believe this is Jane" 13. The using the same trust validation as above the web-site can now believe that this is Jane And Jane only logged in ONCE... that is SSO. Jane still had to click on login twice and still had to provide her SSO service twice but she only Signed-On a Single time. There are variations in this flow, OpenID nicely shortcuts the double SSO service provider selection BUT you have to type in your UserName twice. The most common expectation of SSO that is not satisfied by the flow described is "why didn't the second site just 'know' that I had already logged in and who I was?" Apart from the fact that would be technically difficult the answer is actually that REALLY you wouldn't want that behavior... Once I explain why: If SSO worked that way, when you logged in once, everywhere you went on the internet would know who you are. Not just an IP address, they would be getting a message "here's Jane". All of the web-sites on the web could talk to each other and work out EXACTLY which sites you visited and which ones you didn't. That is generally considered to be a terrible breach of privacy. In order to avoid this privacy leak clicking 'login' remains an explicit action that the user must take. The action no longer means: "I want to enter my username and password" but now means "I'm OK telling this site who I am." There are ways for 'closely connected' sites to shortcut this experience. Handing a user from their Local Library System to the Consortia Meta-Search interface; a handoff that is between trusted parties; Janes identity CAN be passed from one service to the other providing the 'seamless' SSO that we would love to have. But you can't be sure that Jane was OK being identified at the second system unless you make the action explicit. As a service provider you have to make very careful choices between seamless SSO and user privacy. Rather than going on now:- You can tune in later for "SSO using Pair-Wise Identifiers to protect your privacy", "How and Why OpenID is different from Shibboleth Web SSO" , "Why you MUST trust your SSO service provider because they know a lot about you"... Please ask questions if I haven't been clear... Please let me know if you think I have said something misleading or wrong... I'm just trying to start a conversation here.

New xISBN bookmarklets supports thousands of libraries

xISBN bookmarklets now supports thousands more libraries by integration with Worldcat Registry. The previous xISBN bookmarket supports more than 300 libraries, however, the list was manually maintained and it's challenging to keep these links up-to-date, By ingesting good Registry OPAC information into xISBN bookmarklet, we are able to support thousands more libraries in a more sustainable way. xISBN bookmarklet automatically pulled new information from Worldcat Registry on a monthly basis, so if a library maintains up-to-date information in Registry, its data will be automatically reflected in xISBN bookmarklet. Furthermore, we have also developed mechanisms to validate and improve OPAC linking templates in Registry during the process. The previous xISBN bookmarklet is still maintained in http://xisbn.worldcat.org/liblook/

WorldCat Registry Detail Service - Look up by OCLC symbol

Written by colleague Joanna White, Product Manager of the WorldCat Registry. Users can use a new Registry Web Service to retrieve an institution record in XML using the OCLC symbol. For example: http://worldcat.org/webservices/registry/lookup/Institutions/oclcSymbol/OCL?serviceLabel=content Additional notes. Q: What happens when no records are found? When no WorldCat Registry record is found for a given OCLC Symbol , the web service returns "0" results in the XML response while the user interface presents options to adjust the search query. Q: Do I need to adjust my service for searches by special characters? Yes. Services that utilize these web services have to accommodate for special characters present in some OCLC symbols, for example symbols such as "A#2". Q: What is included in the returned content? If a user is not authorized, then the "public view" of the XML data is returned to the user. If the user is authorized, then the "authorized" version of the XML data is returned to the user. For example, "authorized" users will see IP Addresses for the record. More information on all the data fields is available with Data Fields Quick Reference at http://www.oclc.org/us/en/registry/support/Registryquickreference.pdf WorldCat Registry detailed search is also available as part of our more general Registry Search web service. This SRU service returns HTML to a web browser but XML to software agents (e.g., curl) Example of SRU search: http://www.worldcat.org/webservices/registry/search/Institutions?version=1.1&operation=searchRetrieve&recordSchema=info%3Arfa%2FrfaRegistry%2FschemaInfos%2FadminData&maximumRecords=10&startRecord=1&resultSetTTL=300&recordPacking=xml&query=local.oclcSymbol+exact+%22OCL%22+not+local.logicalDelete%3D%221%22&x-info-6-deletedRecord= Details about the three WorldCat Registry web services are listed here http://www.worldcat.org/wcpa/content/affiliate/default.jsp

Which Andy is that? Are you sure?

My name is Andy Dale and I am a new member of the OCLC team. I am honored to have been invited to add my voice to the OCLC blogs. My title at OCLC is Consulting Software Engineer, Identity Management and Authentication. Over the last couple of years there has been a race to put the suffix '2.0' on every concept known to man. Tim O'Rielly is often credited with first coining the term Web 2.0 back in 2003 and since then it's been a rush to the door 2.0. One of the 2.0's that I have been very involved with is Identity 2.0 and I am now starting to work to see how Identity 2.0 and Library 2.0 interact. In my blog posts I will try to introduce some of the concepts behind Identity 2.0 and how they might be leveraged to enhance the library experience. My knowledge of Identity technology and policy is deep; my knowledge of how things REALLY work in libraries is nascent at best. I will speculate and hypothesize about the collision of the ideas that drive Identity 2.0 and the use-cases and pain-points of working libraries. I look to you, the readers of this blog, to help correct my misunderstandings and help me find the points where my particular knowledge can be leveraged to add value to library software implementation. Some of the things that I will blog about soon are: OpenID, Information Cards, Claims Based Authorization, Single Sign-On and Federated Authentication. At times I will write high level explanations of the concepts, at times, forgive me, I will delve into the nuance of one representation of an identifier vs. another. I look forward to this dialog with the library community. If you want to contact me you can do so through my i-name by clicking here: =andy.dale (More about i-names and contact pages soon :-) )

Developer's Network at ALA Midwinter

The Developer's Network will be hosting a luncheon on Sunday, Jan. 25 at ALA Midwinter.

This would be your chance to join fellow developers and tech enthusiasts for an informal luncheon...except we're already at capacity. Who knew there would be so many people attending a conference in Denver in January?

But never fear, we'll post a summary of the discussion and photos of the meeting right here, after the fact. There will be a presentation on all the new activities going on with OCLC Grid Services, and guest speakers will share what they've created:

  • Holly Eggleston from UCSD will share the latest on EZproxy authentication with Shibboleth
  • Larry Henry from ERIC will discuss ERIC's implementation of WorldCat and Find in a Library
  • Karen Coombs from the University of Houston will go over the Wordpress plugin for WorldCat

We invite other participants to bring their apps or sample code to share with the group in this informal, open-discussion setting. New this conference is also a poster gallery of sample Grid Services mash-ups and applications that members of the Developer's Network have created.

We're excited to share these innovative uses of the OCLC developer tools available -- and look forward to brainstorming with you in 2009 about new ways to build on the world’s richest library resource.

If you're going to ALA, we'll see you in Denver. You may also want to sign-up and attend the OCLC Update Breakfast on Sunday, Jan. 25 from 7-9 a.m.

guessing publisher from ISBN prefix

ISBN number is structured and contains four parts of information: Group or country identifier, Publisher identifier, Title identifier and check digits. Because ISBN are allocated by blocks to publishers, all ISBNs in same block should have same publisher information. So it's possible to guess ISBN's publisher information from its structure, however this will only work well when there is a big database of ISBN-prefix and corresponding publisher name. Incidentally, there are over 19 million ISBNs in xISBN database, from this database, we can actually create a rather comprehensive ISBN-prefix database. Inspired by Publisher Name Server project in OCLC Research, in last data release we count 551,528 ISBN publisher-prefixes, and it is not very far away from ISBN agency's directory ( 880,000 prefixes) . From our ISBN prefix table, we add "guessing" service for xISBN, which tries to guess publisher information of any ISBN, even they are not covered by Worldcat, such as following:
http://xisbn.worldcat.org/webservices/xid/isbn/7806281622.js?method=hyphen
returns
{"stat":"ok",
 "list":[{
	"isbn":["7-80628-162-2"],
	"area":"China, People's Republic",
	"publisher":"San Qin chu ban she",
	"city":"Xi'an Shi"}]}
It will be interesting to see how this information can be used. On the other side, the "guessing" service is still approximate, we don't know all ISBN prefixes, and sometimes one ISBN prefix doesn't neatly identify one publisher, so use with caution.

Follow the OCLC Developer Network:

The OCLC Developer Network supports the use of OCLC Web Services—a set of tools and APIs that expose data and services for WorldCat and our member libraries and partner institutions or companies. learn more »

© 2010 OCLC Domestic and international trademarks and/or service marks of OCLC Online Computer Library Center, Inc. and its affiliates


Powered by Drupal, an open source content management system