Just nu i M3-nätverket
Jump to content

Nästlad XML


donRollo

Recommended Posts

Jag har ett XMl problem.

Jag skapar XML-sidor via ASP, typ

 

strBok = rs("bok")

 

Set objNodeB = objXML.createNode("element", "bok", "")

objNodeB.setAttribute "bokID", intBokID

objNodeB.Text = strBok

objNodeA.appendChild (objNodeB)

 

Ja, ni fattar säkert.

 

Problem är om noden <bok> ser ut enligt:

 

<bok>Denna bok har skrivits av <forfattare>NN</forfattare> och är utgiven på förlag <bokForlag>GG</bokForlag> 2003</bok>

 

Då helt plötsligt innehåller ju noden <bok> andra noder.

Är detta överhuvudtaget möjligt att åstadkomma när man automatgenererar XML via ASP?

Tacksam för hjälp.

 

/donRollo

 

Link to comment
Share on other sites

Skall inte vara några problem. Använd createNode för att skapa en ny nod. Sedan gör du bara

objNodeB.appendChild (objNyNod)

 

Då hamnar den som child till din boknod.

 

/Jocke

 

Link to comment
Share on other sites

Hej Jocke!

 

Jag är kanske en smula trög, men jag fattar inte riktigt.

 

Jag bifogar lite kod, pilla gärna runt lite och visa hur man kan få in taggarna <forfattare> och <bokForlag>

 

KODEXEMPEL

 

<%@ EnableSessionState = False%>

<% response.buffer = true

 

dim strBok

strBok = "Denna bok har skrivits av NN och är utgiven på förlag GG 2003"

 

dim theEncoding

 

set objXML = Server.CreateObject("Microsoft.XMLDOM")

 

if (objXML.childNodes.length = 0) Then

 

set theEncoding = objXML.createProcessingInstruction("xml"," version='1.0' encoding='ISO-8859-1'")

objXML.appendChild(theEncoding)

 

' create root node

Set objRoot = objXML.CreateNode("element", "bocker", "")

objXML.appendChild (objRoot)

 

Set objNode1 = objXML.createNode("element", "bok", "")

objNode1.Text = strBok

objRoot.appendChild (objNode1)

 

end if

 

objXML.save "f:\pdf\rolloTest\rolloTest3.xml"

%>

 

DETTA SKAPAR XML-FILEN

 

<?xml version="1.0" encoding="ISO-8859-1" ?>

- <bocker>

<bok>Denna bok har skrivits av NN och är utgiven på förlag GG 2003</bok>

</bocker>

 

Hehe!

 

/donRollo

 

 

[inlägget ändrat 2003-03-07 14:51:24 av donRollo]

Link to comment
Share on other sites

Lägg koden nedan före raden

objRoot.appendChild (objNode1)

 

Set objForf = objXML.createNode("element", "Forfattare", "")

objForf.Text="Detta är författaren"
objNode1.appendChild (objForf)

 

Det borde funka, sen får du göra likadant med förlaget.

 

/Jocke

[inlägget ändrat 2003-03-07 16:31:57 av jockesoft]

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...