Notation 3 support

Toby Inkster mail at tobyinkster.co.uk
Mon Jul 5 17:28:55 CEST 2010


On Mon, 5 Jul 2010 10:07:03 -0400
Gregory Williams <greg at evilfunhouse.com> wrote:

>> Next steps are an N3 serialiser, and then to clean it all up and
>> release it all as a separate distribution on CPAN. (I plan on calling
>> it "RDF::TriN3".)  
>
> That's almost too clever for its own good :)

I was planning on keeping the parser, serialiser and formula modules as
being called:

	RDF::Trine::Parser::Notation3
	RDF::Trine::Serializer::Notation3
	RDF::Trine::Node::Formula

And RDF::TriN3 would be a wrapper module that loads RDF::Trine plus the
N3 extensions. Is this use of the RDF::Trine namespace OK with you?

> OK. I'm open to discussing changes like this. Right now all my stuff
> generally throws an exception via L<Error>, but I know there's some
> resistance to that since Error has been deprecated. I still haven't
> found a suitable replacement for my (subjective) needs, but could
> probably add in some alternative behaviors like those you suggest.
> What does anyone else think about these?

Well, throwing an error or dying are conceptually similar as far as I'm
concerned. The four options I'm looking for are along the line of:

	1. bail out altogether (which I'm calling 'die')
	2. skip the offending triple, make a fuss, carry on ('warn')
	3. skip the offending triple, carry on ('skip')
	4. forcibly serialise ('force')

Whether it 'dies' by calling 'die', 'croak', 'throw' or some other
exotically named function is not important.

-- 
Toby A Inkster
<mailto:mail at tobyinkster.co.uk>
<http://tobyinkster.co.uk>


More information about the Dev mailing list