Web 2.0 was all about making the web more socially aware, however, was it really a good idea to start a versioning system for the Web?

When Web 2.0 was coined, I got quite excited about it, it was “Yes! this is a new way of thinking, this makes the web more personal”… but I did not thoroughly think through the versioning of the web. Applying 2.0 to the end of the term Web, meant that this is somehow new, somehow better and somehow a superset of what we had before… but it wasn’t, it just clumped pre-existing technologies together under one buzzword which businesses could use.

I fear that this is now happening with the term Web 3.0, which is seen as a swing towards the data. Unfortunately, the term Web 3.0 is being applied as a buzzword already (see the recent post by Paul Krill at InfoWorld titled “Salesforce touts Web 3.0 as platform as a service“, and the post by Simon Wardley titled “3 is the new 2…“).

I say that the Web is the Web, and it will always be the Web… whether it is a Document Web, a Social Web, a Data Web, a Platform Web or an Intelligent Agent Web. When it comes down to it, it will still be the Web, and documents will never be fully replaced by data objects, data objects will never be fully replaced by documents, the social apps won’t replace documents, and intelligent agents won’t replace search engines… things might change slightly, or become slightly more efficient… but essentially it is still the same.

Therefore, I don’t think it is clear when people start versioning the Web… which is why I have started categorising sub-webs, like I have done above. So these Sub-Webs are:

  • Document Web: A Web of Documents with hyperlinks between. This Sub-Web provides a subjective view of information from the context perspective of the author.
  • Social Web: A Web of Socially Aware Applications. This is done in either, or both Document and Linked Data forms. This Sub-Web provides a subjective view of information from the context perspective of the user or group profiled.
  • Linked Data Web: A Web of Data Objects with relationship links between to enhance meaning. This Sub-Web provides an Objective View of information, ready for a contextual perspective of the user.
  • Platform Web: A Web of Services in which you can run Web Applications on - and/or - against. This Sub-Web does not provide a view of information, but is an attempt to provide a distributed network of services capable of providing multiple subjective and objective perspectives.
  • Intelligent Agent Web: A Web of Intelligent Software Agents. It is a Sub-Web because software agents will talk to each other in order to find out information. This Sub-Web communicates internally objectivity and subjectivity depending on the subjective desires of the user.

The important thing is that each of these Sub-Webs does not replace any other kind of Sub-Web. They can be used all together on the Web. No versioning required or desired.

However, this doesn’t mean that new technologies shouldn’t be looked into and implemented. They definitely should be looked into!  I am just stating that I don’t believe versioning is the best way of labeling technologies, as it is pretty meaningless when something is not better or improved.

Any thoughts?…

The nice guys at (who are based in Cambridge, UK) have given me some beta invites to give out. So if you are interested in beta testing trueknowledge.com then please send me an email or comment in this blog and I’ll send you your invite.

True Knowledge Ltd is a company founded by AI sage William Tunstall-Pedoe, and their product (in beta stage at the time of writing) is a search engine which answers questions. It answers questions using and a highly-structured wikipedia-style question and answer system.

Unfortunately the True Knowledge system is not yet exposing Linked Data, but I am sure that they see a benefit in that area once the engine is released fully and publicly.

I haven’t got many invites, so be sure to let me know if you want one soon. It will be on a first come first serve basis.

Thanks,

Daniel

OK. It’s a funny title for a blog post, but it is an acronym which I don’t want to start up as a buzzword, but it where I see things going.

A lot of people know about , its a set of protocols and formats to allow you to just plug a hardware device into another hardware device and its guaranteed to “just work”. UPnP is all quite low level stuff, which is to be expected because we’re talking about hardware in this case.

The ease of UPnP is starting to appear on the web too, and what I shall (temporarily) call Web Universal Plug and Play (WUPnP). What it’s plugging together is various web applications components.

This started off in the form of open web services which could be “mashed-up” with a nice little GUI (e.g. Nestoria ).

We are now starting to see “mesh-ups”, which are fusions of data from different sources to give context-sensitive results to queries.

