On Sat, Oct 11, 2014 at 02:16:31PM +0200, Spartaco wrote:
> Well,
> the simpliest solution I've found on my own is like that:
> 
> xml = xmlReaderForFile("example.xml", NULL, 0);
> xmlTextReaderRead(xml);
> doc = xmlTextReaderCurrentDoc(xml);
> root = xmlDocGetRootElement(doc);
> agent = xmlGetProp(root, "agent");
> ...
> 
> and then proceed with the rest of parsing using the Reader interface, as
> usual.
> Do not forget to use xmlFreeDoc(doc) at the end of parsing.

  Well that's not 100% guaranteed to work, the xmlTextReaderRead()
will scan through all nodes. If there is another node (not element)
before the root node, like say a comment, you code will break.
  do Read() until you reach an element and use the reader
to get the attribute.

Daniel
> 
> On 10/11/2014 12:12 PM, Spartaco wrote:
> > Hello guys,
> >
> > I'm just wondering if is there a simple way in LibXML2 to get an
> > attribute value from the root node, preferably using the Reader interface.
> > I have no problems at all with attributes from other nodes, they all are 
> > accessible by
> > xmlTextReaderGetAttribute function, but root.
> > Apparently LibXML2 discards root node attributes, or may be I'm missing 
> > something.
> >
> > Just to be clear, I intend to parse something like:
> >
> > <?xml version="1.0" encoding="UTF-8"?>
> > <Example agent="myclient">
> >   <value1>aaa</value1>  
> > </Example>
> >
> > and I'd like to get the value of the "agent" attribute.
> > Can someone give me an hint?
> >
> > Regards
> > SM
> >
> > _______________________________________________
> > xml mailing list, project page  http://xmlsoft.org/
> > xml@gnome.org
> > https://mail.gnome.org/mailman/listinfo/xml
> >
> 
> _______________________________________________
> xml mailing list, project page  http://xmlsoft.org/
> xml@gnome.org
> https://mail.gnome.org/mailman/listinfo/xml

-- 
Daniel Veillard      | Open Source and Standards, Red Hat
veill...@redhat.com  | libxml Gnome XML XSLT toolkit  http://xmlsoft.org/
http://veillard.com/ | virtualization library  http://libvirt.org/
_______________________________________________
xml mailing list, project page  http://xmlsoft.org/
xml@gnome.org
https://mail.gnome.org/mailman/listinfo/xml

Reply via email to