- From: Henry Story <henry.story@bblfish.net>
- Date: Mon, 16 Jan 2012 18:15:26 +0100
- To: www-xml-schema-comments@w3.org
Dear XML Schema working Group, From reading the latest XML Schema spec (which is a big improvement over the previous one!) it seems that it is not possible to put white spaces inside an xsd:hexBinary. I read the text here http://www.w3.org/TR/xmlschema11-2/#hexBinary "[the lexical space of] hexBinary is the same as that recognized by the regular expression '([0-9a-fA-F]{2})*'." I was looking for confirmation that that is the correct reading first of all. There is a white space collapse facet which I suppose is meant to remove leading and trailing spaces, but not spaces inside the number. Then secondly I was looking to see if there were reasons this was done like this. After all a hexBinary could and usually is a very very long string, and so it is likely to be difficult to read if it cannot be cut up a little bit. It is also very likely that white spaces should enter into such a long number by mistake as people copy and paste information from one system to another, in what could be normal human processing tasks. I imagine this rule would make sense if it were possible in some XML formats to use the xsd:hexBinary datatype and have it be followed by a set of hexBinaries each separated by a space. But in formats that use this datatype that are RDF driven, such as RDF/XML, Turtle, RDFa and so on, this is not the case. Those formats require there to only be 1 binary, so there is really nothing that the spaces can separate. To help put some context on this the WebID Incubator group requires users who need a global login to publish their public key at their WebID Profile (and traditionally all certificates like to do this using hex encoded formats). The profile is described here http://webid.info/spec or the latest editor's draft https://dvcs.w3.org/hg/WebID/raw-file/tip/spec/index-respec.html#turtle The Turtle example in the editor's draft gives as example the following ----------8<---------------------------------------------- @prefix cert: <http://www.w3.org/ns/auth/cert#> . @prefix xsd: <http://www.w3.org/2001/XMLSchema#> . @prefix foaf: <http://xmlns.com/foaf/0.1/> . @prefix rdfs: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . <#me> a foaf:Person; foaf:name "Bob"; foaf:knows <https://example.edu/p/Alois#MSc>; foaf:weblog <http://bob.example/blog>; cert:key [ a cert:RSAPublicKey; rdfs:label "made on 23 November 2011 on my laptop"; cert:modulus "cb24ed85d64d794b69c701c186acc059501e856000f661c93204d8380e07191c5c8b368d2ac32a428acb970398664368dc2a867320220f755e99ca2eecdae62e8d15fb58e1b76ae59cb7ace8838394d59e7250b449176e51a494951a1c366c6217d8768d682dde78dd4d55e613f8839cf275d4c8403743e7862601f3c49a6366e12bb8f498262c3c77de19bce40b32f89ae62c3780f5b6275be337e2b3153ae2ba72a9975ae71ab724649497066b660fcf774b7543d980952d2e8586200eda4158b014e75465d91ecf93efc7ac170c11fc7246fc6ded79c37780000ac4e079f671fd4f207ad770809e0e2d7b0ef5493befe73544d8e1be3dddb52455c61391a1"^^xsd:hexBinary; cert:exponent 65537 ; ] . ----------8<---------------------------------------------- But it just seems quite likely that people will end up putting white spaces in there somewhere. Should parsers reject those immediately? And if so why? Social Web Architect http://bblfish.net/
Received on Monday, 16 January 2012 17:16:06 UTC