Problem
The XSD nametype and xs:string types do not restrict which characters
are valid in element names and string values. GDTF-Share enforces a
character whitelist on ChannelSet names (and likely other Name fields) that
is not documented in the XSD:
" %=*+-<>_/:'`0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz@#()";
Notably absent: . (dot/period), !, ?, ^, ~, {, }, [, ],
|, \, and non-ASCII characters.
Symptoms
The GDTF-Share fixture builder highlights ChannelSet rows in red when names
contain invalid characters (e.g. Rotate 1..100% has dots). The file can
still be saved but may cause issues in downstream tools.
Affected names (examples)
| Original (from MA2) |
Issue |
Sanitized |
Rotate 1..100% |
. invalid |
Rotate 1 100% |
Rotate -100..-1% |
. invalid |
Rotate -100 -1% |
Cycle 1..100% |
. invalid |
Cycle 1 100% |
Resolution
The XSD nametype should include a xs:pattern restriction matching the
GDTF-Share character whitelist, so validators can catch these before upload.
Discovered 2026-03-18.
Problem
The XSD
nametypeandxs:stringtypes do not restrict which charactersare valid in element names and string values. GDTF-Share enforces a
character whitelist on ChannelSet names (and likely other Name fields) that
is not documented in the XSD:
Notably absent:
.(dot/period),!,?,^,~,{,},[,],|,\, and non-ASCII characters.Symptoms
The GDTF-Share fixture builder highlights ChannelSet rows in red when names
contain invalid characters (e.g.
Rotate 1..100%has dots). The file canstill be saved but may cause issues in downstream tools.
Affected names (examples)
Rotate 1..100%.invalidRotate 1 100%Rotate -100..-1%.invalidRotate -100 -1%Cycle 1..100%.invalidCycle 1 100%Resolution
The XSD
nametypeshould include axs:patternrestriction matching theGDTF-Share character whitelist, so validators can catch these before upload.
Discovered 2026-03-18.