I would think an add on to Apache Xerces would be perfect for this--and
not difficult. Has anyone from MySQL contacted members of the Apache XML
project about this?  It would be great if this was done in a high
profile open source environment.  An XML wrapper API for MySQL would fit
a huge whole in the open source community between the DB and open-source
application servers such as Tomcat and JBoss.  This is definitely an
area that companies like Oracle have a huge advantage right now for
developers.  Additionally, it could later be integrated into an open
source IDE module like NetBeans.  I hope to see it happen. --Aaron

 


-----Original Message-----
From: Matt Wagner [mailto:[EMAIL PROTECTED]]
Sent: Saturday, March 09, 2002 1:11 PM
To: James Cox
Cc: [EMAIL PROTECTED]
Subject: RE: xml


On Sat, 2002-03-09 at 13:13, James Cox wrote:
> Matt,
> 
> Are you suggesting development of a wrapper around MySQL to convert
XML to
> SQL and back, so that you would have a pseudo XML front end to mysqld?

James,

Well 'wrapper' and 'pseudo XML front end' are kind of nebulous terms and
phrases. :)

But yeah basically. Functionality can be added to the MySQL client
library (libmysqlclient) -- which is the library that holds all the C
API functions and whatnot. It is the library that your PHP, Perl DBI,
Java MySQL drivers link against in order to be able to talk to the MySQL
server.

  http://www.mysql.com/doc/C/_/C_API_function_overview.html

So for instance, for XML retrieval of your results it would be quite
trival to add additional API calls to libmysqlclient that return XML to
your application.

However, loading an XML file into your MySQL server (via the C API)
would be a more difficult and tricky task. DTDs would have to be
defined, some software would have to manage these DTDs so that the data
in the XML file could be correctly mapped into your database schema, etc
etc.

You can't just load any old XML file and expect MySQL to know how to
deal with it. There would have to be a DTD (the file that defines the
format of your XML file) submitted with the XML file so that things
could be interpretted correctly.

This means that this would involve an SGML parser (such as nsgmls) and
some way to validate the XML file (I think nsgmls can do this), etc etc.
This brings us to the point where if all of this was added to
libmysqlclient, we would start running into bloatware issues there also.

That's why I suggested that probably an external process (a daemon) that
provides a "bridge" (as Rob ([EMAIL PROTECTED]) suggested earlier in this
thread) would be better suited to *inputting* XML into MySQL.

Output is easy. Input is more difficult. :)

As you may be aware we are currently working diligently to add big
functionality to MySQL (sub-selects, store procedures, failsafe
replication, etc). That makes something like this XML stuff better
suited for sponsorship.

I'm not saying that with sponsorship, this XML stuff can pre-empt the
development of the above features. But instead, sponsorship would allow
us to hire another developer or two to develop this proposed XML
functionality. It allows us to develop features that are in demand in
parallel with our other priorities.

Again, if anyone is interested in this sponsorship, please contact
<[EMAIL PROTECTED]>.


Regards,

    Matt

-- 
For technical support contracts, visit https://order.mysql.com/
   __  ___     ___ ____  __
  /  |/  /_ __/ __/ __ \/ /    Mr. Matt Wagner <[EMAIL PROTECTED]>
 / /|_/ / // /\ \/ /_/ / /__   MySQL AB, Coordinator of Development
/_/  /_/\_, /___/\___\_\___/   Hopkins, Minnesota  USA
       <___/   www.mysql.com   M: +1 952 250 5434


---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail
<[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php


---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to