Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: XMLType performance
peteh wrote:
> Business scenario in support of native XML storage and DML (to Serge's
> point re: volatile schemas):
> * Want to store and query prioject plans in relational db, so I can
> query with existing information delivery tools (BI Query, BIRT,
> Crystal Reports, whatever) and deliver over the web to business users.
> * Project plans from product A can be exported to well-formed XML
> docs, but I can't count on the vendor changing the document schema -
> adding columns, rearranging etc
> * Relational DBMS product A (hint - Serge knows quite a bit about this
> product...) :-), allows me to import the XML doc into a native XML
> column type (with other relational columns to provide description of
> project - e.g. version, creator, etc) and query with a hybrid XQuery/
> SQL syntax
> * I build a simple stored proc to render reports at a task and/or
> resource level - even across projects.
>
> How would you do this without native XML support and avoid the
> potentially whimsical changes of XML document format and content? Just
> asking...
>
All the vendors have multiple forms of native XML support.
You haven't really said what the business value of going from the relational data to the XML view is, but I would just do this with a XML view over the relational data, maybe schema based so you can control/doc the evolution. You will get both relational, Xquery (and possibly XPath, depending on structure) access to the same data at that stage, including the ability to access the XML 'documents" as XML documents via FTP, WebDav etc. Then you could also build the 'report rendering' into a XML view,a nd have the optimizer go to town on it.
One cool thing about this is that you can also go the other way - store XML documents in the database, and then create relational views on top of them that can then be used in standard relational tools. Received on Fri Apr 13 2007 - 20:25:34 CDT
![]() |
![]() |