(Discussion started on atom-syntax, but this is a more general RELAX
NG issue, so cross-posting to rng-users.)
On Mar 19, 2006, at 09:33, Martin Duerst wrote:
At 18:49 06/03/17, Bjoern Hoehrmann wrote:
>
>* Martin Duerst wrote:
>>When looking with a microscope, you will find some little
>>differences, because xs:anyURI was described before the IRI
>>spec (RFC 3987) was approved. These differences are:
>>
>>1) xs:aryURI also allows spaces and a few other ASCII characters
>> that are not allowed in URIs nor in IRIs (but the IRI spec has
>> an escape hatch for such cases).
>>2) The IRI spec contains many more details than the xs:anyURI
>> description, in particular also some requirements re.
>> normalization. However, some of the requirements in this
>> area of the IRI spec may be lowered or removed in the future
>> because we have received feedback from implementers that
>> there are difficulties to implement these.
>
>I agree with Martin that it would be incorrect to use xsd:anyURI
here.
Sorry, but I never said that it would be incorrect to use
xsd:anyURI. I personally think that it should be okay to
use xsd:anyURI. The differences are microscopic, and they should
become even smaller, or hopefully go away completely, over time.
I need datatypes for IRIs in general (relative, absolute or just
fragment identifiers) and for absolute IRIs (possibly with a fragment
id) in a RELAX NG schema.
Is it really the best practice to use xsd:anyURI and sweep the
discrepancies under the rug in the hope that future definitions of
xsd:anyURI change the meaning of the schema later? Can xsd:anyURI be
augmented with a regexp pattern to restrict "spaces and a few other
ASCII characters" in such a way that the resulting datatype
restriction matches the definition of IRI? Has anyone implemented a
strictly correct IRI datatype in a Java datatype library (for Jing
and MSV)?
--
Henri Sivonen
[EMAIL PROTECTED]
http://hsivonen.iki.fi/