Web Service Guy

Web service stuff

RDF Latest News

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.

Comments

Danny said:

Although I've yet to use them personally, I suspect the Collections are probably a lot easier to work with than they appear. First and rest are essentially the same as Lisp's car and cdr, which give quite a bit of that language's elegance - very neat recursion.

fyi, using the W3C's validator (http://www.w3.org/RDF/Validator/ARPServlet) the triples look like this :

1 genid:ARP48818 http://www.w3.org/1999/02/22-rdf-syntax-ns#first http://example.edu/students/John
2 genid:ARP48818 http://www.w3.org/1999/02/22-rdf-syntax-ns#rest http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
3 genid:ARP48816 http://www.w3.org/1999/02/22-rdf-syntax-ns#first http://example.edu/students/Tim
4 genid:ARP48816 http://www.w3.org/1999/02/22-rdf-syntax-ns#rest genid:ARP48818
5 genid:ARP48814 http://www.w3.org/1999/02/22-rdf-syntax-ns#first http://example.edu/students/Amy
6 genid:ARP48814 http://www.w3.org/1999/02/22-rdf-syntax-ns#rest genid:ARP48816
7 http://example.edu/courses/6.001 http://example.edu/students/vocab#students genid:ARP48814
# August 17, 2003 10:55 AM
Leave a Comment

(required) 

(required) 

(optional)

(required)