Mesh-ups and Mash-ups are part of a bigger concept of WUPnP, which is not just about data or how to view it… but everything becomes a little more agnostic, and therefore creating a plug and play architecture.

To do this, we have:

At the Data Level:

  • RDF (the framework, with its various socially-friendly vocabularies such as FOAF and SIOC)

At the Machine Interface Level:

At the User Interface Level:

Network Level:

And the key to this all working is the unique data source name:

The Uniform Resource Identifier (URI)

Without it nothing would be linkable or usable.

I’m not trying to standardise things, I’ll leave that up to the lovely people at the W3C. I’m not even recommending anything, thats up to the W3C and the DataPortability Group. I’m just saying that we have the technologies to be able to plug X into Y into Z, and hey presto we have an awesome app “voila web-scale plug and play”.

An example is a user interface designer could make a user interface in such a way, that it would be able to work with any component that a user may choose. Just for some details, this could be an Adobe Flex based user interface, which could then hook into any Linked Data based encyclopedia (e.g. DBpedia) and provide data in context.

You should be aware by now, from various previous posts that:

  • OpenLink Virtuoso provides the Machine Interface Level, the Data Level and the Network Level
  • OpenLink Data Spaces provides some User Interface Level functionality and some more functionality on the Machine Interface Level
  • OpenLink AJAX ToolKit provides JavaScript, AJAX/AJAR and some funky bits of functionality and eye candy ready for User Interface Level development.

(Yes, there are a lot of acronyms in the computer science field, and particularly the web…. it’s because if we said the long names for everything then we really wouldn’t get anything done because conversations would be about 10 times longer! Unfortunately we have to deal with it)

(If I’ve forgotten anything useful in the WUPnP stack then let me know)

The Tribes of the Semantic Web

There are actually tribes within the Semantic Web:

The Tribes of the Semantic Web

These include:

  • The Linked Data Purist
  • The Semantic Annotator
  • The Semantics Purist
  • The Semantic Insider

Generally this is because they prefer a certain architecture over another, but I am not saying that each is exclusive. There are people in the community which straddle two or more of the tribes.

The Linked Data Purist

The Linked Data Purist will have links out to various open data objects, and will provide content negotiation in a Human-Friendly format (e.g. HTML) and in a Linked Data format (e.g. RDF). Languages like SPARQL and SPARUL would be provided to query and update the Internal Data Graph Model.

The Linked Data Purists Architecture

The Linked Data Purists Architecture

The Document Web Developer and the Linked Data Developer

Its possible to add a layer on top of the SQL based Relational Database, to create “RDF Views”. This allows the developer to play with the data in either SQL or SPARQL formats:

Linked Data Development Architecture with the Document Architecture

Linked Data WITH Document Web Architecture

The Semantic Annotator

The Semantic Annotator will use an annotation language to embed semantics into the document they are providing (whether thats XML, XHTML or HTML). Frameworks such as RDFa, Microformats, eRDF and AB Meta are used in this case:

The Semantic Annotator Architecture

The Semantic Insider

A Semantic Insider will have closed data due to privacy or licensing, they only provide an interface on the data with little or no links out, and certainly no links coming in directly to objects. The only real reason for hiding data like this is because of privacy or licensing, if privacy or licensing are not an issue then opening up the data is promoted by the Linked Data tribe.

Semantics Inside Architecture

The Semantic Inside Architecture

The Semantics Purist

The Semantics Purist enjoys getting the real semantics working for each and every object. They will use OWL extensively, and will understand Descriptions Logic. The Semantics Purist does this in order to use the many semantic inferencing tools available.

(No diagram for this one, because it varies… some aren’t web based, some are…. most use some kind of deep inferencing)

Tribes are bad, Linking is key

Tribes are bad, they split communities up when they could really do with being together and more universal… we would probably get a lot more done if we did what we were promoting not just for data but for intercommunication. Linking Data is important, yes, but Linking together between the existing tribes is even better. This is a call to those in the Semantic Web / semantic web community.

