简体   繁体   English

验证DataPower中的一部分请求

[英]Validating a part of request in DataPower

I have WSDL which can be used to validate complete XML and part of XMLs 我有WSDL,可用于验证完整的XML和部分XML

MY XML : 我的XML:

<Request>
     <Part> .. </part>
     <Part> .. </part>
     <Part> .. </part>
     <Part> .. </part>
     <Part> .. </part>
     <Part> .. </part>
     <Part> .. </part>
</Request>

I have configured validation action which is validating complete and throwing as one or more part is having invalid data. 我已经配置了验证操作,该操作将验证完成并抛出一个或多个部分包含无效数据的情况。

Requirement is : I have to validate only the part in the above request and remove invalid part before sending to backend. 要求是: 在发送到后端之前,我只需要验证上述请求中的部分并删除无效的部分。

Any help?? 有帮助吗?

This can be done by using extension element / function in the XSLT. 这可以通过使用XSLT中的扩展元素/功能来完成。

Skeleton: 骨架:

<xsl:template match=Request>
<xsl:copy>
<xsl:for-each select="Part">
 <xsl:if test="dp:schema-validate($schema,.) !=''">
   <xsl:copy-of select="."/> 
 </xsl:if>
</xsl:for-each>

schema-validate() : Performs a schema validation. schema-validate():执行模式验证。
Namespace declaration : xmlns:dp="http://www.datapower.com/extensions" 命名空间声明:xmlns:dp =“ http://www.datapower.com/extensions”

Syntax :dp:schema-validate(schema, nodeset) 语法:dp:schema-validate(schema,nodeset)

Parameters : schema : (xs:string) Identifies the XSD schema to perform the validation. 参数:schema:(xs:string)标识要执行验证的XSD模式。 nodeset:(xs:node-set) Identifies the node set that contains the XML content to validate. nodeset:(xs:node-set)标识包含要验证的XML内容的节点集。 All arguments are passed as XPath expressions. 所有参数都作为XPath表达式传递。

Results :the validated node set. 结果:经过验证的节点集。

Please refer to this link for more info on Extension elements and Functions. 请参阅此链接以获取有关扩展元素和功能的更多信息。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM