[x3d-public] Mantis 1320: relax requirement for quoted single-string value in MFString array

Michalis Kamburelis michalis.kambi at gmail.com
Sat Jul 4 15:11:41 PDT 2020

This was discussed in the past, as far as I remember. I don't think it's a
good idea to add the proposed exception to the spec (to treat MFString
content, without additional quotes inside, as valid, and just treat it as a
single string).

MFString is encoded differently than SFString in XML encoding. Tools and
authors should be aware of it. (And we should explain it precisely in the

- In MFString, you have to surround each part by additional quotes,
- The backslashes interpretation is different in MFString ("backslashes are
NOT used for escaping inside SFString", but they are used in MFString).

Adding a special rule, to allow to treat such (currently incorrect)
MFString content as valid, would add to the confusion IMHO. It is already
confusing because  we have not applied, as far as I know, the spec
clarification that we wrote on a few years ago -- it is on
. But at least that proposed clarification is consistent right now with
what existing browsers are doing.


sob., 4 lip 2020 o 22:57 Don Brutzman <brutzman at nps.edu> napisał(a):

> * Mantis 1320: relax requirement for quoted single-string value in
> MFString array
>    https://www.web3d.org/member-only/mantis/view.php?id=1320
>    Specification: 19776-1 (X3D XML Encoding)
> A superfluous, confusing and error prone requirement in XML Encoding is to
> always require quotation marks around every string value, including when
> using a singleton string as part of an MFString array.
> This requirement can be relaxed without ambiguity, provides reduced
> difficulty for converters and parsers, and has no backwards-compatibility
> issues for model content. Relaxing this requirement also makes MFString
> more compatible with SFString.
> Suggested specification prose addition:
> * "Unquoted MFString values are treated as a singleton SFString value."
> Corresponding prose removal:
> ================
> NOTE The construct "string3" is not a valid instance of an MFString. Such
> an MFString would be properly specified as '"string3"'
> ================
> TODO need to check other encodings and language bindings to ensure this
> relaxation is similarly applied.
> Specification reference:
> * X3D XML encoding, 5 Encoding of fields, 5.15 SFString and MFString
> https://www.web3d.org/documents/specifications/19776-1/V3.3/Part01/EncodingOfFields.html#SFString
> [This long-standing issue may have a prior Mantis entry, but I was not
> able to find it.  Cross-reference issues welcome.]
> all the best, Don
> --
> Don Brutzman  Naval Postgraduate School, Code USW/Br
> brutzman at nps.edu
> Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149
> X3D graphics, virtual worlds, navy robotics
> http://faculty.nps.edu/brutzman
> _______________________________________________
> x3d-public mailing list
> x3d-public at web3d.org
> http://web3d.org/mailman/listinfo/x3d-public_web3d.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20200705/33d590c6/attachment.html>

More information about the x3d-public mailing list