Recombination, mashups
and remixing
Some OCLC Research Web services
By Lorcan Dempsey, Vice President, OCLC Programs and Research and Chief Strategist
The Web introduced the idea of a large, interconnected
information space. It has mostly been for
human users, who read, digest and bring together
Web pages. This is changing as browser technologies
develop and as ‘Web services’ become more widely
adopted. Increasingly, we also see applications communicate
with each other over the Web, making it a much
richer environment.
Think of Amazon, which was one of the first to allow
other applications to mix its own services or data into their
offerings. Google Maps is another good example; ‘mashups’
between Google Maps and other applications are now
common. Both of these Web services allow functionality
from several places to be recombined, remixed or mashed
up to meet new needs.
OCLC Research has been working on a range of efforts
using Web services in this way. Our general approach is
to identify functionality that may be embedded in several
larger applications, or to identify some new functionality,
and to make it available in a Web services environment so
it can be reused more easily by other applications.
First, some clarification: ‘Web service’ is the term used
for a set of emerging approaches that allow applications
to communicate more easily using Web-based protocols.
Effectively, Web services are a way of allowing applications
to interconnect in the way that we have been used to seeing
with Web pages. A Web service’s functionality is available
through a machine interface and can be reused within
other applications.
Two Web services developed within OCLC Research
are xISBN and the Audience Level indicator. xISBN is a
service that accepts an ISBN and returns all the ISBNs we
know about in the same work set. So, if I give the service
an ISBN for The Adventures of Huckleberry Finn sitting
on my table, it will return the ISBNs for all the other
versions of The Adventures of Huckleberry Finn we have
mined from WorldCat.
The Audience Level service provides an indicator of the
potential interest of an item based on its pattern of distribution
across libraries. If something is held only by research
libraries it will have a higher audience level, whereas
if it is available only in school libraries it will have a lower
audience level. In itself, this value may not be definitive,
but it is an interesting addition to the range of indicators
that we might use to refine a search, provide additional
hints to a user about whether something is of interest or
not, and so on.
How Web services work
 |
| Functionality from different Web sites is brought together in the browser using Web services developed by OCLC Research. |
Two screen shots are shown as examples of a simple
application that uses both of these Web services. In each
case we are using Greasemonkey scripts and some other
things to extend the functionality of a Firefox browser.
The scripts interact with some Web services and what we
see is functionality from different places brought together
in the browser.
The first screenshot shows a search on Amazon.co.uk for
Richard Dawkins’ book, The Selfish Gene. A line appears
above the title: “Other editions of this title are available
from the University of Huddersfield.” If I click on this, I
am brought through to an earlier edition at the University
of Huddersfield catalog.
What is happening here? The Greasemonkey script
that is looking at the ISBN on this page, going out and
checking the Huddersfield catalog, not finding the ISBN,
checking our xISBN service to see if there are additional
ISBNs for other versions, checking the Huddersfield catalog
for those, and, being successful, inserts this line in
my browser. This is based on interesting work by Dave
Pattern at the University of Huddersfield, which incorporates
our xISBN service.
In the second screen shot the line “Audience Level:
0.6” is inserted among Amazon’s product details. What
this tells me is that this is a college-level read, but not
reaching an over-specialized audience. It gives me a hint.
What has happened here? Another script, a different one
this time, has looked for the ISBN and sent it to our audience-level Web service. This has taken it, and returned the
Audience Level indicator, which is dynamically inserted in
the Web page.
These are quite simple applications with a user focus.
They are mashups: they mash external functionality up
with an existing Web page.
Web services are also becoming more important within
the enterprise. There is a trend toward simplification of
large applications, making them from smaller pieces that
communicate with each other. This is developing side by
side with the emergence of ‘Web services,’ which provide
the ‘connective tissue’ to make these links.
Why is this happening? In general, working with smaller
components improves organizational flexibility and responsiveness.
It allows particular functionalities to be specialized,
either within an organization or between organizations, so
that appropriate focus and expertise can be brought to bear
on a particular task. It allows applications to be built more
quickly from preexisting pieces to meet new and changing
needs. Again, think of how Amazon, eBay or Google Maps
accelerates development of other applications by making
appropriate functionality usefully available.
Schema transformation services and terminology services
are two OCLC-developed Web services that make
common functionality available in many environments.
Our schema transformation Web services streamline the
process of moving metadata between metadata formats
and professional domains. The Terminology Web services
provide a way of making multiple terminologies
available to multiple editing environments. Both are
going into production at OCLC and we also provide
research prototypes.
These examples show another feature of working in
this way: loose coupling. These applications are not
tightly bound into bigger pieces. They can be reused
in many contexts. Loose coupling, recombination and
Web services are examples of how the network is increasingly
influencing the construction of applications. These
new approaches provide interesting challenges and show
great potential.
Discover WorldCat.org | By the numbers
|