OrientX (Native XML Database Management System)
XML Group, WAMDM, Renmin University of China
[Home] [System] [Publication] [Download] [Documentation] [People]
  • Updated implementation of OrientX(V3.5) is available. (2009/06/03)
  • Updated implementation of OrientX(V3.0) is available. (2007/09/08)
  • Updated implementation of OrientX(V2.5) is available. (2005/04/30)
  • Updated implementation of OrientX(V2.0) is available. (2004/09/11)
  • OrientX Secure is now available. (2004/07/30)
  • OrientX added to W3C's XQuery page (2004/05/23)
  • XML Group demo proposal : Xiaofeng Meng, Yu Jiang, Yan Chen, Haixun Wang, XSeq: An Index Infrastructure for Tree Pattern (Demo), to appear in SIGMOD2004, Paris, France.
  • OrientX 1.5 is now available.

OrientX is a native XML database system,developed under Renmin University of China.The word 'OrientX' is an abbreviation of Original RUC IDKE Native XML.The name is pronouced orient-X. OrientX system stores XML data and preserves its tree structure. It also allows users to retrieve XML data in the form of XPath/XQuery query language. Here is an overview on the architecture of OrientX. [More...]

The increaing number of XML data proposes a requirement for efficient storage and retrieval. A straight forward solution is to map XML data into relatioanl table,and XML query into SQL. During the mapping, a heavy cost is raised and some semantics are lost. However,a native solution benefits that there is no needs to map your XML data to some other data structure. You just store the data as XML and retrieve it as XML. This is especially valuable when you have very complex XML structures which would be difficult or impossible to map to a more structured database.

As a native XML database system,OrientX has the following features:
  1. schema-dependant. Schema information is required for manipualtions such as creating dataset,importing document,data retrieving and so forth. Schema is also utilized to validate the input data and improve the query processing performance.
  2. A native proprietary storage is developed. The OrientX store XML data in its native tree structure, according to the XML data model, and support element-based and subtree-based granularities.
  3. Use XPath/XQuery for its query language to retrieve XML data.
  4. Support value index and path index to facilitate query processing.
  5. Provide an implementation of API for C/C++ development.
  6. New features in OrientX3.5 [Download your copy]

In version 3.5 of OrientX, we add some important features:

1. Support W3C XQuery/Update

2. A set of programming API

3. Query optimization (especially in physical optimization )

4. A set of new GUIs (especially in the query plan and result visulization)

In old version 3.0 of OrientX, we have some important features [Details]:

1. New architecture

2. Support W3C XQuery/Update

3. A set of programming API

4. Schema is independent with dataset

5. A new GUI

In old version 2.5 of OrientX, we have some important features:

1. An adjustment to AccessManager and below modules for Access Simplicity

We can adopt different storage model for XML document in OrientX, some take element as the basic storage unit, some take a sub-tree as the basic storage unit. This feature may elevate the query performance, but also introduce complexty in data access. In this adjustment, we introduce a new unique class callded LogicalElement. LogicalElement is offered by AccessManager to upper modules, it owns three main funtions:
a. Offer DOM.element like interfaces, support navigation in XML tree.
b. Given two LogicalElement atbitarily, we can tell if they are ancestor-descendant pairs.
c. Encapsulate implementation details be below storage model, to be the unique interface of AccessManager.

2. An integrated and effient IndexManager module

The new implemented IndexManager integrated path index and value index of XML data. Path index is an important feature of OrientX, as schema is available for XML data in our system, we build path index instead of node(label) index, which do much better support to efficient query execution. All path and value indexes are both put into B+-Tree like structure for fast looking up.

3. An algebra query engine for XQuery 1.0

Algebra processing is another processing method for XQuery. We develop an algebra query engine based on XQuery Algebra "OrientXA". In this algebra, we first extract query interested data from document and put them input "Pattern Tree" structure, later, we adopt algebra processing method to build the query result. Together with an ealiar navigation XQuery engine, we offer an execellent experiment platform for future research on XQuery processing.

Who should use OrientX?
  • XML users who want to manage their XML data in a native XML database system.
  • XML application developers who need a native XML database system for their application.
  • Implementors of database system who want to understand, or get access, to the internals of a native database system.
  • Students and researchers who are interested in XML storage strategy.
  • Students and researchers who want to experiment XPath/XQuery implementations and optimization techniques.
  • Students and researchers who want to compare their process techniques about XML with the others.

  1. Min Xie, Xiaofeng Wang, Xin Zhang, Xiaofeng Meng, Junfeng Zhou, Ordered XPath Query Processing on XML Stream£¨Journal of Computer Research and Development, Volume43(Supplement), 2006.10, NDBC2006

  2. Xiaofeng Wang, Xin Zhang, Min Xie, Xiaofeng Meng, Junfeng Zhou£¨Keyword Search on XML Streams. Journal of Computer Research and Development, Volume43(Supplement), 2006.10, NDBC2006

  3. Xiaofeng Meng, Xiaofeng Wang, Min Xie and et al: OrientX: An Integrated, Schema-Based Native XML Database System. Wuhan University Journal of Natural Sciences,11(5):1192-1196, Nov., 2006.(The Third Web Information System and Application(WISA2006), Nanjing, Nov 3-5, 2006.)

  4. Xiaofeng Wang, Jianbo Ou, Xiaofeng Meng, and Yan Chen: Abox Inference for Large Scale OWL-Lite Data. To appear in Proceedings of The 2th International Conference on Semantics, Knowledge, and Grids(SKG2006), Guilin, China, Oct. 31 - Nov. 3, 2006. (Regular paper 18%)

  5. Xiaofeng Meng, Yu Wang, Xiaofeng Wang, Research on XML query optimization, Journal of Software, 17(10):2069-2086, Oct. 2006

  6. Yan Chen, Jianbo Ou, Yu Jiang, Xiaofeng Meng:HStar-a Semantic Repository for Large Scale OWL Documents. In Proceedings of the First Asian Semantic Web Conference (ASWC2006), page 415-428, Beijing, China, September 3-7, 2006. Lecture Notes in Computer Science 4185, Springe. (Full Paper 36/208=18%)

  7. Yu Wang, Xiaofeng Meng, Shan Wang, Using Histograms to Estimate the Selectivity of XPath Expression with Value Predicates. In Journal of Compuer Research and Development, Vol.43(2):288-294, 2006

  8. Jeffery Xu Yu, Daofeng Luo, Xiaofeng Meng, Hongjun Lu: Dynamically Updating XML Data: Numbering Scheme Revisited, World Wide Web, Vol 8( 1):5-26, March, 2005.

  9. Haixun Wang, Xiaofeng Meng: On the Sequencing of Tree Structures for XML Indexing. In Processdings of the 21st International Conference on Data Engineering (ICDE 2005), pages 372-373, Tokyo, Japan, April 2005.

  10. Jing Wang, Xiaofeng Meng, Yu Wang, Shan Wang: Target node aimed path expression processing for XML data. In Journal of Software, 2005,16(5):827-837, 2005,5.

  11. Daofeng Luo, Xiaofeng Meng, Yu Jiang: Updating of extended preorder numbering scheme on XML. In Journal of Software, Vol.16(5):810-818, 2005.

  12. Jeffrey Xu Yu, Daofeng Luo, Xiaofeng Meng, Hongjun Lu, Dynamically Updating XML Data: Numbering Scheme Revisited, World Wide Web, Vol 8, No. 1, March, 2005.

  13. Xiaofeng Meng, Daofeng Luo, and Jianpo Ou£¨An Extended Role Based Access Control Method for XML Documents£¨Wuhan University Journal of Natural Sciences£¨2004£¨10

  14. Shichao Lu, Xiaofeng Meng, Can Lin, Yu Wang, Navigation implementation for XQuery in OrientX, Journal of Computer Research and Development, Volume41(10), 2004.10, NDBC2004

  15. Yu Wang, Xiaofeng Meng, Shan Wang, Schema Based Pattern Tree Semantic Optimization, Journal of Computer Research and Development, Supplement, Volume41(10), 2004.10, NDBC2004

  16. OU Jian-Bo, MENG Xiao-Feng, RSBAC: A Role-Schema Based Access Control for XML Data, Journal of CRAD, Vol.41 Supplement, Oct, 2004.

  17. Xiaofeng Meng, Yu Jiang, Yan Chen, and Haixun Wang. XSeq: An Index Infrastructure for Tree Pattern Queries. In SIGMOD 2004, Paris, France June 2004.[demo]

  18. Daofeng Luo , Xiaofeng Meng , Yu Jiang.Updating of Extended Preorder Numbering Scheme on XML.To appear in Journal of Software. (in Chinese)

  19. Yu Wang, Xiaofeng Meng, Haixun Wang, Shan Wang , Estimating the Selectivity of XML Path Expression with predicates by Histograms, to appear in WAIM 2004

  20. Jing Wang, Xiao-Feng Meng , Shan Wang, Range Partitioning Based Structural Join of XML Data, Journal of Software,15(5):720-729, 2004, 5

  21. Daofeng Luo, Ting Chen, Tok Wang Ling, Xiaofeng Meng: On View Transformation Support for a Native XML DBMS. DASFAA 2004: 226-231

  22. Jing Wang, Xiaofeng Meng, Shan Wang: Integrating Path Index with Value Index for XML Data. APWeb 2003: 95-100

  23. Yu Wang,Xiaofeng Meng,Shan Wang.Collecting and Computing Statistics Information for XPath Complex Paths (Chinese).in National Database Conference(NDBC 2003),October 2003.

  24. Xiaofeng,meng,Yu Wang,Daofeng luo,Shichao Lu,Jing an,Yan Chen,Yu Jiang,Jianbo Ou.OrientX: A Native XML Database System (Chinese).in National Database Conference(NDBC 2003),October 2003.

  25. Daofeng Luo,Xiaofeng Meng,Jing an.OrientStore£ļNative XML Storage Strategy(Chinese).in National Database Conference(NDBC 2003),October 2003.

  26. Daofeng Luo,Xiaofeng Meng,Yu Jiang.Updating of Extended Preorder Numbering Scheme on XML(Chinese). in National Database Conference(NDBC 2003),October 2003.

  27. Jing Wang,Xiaofeng Meng,Shan Wang.Target Node Aimed Path Expression Processing for XML Data(Chinese).in National Database Conference(NDBC 2003),October 2003.

  28. Xiaofeng Meng, Daofeng Luo, Mong-Li Lee, Jing An: OrientStore: A Schema Based Native XML Storage System. VLDB 2003: 1057-1060

  29. Jing Wang,Xiaofeng Meng,Shan Wang.SUPEX A Schema-Guided Path Index for XML Data.In Proc. of Very Large Database Conference(VLDB 2002),September 2002

  30. Yu Wang,Xiaofeng Meng,Shan Wang.Computing Complex Path Expression in OrientX.in National Database Conference(NDBC 2002),October 2002.

