Abstract
۱٫ Introduction
۲٫ Background
۳٫ XML data manipulation in a conventional XML setting
۴٫ XML data manipulation in a temporal XML setting
۵٫ Future research directions
۶٫ Summary
Declaration of Competing Interest
References
Abstract
After more than two decades of its use, XML is not only a standard format for exchanging data between different (Web) applications but also a model for a family of some emerging or NoSQL databases, called XML databases. In addition to its efficiency in the management of conventional data (i.e., data without a temporal reference), XML is also an excellent support for storing, manipulating, and querying temporal data, due its hierarchical structure. Besides, although several survey papers have dealt with multiple aspects concerning XML data, like XML data modeling, storage, indexing, and querying, there is no survey on the XML data manipulation (i.e., XML data insertion, deletion and modification) topic that continues interesting researchers of the database community, both in conventional and temporal XML databases. For that reason, we think that it is interesting to have a paper that reviews and compares research contributions dealing with this topic. So, our present paper (i) provides an overview of the state-of-the-art of XML data manipulation, in conventional and temporal XML databases, (ii) studies the support of such functionality in mainstream commercial DBMSs and (iii) gives some remarks on possible future research directions related to this issue.
Introduction
Since the second half of the 1990s, the eXtensible Markup Language (XML) [1] has been proposed by the World Wide Web Consortium (W3C) as a standard format for exchanging data between different applications running on the Web, like e-commerce, egovernment, and e-health applications. Nowadays, XML is also a model of a new generation of non-standard databases, called XML databases [2–۶]. Notice also that these databases are currently considered also as an example of NoSQL databases1 [7–۱۰], and precisely document-oriented ones. Furthermore, since many of XML-based applications require keeping a full history of data evolution over time (which could be very useful e.g. for decision making), temporal XML databases [11–۱۵] were proposed to respond to such a requirement. Notice that XML provides an excellent support for temporally grouped data models [16], which are considered as the most natural and effective representations of temporal information [17]. Notice also that a temporal XML database uses the valid time dimension and/or the transaction time dimension to manage the history of XML data, while valid time denotes the time when data are valid in the real world and transaction time denotes the time when data are current in the database. Hence, temporal XML databases could store valid-time XML data, transaction-time XML data, or bitemporal XML data.