Uploaded image for project: 'Daffodil'
  1. Daffodil
  2. DFDL-544

MultiFileSchema: Conflicting elements across separate files (no namespaces) causes Abort

XMLWordPrintableJSON

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Normal Normal
    • 1.0.0
    • s7
    • Diagnostics
    • None

      I have 3 schemas, none of which have target namespaces. In Schema C I define an element "vagueElem" Schema B includes Schema C, and base Schema includes Schema B. Base Schema also includes Schema A, which defines its own element named "valueElem". This base schema defines a pipe-separated sequence of an element reference to "vagueElem"

      I get the following error when I attempt to use this sequence as a root:


      [info] - test_no_namespace_02 *** FAILED ***
      [info] edu.illinois.ncsa.daffodil.exceptions.Abort: Invariant broken. should only be a SchemaComponent or a DFDLDefiningAnnotation
      [info] edu.illinois.ncsa.daffodil.exceptions.Assert$.abort(Assert.scala:85)
      [info] edu.illinois.ncsa.daffodil.exceptions.Assert$.invariantFailed(Assert.scala:122)
      [info] edu.illinois.ncsa.daffodil.dsom.Schema$$anonfun$noneOrOne$1.apply(SchemaComponent.scala:1154)
      [info] edu.illinois.ncsa.daffodil.dsom.Schema$$anonfun$noneOrOne$1.apply(SchemaComponent.scala:1150)
      [info] at edu.illinois.ncsa.daffodil.exceptions.Assert$.abort(Assert.scala:85)
      [info] at edu.illinois.ncsa.daffodil.exceptions.Assert$.invariantFailed(Assert.scala:122)
      [info] at edu.illinois.ncsa.daffodil.dsom.Schema$$anonfun$noneOrOne$1.apply(SchemaComponent.scala:1154)
      [info] at edu.illinois.ncsa.daffodil.dsom.Schema$$anonfun$noneOrOne$1.apply(SchemaComponent.scala:1150)
      [info] at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:233)
      [info] at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:233)
      [info] at scala.collection.LinearSeqOptimized$class.foreach(LinearSeqOptimized.scala:59)
      [info] at scala.collection.immutable.List.foreach(List.scala:76)
      [info] at scala.collection.TraversableLike$class.map(TraversableLike.scala:233)
      [info] at scala.collection.immutable.List.map(List.scala:76)

      The test is no_namespace_02 and uses the following files:

      1. new file: daffodil-test/src/test/resources/edu/illinois/ncsa/daffodil/section06/namespaces/multi_A_05_nons.dfdl.xsd
      2. new file: daffodil-test/src/test/resources/edu/illinois/ncsa/daffodil/section06/namespaces/multi_B_05_nons.dfdl.xsd
      3. new file: daffodil-test/src/test/resources/edu/illinois/ncsa/daffodil/section06/namespaces/multi_C_05_nons.dfdl.xsd
      4. new file: daffodil-test/src/test/resources/edu/illinois/ncsa/daffodil/section06/namespaces/multi_base_05_nons.dfdl.xsd
      5. modified: daffodil-test/src/test/resources/edu/illinois/ncsa/daffodil/section06/namespaces/namespaces.tdml
      6. modified: daffodil-test/src/test/scala-debug/edu/illinois/ncsa/daffodil/section06/namespaces/TestNamespacesDebug.scala
      7. modified: daffodil-test/src/test/scala/edu/illinois/ncsa/daffodil/section06/namespaces/TestNamespaces.scala

              jchab Jessie Chab
              jchab Jessie Chab
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved:

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - Not Specified
                  Not Specified
                  Logged:
                  Time Spent - 1 minute
                  1m