I've been invited to present a position statement at this years JISC CETIS conference on the topic of Semantic Structures for Teaching and Learning. The session aims to explore the potential of Semantic Web technologies in e-learning, and also raises the question of why Semantic technologies haven't been more successful in the e-learning domain, especially given the amount of academic interest in them.
We have become used to seeing the Semantic Web through the Semantic Stack (the infamous layer cake), a layered model of protocols that builds from the syntactic, through the semantic and logic, to higher level concepts such as trust.
This is a useful technical view, and helps to place the Semantic Web standards (RDF, RDFS, OWL, SWRL, etc) in context. However, it does not communicate the original vision of the Semantic Web. In his Scientific American article, Tim-Berners Lee (and co-authors Jim Hendler and Ora Lassila) say that the Semantic Web will:
"...open up the knowledge and workings of humankind to meaningful analysis by software agents, providing a new class of tools by which we can live, work and learn together."
This goal - of a machine processable web of information - lies behind the set of Semantic Web technologies. The vision is clear, that we take the Web's open approach and apply it to machine-readable information, providing a global platform for knowledge systems.
The Semantic Web family of standards helps us toward this goal in three ways, in that they:
- Promote Well-Formed Meta-Data - using the Semantic Web stack we are forced to build properly considered ontologies to describe a given domain. This makes it more likely we would produce a well designed schema, even if it doesn't guarantee it.
- Encourage Interoperability - because ontologies in the Semantic Web are explicitly named we can remove ambiguity about terms, even in documents that mix statements from different ontologies. This doesn't guarantee interoperability (because we might be using different ontologies) but it does guarantee that at run-time our systems can identify when they do and do not mean the same thing.
- Enable Reasoning - because we can define reasoning rules (for example simple transitivity, or other deductive logic) that can simplify the creation of software that processes the data (because we can move some of the burden from the software itself to a reasoning engine).
In e-learning we might see see benefits in well-formed metadata from an increased inter-relatedness of e-learning standards (for example, relating Learning Object Metadata to Learning Design Schemas); benefits from interoperability in the form of exchangeable records (for example, between Student Information Systems, Portfolios and Item Banks); and benefits from reasoning in the shape of aligned teaching or supporting independent learners (e.g. linking syllabus to teaching materials to assessment).
In the Learning Societies Lab we have been particularly interested in the potential of reasoning to create aligned teaching. A few years ago we created a simple demonstrator that reasoned about which questions might be appropriate for a given syllabus by examining a SKOS model of the subject domain.
While it is technically interesting to explore these issues there is a real problem in getting the information into the right forms to apply the reasoning techniques. In the aligned teaching case it would mean having an institutionally agreed ontology for each topic, and having all syllabus and all questions annotated using it.
In fact while the upper layers of the Semantic Web Stack have attracted a lot of academic interest, it is the bottom layers that have seen the most success: the core naming scheme of URIs and the Syntax of XML. In the last few years XML has had a massive impact on the way in which people use the Web, and has enabled cornerstone features of Web 2.0 such as RSS feeds and Mashups based on XML APIs. To a certain extend XML on its own takes us a long way towards well-formed meta-data and interoperability, and the data-integration that it enables has already had a significant impact on our approaches to e-learning.
In my last post I talked about the rise of a New Web Literacy, a preparedness amongst the new generation of students to share, trust and co-operate online, and to take ownership of their digital identity and environment. This is all enabled through loosely coupled systems, often connected together using RSS or XML APIs. There is a growing feeling amongst e-learning technologists that we should shift away from institutionally owned Virtual Learning Environments (VLEs) towards Personal Learning Environments (PLEs) that are more respectful of this Web Literacy.So URIs and XML have already taken us a long way into a new world of data integration that has already radically changed the way in which we think about e-learning. But the Semantic Web is much more than just data integration.
The ability to describe ontologies means that ontologies themselves can be exchanged as data, opening up the possibility of a system automatically mapping two ontologies (using a mapping service that is aware of both) and thus learning new ontological terms.
The ability to articulate rules means that behaviour that is currently implicit in programs could be pushed into the data cloud, not only simplifying development (because you could reuse reasoning engines rather than writing bespoke code), but also potentially allowing systems to share behaviour and automatically extend their functionality (by discovering new rules).
This is a much more powerful and open approach than current Web 2.0 style mashup mechanisms, but it has a significantly higher overhead, and the end result depends on the network effects of many other systems taking the same approach.
If the Semantic Web is to become a reality then I believe that it is necessary to build it from the bottom up. We already have an emerging Data Web, so the challenge is to find ways to naturally progress up the Semantic Stack until we have an emerging Semantic Web.
In this view the Semantic Web hasn't failed, it just hasn't succeeded enough. There are a number of ways this incremental change could potentially happen. One possibility is through the promotion of a number of simple but key ontologies (Dublin Core, FOAF and SKOS come to mind), another is to explore RDF as a basis for REST services rather than POX. The difficulty is that there must be a clear and immediate advantage for this to happen (perhaps the ontology resolution services mentioned above, that could reconcile RDF statements from multiple sources into the particular ontology that a given system understands).
This view also means that we shouldn't try and fix the current situation - but instead should focus on building on it. There are simple ways in which e-learning system builders might contribute:
- Use real REST services rather than XML-RPC as your externally facing interface. As a RESTful approach (using the HTTP header commands to control a set of resources rather than encoding functions in the URI) naturally builds a web of data.
- Leverage existing key ontologies in order to help build a suitable mass of RDF content based on core schema.
- A little goes a long way - so we should all be semantic extroverts and publish everything that we can (within the constraints of privacy).
E-learning systems are changing. In order to address the new Web Literacy they need to be decentralised, loosely coupled, and flexible.
My view is that the Semantic Web could form a key part in this change, with RDF and its associated languages forming the basis of data exchange (and enabling more powerful mashups). To get there we need to figure out how to incorporate semantics into our existing systems and practices, and to demonstrate real advantages without real sacrifices (and in particular to respect the informality of users). Only in this way will we build up the momentum, acceptance and motivation that will make the Semantic Web a reality.