Portals eNewsletters Web Seminars dataWarehouse.com DM Review Magazine
DM Review | Covering Business Intelligence, Integration & Analytics
   Covering Business Intelligence, Integration & Analytics Advanced Search

View all Portals

Scheduled Events

White Paper Library
Research Papers

View Job Listings
Post a job


DM Review Home
Current Magazine Issue
Magazine Archives
Online Columnists
Ask the Experts
Industry News
Search DM Review

Buyer's Guide
Industry Events Calendar
Monthly Product Guides
Software Demo Lab
Vendor Listings

About Us
Press Releases
Advertising/Media Kit
Magazine Subscriptions
Editorial Calendar
Contact Us
Customer Service

SQL Has It and XQuery Does Not - Automatic LCA Processing

  Article published in DM Direct Newsletter
July 29, 2005 Issue
  By Michael M. David

SQL's inherent LCA processing logic and its automatic utilization in ANSI hierarchical processing was identified and introduced for the first time in my recent advanced research paper entitled "Using ANSI SQL as a Conceptual Hierarchical Data Modeling and Processing Language for XML" in the current issue of the Journal of Conceptual Modeling (www.inconcept.com/jcm/may2005/david.html).The discovery of SQL's inherent Lowest Common Ancestor (LCA) data processing ability is an important and significant finding that can change the direction of the SQL/XML integration market and breathe new life into aging SQL.

What is LCA Hierarchical Processing Logic

Lowest Common Ancestor (LCA) logic is absolutely necessary for the processing of multi-leg hierarchical data structures. It is needed to determine how data values are related to each other when they occur on different legs of the hierarchical structure. Correlating data from different legs of a hierarchical data structure without following LCA logic principles will usually produce invalid results because the results are not based on meaningful data relationships down at the data occurrence level. This level of processing is very subtle and can be easily overlooked.

LCA logic is not new. It has been around since the early 1970s or earlier. It seems to have been forgotten after relational databases expunged the majority of hierarchical databases. LCA logic is also used in biology, vision, AI, optimizations and many other scientific disciplines that utilize hierarchical structures to contain and process their data. Hierarchical structures are rich with semantic meta data that can increase the value and meaning of the data far beyond its face value. This allows LCA logic to make significant use of the data in a powerful and synergistic manner deriving increased use of the data for query understanding and automatic hierarchical processing.

Why is LCA Logic Important

User knowledge of LCA logic processing is not necessary when using a nonprocedural 4GL processor that supports it automatically. If the user's XML processor does not support LCA logic automatically because it requires procedural specification of the hierarchical processing semantics, then the user should be familiar with using LCA logic to prevent invalid and illogical results.

How is LCA Logic Used

As described above, LCA logic is either applied for the user automatically with a nonprocedural 4GL or it must be applied by the user procedurally. The 4GL automatic LCA processing advantage means the user does not need to know or be concerned  with the hierarchical data structure being used, any multi-leg query is performed automatically regardless of the number of legs involved. The more legs involved, the more complicated is the required LCA logic which will still be performed automatically by the 4GL. This also means that the 4GL user can still easily specify ad hoc requests regardless of the number of legs involved in the query.

Where is LCA Automatically Used Today

It would be assumed that the automatic use of LCA processing logic for multi-leg data queries would have to be designed and programmed into the 4GL language it is used in. But quite amazingly, standard SQL processing which was not designed with hierarchical processing in mind fully supports multi-leg hierarchical processing. This occurs naturally when hierarchical structure relationships are defined in standard SQL. This means that LCA processing must be occurring automatically somewhere in the relational processing. Under closer examination, these hierarchical structure relationships naturally cause the relational (Cartesian product) engine to precisely perform LCA processing logic. This derives a result that is not only hierarchically correct, but is also relationally and mathematically correct since the processing is being performed by ANSI SQL standard SQL.

LCA processing up until now required the navigation of hierarchical tree structures, but relational processing's LCA processing simulates this tree processing in standard relational row processing. This requires performing LCA processing in relational data rows a single row at a time which is necessary for relational processing. This is controlled by the hierarchical relationships driving the relational engine to form the correct combination of data relationship values under each LCA in a precise manner. This enables advanced hierarchical processing to be inherently performed in SQL and is a testimonial to SQL's general purpose processing based on relationships. This makes hierarchical processing a natural subset of relational processing.

Interestingly, while SQL handles hierarchical processing and LCA logic automatically, XQuery requires the user to specify a given query's hierarchical processing semantics. This is a tradeoff between automatic processing and procedural flexibility. This means that XQuery  needs complex LCA logic to be specified by the user for multi-leg queries. This situation has given rise to a number of academic projects experimenting with middleware for XQuery in order to supply this LCA logic generation automatically. As indicated earlier, this LCA logic can become extremely complex and prone to inaccuracies which are avoided by 4GL automatic LCA logic processing or program generation.

Implications of SQL LCA Hierarchical Processing

With the discovery and recognition of automatic fully functioning LCA logic in SQL, SQL's full multi-leg hierarchical processing capability is now backed by solid relational and hierarchical operational principles traced to its natural LCA processing logic. This understanding of SQL's hierarchical processing capabilities clears the way to freely utilize this capability  in areas such as hierarchical optimization and native XML integration performed at a full hierarchical level. This innate SQL hierarchical processing capability can be used to finally achieve total ANSI SQL/XML seamless integration and many new and powerful hierarchical based capabilities that are becoming important and necessary with the advent of XML.


For more information on related topics visit the following related portals...

Michael M. David is founder of Advanced Data Access Technologies, Inc. Previously a staff scientist and the lead XML architect for NCR/Teradata and their representative to the ANSI SQLX Group, he has more than 20 years of experience researching and designing commercial nonprocedural heterogeneous database processing products. Based on this experience, he has authored the book Advanced ANSI SQL Data Modeling and Structure Processing and many papers and articles on this subject. You can reach him at mike@adatinc.com. Additional information on hierarchical semantics and its automatic uses in SQL can be found at www.adatinc.com.

Solutions Marketplace
Provided by IndustryBrains

Manage Data Center from Virtually Anywhere!
Learn how SecureLinx remote IT management products can quickly and easily give you the ability to securely manage data center equipment (servers, switches, routers, telecom equipment) from anywhere, at any time... even if the network is down.

Data Validation Tools: FREE Trial
Protect against fraud, waste and excess marketing costs by cleaning your customer database of inaccurate, incomplete or undeliverable addresses. Add on phone check, name parsing and geo-coding as needed. FREE trial of Data Quality dev tools here.

Design Databases with ER/Studio: Free Trial
ER/Studio delivers next-generation data modeling. Multiple, distinct physical models based on a single logical model give you the tools you need to manage complex database environments and critical metadata in an intuitive user interface.

Free EII Buyer's Guide
Understand EII - Trends. Tech. Apps. Calculate ROI. Download Now.

KOM Networks Archiving and Data Storage
KOM Networks, a leader in archiving and data storage for more that 37 years, offers organizations a cost effective means to secure their growing data stores.

Click here to advertise in this space

E-mail This Article E-Mail This Article
Printer Friendly Version Printer-Friendly Version
Related Content Related Content
Request Reprints Request Reprints
Site Map Terms of Use Privacy Policy
SourceMedia (c) 2006 DM Review and SourceMedia, Inc. All rights reserved.
SourceMedia is an Investcorp company.
Use, duplication, or sale of this service, or data contained herein, is strictly prohibited.