分析模式是 schemaInfo 记录上的一个属性,具有两种模式:速度和复杂性。 可以在 BizTalk 架构编辑器中配置分析器优化属性。
示例:
<b:schemaInfo count_positions_by_byte="false" standard="Flat File"
root_reference="document" parser_optimization="complexity" />.
在快速模式下,解析器会尝试将数据适配到流中。 例如,给定以下架构。
<schema>
Root ("," prefix)
Field1 opt
Field2 opt
Field3 opt
Field4 opt
Record ("," infix)
Field5
Field6
</schema>
和输入消息。
,1,2,3,4
通过速度模式获取以下 XML 文档。
<Root>
<Field1>1</Field1>
<Field2>2</Field2>
<Field3>3</Field3>
<Field4>4</Field4>
</Root>
使用复杂性模式时,同一架构将生成以下输出。
<Root>
<Field1>1</Field1>
<Field2>2</Field2>
<Record>
<Field5>3</Field5>
<Field6>4</Field6>
</Record>
</Root>
在复杂性模式下,平面文件分析引擎同时使用自上而下和自下而上分析,并尝试更准确地适应数据。 在速度模式下,解析器尝试在数据流中数据出现时立即进行适配。
如果您有一些包含必需元素的可选元素,例如。
<schema>
Root
Record1 (required)
Record2 (optional)
Record3 (required)
必须使用复杂模式来正确解析数据,因为分析器在内部以某种方式表示架构。
<schema>
Root
Record1 (required)
<sequence> (optional)
Record2 (required)
Record3 (required)