Go Back   Velocity Reviews > Newsgroups > XML
User Name
Password
Register FAQ Members List Calendar Search Today's Posts Mark Forums Read

Reply

XML - Visual Basic 6.0 Code - Reading XML

 
Thread Tools Search this Thread
Old 06-27-2003, 01:32 PM   #1
Default Visual Basic 6.0 Code - Reading XML


Hi there, I'm trying out the following code in order to read in an XML
document.

Private Sub GetXML_Click()
Dim objDOMDocument As MSXML.DOMDocument
Dim root As IXMLDOMElement

Set objDOMDocument = New DOMDocument
objDOMDocument.async = False
objDOMDocument.Load "c:\temp\5000017.XML"
Set root = objDOMDocument.documentElement

For Each child In root.childnodes
MsgBox child.Text
Next
End Sub

....but, I'm getting a compile error on the first line, indicating that
it can't find the library. I'm sure it's something obvious, but I'm
not sure exactly where to go next. Can anyone offer some assistance??

Once I've gotten the XML loaded, I also need to parse the nodes and
find a specific id/name within the document. Any suggestions on how
to best achieve this????

Mucho Gracias!!!

Dan


Dan G.
  Reply With Quote
Old 06-27-2003, 01:50 PM   #2
Colin Mackenzie
 
Posts: n/a
Default Re: Visual Basic 6.0 Code - Reading XML

1/ Have you added a refererence to the Microsoft MSXML component (and has it
been installed on your machine)?
2/ Are you using the latest version (MSXML 4) if so use MSXML2.DOMDocument40
3/ best way on msxml is using

set theNode = objDOMDocument.selectSingleNode(strXpath)
for one (first matching) node
or
set theNodeSet = objDOMDocument.selectNodes(strXpath)
selectNodes for a node set (multiple matches)

strXPath is an Xpath expression describing the path to the node to be
selected

e.g.

"/root/items/item[(@id='F1') and (name='Fred')]"

If the ID is defined as a dataitem of type ID (in a DTD) then you can use
the xpath id function

"id('F1')"

Colin

"Dan G." <> wrote in message
news: om...
> Hi there, I'm trying out the following code in order to read in an XML
> document.
>
> Private Sub GetXML_Click()
> Dim objDOMDocument As MSXML.DOMDocument
> Dim root As IXMLDOMElement
>
> Set objDOMDocument = New DOMDocument
> objDOMDocument.async = False
> objDOMDocument.Load "c:\temp\5000017.XML"
> Set root = objDOMDocument.documentElement
>
> For Each child In root.childnodes
> MsgBox child.Text
> Next
> End Sub
>
> ...but, I'm getting a compile error on the first line, indicating that
> it can't find the library. I'm sure it's something obvious, but I'm
> not sure exactly where to go next. Can anyone offer some assistance??
>
> Once I've gotten the XML loaded, I also need to parse the nodes and
> find a specific id/name within the document. Any suggestions on how
> to best achieve this????
>
> Mucho Gracias!!!
>
> Dan



  Reply With Quote
Old 06-27-2003, 03:21 PM   #3
Sebastian Fey
 
Posts: n/a
Default Re: Visual Basic 6.0 Code - Reading XML


> set theNode = objDOMDocument.selectSingleNode(strXpath)
> for one (first matching) node
> or
> set theNodeSet = objDOMDocument.selectNodes(strXpath)
> selectNodes for a node set (multiple matches)


dont forget

objDOMDocument.setProperty "SelectionLanguage", "XPath"

to use XPath instead of MS pattern language


  Reply With Quote
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump