- From: Abel Braaksma <abel.braaksma@xs4all.nl>
- Date: Fri, 24 Jun 2016 17:04:08 +0200
- To: "'C. M. Sperberg-McQueen'" <cmsmcq@blackmesatech.com>, "'Public Joint XSLT XQuery XPath'" <public-xsl-query@w3.org>
- Message-ID: <11e901d1ce29$a8f95ab0$faec1010$@xs4all.nl>
> I think they are equivalent and should both cancel out spaces and contained
> "{" and "}", but the first correctly disallows the curlies according to all four
> validators, the second incorrectly disallows them. Both correctly refuse
> spaces. It's off-topic, but I wonder whether I made a mistake here or
> whether you'd agree these are indeed equivalent (the base-type is never
> directly used).
Please disregard my remark on the conflicting equivalence at the bottom, I incorrectly escaped the curlies which led to perceived validator-dependent behavior (which is still surprising, but that's another topic).
value="Q\{[^\s\{\}]*\}[^:]+"
Should be:
value="Q\{[^\s{}]*\}[^:]+"
This is fixed in attached XSD as a proposed updated version. By en large it has the same structure as MSMcQ's proposal, it essentially fixes the whitespace-issue and the enums issue. The updated definitions, aside from the updated enums, are now:
<!--* base EQ name, Q{uri}ncname *-->
<xs:simpleType name="EQName-Base">
<xs:restriction base="xs:token">
<xs:pattern value="Q\{[^\s{}]*\}[^:]+"/>
<xs:whiteSpace value="collapse"/>
</xs:restriction>
</xs:simpleType>
<!--* restricts ncname part to start with a start-char *-->
<xs:simpleType name="EQName">
<xs:restriction base="output:EQName-Base">
<xs:pattern value="Q\{.*\}[\i][\c]*"/>
<xs:whiteSpace value="collapse"/>
</xs:restriction>
</xs:simpleType>
<!--* non-empty URI part *-->
<xs:simpleType name="Qualified-EQName">
<xs:restriction base="output:EQName">
<xs:pattern value="Q\{\S+\}.*"/>
</xs:restriction>
</xs:simpleType>
Cheers,
Abel
Attachments
- application/xml attachment: serialization-parameters-schema-2.xsd
Received on Friday, 24 June 2016 15:04:49 UTC