From: Claudio Sacerdoti Coen <sacerdot@cs.unibo.it>
To: caml-list@inria.fr
Subject: Re: [Caml-list] Looking for OCaml code to load & save XML files
Date: Sun, 29 Feb 2004 18:53:48 +0100 [thread overview]
Message-ID: <20040229175348.GA32661@cs.unibo.it> (raw)
In-Reply-To: <20040228185048.GA14358@fistandantilus.takhisis.org>
> > PXP doens't support schema either, but GMetaDOM (a wrapper around the
> > GNOME XML libraries) seems to:
> > http://gmetadom.sourceforge.net/
>
> No it doesn't.
It doesn't, but it easily could. Indeed GDOMe2 is implemented on top
of libxml that performs Schema validation. Thus enabling Schema validation
can be done quite easily. The real problem is that DOM Level 2 has no
API for Schema validation. Thus the "extra parameters" should be
considered an hack (and thus put in the Gdome.domImpl class).
GMetaDOM is not 100% full ocaml. But it is 100% DOM compliant (since it
is automatically generated from the DOM reccomendation). This can be
either a good feature (e.g. if you are porting code from another language)
or a bad feature (since the DOM API forces an imperative coding style).
Finally, GMetaDOM is the only solution available if you want to use
bindings to external C libraries whose input or output are Gnome DOM
documents (e.g. some Gtk2 widgets as GtkMathView).
XMLLight is 100% full ocaml, but it is not even 100% compliant to the
XML Reccomendation. Thus I do not reccomend it: either you can parse
any XML file or you cannot (and sooner or later something will bite you).
PXP is 100% full ocaml and 100% XML compliant (but it does not implement
the DOM interface nor XML Schema). It is is probably the best solution
if you are not obliged to use GMetaDOM (because of the standard imperative
API or the need of using other bindings).
Cheers,
C.S.C.
--
----------------------------------------------------------------
Real name: Claudio Sacerdoti Coen
PhD Student in Computer Science at University of Bologna
E-mail: sacerdot@cs.unibo.it
http://www.cs.unibo.it/~sacerdot
----------------------------------------------------------------
-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
next prev parent reply other threads:[~2004-02-29 17:53 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-02-28 13:44 David MENTRE
2004-02-28 15:24 ` Nicolas Cannasse
2004-02-28 15:38 ` Benjamin Geer
2004-02-28 15:44 ` Nicolas Cannasse
2004-02-28 18:50 ` Stefano Zacchiroli
2004-02-28 20:02 ` Giuseppe Castagna
2004-02-29 17:53 ` Claudio Sacerdoti Coen [this message]
2004-02-29 17:46 ` David MENTRE
2004-02-29 18:13 ` Nicolas Cannasse
2004-03-01 8:09 ` lehalle@miriad
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20040229175348.GA32661@cs.unibo.it \
--to=sacerdot@cs.unibo.it \
--cc=caml-list@inria.fr \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox