[Newbies] Squeak and XML
Kenneth Payne
kmp at atrium.fsnet.co.uk
Sat Oct 7 13:13:38 UTC 2006
On Thursday 05 October 2006 02:27, mike.vidal at gmail.com wrote:
> Does anyone have a link to current information about how to work with
> XML with Squeak?
> _______________________________________________
> Beginners mailing list
> Beginners at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/mailman/listinfo/beginners
Try the Squeak Swiki - search for YAXO.
The YAXO and XML article includes these useful examples of using the DOM
parser.
========================================
Writing to a file called MyXml.xml
"Code below describes opening a stream and writer and associating the writer
with XMLDocument"
doc := XMLDocument new.
stream := FileStream fileNamed: 'MyXml.xml'. "speicifying the stream"
writer := XMLWriter on:stream. "specifying the writer"
writer initialize.
"Code below describes how you could write an xml element with a tag "
elmt := XMLElement named: 'User' attributes: Dictionary new.
"adding the attribute tags and values to the "
childElmt := XMLElement named: 'Name' attributes: Dictionary new.
childElmt addContent: (XMLStringNode string: ('rao')). "adding a tag called
Name with the value 'rao'"
elmt addElement: childElmt.
doc addElement: elmt.
doc printXMLOn: writer.
stream close.
Reading from MyXml.xml
f := FileStream fileNamed: 'xml.xml'. "opening a stream"
doc := XMLDOMParser parseDocumentFrom: f.
f close.
xmlUser := (doc elements) at: 1. "now you have the entire user data"
"readng the name"
elmt := xmlUser firstTagNamed: #Name.
userName := elmt contentString.
Notice how once you call the parseDocumentFrom: you don't need to have the
stream open because XMLDOMParser builds tree right away from the given
stream.
=====================================
Hope this helps.
- Ken
More information about the Beginners
mailing list