Cantor, Scott <canto...@osu.edu> writes:

> On 10/10/22, 10:14 AM, "Boris Kolpackov" <bo...@codesynthesis.com> wrote:
> 
> > What would be the other options for XML Schema validation usable
> > from C++?
> 
> Libxml2?
>
> Says it supports XML Schema 1.0 (which is all Xerces ever did AFAIK).

Last time I checked (which was admittedly a few years ago), while they
listed XML Schema support on their front page, if you dug deeper, it
quickly became apparent that support was WIP/incomplete. I did a bit
of searching now and the best documentation I could find is this man
page, which still says it is incomplete:

https://gnome.pages.gitlab.gnome.org/libxml2/devhelp/libxml2-xmlschemas.html


> It is hardly unusual to find that the best option to do something in
> C++ is to use a C library.

I don't know, in this case Xerces-C++ support and especially documentation
look miles ahead.


> >    And, no, rewriting everything in a different language just because
> >    Xerces-C++ has some bugs is not a sensible step.
> 
> That is a matter of opinion, because if a security bug pops up (*) that
> nobody can fix, you (and I) are going to be in a very, very bad position.
> Moving to a different language is the only sensible option if in fact
> there is nothing else to use, and I am doing exactly that, despite the
> many hours it will take.

Not every application that uses Xerces-C++ is security sensitive. In
fact, IMO, it's insane to parse untrusted XML regardless of the
implementation/language used -- the format is just too complex to
have any trust in the implementation. Also note that if you think
Xerces-C++ is somehow exceptionally bad, you are mistaken. We are
also packaging Expat and it's a constant stream of CVEs. And if you
think since it's actively maintained (which it is), those CVEs are
promptly patched, you are mistaken again: it's pretty common for the
release to appear weeks after the CVEs is fixed in the repository.

---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscr...@xerces.apache.org
For additional commands, e-mail: c-dev-h...@xerces.apache.org

Reply via email to