顺序问题!
在做平面文件向XML文件转换的时候,已经把纪录的Group Order Type设置成Sequence了,但是转转换出来的结果并没有完全按Shcema定义的顺序!情景如下!
平面文件里有一行纪录,这行纪录中有一个复合数据项,这个复合数据项中最多可以有五个元素(e1:e2:e3:e4:e5),每个元素都是可选的(也就是每个元素的最小出现次数都为0),我用一个平面文件做了测试,这个平面文件对应上面所提的那个复合数据项中只出现了四个元素(e1:e2:e3:e4),按Schema中定义的顺序,生成的XML应为,
<Record>
<E1>e1</E1>
<E2>e2</E2>
<E3>e3</E3>
<E4>e4</E4>
<Record>
但是实际转出来的结果确是:
<Record>
<E1>e1</E1>
<E2>e2</E2>
<E3>e3</E3>
<E5>e4</E5>
<Record>
数据e4跑到E5那边去了!
而<E4>却没转出来!
所有的元素的最小出现次数已经设成0了,Group Order Type 也已经设成sequence了
怎么会这样呢?其它节点也出现了这个情况,也就是说一个纪录中的结点后面几个元素是可选的情况下,要是实际的平面文件中只出现了其中几个,就会导致倒数第二个元素写到最后一个元素的情况,也就是说优先了最后一个元素!
有谁碰到过类似的情况吗?赐教!!!