Content deleted Content added
m Reworded for conciseness |
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.5 |
||
(5 intermediate revisions by 5 users not shown) | |||
Line 7:
Reasons to store data in XML format as an XML database include:<ref name=nicola2010>{{cite web|last1=Nicola|first1=Matthias|title=5 Reasons for Storing XML in a Database|url=http://nativexmldatabase.com/2010/09/28/5-reasons-for-storing-xml-in-a-database/|website=Native XML Database|access-date=17 March 2015|date=28 September 2010}}</ref>
<ref name=feldman2013>{{cite conference|last1=Feldman|first1=Damon|title=Moving from Relational Modeling to XML and MarkLogic Data Models|url=http://www.marklogic.com/resources/slides-moving-from-relational-modeling-to-xml-and-marklogic-data-models/resource_download/presentations/|conference=MarkLogic World|conference-url=http://world.marklogic.com/|date=11 April 2013|access-date=17 March 2015}}</ref>
* An enterprise may have numerous XML documents with similar data, but dispersed in different XML formats. Conglomerating this data into a singular, standardized XML database structure will avoid
* Data may need to be exposed or ingested as XML, so using another format such as relational forces double-modeling of the data
* XML is very well suited to parse data, deeply nested data and mixed content (such as text with embedded markup tags)
Line 14:
* Semantic web data is available as [[Resource Description Framework|RDF]]/XML
* Provides a solution for [[Object-relational impedance mismatch]]<ref>[NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence. Addison-Wesley Educational Publishers Inc, 2009] {{ISBN|978-0321826626}}</ref>
* Compatibility with XML use on the [[transport layer|data transport]] layer
== XML-enabled databases ==
Line 41 ⟶ 40:
</syntaxhighlight>
== Integration with
XML databases are often used in combination with relational databases to manage and store hierarchical data. A significant challenge in such integrations is extracting XML documents from relational databases, which requires specialized techniques and tools. These techniques often include:
Line 53 ⟶ 52:
== Native XML databases ==
Native XML databases are especially tailored for working with XML data. As managing XML as large strings would be inefficient, and due to the hierarchical nature of XML, custom optimized data structures are used for storage and querying. This usually increases performance both in terms of read-only queries and updates.<ref>{{cite web|last1=Matthias|first1=Nicola|title=XML versus Relational Database Performance|url=https://nativexmldatabase.com/2010/08/22/xml-versus-relational-database-performance/|website=Native XML Database|access-date=28 Jun 2017|date=22 August 2010|archive-date=4 March 2017|archive-url=https://web.archive.org/web/20170304072744/https://nativexmldatabase.com/2010/08/22/xml-versus-relational-database-performance/|url-status=dead}}</ref> XML nodes and documents are the fundamental unit of (logical) storage, just as a [[relational database]] has fields and rows.
The standard for querying XML data per W3C recommendation is [[XQuery]]; the latest version is XQuery 3.1.<ref>{{cite web|url=http://www.w3.org/TR/xquery-31/ | title=XQuery 3.1 Recommendation | date=2017-03-21}}</ref> XQuery includes [[XPath]] as a sub-language and XML itself is a valid sub-syntax of XQuery. In addition to XPath, some XML databases support [[XSLT]] as a method of transforming documents or query results retrieved from the database.
=== Language features ===
{{sort-under}}
{| class="wikitable sortable sort-under"
|-
! Name
Line 170:
{{Refbegin}}
{{Refend}}
|