I thought I saw down in the street
The spirit of the century
Telling us that we’re all standing on the border Al Stewart, On the Border (1976)
The goal of this thesis has been to investigate how machine clients can use the Web in a more intelligent way. We introduced RESTdesc to capture the functional semantics of Web APIs, followed by a proof- based Web API composition mechanism. We then used semantic descriptions as a solution to the Web’s affordance paradox. Finally, we zoomed in on serendipity for today’s Web applications. In this concluding chapter, we review the initial research questions and outline opportunities for future research.
Giving machine clients more autonomy essentially comes down to offering them similar affordance as we provide to people, given that both excel in different capabilities. This last fact is captured beautifully in what became known as Moravec’s paradox :
It is comparatively easy to make computers exhibit adult level performance on intelligence tests or playing checkers, and difficult or impossible to give them the skills of a one-year-old when it comes to perception and mobility. Hans Moravec
Nobody knows exactly how many years away machines are from natural language understanding, and what “understanding” means in that context. Until then, we will have to assist machines if we want them to assist us. We do what we are best in, and they do the same.
Review of the research questions
In Chapter 2, I introduced the three research questions that have guided this thesis. I will now review how they have been answered.
In the context of the Web’s affordance paradox—
How can we automatically offer human and machine clients the hypermedia controls they require to complete tasks of their choice?
While allowing global scalability, the Web’s linking model restricts link creation to content publishers. Yet, hypermedia only works to the extent it actually affords the actions clients want to perform (as opposed to solely those envisioned by publishers). For human information consumers, our answer is distributed affordance: automatically generating links based on the interpretation of a resource. Through semantic technologies, a machine can decide locally which actions are possible on a piece of content. This way, hypermedia controls can be generated without an omniscient component, providing a solution to the outstanding open-corpus adaptation problem .
It remains a tough challenge to incentivize publishers to enhance their representations with semantic markup, which is a prerequisite for distributed affordance. Fortunately, minimal markup can be sufficient in many cases. For instance, specifying that a representation contains a book with a certain title or a person with a certain address already allows many matches. This markup can additionally serve as input for many other purposes, precisely because semantics allow for application-independent metadata. In absence of explicit annotations, text processing algorithms could identify entities in a representation, although this can require external knowledge.
For machine clients, we can apply the same mechanism. However, even though hypermedia controls indeed turn information into an affordance , part of the total affordance is inherent to the content itself. For instance, the fact that a certain text mentions the author of a book indirectly allows us to look up more books written by this author—
How can machine clients use Web APIs in a more autonomous way, with a minimum of out-of-band information?
Since REST APIs are actually interconnected resources, we interpret “Web API” here as any site or application on the Web, regardless of whether it has been labeled as such. Autonomous use of a Web API means on the one hand the interpretation of the resources themselves, and on the other hand an understanding of the possible actions that can happen on those resources. The interpretation of resources is possible through representations in semantic formats such as RDF, the usage of which we’ve referred to as semantic hypermedia.
Conform to the REST architectural constraints, HTTP implements a limited set of well-defined methods. Hence, the understanding of actions starts with the specification. The semantics of
PUT, and most other methods doesn’t require any clarification, but the
POST method has been loosely defined on purpose. Hence, machine-interpretable descriptions must capture the semantics of possible
POST requests. In addition, descriptions can capture the expectations of requests that use the other methods in order to look beyond the actions offered by a single hypermedia representation.
I believe that having some kind of action plan is unavoidable; after all, people always have a plan when realizing a complex task. In contrast to most planned interactions between clients and servers, we want the client to respond dynamically to the current application state. This is why, even though a plan indicates the steps, the interaction happens through hypermedia by activating the relevant controls. “Hypermedia as the engine of application state” remains a valid interaction model, as long as we accept that the information publisher cannot foresee all possible actions, and thus adjust accordingly (for instance, through distributed affordance). Furthermore, the active use of hypermedia reduces the amount of out-of-band information to a minimum. If the API descriptions are offered and consumed in a dynamic way, the interaction happens entirely in-band.
In order to satisfy a given goal, N3 reasoners can instantiate RESTdesc descriptions into a composition.This composition is generated by their built-in proof mechanism without requiring any plugins, as RESTdesc descriptions act as regular N3 rules. The resulting proof should be interpreted as a pre-proof, which assumes the used Web APIs behave as described. After executing the composition through the hypermedia-driven process, we obtain a post-proof with the actual values obtained through the APIs. This proof-based mechanism enables agents to autonomously determine a plan and execute it in a fully hypermedia-driven way.
How can semantic hypermedia improve the serendipitous reuse of data and applications on the Web?
In Chapter 7, I reflected on the various applications that become possible when Web APIs add semantics to the representations of the resources they offer. The need for application-specific media types, which require clients to be preprogrammed, can be eliminated by semantic media types. These allow generic clients to interpret resources based on the task assigned to them. Thereby, clients can perform tasks as if they were designed for it, which turns them into serendipitous applications.
Semantic technologies are currently not expressive enough to capture the nuances of natural language and therefore not a definitive solution for all possible autonomous and serendipitous applications. Indeed, we should always keep in mind that the RDF family of technologies remains a means to an end, not a goal in itself, nor the only means to reach that end. However, semantic hypermedia can considerably simplify the development of such a novel generation of applications. Instead of aiming to directly find the definitive solution to autonomy and serendipity, we should first try to maximize the usage of the current technologies. As I have illustrated, many useful scenarios are supported with today’s mechanisms. Therefore, we must support the initiatives that aim to convince data publishers and application developers to adopt the technology that is already there.
To end this thesis, I will list future work that builds upon the introduced technologies.
As far as RESTdesc is concerned, I plan to investigate its possibilities in smart environments, where devices dynamically react to a user. REST APIs can play an important role in such environments because they make a conceptual abstraction of different functionalities as resources. RESTdesc descriptions can enable the automated integration of new devices, without requiring existing components to be preprogrammed. As this could complicate the interactions, we might need to move from a pure first-order logic to modal logic, which allows different, mutually exclusive states to exist separately. N3 supports this through formulas, but their impact on RESTdesc descriptions and the composition process must be examined.
Another question is to what extent we can generate RESTdesc descriptions in an automated or semi-automated way. Since the lack of functional descriptions on the current Web remains an important obstacle for automated agents, we should facilitate description creation as much as possible. Furthermore, we need research on the organisation of such descriptions into next-generation repositories, which would allow fast and flexible querying of functionality.
For distributed affordance, I want to search optimal ways of capturing user preferences and displaying those links that are most relevant. Existing work on adaptive hypermedia, and adaptive navigation support systems in particular, could be applied to this new platform. The combination with recommender systems, especially in a social context, should provide new insights. To assess the effectiveness of various personalization methods, I want to design new user studies that focus on day-to-day use, which is a challenge because the platform offers open-corpus adaptation.
One aspect I haven’t considered so far, but which will become important when striving for significant adoption, is the role of generated affordance in commercial contexts. As I argued before, information publishers are uncertain about the added value of providing semantic annotations. Unfortunately, such annotations could prove a competitive disadvantage: if machines can automatically determine the vendor with the lowest price, then most of the established marketing techniques ought to be replaced. The same holds for distributed affordance: what if the user prefers a link to a competitor?
There will always be a tension between the goals of users and the goals of the party that provides the information (and thus might expect something in return). This doesn’t mean that semantics and new forms of affordances, both of which are ultimately designed to make people’s lives easier, wouldn’t be commercially viable. The Web has already brought us entirely different business strategies, some of which are still not well understood. Analogously, those new technologies could bring strategies of their own.
Perhaps the most significant contributions in future work can be made through the development of serendipitous applications. Agents with an increasing degree of autonomy can show the potential of Semantic Web technologies and assist people with various tasks. They can contribute to a new mindset for application development that embraces the openness of the Web, instead of trying to constrain it to the more established development models.
With this thesis, I aim to show how hypermedia and semantics can lead to an unprecedented level of pragmatic serendipity on the Web. Even though we hope automated interpretation of natural language will eventually obsolete the current technology, the Semantic Web still offers plenty of underexplored opportunities in the meantime.
- Adaptive hypermedia. User Modeling and User-Adapted Interaction, 11(1–2):87–110, 2001. .
- Architectural styles and the design of network-based software architectures. PhD thesis. University of California, 2000. .
- Mind Children: The Future of Robot and Human Intelligence. Harvard University Press, 1988. .