2012-03-27 11 views
0

Ich wollte wissen, ob wir den Wert des XML-Knoten in einem anderen XML-Können wir auf XML-Elemente in einem anderen XML zugreifen?

XML 1: 

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

blah.xml: 

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

Jetzt im obigen Beispiel verwenden können, würde ich testnode Elementwert in blah.xml zugreifen möchte.

Kann jemand geben Sie mir einen Vorschlag zu diesem

Antwort

0

Sie Entities dies zu erreichen, verwenden können. Eine dtd hängt von Ihrer Anforderung ab. Hier definieren Sie alle Kapitel in ihren jeweiligen XMLs und definieren sie als ENTITY und verwenden sie in book.xml. Schauen Sie sich die Probe Nutzung unter:

<?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> 

Aber die andere und bessere Option ist XInclude zu verwenden. Sie können auch absolute URLs verwenden.

<?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

danke für die Antwort, aber im obigen Fall .. können Sie mir bitte eine Syntax für die 2 xmls geben, die XML-Daten aus dem wir XPATH und das Bestehen der Wert und die XML verwenden, die den Wert verwendet übergeben – vineel

+0

ist das eigentliche XML, das Kapitel XMLs enthält. Kapitel XML könnte so einfach sein wie Einführung Kapitel Inhalt. Sie können die Namespace- und schema/dtd-Deklarationen nach Bedarf verwenden. – jags

+0

Dank .. verstanden, aber das Problem ist hier .. ist von book.xml rufen wir chapter1.xml und in Kapitel1.xml sagen, es muss Pagenummer, die von book.xml Benutzer gesteuert wird – vineel

Verwandte Themen