mbeckerle commented on a change in pull request #140: TDML Runner and test 
changes for Cross Validation with IBM.
URL: https://github.com/apache/incubator-daffodil/pull/140#discussion_r235107326
 
 

 ##########
 File path: 
daffodil-test-ibm1/src/test/resources/test-suite/tresys-contributed/BC.dfdl.xsd
 ##########
 @@ -47,7 +47,7 @@
         </sequence>
         <sequence dfdl:separator="," dfdl:terminator="%NL;">
           <element name="y" type="xsd:boolean" maxOccurs="unbounded"
-            dfdl:textBooleanTrueRep="{ 1*10 }" dfdl:textBooleanFalseRep="{'a b 
c'}" />
+            dfdl:textBooleanTrueRep="{ xsd:string(1*10) }" 
dfdl:textBooleanFalseRep="{'a b c'}" />
 
 Review comment:
   Will raise for clarification in DFDL Workgroup. Whether these coercion are 
implicit or explicit isn't clear in the DFDL spec for me. 
   
   When to implicitly convert type is always a subtle thing in any language. It 
helps declutter things if simple implicit conversions are done. But if types 
are implicitly converted most of the time, then static type checking can't 
really find any errors for you, since a coercion can always be inserted. 
   
   In this particular case, I think a static error is actually a better thing. 
Why would you write 1*10 for textBooleanTrueRep? If someone writes a numeric 
expression for something that's clearly supposed to be a string, probably 
they're just making a mistake. 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to