DFDL解析x9.2规范消息

时间:2015-06-19 05:14:37

标签: xml xslt xsd messagebroker dfdl

您好我有一个要求:有x9.2规范信息,例如

97xx消息的标头格式

Data Item     Field Name     Attribute
006           MSG.TYPE       4 N
001           MSG.FROM       6 CHR
015           MSG.REPLY      1 CHR
017          MSG.TRACE       6 N
002           MSG.DATE       8 N
003           MSG.TIME       4 N
004           MSG.SESSION    6 N
009           MSG.MEMBER     11 N
018           MSG.RECORD     7 N

9701 ACCESS AUTHORIZATION REQUEST
STANDARD HEADER
Data Item     Field Name     Attribute
133           MSG.HBAC       8 N
230           MSG.DISCLAIMED 1 CHAR 


I NEED TO CONVERT THIS TO A XML USING DFDL.
Sample XML

    <ROOT>
    <Header>
    <MSG.TYPE></MSG.TYPE>
    .
    .
    .
    .
    <MSG.RECORD></MSG.RECORD>
    </Header>
    <Body>
    <MSG.HBAC></MSG.HBAC>
    <MSG.DISCLAIMED></MSG.DISCLAIMED>
    </Body>
    </ROOT>

现在的问题是x9.2规范消息可以具有不同消息类型的不同字段,如上面的9701示例。

但是9702会有不同的数据项集。那么如何编写一个dfdl解析器,它可以解析所有的消息类型,无论是97xx系列还是95xx系列或任何其他x9.2规范系列。

1 个答案:

答案 0 :(得分:1)

我从未使用过这种特定格式。但是DFDL模型适应不同消息类型的可能性和选择(不确定点),并使用鉴别器或启动器来解决选择。首先阅读此link作为背景信息。然后转到here并获取实验室6的PDF。