• Visitors can check out the Forum FAQ by clicking this link. You have to register before you can post: click the REGISTER link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below. View our Forum Privacy Policy.
  • Want to receive the latest contracting news and advice straight to your inbox? Sign up to the ContractorUK newsletter here. Every sign up will also be entered into a draw to WIN £100 Amazon vouchers!

Why Oracle stores XML the way it does? (philosophical)

Collapse
X
  •  
  • Filter
  • Time
  • Show
Clear All
new posts

    Why Oracle stores XML the way it does? (philosophical)

    So I deal with XML pretty much every day and it gets stored.
    In my case this pretty much 100% narrative stuff that gets published and read by people (the thing that XML and SGML before that was meant for) and not that transactional or messaging or configuration stuff...

    I never used an oracle db directly, but in cases where Oracle was the engine, the performance was rubbish and it just didn't understand XML and stored them as blobs.
    Now I read this article about the new XML storage options in Oracle 11g and it seems they still suck at it - either they don't preserve whitespace or you're still stuck with blob (actually clob) storage.

    Is it really so difficult for Oragle to have a native XML db and implement a standards bases xsl/xquery interface for it?

    I use other vendors for it now, but it seems strange that Oracle wouldn't embrace it yet.

    To me me it seem really awkward and backward that you would process XML via SQL queries rather than XPath.

    But perhaps there is something about performance/scaling characteristics that escapes me?
    Can any resident Oracle gurus enlighten me about this?
    Do you have any insight into the landscape? Is there really so little XML being stored?
    Is all the data stored indeed relational in nature or is just being forced in the tables, just because that's what all the major db players traditionally did and don't want to change?

    #2
    Dunno about Oracle, but section 2.10 of the XML 1.0 spec states that XML processing applications (as opposed to XML processors) are not required to retain whitespace not marked as significant. Therefore, those elements of your documents which have significant whitespace should have the xml:space attribute with the value preserve.

    Note that if you are validating your XML rather than merely ensuring well-formedness, you are also required to declare the attribute in your DTD/Schema/wotever.

    If, once that is done, Oracle still wrecks your whitespace then it's a bug in their application and they should fix it.

    HTH

    Comment

    Working...
    X