OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help



   Re: [xml-dev] Genx

[ Lists Home | Date Index | Thread Index ]

Tim Bray wrote:
> At one point during the discussions about Atom and well-formedness, I 
> offered to cook up some libraries for safely and efficiently writing 
> guaranteed-well-formed XML; it seems that the world is well-provided 
> with these for Java, but several people wrote me saying such a thing 
> would be really handy at the C level; libxml2 being OK but too big and 
> complicated for most people's purposes in this particular regard and 
> also suspected of a memory leak.
> So I sketched out a design, see the write-up at 
> http://www.tbray.org/ongoing/When/200x/2004/01/19/HeresGenx and have at 
> it. -Tim

First, this looks very good. The points I have are only minor.

1. How about adding a single function
for adding an element and its text at the same time:

  int genxAddElement(genxWriter w,
                 const utf8Byte * namespace, const utf8Byte * prefix,
                 const utf8Byte * type,
		 const utf8Byte * text);

Which would be the equivalent of calling the following
four functions in this order.

  int genxStartStartTag(genxWriter w,
                      const utf8Byte * namespace, const utf8Byte * prefix,
                      const utf8Byte * type);
  int genxEndStartTag(genxWriter w);
  int genxText(genxWriter w, const utf8Byte * text);
  int genxEndTag(genxWriter w);

The reason I ask for this is that looking over the XML I deal with
on a daily basis (RSS, Atom, and RPC SOAP) this 'genxAddElement()' would 
cover about 80% of my XML generation needs since those formats 
are mostly filled with such elements.

2. One of the things I'd like to see is the wchar_t versions
   of the functions #ifdef'd, so that if I am running on a 
   constrained platform (like a tiny embedded platform), then I 
   can just run with the utf8 only functions and hopefully
   have a smaller footprint library.

3. I'm on the fence about this one, but what about having
   genxComment() and genxPI() fix the syntax errors instead 
   of generating an error? I.e. instead of genxPI generating
   a GENX_SYNTAX error when it encounters '?>' how about 
   it converting it to '?>' ?



  • References:
    • Genx
      • From: Tim Bray <tbray@textuality.com>


News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS