Browse Prior Art Database

Subtree Move of Hierarchical Data In A Relational Database Disclosure Number: IPCOM000015951D
Original Publication Date: 2002-May-02
Included in the Prior Art Database: 2003-Jun-21

Publishing Venue



This disclosure contains a description of the relational database table layout used by the Lightweight Directory Access Protocol (LDAP) Directory Services Server program to store directory hierarchy information, and the Structured Query Language (SQL) Data Manipulation Language (DML) statements used by the server program to perform movements of directory subtrees within this table. The data model described herein is general-purpose in nature, and may be used to represent any hierarchical data structure in relational form. As such, the SQL DML statements described here may be adopted for relocation of a subtree within any similar hierarchical representation. Hierarchical ("tree") structures are easily represented in what is referred to as "speed" tables which denormalize the hierarchy data to improve the performance of queries. The LDAP Directory Services Server program uses a "speed" table called DESC whose format is simply two columns: AEID, used to represent an ascendant node in a parent-child relationship, and DEID, used to represent the descendant node in the parent-child relationship. Instead of maintaining a single row for the relationship with a child and its immediate superior (as would be done in a fully-normalized representation), there is a row for the relationship between a child and EACH of its superior nodes, as well as a row to represent the child itself. Example: Hierarchy DESC table DESC table (continued)