![]() |
![]() | ![]() | ![]() | Altova Mailing List Archives>Archive Index >microsoft.public.xml Archive Home >Recent entries >Thread Prev - Re: New node with XML >Thread Next - Re: New node with XML Re: New node with XMLTo: NULL Date: 3/5/2005 10:33:00 AM "Dave" <dave5398@b...> wrote in message news:upawMZEIFHA.2936@T...... > > "Joe Fawcett" <joefawcett@h...> wrote in message > news:OtAPn9CIFHA.2936@T...... >> "Dave" <dave5398@b...> wrote in message >> news:ubVSrcCIFHA.1528@T...... >> > Am I missing something or is there an easy way to do this. Suppose I > have >> > loaded my XML string into a DOMDocument . I have a node whose XML I > want to >> > replace with new specified XML. This is the equivalent of > MyDOMElement.XML = >> > sNewXML but I can't find a built in way to do this since the node.XML >> > property is read only - I must have missed something as the only way I > have >> > found is really a long way round. Can somebody tell me the easy way > please. >> > >> > Dave >> > >> > >> There's no real quick way. You can use the replaceChild method or just > delete >> the node and append a new one. >> >> -- >> >> Joe (MVP - XML) >> >> > Hi Joe, > > Thanks. I thought as much. It's really as bad as I suspected. The next > version should really make the XML property writeable as well. In fact, a > lot of the XML stuff is so (typically MS) over-engineered that I've had to > code a load of stuff in C++ to actually DO anything - eg, given an XML > string, how do you get a given tag's attribute? Big job, whereas if you > just search for it direct, it's actually simple. > > For this job, if I've got a new XML string I want to put into a node I have > to create a new DOMDocument, load the XML then do a load of recursive calls > to traverse the whole structure creating corresponding nodes in my original > DOMDocument. What a pain!!! So much simpler to put Node.XML=newXML - no? > Or can you think of anything neater? > > Dave > > Regards, > > Davd > Although I often criticise Microsoft you can't really balme them for this one, it's a fairly standardised interface. Sounds like an XSLT transform would do the job, downside is it's another API to learn. Another combination that would suit would be the XmlReader/XmlWriter classses in the .net framework or the SAX methods. If you post some example of your type of problem I'll try to come up with basic XSLT that you can build on. -- Joe (MVP - XML) | ![]() | ![]() | ![]() |
| Company | Legal | Press | Partners | Careers | Sitemap | Contact Us | Altova Blog | |||||
|
