Subject RE: [Firebird-general] IBM moves the database goalposts - xml related
Author Thomas Steinmaurer
Hi Nando,

> >> But my point is: will someone provide me with the tools I need
> >> *without* having me leave the relational model? ;-)
>
> TS> Storing structured and semi-structured data found in XML
> TS> documents using the relational model?
>
> No! Storing documents as a whole and query their data:

Storing seems to be simple, because we do have LOB
data types in DBMS like BLOB, CLOB, ... But, there
might be semantic as well, because shall I be able to
store a not well-formed (wrong syntax => no end tag
for a start tag, ...) XML document or an invalid
XML document, in case the document needs to be
validated against a DTD or XML schema?

Some vendors do offer XML user-defined types. Whether
they support semantics as well, or if they simply are
derived types from single data types, that might be a
good question. For example, with DB2 XML Extender, you
can store an entire XML document in one field (using a
XML user-defined type), and by using a so-called Document
Access Definition (DAD) file, you are able to store
regular queried parts of the XML document in tables and
fields redudantely, in fields which can be indexed.

Querying? What would you like to have as a result-set?
A number of records as we do have it right now, when
using SQL as query language? Or a XML fragement or a
well-formed/valid XML document? How about querying
more than one XML document and merging the result
in a proper way?

You either could query the redundant tables/fields
mentioned above. Or you could query a XML document
using a full-text search thingy, but I guess the
most intuitive thingy when querying a XML document
is to use a XML Query Language like XPath, XQuery,
... which do preserve any hierarchical information.

Perhaps there are "XML-Enabled" (= (O)RDBMS with an
integrated XML thingy) databases out there which enable
you to store entire XML documents efficiently and
which will use on that type of information a XML
Query language to query XML data, again, retrieving
data in an efficient way as well. ;-)


Regards,
Thomas