You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@daffodil.apache.org by "Mike Beckerle (Jira)" <ji...@apache.org> on 2020/05/01 15:29:00 UTC

[jira] [Commented] (DAFFODIL-1894) NoSuchElementException when getting namedTypes in union restrictions

    [ https://issues.apache.org/jira/browse/DAFFODIL-1894?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17097443#comment-17097443 ] 

Mike Beckerle commented on DAFFODIL-1894:
-----------------------------------------

An XSD file that has no binding for the DFDL namespace is supposed to be ignored by Daffodil.

This feature was added to Daffodil and the DFDL spec to allow DFDL schemas to include/import XSDs for other *annotation* languages, those annotations are described by regular XML schemas, not DFDL schemas. 

If the *only* file fed to Daffodil is without a DFDL namespace it should be an SDE indicating it is not a DFDL schema because it has no binding for the DFDL namespace.

If the file has a DFDL namespace binding, but just contains things that aren't part of DFDL's subset of XML schema, that's also an SDE, but should give a diagnostic to that effect. 

Daffodil should validate the incoming DFDL schema against the XML schema for DFDL schemas - maybe this isn't happening anymore?
There is another JIRA ticket about bug in the XML schema for DFDL schemas.

> NoSuchElementException when getting namedTypes in union restrictions
> --------------------------------------------------------------------
>
>                 Key: DAFFODIL-1894
>                 URL: https://issues.apache.org/jira/browse/DAFFODIL-1894
>             Project: Daffodil
>          Issue Type: Bug
>          Components: Front End
>    Affects Versions: 2.1.0
>            Reporter: Steve Lawrence
>            Priority: Major
>
> Accidentally trying to compile the iCalendar.xsd schema (note, not the iCalendar.dfdl.xsd schema) results in the following exception. Note that this schema does not have any DFDL properties, so its a little surprising compilation got so far. Unclear if this error is related to not have DFDL properties or something else.
> {code:java}
> java.util.NoSuchElementException: None.get
>         at scala.None$.get(Option.scala:347)
>         at scala.None$.get(Option.scala:345)
>         at edu.illinois.ncsa.daffodil.dsom.Union$$anonfun$namedTypes$1.apply(RestrictionUnion.scala:229)
>         at edu.illinois.ncsa.daffodil.dsom.Union$$anonfun$namedTypes$1.apply(RestrictionUnion.scala:229)
>         at scala.collection.immutable.List.map(List.scala:273)
>         at edu.illinois.ncsa.daffodil.dsom.Union.namedTypes$lzycompute(RestrictionUnion.scala:228)
>         at edu.illinois.ncsa.daffodil.dsom.Union.namedTypes(RestrictionUnion.scala:228)
>         at edu.illinois.ncsa.daffodil.dsom.Union.directMemberTypes$lzycompute(RestrictionUnion.scala:231)
>         at edu.illinois.ncsa.daffodil.dsom.Union.directMemberTypes(RestrictionUnion.scala:231)
>         at edu.illinois.ncsa.daffodil.dsom.Union.unionMemberTypes$lzycompute(RestrictionUnion.scala:234)
>         at edu.illinois.ncsa.daffodil.dsom.Union.unionMemberTypes(RestrictionUnion.scala:233)
>         at edu.illinois.ncsa.daffodil.dsom.Union.primType$lzycompute(RestrictionUnion.scala:196)
>         at edu.illinois.ncsa.daffodil.dsom.Union.primType(RestrictionUnion.scala:195)
>         at edu.illinois.ncsa.daffodil.dsom.SimpleTypeBase$$anonfun$primType$2$$anonfun$apply$1.apply(SimpleTypes.scala:61)
>         at edu.illinois.ncsa.daffodil.dsom.SimpleTypeBase$$anonfun$primType$2$$anonfun$apply$1.apply(SimpleTypes.scala:61)
>         at edu.illinois.ncsa.daffodil.dsom.SimpleTypeBase$$anonfun$primType$2.apply(SimpleTypes.scala:61)
>         at edu.illinois.ncsa.daffodil.dsom.SimpleTypeBase$$anonfun$primType$2.apply(SimpleTypes.scala:61)
>         at edu.illinois.ncsa.daffodil.dsom.SimpleTypeBase$class.primType(SimpleTypes.scala:61)
>         at edu.illinois.ncsa.daffodil.dsom.SimpleTypeDefBase.primType(SimpleTypes.scala:135)
>         at edu.illinois.ncsa.daffodil.dsom.SimpleTypeDefBase$$anonfun$simpleTypeRuntimeData$7.apply(SimpleTypes.scala:193)
>         at edu.illinois.ncsa.daffodil.dsom.SimpleTypeDefBase$$anonfun$simpleTypeRuntimeData$7.apply(SimpleTypes.scala:193)
>         at edu.illinois.ncsa.daffodil.processors.SimpleTypeRuntimeData.primType$lzycompute(RuntimeData.scala:270)
>         at edu.illinois.ncsa.daffodil.processors.SimpleTypeRuntimeData.primType(RuntimeData.scala:270)
>         at edu.illinois.ncsa.daffodil.processors.SimpleTypeRuntimeData.preSerialization(RuntimeData.scala:286)
>         at edu.illinois.ncsa.daffodil.dsom.SimpleTypeDefBase$$anonfun$1.apply$mcV$sp(SimpleTypes.scala:142)
>         at edu.illinois.ncsa.daffodil.dsom.SimpleTypeDefBase$$anonfun$1.apply(SimpleTypes.scala:142)
>         at edu.illinois.ncsa.daffodil.dsom.SimpleTypeDefBase$$anonfun$1.apply(SimpleTypes.scala:142)
>         at edu.illinois.ncsa.daffodil.oolag.OOLAG$OOLAGValue.liftedTree1$1(OOLAG.scala:600)
>         at edu.illinois.ncsa.daffodil.oolag.OOLAG$OOLAGValue.value$lzycompute(OOLAG.scala:598)
>         at edu.illinois.ncsa.daffodil.oolag.OOLAG$OOLAGValue.value(OOLAG.scala:596)
>         at edu.illinois.ncsa.daffodil.oolag.OOLAG$OOLAGValue.valueAsAny(OOLAG.scala:594)
>         at edu.illinois.ncsa.daffodil.oolag.OOLAG$OOLAGHost$$anonfun$checkErrors$2.apply$mcV$sp(OOLAG.scala:302)
>         at edu.illinois.ncsa.daffodil.oolag.OOLAG$OOLAGHost$$anonfun$checkErrors$2.apply(OOLAG.scala:302)
>         at edu.illinois.ncsa.daffodil.oolag.OOLAG$OOLAGHost$$anonfun$checkErrors$2.apply(OOLAG.scala:302)
>         at edu.illinois.ncsa.daffodil.oolag.OOLAG$.keepGoing(OOLAG.scala:75)
>         at edu.illinois.ncsa.daffodil.oolag.OOLAG$OOLAGHost$class.checkErrors(OOLAG.scala:302)
>         at edu.illinois.ncsa.daffodil.oolag.OOLAG$OOLAGHost$class.isError(OOLAG.scala:361)
>         at edu.illinois.ncsa.daffodil.compiler.ProcessorFactory.edu$illinois$ncsa$daffodil$compiler$ProcessorFactory$$super$isError(Compiler.scala:151)
>         at edu.illinois.ncsa.daffodil.compiler.ProcessorFactory$$anonfun$isError$1$$anonfun$apply$mcZ$sp$2.apply$mcZ$sp(Compiler.scala:151)
>         at edu.illinois.ncsa.daffodil.compiler.ProcessorFactory$$anonfun$isError$1$$anonfun$apply$mcZ$sp$2.apply(Compiler.scala:142)
>         at edu.illinois.ncsa.daffodil.compiler.ProcessorFactory$$anonfun$isError$1$$anonfun$apply$mcZ$sp$2.apply(Compiler.scala:142)
>         at edu.illinois.ncsa.daffodil.oolag.OOLAG$.keepGoing(OOLAG.scala:75)
>         at edu.illinois.ncsa.daffodil.compiler.ProcessorFactory$$anonfun$isError$1.apply$mcZ$sp(Compiler.scala:142)
>         at edu.illinois.ncsa.daffodil.compiler.ProcessorFactory$$anonfun$isError$1.apply(Compiler.scala:142)
>         at edu.illinois.ncsa.daffodil.compiler.ProcessorFactory$$anonfun$isError$1.apply(Compiler.scala:142)
>         at scala.util.DynamicVariable.withValue(DynamicVariable.scala:58)
>         at edu.illinois.ncsa.daffodil.ExecutionMode$$anonfun$usingCompilerMode$1.apply(ExecutionMode.scala:79)
>         at edu.illinois.ncsa.daffodil.ExecutionMode$$anonfun$usingCompilerMode$1.apply(ExecutionMode.scala:79)
>         at edu.illinois.ncsa.daffodil.compiler.ProcessorFactory.isError(Compiler.scala:142)
>         at edu.illinois.ncsa.daffodil.compiler.Compiler.compileSource(Compiler.scala:333)
>         at edu.illinois.ncsa.daffodil.Main$$anonfun$71.apply(Main.scala:727)
>         at edu.illinois.ncsa.daffodil.Main$$anonfun$71.apply(Main.scala:726)
>         at edu.illinois.ncsa.daffodil.util.Timer$.getTimeResult(Timer.scala:91)
>         at edu.illinois.ncsa.daffodil.util.Timer$.getResult(Timer.scala:50)
>         at edu.illinois.ncsa.daffodil.Main$.createProcessorFromSchema(Main.scala:726)
>         at edu.illinois.ncsa.daffodil.Main$.run(Main.scala:839)
>         at edu.illinois.ncsa.daffodil.Main$.main(Main.scala:1312)
>         at edu.illinois.ncsa.daffodil.Main.main(Main.scala){code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)