[
Lists Home |
Date Index |
Thread Index
]
----- Original Message -----
From: "Toni Uusitalo" <toni.uusitalo@pan.nu>
> At 16:12 26.1.2004, you wrote:
> > > These kind of functions are not currently part of public expat API.
> >
> >Correct. Btw, I don't think Expat checks URIs.
>
> Oh yes. Uri checking is more wise to handle in the higher level anyway -
> in library like libcurl that is possibly used with expat.
>
> >In any case, this would be a little difficult to expose,
> >because these functions are are inlined as macros in
> >a way that makes them part of the parsing logic, they
> >are not callable as separate functions. At a first glance
> >it is not even easy to see which ones they are.
>
> xmltok.c contains utf8_isName2 etc. functions which
> use UTF8_GET_NAMING macro and its counterparts
> UTF8_GET_NAMING2 etc. to access UTF-8 tables
> in nametab.h
>
> These could be used to implement
> int XmlWriterService_CheckName(XMLWriterService XWs, const utf8Byte *s);
> type of function. But I think there will be standalone genx implementation
> that duplicates this. Maybe genx should borrow something from expat though...
I did translate the Expat name and character checking code as simple
callable functions to Pascal/Delphi for both, UTF-8 and UTF-16.
It should be even simpler to do that in C.
> And yes, expat is quite heavily macro oriented and complex piece of software,
> and I'm not even sure if the exposing of parser functions for genx would be
> that beneficial thing, this was just an idea of mine that wasn't based on
> anything
> concrete.
Some sort of re-use might be reasonable - see above.
Karl
|