我有一个带声明的XML文档
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.008.001.04" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:iso:std:iso:20022:tech:xsd:pain.008.001.04 file://BE-FILE01/tverschu$/SR%20(Standards%20Release)/SR2013/ISO/Payments%20Initiation/SR2013_MX_Schemas_PaymentsInitiation/pain.008.001.04.xsd">
实际上我想在XSLT trasnfromation中使用XPath(1.0)来获取xmlns
命名空间属性或xsi:schemaLocation
attrubite的内容,这样我就可以删除/重新创建名称一个xsd文件。
使用:
/*/namespace::*
给了我
HTTP&GT; // wwww.w3.org/XML/1998/Namespace
但无论我尝试什么,我似乎都无法获得这些属性的实际内容,任何想法?
答案 0 :(得分:0)
您应该可以使用@schemaLocation
来查询/*/@xsi:schemaLocation
。
xmlns
“attributes”是名称空间声明,而不是属性。你不能这样查询它们。 /*/namespace::*
对我来说完全没问题。 /*
是否在查询<Document/>
代码? xml
命名空间总是可以设置,您检查所有返回的值吗?