I believe it is a hinderance for progress.
Ок. I admit my question is somewhat provocative. I did not want to hurt anyone.
Semantic web is thought of as the next generation of the internet. To be popular it must be simple so that people can create semantic sites easily, as it was with HTML language and web 1.0. Or there must exist a lot of web applications that help users to put their content into the web. It determined the success of web 2.0 with its blog sites, social networks, online games, auctions and so forth.
Here I see the problem. The huge masses of developers that created web 2.0 must change their paradigm of thinking. Semantic web imposes on them a different approach to data storage. Relational databases with a set of tables that are linked to each other are no more appropriate. They seem too rigid for semantic modelling.
So of course RDF alone is not responsible for that we have just a small number of semantic sites that allow specific search queries. But something must be done. 7 years since RDF announcement by W3 is a long period of time. There must be some fault in the design when great possibilities of semantic web have to wait that long.
It frustrates when forums of PHP developers show no interest in programming of semantic applications. Who will do the work then. Not users, not developers. Are there other agents?
A very simple reason: because it was originally recommended by the W3C on the 22 February, 1999.
(BTW, that makes it nearly 12 years old, not 7 as stated in the question.)
This is a really important topic: I think that one of the community's greatest weaknesses is not properly addressing the misconception that RDF is complicated, and not distinguishing and properly separating out RDF from the stuff that's actually complicated.
The community should be in a great position, because the stuff that solves most of the problems is simple and intuitive... but for whatever reason, its all jumbled up with the obscure stuff that solves the harder niche problems.
Despite popular opinion, RDF (at its core) is as simple as it can be... and no simpler, mainly because...
RDF is just triples.
Triples form the basis of the simplest data model which allow to express arbitrary information. Don't believe me? Try to represent information in pairs:
Doesn't tell you much... What about
Well, it looks like we have more information but wait...
I have nothing against
Again, triples are the simplest standard way to represent arbitrary information.
But these strings
And then some folk decided to let literals appear in the object position of the triple.
And then some folks decided that you could optionally type those literals—for example, to say that the literal represented a date, or a time, or a number, or a month—or, that you could optionally add a language tag to a literal.
And other folk decided that you don't need a URI for everything, but you can use blank-nodes instead as identifiers local to a document.
That brings us to RDF... which at its core is about as complicated as JSON. With the possible exception of blank-nodes... and maybe making the set of datatypes smaller... I don't see any way it can be any simpler! (If you have a suggestion, please comment!)
So that's RDF.
And then some folks thought we'd need an agreed upon term for saying that something was a member of some class, so they created the term
And then other folks thought we'd need an agreed upon class for properties: for the URIs that typically denote the relationship like
And then some folks wrote up some proposals for RDF syntaxes for writing these triples down in a parseable form... syntaxes like RDF/XML, N-Triples, Turtle, RDFa, etc.
And then other folk decided we might need standard vocabulary for talking about lists of things in RDF, and created RDF collections and containers.
And then other folk decided we might need to talk about triples in triples, and created RDF reification.
And other folk decided we need standard vocabulary for describing schema in triples, and created RDFS, and added a document describing a formal semantics of the vocabulary.
And other folk decided that we need a standard vocabulary for describing ontologies in triples, and created OWL, and added documentation describing a formal semantics of the vocabulary.
And so on, to varying degrees... (SWRL, SPARQL, RIF, OWL 2, SPARQL 1.1...)
...and so things got complicated...
...but RDF—at its core—is still as simple as it can be (and no simpler).
(...and, in fact, IMO the most useful parts of the stuff stacked on top of RDF are also fairly simple and intuitive. Unfortunately though, it takes a disproportionately long time to come to that conclusion, especially from looking at the standards).
RDF and OWL has always had strong footholds in certain use-cases, like health care and life sciences, etc. But for a long time, RDF was faltering as a Web standard... other than some of the efforts behind FOAF and such.
But now, thanks to Linked Data/Linking Open Data, the simpler parts of RDF are back in vogue, and RDF is re-emerging as being relevant to the Web, and people are publishing more RDF on the Web than ever before. (Interestingly, people are also cherry-picking from the more complicated standards to get stuff done...)
For it to be discarded, you would need one of two things:
I personally don't know of any.
Whether it's complicated is a matter of opinion. There are simpler technologies, but there are also some which are far more complex.
However, the fact that it's "old" and "still not discarded" suggests that it is indeed popular, at least in some circles.
answered 03 Feb '11, 08:10
First, as the others already mentioned, I think there needs to be a clarification about what is really meant when you say RDF.
There is the very pure conceptual model of RDF, which is at its heart basically about direct graphs. I don't see this as complicated and unpopular as - especially with the popularity of the Linked Data movement - graph oriented data and also special solutions for these like Neo4J become more and more popular. There are also more and more public linked data sets, which are published in RDF, so I really cannot agree in saying that RDF is unpopular in the moment, in contrast I think it currently more popular than it ever was.
Surely, also the model itself contains stuff that may be done a lot better or even should not be there, which was already discussed here:
I have hopes, that the newly formed RDF working group can get rid of at least some of them, which might make RDF more usable and preferable to people/programmers that are not yet using it. Talking about RDF being a hindrance here, I really think it is a good thing to have standards, so I see the step of the W3C to standardize the use of named graphs/quads and a Turtle as a non-RDF/XML format (which is indeed ugly) as a positive development towards making more usable and interoperable.
Then, if you look a bit further and also consider RDFS or even OWL a part of RDF (as they build upon it), I can see these techniques slowly but steadily coming out of there academical niche and being adapted for "real world" commercial applications. A lot of that might not take place in the public web right now, but e.g. in businesses in the publisher or medical sector a lot of this stuff is used. I think that is another good step to push these techniques into also being used more in the public web.
Finally, I really think a lot of RDF and the Semantic Web is already in use out there. As there have been burdened such high expectances on RDF and the Semantic Web years ago and the terms are burned in a way, you might not hear too much about usages because it is not good for marketing anymore, but IMO the usage slowly and steadily increases, sort of establishing the semantic web through the backdoor.
answered 03 Feb '11, 11:43
Real Answer addressing some of Alexanders points
What about Drupal 7 - a massively popular CMS which embeds RDF automatically as RDFa into blogs etc?
Most people don't write their blog website by hand (they use a CMS/blogging framework) and neither will they write a Semantic Web driven website by hand they'll use frameworks and software which integrates & levarages the technology behind the scenes. At the moment these systems are only just starting to hit the mainstream (Drupal 7 came out about a month/two ago)
You point to Web 2.0 as an example of a successful evolution of the web and state that the Semantic Web has failed since RDF has been around for years but you fail to consider that one of the core technologies behind Web 2.0 (AJAX) was around for about 5/6 years prior to the Web 2.0 explosion (and not even called AJAX until 2005). New technologies take time to be accepted and come into general use.
Yes RDF itself has been around a long time but a lot of the related standards and technologies that make up the Semantic Web stack (SPARQL, OWL, Provenance, Trust, WebID etc) are much more recent.
If you get rid of RDF then you can't have a Semantic Web because ultimately it is all predicated on having a universal machine readable syntax for exchanging data. You NEED some form of data model - if not RDF then what?
And why do developers need to change their thinking and data storage? Many newer applications and websites are already built using NoSQL solutions often against schema-less document databases. If you are already using a NoSQL schema-less or loosely schemad model for your data RDF is a natural migration of this.
Original Flippant Answer
IMO most of the problems with RDF are due to the association with RDF/XML as the only true official syntax when there are much better and clearer syntaxes available.
Plus the fact that newbies often seem to assume that RDF/XML is RDF and not just a concrete syntax for serializing RDF
I can only say: be patient and remember the history of the World Wide Web:
When the WWW proposal came up in the late 1980s/early 1990s, there wasn't a big overall acceptance and maybe more opinions against it around. However, the initiators of this proposal were patient and tried hard to bring their specific proposal of an even older vision (cf. Vannevar Bush's "As We May Think" (1945), J.C.R. Licklider's "Man-Computer Symbiosis" (1960)). The unfortune of the earlier visionaries was that they really hadn't the hardware technology to put their ideas into practice. Maybe the fortune of the creators of the WWW proposal was also a bit that they had somehow the hardware technology to put at least parts of their idea into practice.
answered 03 Feb '11, 12:55
Silly answer, prepare to downvote it:
Because it is new, simple and popular. ;)
answered 10 Feb '11, 10:44
Antoine Zimm... ♦
Sometimes it takes a long time for a technology to be accepted -- that's the way that it is. I've got a paperback book by George Lakoff that was written around 1970 about "Semantics" that was centered around triples because the triple really is the simplest universal data representation.
Back in the 1980's, the Japanese government funded a "fifth generation computer" project (FGCP) hat was to develop a large scale supercomputer designed for A.I., database, and parallel search (as in searching for a solution.) The stack went from the chips to operating systems and languages. There wasn't any commercial market for it largely because Intel and Motorola had pulled forward so rapidly in single stream-of-instructions performance.
People think of the FGCP project as a failure, but Deep Blue defeated Gary Kasparov with essentially the same architecture. Google's search is driven by a giant parallel database and we all are doing big jobs with Map/Reduce, Hadoop and similar stuff. Cray's recently come out with a parallel supercomputer that's great for database and A.I. work. The FGCP wasn't a bad idea, it was just a decade or two ahead of the market, and that's where RDF was in the beginning.
answered 19 Sep '11, 13:43
RDF was not marketed as hard as XML. Most data-oriented businesses have jumped the XML bandwagon. The cost of this switch was so prohibitive that any further paradigm shift will be postponed as long as real added-value cannot be correctly measured.
Note: This point also affects browsers companies (Google, Mozilla Fondation, Opera, M$).
In my opinion the lack of a vendor-supported J2EE stack is also a big issue for the RDF acceptance.
answered 03 Feb '11, 11:18
It is part and parcel of innovation. RDMS were considered great at some point and all of a sudden everyone adopted RDBMS. Then the web came around and the need for data driven services and applications essentially meant that velocity was tantamount to construction. Application developers started to get frustrasted with RDBMS and hence ORM was invented. Now people are starting to come round and look at the root of their issues and things like NoSQL are starting to buzz around. Unfortunately most people are starting with the worst solutions (non standardised) and ignoring RDF stores. Hopefully they'll put 2 and 2 together and realise that SPARQL and semantic web gives them the standardisation (hence supporting federation, homegeneity and purpose) that elements of SQL introduced, along with the fluidity and agility of RDF and start actually producing Semantic Web solutions.
'It frustrates when forums of PHP developers show no interest in programming of semantic applications. Who will do the work then. Not users, not developers. Are there other agents?'
Know the feeling - I sit next to a few.
answered 03 Feb '11, 18:35
answered 14 Apr '11, 15:53