Presentation Overview: TCSQL is a collection of SQL capabilities that enable support of object oriented programming directly in a relational database and some advanced capabilities that provide a foundation to support the Holy Grail of information technology… the ability to support Google-like queries on structured data.

Slide Presentation: TCSQL

Demonstration: Transforming an Information System into a Knowledge System



Presentation Overview: This presentation describes methods for navigating graphs in a relational database. Included are a discussion of brute-force navigation, recursion-based navigation, and transitive-closure-based navigation.

Slide Presentation: Graph Navigation in a RDBMS

Demonstration: Path Query
Demonstration: Querying Cyclic Graphs
Demonstration: Related Concepts Query
Demonstration: Multidimensional Relationship Query



Presentation Overview: This presentation describes how to support object oriented programming (OOP) directly in a relational database. This includes support for the notion of classes, objects, single/multiple inheritance, polymorphism, etc… all using standard SQL. Support of OOP is achieved by treating OOP as a graph problem, utilizing 3 tables to represent class information and 3 tables to represent object information. Collectively, these 6 tables comprise the notion of a soft schema.

Slide Presentation: Support of OOP Directly in a RDBMS

Demonstration: Instantiation of a TCSQL Class



Presentation Overview: This presentation describes a variety of graph queries in a relational database. Query types include subsumption, path, inference, and polymorphism. These query types are based upon the use of transitive closure.

Slide Presentation: Graph Queries in a RDBMS

Demonstration: Path Query
Demonstration: Querying Cyclic Graphs
Demonstration: Related Concepts Query
Demonstration: Multidimensional Relationship Query



Presentation Overview: This presentation describes 3 options for deserializing XML into a relational database. These options include deserializing into database table columns of data type XML, deserializing into conventional relational tables, and deserializing into a soft schema. In the latter approach, XML and corresponding XSD documents are treated as object graphs and class graphs respectively. Treating XSD documents as class graphs enables a clever use of XSD documents in support of a very powerful class of queries called polymorphic queries. Polymorphic queries provide the ability to write queries over collections of heterogeneous XML documents without having to hard-code knowledge accounting for the structural differences between the various XML documents. This presentation also includes a description of how to apply natural language processing (NLP) to the names or values of object graph nodes in order to associate object graph nodes with industry-standard ontology nodes.

Slide Presentation: Processing XML in a RDBMS

Prerequisite Video Presentation: Support of OOP Directly in a RDBMS

Demonstration: Importing XML into TCSQL
Demonstration: Importing XSD into TCSQL
Demonstration: Instantiation of an XSD Class