Alberto Attilio Reggiori

NAME

RDFStore::Parser::OpenHealth - This module implements an RDF strawman parser for the syntax proposed by Jonathan Borden at http://www.openhealth.org/RDF/rdf_Syntax_and_Names.htm

SYNOPSIS

        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() );

        $p->parsefile('http://www.openhealth.org/RDF/mns-fig13-result.xml');
        $p->parsefile('/some/where/my.xml');
        $p->parsefile('file:/some/where/my.xml');
        $p->parse(*STDIN);

        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 }
                                }
        );
        $pstore->parsefile('http://www.openhealth.org/RDF/mns-sect7.2-result.xml');

DESCRIPTION

This module implements a Resource Description Framework (RDF) strawman parser compliant to the syntax proposed by Jonathan Borden at http://www.openhealth.org/RDF/rdf_Syntax_and_Names.htm using the XSLT style sheet at http://www.openhealth.org/RDF/extract/rdfExtractity.xsl. Such a syntax is yet another extension/refinement of the original syntax proposed by Dan Connoly at http://www.w3.org/XML/2000/04rdf-parse/rdfp.xsl and already extended by Jason Diamond's at http://www.injektilo.org/rdf/rdf.xsl. 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.

METHODS

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

BUGS

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.

SEE ALSO

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

  • Mapping namespace qualified element names to URIs - http://www.openhealth.org/RDF/QNameToURI.htm

  • Jason Diamond's http://injektilo.org/rdf/examples.html

  • Dan Connoly strawman sytax - http://www.w3.org/XML/2000/04rdf-parse/

  • TimBL's semantic web toolbox - http://www.w3.org/DesignIssues/Toolbox

  • RDF Model and Syntax Specification - http://www.w3.org/TR/REC-rdf-syntax

  • RDF Schema Specification 1.0 - http://www.w3.org/TR/2000/CR-rdf-schema-20000327

AUTHOR

        Alberto Reggiori <areggiori@webweaving.org>
        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'