Wow, two very hot articles on XML.com.
Mark's piece on Atom and RDF (sorry - we failed the audition) and Kendall's on OWL.
So Atom is XML with a maintained, normative XSLT port to RDF. Better than nothing I suppose and most Atom providers will transform on the server and provide both XML and RDF feeds.
Mark, perceptive chap that he is, drills down to the two reasons why RDF won't be on Fame Academy next week. Tool support and RDF / XML syntax.
Mark is down on the Semantic Web. Well I never thought of the Semantic Web as some ethereal, elusive concept dreamt up by some PR brain farter. To me it is just code; a way to code a bit of 'intelligence' into our software applications. And OWL, as Kendall reports, is a step towards this.
Sam Ruby has a moan about RDF / XML. Some people just don't understand.
Also Edd Dumbill has a little gripe with RDFDrive, the only compliant RDF parser available for the .Net platform so I suppose beggars can't be choosers.
'Why all the interfaces', says Edd? Well, interfaces are cool. It means I can develop a parser that will query an in memory RDF graph and a parser that will query a database triples store against the same IRdfParser interface. I can then pass either parser to a application specific component, say a FOAF processor regardless of the internal implementations.
His other gripe is with the node based query model which I agree is clunky. Mine main gripe with RDFDrive is the fact that it uses a DOM instead of an .Net XmlReader to deserialise the XML into triples. This is a real performance killer and resource eater when working with RDF files over the internet. That's why I'm presently extending and upgrading Jason Diamond's excellent RdfReader to the latest Working Draft spec and then going to use it as the basis for a proper parser. You know, the one with that nice graph.GetStatements(subject, predicate, object) interface like RAP. Is there a better query interface? Please please let me know before I start!
One new feature of the Working Draft that I won't be tackling in a hurry is rdf:parseType = "Collection". Have you seen the triples that this is supposed to produce? And while we are talking syntax, why oh why is RDF / XML syntax so complicated? Any reasons or excuses for this would be appreciated because quite frankly, I just don't understand.
So hang on there all .Net RDF heads (all 2 of you), I will be releasing VicSoft.Rdf.RdfParser + source code in September.