Bishop John Shelby Spong (a well known Liberal Episcopalian Christian Bishop) often talks about the Tribal Identity/Mentality of Christians through the ages. This can happen within the Web Development/Design world too, it happens to/from the Semantic Web community (e.g. some people see the Semantic Web as “too academic”, which is rubbish because most of it isn’t) and also within it (e.g. Microformats versus RDF or RDFa).

“It is a magnificent feeling to recognize the unity of complex phenomena which appear to be things quite apart from the direct visible truth” - Albert Einstein

“Where there is unity there is always victory” - Publilius Syrus

So I leave you with a picture of “Minerva of Peace” by Elihu Vedder:

Elihu Vedder: Minerva of Peace

Minerva of Peace by Elihu Vedder. (From Wikipedia “Minerva of Peace“)

I hoped to have a mini reports done day-by-day, but a restricted Internet service at my hotel and the venue meant that I wasn’t as able to as I wanted. So here it is, a bigger report. I’ll do it in an interview style.

What was XTech 2008 generally about?

was about “The Web on the move”. It brought together innovators, researchers, developers and entrepreneurs to talk about the current state of the web, how its evolving and where its going in the future.

General Topics included:

Oh! That sounds awesome, I wish I was there. When and where was it?

It was between 6th and 9th of May 2008, at the Radisson SAS Royal hotel in , Ireland. It was a nice looking hotel, although the food was quite poor. I didn’t stay in that hotel, I was in a hotel next to Christ Church Cathedral which was only a few blocks away from the event.

OK, so what were the highlights of the event for you?

Discovering jQuery in one of the first tutorials, a JavaScript library which is perfect for Unobtrusive JavaScript (which means that the JavaScript is only an enhancement to interaction on the page, and the page is still usable if you have JavaScript turned off). I really wish I had more time to play with it. It is, however, just a page manipulation library (although there are plugins available for it)…. I suggest that you check out OpenLink AJAX Toolkit (OAT) if you want eye-candy as well as page manipulation, it would be interesting to compare OAT and jQuery one day in terms of feature set and compatibility with browsers…. although theres nothing stopping you from using them with each other.

Simon Wardley talked about “why open matters“, he had hundreds of slides which he managed to get through in time. It was the best presentation that I have ever seen.

Hearing from Rattle Research about their work with the BBC to provide contextually relevant content, and doing so by using information provided by DBpedia and other Linked Data Sources. This was in their presentation “Using socially authored content to provide new routes through existing content archives“.

The “Building the Real Time Web” was great also, it was supposed to be by Blaine Cook but he couldn’t make it to the event so a few people (from Yahoo Brickhouse and Dopplr) made a quick presentation in the form of a discussion. It was a very innovative discussion which talked about APIs and the XMPP/Jabber protocol.

Hearing about the wonderful projects at the BBC where they are building Semantic Web / Linked Data platforms. Two things they are doing are:

The UK Government also have some interesting Semantic Web based platforms that they are building, including turning the London Gazette into an RDFa based site.

And finally Uldis did a great job talking about how FOAF and SIOC fit into DataPortability ideals, which I mentioned briefly in my talk also.

How did your talk go?

It went well, I had a few questions and comments after. My talk “Linked Data Deployment” was chaired by Brian Suda of TM Software and Microformats.org…. which was interesting because my talk was essentially on how to exploit HTTP procedures like Content Negotiation and URL Rewriting to provide Linked Data… which clears up network mess of providing huge documents of HTML with RDFa or Microformats because you can provide HTML and RDF at the same location and provide it depending on the requested MIME-Type.

I think it went well, even though I was incredibly nervous because of this being my attendance and talk at a real conference, and the first time I had been to Ireland, and the first time I had been on a plane without anybody else that I had known… so the whole event was a completely new situation for me!

Did you meet any interesting people?

Of course. Just to name a few:

Also saw a few people I have met before, including Dave Beckett, Andrew Walkinshaw, Keith Alexander and Ian Davis.

And the event overall?

Was very much a success, lots of interesting topics and it certainly got people talking about possibilities. I would definitely consider going again in the future.

How about Dublin?

I managed to get the change to look around Christ Church Cathedral in Dublin, which is incredibly beautiful (I took some pictures of the cathedral).

If you ever go to Dublin, then I highly recommend that you go visit the ISKON restaurant called Govindas, very good vegetarian food all set out in a canteen style, not too expensive either. I also went to another vegetarian restaurant in Dublin called Juice, that was very good and a little ‘posher’ than Govindas. Other than that, it was quite hard to find vegetarian food in Dublin.

I had a good look around the Temple Bar area, which I consider to be the student central. Its effectively the oldest part of the city.

It’s a lovely city, and I’d love to visit Dublin again…. maybe as a holiday instead of on business.

So I have talked about how RDF is really simple, and why Linked Data are the roots of the web… but we need a way of serving this data in a meaningful way, this is where the Data Server steps in!

The allegory continues……

A data server diggs out linked data from the soil

Here we see our home-grower digging up some potatoes.

The potatoes are Linked Data Objects (with relations interconnecting them), the home-grower is our data server and the act of digging is the process of fetching information (via a method such as REST). The soil is the machine-friendly Data Web.

Because the potatoes cannot be eaten straight from the ground:

A data server needs to prepare and cook data to give it context

The home-grower will need to prepare the potatoes by peeling, chopping and then cooking them. They may be cooked by boiling, baking or using some other method.

The home-grower is still a data server, and the act of preparing and cooking is to be able to get the data in a certain context with other information that the user demands, different users will want to see things in different ways hence the different cooking methods. Context is essential.

The potatoes are then ready to serve:

A data server will serve the data in a human friendly way

Because different people will like to eat their potatoes in different ways and with different things the home-grower will know exactly how their guests would like their potatoes! Some people like quorn fillets with peas and mashed potato and some prefer a lump of meat with some roast potatoes.

Different people are essentially different users, and they will want to see the data in a human friendly fashion. So styling and interaction is a part of serving this information. Note that presentation is related to the type of data that you want to show, but it should not be the same thing, a good use of data-code-presentation separation is advised when developing systems.

OpenLink Virtuoso: The Linked Data Server

Virtuoso is a “Universal Server”, which means that it is capable of doing all that is described above. To break things down a bit:

  • Being able to fetch information from data stores via webservices (and via scraping/sponging)
  • Being able to manipulate Linked Data graphs.
  • Storing its own graphs inside the native database (or other database management systems via virtualisation techniques).
  • Using query languages (e.g. SPARQL) to find specific data.
  • Using methods of graph manipulation to provide data in a certain context.
  • Providing meaningful data to the user using the typical XHTML+JavaScript+CSS setup.

Virtuoso Platform Conceptual View

Image is a conceptual view of the Virtuoso architecture and is available, with more information, from the Virtuoso homepage

More information

More information is available from the following Document Web sites:

p.s. sorry about the crude drawings, but they do show the point. Once again if you would like to use them somewhere then do give me a nudge, I am very unlikely to say no but I would like you to tell me about it first. Thank you :-)

p.s. do email me, skype me or comment if you would like me to clear anything up, or if you would like to discuss how Virtuoso might work for you. My details are available on my personal site and via my personal URI.

OK, so in my last post (”RDF: Simpler if you look at it in a different way“) I said that is a modeling framework to link data together in the form of object to object relationships, I briefly mentioned some “vocabularies” (aka ) and some formats (e.g. Notation3, RDF/XML). I want to mention again that it is a modeling framework for Linking Data, and not specifically a format for importing and exporting (although it can be used in this way).

This brings me on to the topic of . A lot of people, some of which are part of the W3C, want to see a “Web of Data” where data is linked across domains (physical (e.g. web servers), virtual/symbolic (e.g. knowledge bases or domains of knowledge/understanding)). This is where every “thing” on the web is structured in a kind of “object orientated” way, RDF happens to be a standardised way of achieving this. But this does not mean that a “Web of Data” will replace the document view that we see today, it means that the Linked Data are the roots and a human view is what the user sees:

Linked Data are the roots of the future web

Figure: Linked Data are the roots for the future web (black arrows are “labeled arcs” aka “relationships”/”predicates”)

