You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@daffodil.apache.org by "Sloane, Brandon" <bs...@tresys.com> on 2019/04/04 21:22:48 UTC
Errors in existing test schemas
While working on adding enum support, I seem to have broken a large numbers of existing tests. While investigating, I ran into the following type definition:
4218 <xs:simpleType name="stTotalDigits_1">
4219 <xs:restriction base="xs:integer">
4220 <xs:maxLength value="1" />
4221 </xs:restriction>
4222 </xs:simpleType>
in section05/facets/Facets.tdml
Which is triggering an error:
Schema Definition Error: Facets minLength and maxLength are not allowed on types derived from type Integer.
They are allowed only on typed derived from string and hexBinary.
Schema context: element reference ex:stTotalDigits_1 Location line 1 in file:/tmp/TestFacets7184668231695540065.dfdl.xsd
Section 5.2 of the DFDL spec seems to indicate that the schema is wrong and the error is correct. Further, these types appear to not be used by anything, which is likely why this error was not surfacing before. My update involve resolving all globalSimpleTypes, regardless of if they are actually used, which is likely why I am not seeing this type fail. In this case, I assume there is no problem in removing unused broken types?
Brandon T. Sloane
Associate, Services
bsloane@tresys.com | tresys.com
Re: Errors in existing test schemas
Posted by "Beckerle, Mike" <mb...@tresys.com>.
Correct with one caveat.
If the types are unused then sure, delete.
But could they be illegal like this on purpose for negative tests checking for those diagnostics? If those diagnostics aren't being captured by oolag and saved then that could cause the tests to be failing now.
Get Outlook for Android<https://aka.ms/ghei36>
________________________________
From: Sloane, Brandon <bs...@tresys.com>
Sent: Thursday, April 4, 2019 5:22:48 PM
To: dev@daffodil.apache.org
Subject: Errors in existing test schemas
While working on adding enum support, I seem to have broken a large numbers of existing tests. While investigating, I ran into the following type definition:
4218 <xs:simpleType name="stTotalDigits_1">
4219 <xs:restriction base="xs:integer">
4220 <xs:maxLength value="1" />
4221 </xs:restriction>
4222 </xs:simpleType>
in section05/facets/Facets.tdml
Which is triggering an error:
Schema Definition Error: Facets minLength and maxLength are not allowed on types derived from type Integer.
They are allowed only on typed derived from string and hexBinary.
Schema context: element reference ex:stTotalDigits_1 Location line 1 in file:/tmp/TestFacets7184668231695540065.dfdl.xsd
Section 5.2 of the DFDL spec seems to indicate that the schema is wrong and the error is correct. Further, these types appear to not be used by anything, which is likely why this error was not surfacing before. My update involve resolving all globalSimpleTypes, regardless of if they are actually used, which is likely why I am not seeing this type fail. In this case, I assume there is no problem in removing unused broken types?
Brandon T. Sloane
Associate, Services
bsloane@tresys.com | tresys.com