我想知道我们是否可以在另一个xml中使用xml节点的值
XML 1:
<testnode file = "abc/blah.xml" xpath= "root1/root2">ValuePassed</testnode>
blah.xml:
<root1>
<root2>
<sometagval>
</root2>
</root1>
现在在上面的例子中,我想访问blah.xml中的testnode元素值。
有人可以就此提出建议吗
答案 0 :(得分:0)
您可以使用实体来实现此目的。拥有dtd取决于您的要求。在这里,您将定义各自XML中的所有章节,并将它们定义为ENTITY并在book.xml中使用它们。查看下面的示例用法:
<?xml version="1.0"?>
<!DOCTYPE book SYSTEM "book.dtd" [
<!ENTITY chapter1 SYSTEM "chapter1.xml">
<!ENTITY chapter2 SYSTEM "chapter2.xml">
<!ENTITY chapter3 SYSTEM "chapter3.xml">
]>
<book>
<title>My Book Title</title>
&chapter1;
&chapter2;
&chapter3;
</book>
但另一个更好的选择是使用 XInclude 。您也可以根据需要使用绝对URL。
<?xml version="1.0"?>
<book xmlns:xi="http://www.w3.org/2001/XInclude">
<title>My Book Title</title>
<xi:include href="chapter1.xml"/>
<xi:include href="chapter2.xml"/>
<xi:include href="chapter3.xml"/>
</book>