Released Raptor 1.4.4 primarily for some crash fixes for the RSS tag soup parser and RSS 1.0 serialiser, along with win32 porting patches from Dave Viner.
The Linux Kernel Driver Interface
The Linux Kernel Driver Interface by Greg Kroah-Hartman, Linux Kernel developer on why Linux does not have a binary kernel interface or a stable kernel interface, and why you don’t need it.
Raptor 1.4.3 – Writing XML better
I just released Raptor 1.4.3 (announcement) after a bit of gentle hacking over the holidays. With dayjob work starting again after the break on Tuesday, it is time to get this out the door.
This version is primarily for
exporting the XML Writer API that has been developed for some time.
It has been used internally to Raptor for XML Canonicalization for RDF/XML rdf:parseType="Literal" content.
I’ve extended it to make it usable to generate standalone XML documents.
Somebody asked on IRC if I was using or could use Tim Bray’s GenX XML generator. My code predates GenX and is the minimum I needed to emit streamed canonical XML. There wouldn’t be any advantage to swapping it, or any problem in doing so later.
So what does this enable? Well firstly I made Raptor’s RDF/XML serializer use it, and also handle user declared namespaces so the output can be made more pleasant to read (it’s not a full “pretty writer”).
Secondly, I made a new RSS 1.0 serializer. That means in combination with the RSS tag soup reader, that you can use raptor (alone) to convert RSS formats to RSS 1.0. Like this:
$ rapper -q -i rss-tag-soup -o rss-1.0 URI-of-rss
2005 Resolution
Same as last year – Ship Redland 1.0 before
it’s 4th5th birthday, June 21.
It’s an open source thing – it ships when it’s ready.
Rasqal 0.9.5 – SPARQL optionals
After a lot of testing and staring at the crazyness that is Solaris shared library paths, I’ve released Rasqal RDF Query Library 0.9.5 which has a lot of internal changes, specifically it now operates in terms of graph patterns - sets of triple patterns, so that it can handle certain SPARQL features. It also uses Raptor 1.4.4 to write result sets as XML.
The one feature I particularly wanted to get out was optionals. These are pretty handy when you have a somewhat unknown graph that you are querying, which could have some useful triples, ahem, optionally. So rather than do lots of queries of the form “do you have triple (?x prop1 ?y) ?” and “do you have triple (?x prop2 ?z)?”
they can be just attached to the other triples in the graph pattern, marked optional, and only if they match you get a binding, otherwise, the query carries on. This is all properly explained in the Including Optional Values section of the SPARQL query draft.
You can try them yourself in the Redland Rasqal RDF Query Demo which has an optional example at the bottom. Surely there are bugs, it’s new code. I prefer diff -urN patches, thanks! :)