Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml 在OSB项目中使用Xquery查找属性(使用eclipse)_Xml_Eclipse_Xquery_Osb - Fatal编程技术网

Xml 在OSB项目中使用Xquery查找属性(使用eclipse)

Xml 在OSB项目中使用Xquery查找属性(使用eclipse),xml,eclipse,xquery,osb,Xml,Eclipse,Xquery,Osb,这是Eclipse中的一个OSB项目 在一长串OSB进程的某个地方,我有以下XML片段,存储在$xdata中: <RECORDS xmlns="url1" xmlns:xsi="url2" xmlns:schemaLocation="url3" ver="v7"> ... </RECORDS> (我在Assign对话框的名称空间部分创建了一个名为occ的名称空间url3。) 赋值的目的当然是捕获“ver”属性 然而,它什么也得不到,结果是即使$xdata/occ:REC

这是Eclipse中的一个OSB项目

在一长串OSB进程的某个地方,我有以下XML片段,存储在$xdata中:

<RECORDS xmlns="url1" xmlns:xsi="url2" xmlns:schemaLocation="url3" ver="v7">
...
</RECORDS>
(我在Assign对话框的名称空间部分创建了一个名为occ的名称空间url3。) 赋值的目的当然是捕获“ver”属性

然而,它什么也得不到,结果是即使
$xdata/occ:RECORDS
也不起作用,它没有给XML的RECORDS节点任何东西。 唯一正确的部分是$xdata,它提供了XML内容,我检查了服务器日志


我怀疑我的问题在于名称空间,因为这正是我不太自信的地方。

解决方案出人意料。 在引用$body以外的变量中的元素时,显然必须忽略包含所需元素的顶级父节点。在这种情况下,必须省略记录。因此,获取属性的方法是:
$xdata/@ver

请说明您是如何注册
occ
命名空间的。如果您想要
记录,为什么要注册
?我的意思是,为什么不
occ:RECORDS
?谢谢,har07,我纠正了它,这只是我在发布问题时的错误。所以是RecordsGens,我只是在前缀字段中写了occ,在URI中写了url4。我将url3命名为occ,因为我被告知这应该是正确的,但它仍然不正确。
$xdata/occ:RECORDS/@ver