The idea of linked data is not particularly new. However, improvements in web technologies over the last few years have lead to an explosion in the amount of information that we can include in our linked-data solutions, much of it created externally to the organization we work for. Information architects may find it useful to look for existing information “out there” to pull into their solutions, rather than create it afresh. And when they look at information from external sources, they may be encouraged to think of brand new and useful combinations of information.
An early example of linked data was the attempt by organizations to aggregate all information about its customers; an auto retailer might have sales and service information on two different systems and felt there would be benefits by considering all customer data as a whole. This was simple enough conceptually. Technically, though, it could get tricky. Each system likely had different ways of asking for information and different formats for the information retrieved. In those days, the systems actually reached each other using an office local area network.
Since those early days there have been huge improvements on the technical front:
- the communications infrastructure now includes the internet, allowing systems anywhere in the world to be connected, not just systems in the same office
- there is a set of web technologies (for example web services and XML) which provide standard ways of requesting information from other systems and for understanding their responses
The availability of these standards is a cumulatively big deal. It has lead to the development of programming toolkits which in turn have made it much easier and cheaper to pull information from other systems. It has also made it cheaper and easier to make information available online, and provided encouragement to the producers that there might be a market for their information. Information providers in their thousands have now made their material available on line and accessible in standards based ways.
The variety of information sources is staggering. Let’s look at one example in detail, and mention some others.
BBC Radio 1
Take a look at http://www.bbc.co.uk/radio1/programmes/schedules/england.xml. This shows the BBC radio 1 schedule in XML format, for system consumption. If you click the little minus sign by side of certain elements, you can expand and contract them. Even if you don’t understand everything, the presence of tags <title>… </title> help us make some sense of it, much more than if everything was scrunched together without tags, say in a comma delimited text file. A program can use the tags to pull out selected pieces of information such as the <title> of the second <broadcast>, and a human could probably do this too.
The corresponding web page for human consumption is http://www.bbc.co.uk/radio1/programmes/schedules/england. Between them, the two pages nicely show the difference structured data and a web page
- web page: human readable but hard for a program to separate individual pieces and hence reuse the information
- XML page: not human readable but easy for a programmer to pull out chunks of interest using standard tools, for example:
- give me a list of all titles
- what show is playing now
- what shows last more than an hour
We could combine information from this BBC page with our own in different ways:
- have a widget on our intranet that shows a BBC Radio 1 playlist
- select favourites from the playlist, and get an onscreen or text message five minutes before the start of the show
- have an area on an intranet page that shows the currently playing show, and let’s you click it to listen to BBC Radio 1 over internet radio.
We don’t have to restrict ourselves to one source, so we could consider a mashup combining a variety of external information from multiple sources, with our own.
- our office locations Our data
- mapping information External
- weather information External
- traffic advisories External
- news highlights External.
These examples are pretty straightforward. But there are huge numbers of linkable data sources for entertainment, music titles, government, regulations, tax codes, medical acronyms, campaign spending, and the bible. One place to look is the API directory at http://www.programmableweb.com/.
Given the huge and growing set of structured resources, the role of the information architect might broaden to include looking outside their current domain for content and inspiration. Or as the folks at Programmable Web say, “APIs, mashups and code. Because the world’s your programmable oyster”.