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] Refreshed genx.h, plus some plans

[ Lists Home | Date Index | Thread Index ]

Tim Bray wrote:

> I just refreshed http://www.tbray.org/ongoing/genx/genx.h.
>
> Most of the changes are obvious and reflect the discussion here, but I 
> probably missed something so another pair of eyes would be welcome.
>
> Perhaps most interesting, I decided that what the genxText method 
> really needed was polymorphism, but this is C, so now we have
>
> int genxText(genxWriter w, const utf8Byte * start);
> int genxCountedText(genxWriter w, const utf8Byte * start, int byteCount);
> int genxBoundedText(genxWriter w, const utf8Byte * start, utf8Byte * 
> end);
>
> The first case is null-terminated.  This is going to add maybe ten 
> lines of (easy) code to the implementation and it gives everyone what 
> they want, and it will be faster too.
>
> I'll do the I/O abstraction as suggested, but I'm not going to 
> pre-design it, I'm going to write the code first so I understand what 
> a reasonable balance is between the kind of I/O primitive the code 
> needs and what you can ask a caller to provide.
>
> I think I've decided that the namespace handling is wrong.  So I 
> propose adding a new call
>
> int genxDeclareNamespace(genxWriter w, utf8Byte * uri, utf8Byte * 
> prefix);


> if prefix == NULL then genx will generate one.  

how you will know what prefix was generate (handy if you need to write 
QName)?

> prefix == "" is not allowed.


how do you set up default namespace then?

in Java XmlPull.org 
XmlSerializer.getPrefix(String namespace,boolean generatePrefix) allows 
to find existing prefix or declare it if it is not yet declared and you 
can set explicitly prefix by calling  *setPrefix*(String prefix, 
String namespace)
see: http://www.xmlpull.org/v1/doc/api/org/xmlpull/v1/XmlSerializer.html


>
> Then the calls with namespaces lose the separate prefix argument, and 
> genx fills in the declarations as appropriate.  This feels more like 
> the way that people actually think about writing and reading XML 
> docs.  Does anyone see a reason not to do this?

i think that there are two needs: one is to help writing XML quicker 
than by System.out() another is to deal with namespaces ...

hope you find it useful.

best,

alek

-- 
The best way to predict the future is to invent it - Alan Kay





 

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

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