2012-03-27 129 views
0

我想知道,如果我們可以在上面的例子中另一個XML我們可以在另一個xml中訪問xml元素嗎?

XML 1: 

<testnode file = "abc/blah.xml" xpath= "root1/root2">ValuePassed</testnode> 

blah.xml: 

<root1> 
    <root2> 
     <sometagval> 
    </root2> 
</root1> 

使用XML節點的值現在,我想在blah.xml訪問testnode元素值。

有人能給我這個

回答

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> 
+0

感謝您的回覆,但在上述情況下..您能給我一個2 xmls的語法,我們使用XPATH的XML以及傳遞值和使用該值的XML通過 – vineel 2012-03-27 14:27:58

+0

是包含章節XML的實際XML。章節XML可以像<?xml version =「1.0」?>簡介章節內容。您可以根據需要獲取名稱空間和模式/ dtd聲明。 – jags 2012-03-27 14:34:49

+0

謝謝..明白了,但是這裏面臨的問題是...從book.xml中調用chapter1.xml並在chapter1.xml中說它必須單擊由book.xml驅動的用戶驅動的pagenumber – vineel 2012-03-27 14:39:50

相關問題