SQL and XML: XML Databases

With the proliferation of XML usage and XML documents, several venture-backed startup companies have been formed to commercialize native XML databases. Typically, these databases store and model their data contents as XML documents. The actual database contents may be stored in native form as XML text, or in some parsed form such as that maintained by a DOM XML parser. Most of the XML database products currently support XPath as a core query capability, and many of them have added proprietary extensions to XPath to make it a more complete query language. They typically pledge support for XQuery as a replacement for XPath or as a second, complementary query language, as soon as the XQuery specification is finalized.

The vendors of native XML databases tend to make the same arguments in favor of their products that the object-oriented database vendors made a decade earlier. With external data increasingly represented as XML, the best match is a database that carries the same underlying data model. The choice of XML documents as a native format reduces the overhead of XML marshalling and unmarshalling, but provides the same level of individual element and attribute access and navigation. Finally, they argue that with a growing body of users trained in HTML and XML, an XML database can be more accessible to more people than SQL-based relational databases.

The native XML databases are relatively new to the market at this writing, and it is too soon to judge their eventual market success and impact. It seems likely that a native XML database may be a good match for data management needs within an XML-based web site for storing, accessing, and transforming XML documents. However, the previous history of pure object-oriented databases suggests that relational database vendors are capable of extending their core products to incorporate the most important features of new data models at a pace that is fast enough to retain their dominant market shares. It seems very likely that relational databases will remain the dominant native database type for data processing applications. But within these products, XML integration will grow tighter over time and relational products will offer more and more XML-oriented features.

Source: Liang Y. Daniel (2013), Introduction to programming with SQL, Pearson; 3rd edition.

Leave a Reply

Your email address will not be published. Required fields are marked *