N3 model in Trine
Gregory Williams
greg at evilfunhouse.com
Thu Jun 10 00:41:58 CEST 2010
On Jun 9, 2010, at 5:14 PM, Toby Inkster wrote:
> I'd probably implement them as a subclass of RDF::Trine::Node::Literal.
> They'd have pretty much no overlap with quads.
>
> The following N3:
>
> { ?foo foaf:knows ?bar . }
> => { ?foo a foaf:Person . } .
>
> Would be represented as a single statement in the model. The predicate
> would be log:implies and the subject and object would be graph
> literals.
Ah, interesting. I hadn't considered that.
> This is because, say:
>
> { <#x> a foaf:Person . } a rdfg:Graph .
>
> Does not imply:
>
> <#x> a foaf:Person .
>
> So you wouldn't actually want the latter in the model.
I had always thought about implementing it with the separation happening at the named-graphs level. That is to say that the triple wouldn't be implied by the statement *in the default graph*, but it would be loaded into its own named graph. Your approach sounds much easier, though I'm not sure about the performance implications.
.greg
More information about the Dev
mailing list