OrientX is an open source system.Currenly, we provide user three methods to utilize OrientX system:
  • Development package.In this way,all sources in OrientX are compiled into static libraries and composed into a development package.Based on the package,users can develop their own applications;but they can not modify any implement techniques in OrientX.
  • Standalone application.In this way,users can manage and retrieve their XML data through a set of command in concole application.
  • Client/Server application.In this way,OrientX provides a friendly GUI client.All manipulations from differnt clients is submitted to the OrientX Server,which will run continuously like a DBMS server in the background.

Click here to download the software packges.

Catalog Title Language
Overview OrientX: A Schema based Native XML Database System V1.5 English
General Design XQuery Process in Algebra Chinese
LogicalElement Chinese
Index Manager Chinese
The Architecture of OrientX System V1.0 Chinese
The Architecture of OrientX System V2.0 Chinese
Buffer Manager Chinese
Storage Manager Chinese
Access Manager Chinese
Data Manager Chinese
Schema Manager Chinese
Index Manager Chinese
XPath Execute Engine Chinese
XQuery Processed in Navigation Chinese
Update Manager Chinese
New Update Manager based on Algebra Chinese
New Storage Method Chinese
Improvement in DataManager Chinese
Develop Users Guide Develop Users Guide for OrientX System V1.5 Chinese
Develop Users Guide for OrientX System V2.0 Chinese
Develop Users Guide for OrientX System V2.5 Chinese
C++Docs V1.5 English
C++Docs V2.0 English
System Test OrientX3.0 System Test Chinese

Any suggestion about the system design or any bugs found during develping OrientX application, please mail to OrientXRUC AT gmail.com

The OrientX Team

Xiaofeng Meng (xfmeng AT ruc.edu.cn)

Lizhen Fu (fulizhen303 AT 163.com)


Junjin Xu (xjj19850910 AT 163.com)
Qingsong Guo (qsg251 AT 126.com)
Wei Wang (wwcd2005 AT 163.com)

Undergraduate Student
Zhe Chen

Graduated Team Member
Junfeng Zhou (Ph.D.)
Jinqing Zhu (M.S.)
Wei Wang (M.S.)
Jing Huang (M.S.)
Min Xie (M.S.)
Xin Zhang (M.S.)
Xiaofeng Wang (M.S.)
Yu Jiang (M.S.)
Yan Chen (M.S.)
Jianbo Ou (M.S.)
Shichao Lu (M.S.)
Jing An (M.S)
Yu Wang (Ph.D.)
Daofeng Luo (M.S.)
Jing Wang (Ph.D.)

  • Thanks to Apache xercesc. Aparche xercesc is used to parse XML and schema files when they are imported into OrientX system.
  • Thanks to Parser Generator,one Bumble-Bee Software. It is used to generate the lexical and syntatic analyzer for XML Query.
  • Thanks to XMark.XMark data is used as test cases of OrientX test.Also,some data of XMark is used as example data for OrientX demo.
WAMDM, Renmin University of China, All Rights Reserved OrientXRUC by Jinqing Zhu Last Updated : 2009/06/03