Re: [xml] WG: [xml-dev] parsing a DTD without having the entities resolved.



  Okay, I did a short answer on the xml-dev list
    http://lists.xml.org/archives/xml-dev/200205/msg01371.html

basically the problem is that while it is easy to represent as trees
the content of DTDs once parameter entities have been substitued, it
looks awfully hard to try to represent as a tree or a regular pattern
the content of a DTD without paramater entities being substitued.
The parameter entities are really used as a pure text replacement mechanism,
and while there is some constrainst about having the start and end characters
of a declaration in a DTD coming from the same entity, the rules are very
lax and it makes awfully hard to represent declarations contained in the
DTD while keeping informations about the mix of parameter entities they
have been built with. It's really 2 different level, one physical (hierachy
of sequence of characters) and one logical (the tree of the declarations
and their content). libxml just tries to represent the second one and
don't try to keep track of the physical level.

Daniel

On Wed, May 26, 2027 at 07:05:29AM -0400, David Santamauro wrote:

Koen, I hope you dont' mind, but this is the correct list.


-----Ursprungliche Nachricht-----
Von: Koen De Maesschalck [mailto:koen_demaesschalck be ibm com]
Gesendet: Wednesday, June 26, 2002 06:47
An: xml-dev lists xml org
Betreff: [xml-dev] parsing a DTD without having the entities resolved.


Hi,

I am parsing a (complex) DTD using libXML2 and using the function calls
that Daniel Veillard showed here previously:

xmlDTDPtr dtd;
dtd= parseDTD( NULL, "filename.dtd");

after that I scroll throug the children list and I am interpreting the
elements using

pElement = xmlGetDTDElementDesc( dtd, child->name);

This all works fine, however I would like to be able to browse the DTD
before the entities are resolved.  Mainly, my goal is to see which entities
are used in element content (or elsewhere in the dtd - such as in ATTLIST
declarations).

I tried to issue a call to

xmlSubstituteEntitiesDefault(0);

before I call parseDTD(), but that doesn't seem to make any difference.
What am I doing wrong?


Best regards,

Koen De Maesschalck,
e-mail   koen_demaesschalck be ibm com




-----------------------------------------------------------------
The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
initiative of OASIS <http://www.oasis-open.org>

The list archives are at http://lists.xml.org/archives/xml-dev/

To subscribe or unsubscribe from this list use the subscription
manager: <http://lists.xml.org/ob/adm.pl>

_______________________________________________
xml mailing list, project page  http://xmlsoft.org/
xml gnome org
http://mail.gnome.org/mailman/listinfo/xml

-- 
Daniel Veillard      | Red Hat Network https://rhn.redhat.com/
veillard redhat com  | libxml GNOME XML XSLT toolkit  http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]