From: Alessandro Baretta <alex@baretta.com>
To: Gerd Stolpmann <info@gerd-stolpmann.de>
Cc: Ocaml <caml-list@inria.fr>
Subject: Re: [Caml-list] XML, XSL, eXcetera
Date: Fri, 05 Jul 2002 00:43:42 +0200 [thread overview]
Message-ID: <3D24CF9E.8010904@baretta.com> (raw)
In-Reply-To: <20020704235143.A621@ice.gerd-stolpmann.de>
Gerd Stolpmann wrote:
>
>From my point of view the "hard" approach looks more promising
> than the "soft" approach, because there are a number of ways
> to simplify the handling of XML within O'Caml. For example,
> there is already an XPath implementation (showing how simple
> this is), and if it were better integrated with the rest,
> including CamlP4 macros, we could as easily match XML trees with
> XPath expressions as any other structured value (i.e.
> we would have an "xmlmatch ... with ..." construct).
>
> Another possibility would be a Camlp4 macro that creates
> XML trees from an XML-like notation.
>
> If we had such techniques, O'Caml+PXP+XPath+Camlp4 would be
> the ultimate language to process XML, because it would be
> the most integrated one. And integration matters. Today many
> commercial programs are still written in COBOL because of the
> excellent integration of SQL. (This does not mean that I
> compare O'Caml with COBOL, but from a mainstream view they
> are both exotic.)
I see your point. But this is not really the "hard" way I
had in mind. This is more like defining a brand new DO'M:
the Document O'caml Model, and tightly integrating it into
the language with CamlP4. Not a bad idea actually, if we
work to implement it. Daniel, what do you think about this?
> I don't see that you need to compile and link an executable
> for every filter, because you can call O'Caml as scripting
> language. That should be fast enough for most "ad-hoc" usages.
How would you do that? With a sort of "toplevel server"
waiting for connections and dynamically compiling and
linking into its environment the code sent to it? Is
anything like this already around?
>>A "soft" approach, which I would prefer, would be to
>>implement an XSLT processor in O'Caml, with the ability to
>>define "extension functions" on the run, directly in the
>>XSLT stylesheet, compile them into the processor dynamically
>>(as is done in the toplevels), and call them upon activation
>>of the template within which they appear.
>
> Programming an XSLT processor would not be very hard, as XSLT
> is a quite simple language.
It would take a little effort to keep up with the quite
numerous standards. And, besides, we would still have to
define a mechanism for accessing the full power of the
programming language through XSLT stylesheets.
>>Until something like this appears, I might chose to give up
>>working with XSLT altogether and stick with the "hard"
>>O'Caml way, but I think the O'Caml community should move in
>>the "soft" direction. As far as I can see there have been
>>several partial attempts at XML management in O'Caml, the
>>most relevant probably being PXP, but there has been no
>>unifying view or project guiding these efforts. Do you not
>>think XML has gained enough momentum for us to start an
>>official "XML/O'Caml" project to define and implement the
>>*official* O'Caml API for XML and XML-related technologies
>>such as XPath and XSLT?
>>
>>I would be happy to volunteer for such a project, if anyone
>>else is interested in it, and if the some consensus is
>>reached among the community on the APIs that the
>>to-be-formed team should work on.
>
>
> Defining an API is a very complicated piece of work, and I have
> doubts that a "virtual" team can do it. Nevertheless, I would
> appreciate if the community came to a consensus. I can imagine
> that a simple function-oriented interface would be the best
> choice for a rather large group of programmers, and it would be
> simple to add such an interface to the existing XML parsers.
>
> A number of people would also be (more) happy if there were a
> common SAX-like interface. (Although there is no parser that
> supports this now.)
>
> Gerd
An event based parser is of paramount importance to
implement with O'Caml data communication protocols based on
XML. I think such a parser should be included in the
O'Caml/XML project I proposed.
As I stated in my previous post, all the XML-centric work in
O'Caml should converge on a common project. I hope some
volunteers will show up eventually.
Alex
-------------------
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:[~2002-07-04 22:37 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-07-04 8:45 forsyth
2002-07-04 18:43 ` Alessandro Baretta
2002-07-04 21:51 ` Gerd Stolpmann
2002-07-04 22:43 ` Alessandro Baretta [this message]
2002-07-05 8:06 ` Stefano Zacchiroli
2002-07-06 14:15 ` Alessandro Baretta
2002-07-04 22:46 ` Henrik Motakef
2002-07-05 0:15 ` Alain Frisch
2002-07-05 16:36 ` Claudio Sacerdoti Coen
2002-07-06 14:22 ` Alessandro Baretta
2002-07-08 12:29 ` Claudio Sacerdoti Coen
[not found] <Pine.LNX.4.21.0207040823410.30756-100000@vestra.bendery.md>
2002-07-04 8:34 ` Alessandro Baretta
-- strict thread matches above, loose matches on Subject: below --
2002-07-03 22:59 Alessandro Baretta
2002-07-03 23:02 ` Alexander V.Voinov
2002-07-04 0:34 ` Alessandro Baretta
2002-07-04 8:33 ` Stefano Zacchiroli
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=3D24CF9E.8010904@baretta.com \
--to=alex@baretta.com \
--cc=caml-list@inria.fr \
--cc=info@gerd-stolpmann.de \
/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