abbreviations of string literals

In the Syntax document we have:

"Literals of the form "abc"^^xsd:string and "abc@"^^rdf:text should be
abbreviated to "abc" whenever possible."

This seems to introduce a parsing ambiguity - when one encounters
"abc" while parsing functional syntax, one doesn't know whether the
structural specification should have a xsd:string literal or an
rdf:text literal.

In addition, this affects understandability of the reverse mapping.
As I understand it, although the function syntax is used in describing
the transformation, it is as notation for the corresponding structure.
The reverse mapping description

_:x rdf:type rdfs:Datatype .
_:x owl:oneOf T(SEQ lt1 ... ltn) .
{ n  1 }	
DataOneOf( lt1 ... ltn )

leaves literals unchanged in some sense. Suppose lt1 is a plain
literal "abc". If we interpret this as an operation on structure, it
can't be taken verbatim, as the structural specification only has
typed literals. If we take this as a rewrite to functional syntax,
then the expansion of "abc" is ambiguous, as described above.


Received on Wednesday, 27 May 2009 13:52:34 UTC