Possible issues with N3 grammar

Hello everyone,

Upon revisiting the N3 grammar, I found some potential issues / ambiguities:


- What do you expect the scope of @prefix, @base within these graph terms to be? E.g., 
@prefix : <http://example.org/> .

:a :b {
	@prefix : <http://anotherexample.org/> .
  	:d :e :f .
} .

:g :h :i .

What should the namespace for :g, :h and :i  be? (eye thinks it's the second namespace; jen3 thinks it's the first).
https://editor.notation3.org/s/rXp1ZqnM 


- According to the grammar <https://w3c.github.io/N3/spec/#grammar>, collections can include any expression; so, also resource paths and (blank node / iri) property lists.

Admittedly, I never thought about this much, but I think that only the following should be allowed: iri | blankNode | quickVar | collection | literal | formula.
Both eye and jen3 generate the same for the following (adding separate triples outside of the collection):

@prefix : <http://example.org/> .
:a :b ( :x!:y [ :b 1 ; :c 2 ] :d ) .

https://editor.notation3.org/s/zzqFtaaa 

But is it what people would expect? Or is it useful as a kind of "shorthand"?



William

Received on Sunday, 9 June 2024 21:42:43 UTC