Alberto Attilio Reggiori


RDFStore::Parser::OpenHealth - This module implements an RDF strawman parser for the syntax proposed by Jonathan Borden at


        use RDFStore::Parser::OpenHealth;
        use RDFStore::NodeFactory;
        my $p=new RDFStore::Parser::OpenHealth(
                ErrorContext => 2,
                Handlers        => {
                        Init    => sub { print "INIT\n"; },
                        Final   => sub { print "FINAL\n"; },
                        Assert  => sub { print "STATEMENT - @_\n"; }
                NodeFactory     => new RDFStore::NodeFactory() );


        use RDFStore;
        my $pstore=new RDFStore::Parser::OpenHealth(
                ErrorContext    => 2,
                Style           => 'RDFStore::Parser::Styles::MagicTie',
                NodeFactory     => new RDFStore::NodeFactory(),
                store   =>      {
                                        persistent      =>      1,
                                        directory       =>      '/tmp/',
                                        seevalues       =>      1,
                                        options         =>      { style => 'BerkeleyDB', Q => 20 }


This module implements a Resource Description Framework (RDF) strawman parser compliant to the syntax proposed by Jonathan Borden at using the XSLT style sheet at Such a syntax is yet another extension/refinement of the original syntax proposed by Dan Connoly at and already extended by Jason Diamond's at The parser has been completely written in Perl using the XML::Parser::Expat(3) module. For the actual explaination see the RDFStore::Parser::SiRPAC(3) man page.


RDFStore::Parser::OpenHealth supports all the RDFStore::Parser::SiRPAC options but Source. See the manual page for RDFStore::Parser::SiRPAC(3)


Although the syntax proposed by Jonathan Borden is quite complete, the style-sheet is not unfortunately compatible with the Sablotron(3) great XSLT engine, that does not support 'exclude-result-prefixes' and functions overriding. A modified version working for Sablotron is available in the samples directory in the file xml2rdf.xsl.


RDFStore::Parser::SiRPAC(3), Sablotron(3) RDFStore::NodeFactory(3)

  • Mapping namespace qualified element names to URIs -

  • Jason Diamond's

  • Dan Connoly strawman sytax -

  • TimBL's semantic web toolbox -

  • RDF Model and Syntax Specification -

  • RDF Schema Specification 1.0 -


        Alberto Reggiori <>
        Clark Cooper is the author of the XML::Parser(3) module together with Larry wall

2 POD Errors

The following errors were encountered while parsing the POD:

Around line 592:

'=item' outside of any '=over'

Around line 616:

You forgot a '=back' before '=head1'