Closed skynavga closed 5 years ago
In double checking on TTML1, I see that the original syntax for non-negative-real
, which excludes real numbers such as 0.
, is also present in TTML1 1e, 2e, and 3e, where it is used to support non-integer length values. Therefore, making this proposed change in TTML2 would effectively be an extension to TTML1 syntax, but it could be handled by adding #length-real-version-2
and adding this new designator to #length-version-2
.
Note further that, if we do not adopt the above proposals, then we need to change the schema datatype for tta:gain
and `tta:pan
from xs:decimal
to xs:string
in order to effectively detect the (now) invalid value expression 0.
. The reason for this is that if xs:decimal
is used, then the expression 0.
is interned (without error) as a BigDecimal
by JAXB, after which point it is impossible to distinguish between a valid original value of, say 0.0
, and the invalid value 0.
.
This seems to be outside the review scope for the CfC; rather than making a substantive change now during the CfC period I'd prefer to defer this to a 2nd Ed.
Deferring to consideration under ttml.next.
Removing ttml.next, leaving here for ttml2 2e processing.
The Timed Text Working Group just discussed Improve interoperability of non-negative-real and xs:decimal. ttml2#943
.
Marking this issue as a bug since the omission of support for non-negative real numbers with a lexical representation of <digit>+ "."
was an oversight (since TTML1 1e).
As presently defined in §10.3.27,
non-negative-real
includes.0
and0.0
, but does not include0.
This creates an interoperability problem with the use ofxs:decimal
[1] in the schema fortta:gain
andtta:pan
. There is no reason we should exclude0.
, so I propose we change the definition ofnon-negative-real
to the following:[1] https://www.w3.org/TR/xmlschema-2/#decimal