- From: Andy Seaborne <andy.seaborne@epimorphics.com>
- Date: Thu, 29 Jul 2010 18:40:20 +0100
- To: Paul Gearon <gearon@ieee.org>
- CC: Mischa Tuffield <mischa.tuffield@garlik.com>, Damian Steer <pldms@mac.com>, Semantic Web <semantic-web@w3.org>
On 29/07/2010 6:22 PM, Paul Gearon wrote:
> On Thu, Jul 29, 2010 at 1:13 PM, Paul Gearon<gearon@ieee.org> wrote:
>
> <snip/>
>
>> In a hack similar to the one I mentioned with FILTER, but you can
always say:
>>
>> insert { graph<http://example.com/graph> {
>> ?u foo:Property "something" } }
>> { { select IRI("http://example.com/mylamefoafdocument`uri") as ?u {} } }
but it still isn't a legal IRI.
There are two levels here:
The syntax, that says:
IRI_REF ::= '<' ([^<>"{}|^`\]-[#x00-#x20])* '>'
but also the syntax rules in the URI RFC (now RFC 3986) including any
scheme-specific rules.
Last time, IIRC DAWG decided not to copy over the full grammar for IRIs,
but to put in a more general but smaller pattern.
For example, "[" "]" are only legal as delimiters for IPv6 addresses in
the authority part.
Andy
>>
>> But then I realized that this uses a non-standard constructor for
>> IRIs! I should raise this as a possible function for SPARQL 1.1.
>
> I just realized that this *is* valid SPARQL 1.1. The documentation for
> IRI() isn't defined everywhere yet (it has its own section, but
> doesn't yet appear in the tables).
>
> BTW, I'm not saying that this is the solution. (All those curly braces
> give me the shivers). But it is *a* solution. :-)
>
> Regards,
> Paul Gearon
>
Received on Thursday, 29 July 2010 17:41:10 UTC