管理具有一些相似性的多个XML

时间:2011-11-22 11:04:24

标签: xml

这可能是一个简单的问题,但看起来我可能正在以更难的方式感知。 我需要设计一个框架来自动化应用程序。这是一个简单的应用程序,它需要一个请求,处理它,并发送响应。 请求类似于带有一些参数的HTTP get命令。响应是XML。

根据请求的类型及其参数,应用程序准备响应XML。以下是一些例子

1)对于带有param1,param2的requestA,响应XML是                   

<response type="B" ....>
    <subresponse .... />
</response>

<response type="C" ....>
    <subresponse .... />
</response>

<response type="D" ....>
    <subresponse .... />
</response> 

2)对于带有param1,param2的requestB,响应XML是                   

<response type="C" ....>
    <subresponse .... />
</response>

3)对于带有param1,param2的requestC,响应XML是                   

<response type="C" ....>
    <subresponse .... />
</response>

<response type="B" ....>
    <subresponse .... />
</response>

正如我们所看到的,响应始终遵循以下模式。

1)始终输出根xml标记

2)root的孩子有标签响应。

3)儿童可以通过类型属性(A,B,C等)进行区分。

对于自动化,我们包括的主要验证是

a)验证这些XML

b)内容验证

我建议做

i)针对XSD进行XML验证以验证a)

ii)使用xPath验证内容b)

我们有50个这样的响应类型,根据请求,它将被发送到客户端。

如果还有其他更好的方法,请告诉我,以便我能有效地管理此框架以采用未来的更改。

1 个答案:

答案 0 :(得分:2)

验证XML,然后使用Xpath声音检查其内容,就像检查XML的合理方法一样。关于后者,您可以将XML提供到适当的XSLT样式表中,以检查不符合或意外的结构并返回您选择的有意义的错误 - 或者确实纠正XSLT中的常见错误,并将修改后的XML输出发送到客户端。除此之外,了解您正在使用的工具会很有帮助,但我希望能回答您关于您正在考虑的方法的问题。