Here we see documents rendering information from objects which are in the enriched soil, this is so that the humans can consume the information. You can’t eat potatoes raw, you’ll find it hard to digest! With information in this form your data is more meaningful as it shows idiosyncrasies with other data via labeled links. Note that the documents are able to do this either through getting information directly from a graph, or by querying using a language called SPARQL.

We also see the two trees of Artificial Intelligence and Soft Computing. They will also want to get at the lovely nutrients in the soil. These trees transform nutrients into fruit, and fruit is edible by humans. In reality these trees are intelligent software agents (either server or client side), capable of inferring new information and dealing with uncertainty.

These meaningful objects all have their own identifier in the form of a , which should be an HTTP accessible URI. A URI in this form is the name and the co-ordinates of that particular object. HTTP URIs can be used within RDF to form Linked Data. There is a lot of Linked Data out there already which is open and ready to use (see Richard Cyganiak’s Linked Open Data Cloud for the data sets that the Semantic Web Interest Group / Linked Data Group are aware of), so its just a case of getting your data out there and using it… and thats how we make it real!

More information

More information is available from (in Human Friendly form):

Theres a lot out there, not only academic stuff but business stuff too. Explore, and if you find anything interesting then please do share it here!

Thanks for reading,

Daniel

I’ve just heard about the , its a good idea, but it has already been done in the form of ….

SIOC (pronounced “Shock” <– its Irish) “can [also] be used as a syndication format, like RSS”. Plus SIOC has already been deployed in many web systems, and it integrates nicely with the Friend of a Friend (FOAF) format (which seems to be taking off nicely).

The question goes:

Why reinvent the wheel, when you have already got something that does the job?

SIOC was developed in Ireland by DERI Galway, it is an extensible Semantic Web format and is a portable data format recognised by the DataPortability Project. It has been implemented in many systems including WordPress, Drupal and phpBB in the form of simple plugins… and inbuilt into larger systems such as OpenLink Data Spaces, Talk Digger, Seesmic and OpenQabal. There are lots more applications of SIOC. In fact, because the next major release of Drupal will be entirely Semantic Web based (internally and externally), Drupal will be using FOAF and SIOC natively!

So the question is, why bother with this “open data definition”. I’ll be seeing the creator of this format this evening at Oxford Geek Night 6… so I’ll try to ask him!

semweb, web 3.0 @ 29 March 2008, “No Comments”

An interesting discussion is occurring on the Linking Open Data mailing list about whether is an application or a capability. This is a tough question, and I would actually say both, here are my reasons:

Linked Data: The Application

Linked Data uses technology to link one object to another object over knowledge domains. Added to this point is that Linked Data uses the vast history (research + implementation) of Distributed Objects.

Linked Data: The capability

Semantic Web technology allows for one object to connect to another object in a different knowledge domain, therefore creating Linked Data. Data in the Semantic Web (and the Web) was always supposed to be distributed, therefore, Linked Data has always been part of the Semantic Web Technology Stack.

EITHER WAY

Either way:- interconnecting objects internally and externally (across knowledge domains), reusing existing ontologies (and schemas) and exploiting HTTP capabilities is an integral part of the future of the Web. It is good practice, hey, we could even go as far as saying that this stuff is essential for contemporary and future web applications.

Linked Data: A killer app?

If we can say that Linked Data is an application, then is it a ““? I don’t know, I’ve never liked the term “killer app”…. all I can say is that Linked Data is a very very important component for meaningful data, and could be used for some very very useful applications.

I might consider doing a longer post later, but I wanted to highlight this to all my fellow SemWebbers.

The (and/or “Data Web” and/or “Web 3.0“) is seeing increasing coverage in the (with varying amounts of accuracy):

So the time has definitely come to write some very clear and concise tutorials and articles targeted at people that only know what the document web is like, if at all!
Meanwhile Computer Weekly have only just started talking about “what constitutes Web 2.0” (11th February 2008). Come on Computer Weekly, catch up!

(p.s. To any media companies reading this: I am available for conversations about the Semantic Web, Linked Data and/or Web 3.0)