Page 123 - Building Digital Libraries
P. 123
CHAPTER 5
processing with the development of the SRW specification . . . and then, it
just stopped. While these message-based communication formats still exist
and are utilized, they are now the exception when developing web-based
services and programming interfaces.
Instead, both the library and larger development communities shifted to
the utilization and creation of RESTful-based services. And this made a lot
of sense. While most people would find it difficult to describe what REST is,
they interact with RESTful-based services all the time. HTTP(S) is the most
common example of a REST-based protocol, which is a stateless protocol
designed to use URIs to perform a set of predefined actions. When using
HTTP(S), this would be one of four defined actions: GET, POST, DELETE,
and PUT—with response to these actions defined by a predefined set of
HTTP status codes. These codes and actions form the foundation of the
Internet and the communication between web browsers and Internet service
providers. Today, most web services are developed to take advantage of the
HTTP(S) model, utilizing RESTful services and leveraging predefined HTTP
status codes to denote the success or failure of each operation. By utilizing
this process, developers can leverage all of the existing tools on the Web and
be confident that their resources and services will be widely supported.
SPARQL (SPARQL Protocol and
RDF Query Language)
Very simply, SPARQL is a query language that was developed to support
the semantic web. SPARQL uses the RDF triple concepts of subject, object,
and predicate to perform SQL-like searches against a semantic data store.
Presently, SPARQL is primarily used by large organizations like the Getty
Research Institute or national libraries (like the Japanese Diet Library) to
provide an interface with their linked data infrastructures.
SRU (Search and Retrieval via URL)
SRU represents an XML-based search protocol. SRU was paired with the
development of SRW (Search and Retrieval via Webservice), and was cre-
ated to take the place of Z39.50 as the primary method for searching and
transferring data between library systems. While this format is used within
the library community, the protocol has never enjoyed the broad use and
adoption that Z39.50 has had and still maintains.
Code Management
Not too long ago, it was very difficult to imagine cultural heritage organiza-
tions as engines for software development. While these organizations have
always had “developers” that have created local projects and systems, these
108