METHOD AND APPARATUS FOR PROCESSING MARKUP LANGUAGE SPECIFICATIONS FOR DATA AND METADATA USED INSIDE MULTIPLE RELATED INTERNET DOCUMENTS TO NAVIGATE, QUERY AND MANIPULATE INFORMATION FROM A PLURALITY OF OBJECT RELATIONAL DATABASES OVER THE WEB
First Claim
1. In a network of computers over the internet, a multi-tier client/server system comprising of:
- A) Clients with browsers capable of processing documents in Extensible Markup Language (XML) and Resource Description Framework (RDF) carrying data/metadata information for electronic commerce and electronic business where these clients make synchronous communications through Hypertext Transfer Protocol (HTTP) with various internet sites and with object relational database servers at multiple locations consisting of XML/RDF integration software and software compliant with Common Object Request Broker Architecture;
B) Clients with browsers capable of creating and maintaining thin client windows on demand for persistent connectivity through Internet Inter ORB Protocol (IIOP) with remote object relational databases over the web for performing transactions;
C) Relational database servers with schema and business application logic defined in the form of object packages comprising;
a) User-defined packages for providing call specifications for a set of interfaces to embed in Structured Query Language (SQL) queries where these interfaces are implemented as methods in Java classes and are applied to records resulting from execution of relational operations;
b) User-defined packages for specifying operations over attribute values from multiple tables where interface definitions for methods and operators carry parameter definitions along with parameter types defined directly as table names and attribute names for safe execution semantics;
c) User-defined packages specifying interfaces where a parameter type definition maps to another interface existing at a local or remote schema object on the internet;
d) User-defined packages specifying interfaces where parameter type definitions map to tables and attributes existing at a local or remote schema object on the internet;
e) User-defined packages where Uniform Resource Identifiers (URIs) are used to locate elements in remote schema objects on the web and such URIs defining schema objects are stored in data dictionaries or repositories;
f) Method and operator interfaces defined in user-defined packages implemented in Java classes;
D) Executions of application logic in object packages on local or remote schema objects performed by Object Request Broker services in Common Object Request Broker Architecture (CORBA).
0 Assignments
0 Petitions
Accused Products
Abstract
The present invention provides a system for navigation through multiple documents in Extensible Markup Language and Resource Description Framework to inspect data/metadata in order to either start a transaction on selected item(s) in separate thin client window(s) with persistent connectivity through Internet Inter ORB Protocol or implicitly trigger read-only queries in Structured Query Language (SQL) represented in Resource Description Framework against a unified virtual Database defined over multiple physical disparate object relational databases over the web. An implicitly generated query retrieves desired sets of properties and entities presented in documents of Extensible Markup Language and Resource Description Framework for further navigation. Container types in Resource Description Framework are mapped by this invention to record and table types in a normalized relational model where URIs locating elements in relational schema components over the web are stored as primary keys/foreign keys in normalized tables. Methods and operators on such web objects are defined as part of user-defined package definitions in object relational schema where object request brokers apply such methods or operators on result sets from relational operations anywhere on the web. This invention uniquely incorporates two distinct stages of SQL computations for a collaborative method of preparation, execution and resolution of an object SQL query over disparate locations of multiple object relational databases on the web.
-
Citations
15 Claims
-
1. In a network of computers over the internet, a multi-tier client/server system comprising of:
-
A) Clients with browsers capable of processing documents in Extensible Markup Language (XML) and Resource Description Framework (RDF) carrying data/metadata information for electronic commerce and electronic business where these clients make synchronous communications through Hypertext Transfer Protocol (HTTP) with various internet sites and with object relational database servers at multiple locations consisting of XML/RDF integration software and software compliant with Common Object Request Broker Architecture;
B) Clients with browsers capable of creating and maintaining thin client windows on demand for persistent connectivity through Internet Inter ORB Protocol (IIOP) with remote object relational databases over the web for performing transactions;
C) Relational database servers with schema and business application logic defined in the form of object packages comprising;
a) User-defined packages for providing call specifications for a set of interfaces to embed in Structured Query Language (SQL) queries where these interfaces are implemented as methods in Java classes and are applied to records resulting from execution of relational operations;
b) User-defined packages for specifying operations over attribute values from multiple tables where interface definitions for methods and operators carry parameter definitions along with parameter types defined directly as table names and attribute names for safe execution semantics;
c) User-defined packages specifying interfaces where a parameter type definition maps to another interface existing at a local or remote schema object on the internet;
d) User-defined packages specifying interfaces where parameter type definitions map to tables and attributes existing at a local or remote schema object on the internet;
e) User-defined packages where Uniform Resource Identifiers (URIs) are used to locate elements in remote schema objects on the web and such URIs defining schema objects are stored in data dictionaries or repositories;
f) Method and operator interfaces defined in user-defined packages implemented in Java classes;
D) Executions of application logic in object packages on local or remote schema objects performed by Object Request Broker services in Common Object Request Broker Architecture (CORBA). - View Dependent Claims (2)
-
-
3. In a network of computers over the internet, a multi-tier client/server system comprising of:
-
(a) Multiple related internet sources representing documents in Extensible Markup Language (XML) and Resource Description Framework (RDF) for describing data and metadata for various resources and their interrelationships necessary for electronic commerce and electronic business;
(b) Resource Description Framework (RDF) describing properties and values of properties for resources identified by Uniform Resource Identifiers (URIs) where these URIs are used as primary keys and foreign keys in a normalized relational model of description for these said relationships over resources;
(c) Resource Description Framework (RDF) describing properties and values of properties for resources mapped to tables with foreign key/primary key relationships in one or more relational databases where foreign key attributes may be named to express same or inverse meaning of corresponding relationship names in RDF description, these names being defined in XML namespaces and schema definitions;
(d) Resource Description Framework (RDF) describing properties and values of properties for resources further comprises;
(1) RDF container types, namely Bag, Sequence and Alternative to represent collection of resources where these container types are mapped to normalized relations in relational model;
(2) RDF Bag container type with one-to-many relationships mapped to two tables in first normal form where one table contains primary key as the URI of the resource under description and the other table contains primary keys as the URIs of the resources in Bag container along with foreign key inherited from first relation;
(3) RDF Bag container type with many-to-many relationships mapped to three tables in second normal form where first table contains primary key as the URI of a resource under description, second table contains primary keys as the URIs of resources in Bag container and third table maps primary keys of first table to primary keys of second table capturing many to many relationships;
(4) RDF Bag container type with more complex nesting of relationships normalized into relations in higher normal forms;
(5) RDF collection type Alternative (Alt) mapped to two relations in one-to-one relationship where the first relation contains records with a two part primary key, first part as the URI of the resource under description and second part a tag to identify a specific alternative, and the second relation contains primary key as URI of a resource in Alternative container along with foreign key being the two part primary key inherited from first relation;
(6) RDF collection type Sequence (Seq) mapped to a single relation with multi-part primary key where first part is the URI of the resource under description and second part is URI of a resource in Sequence container maintaining sequence by sorting over compound primary key;
(e) Data and metadata information stored in a relational database or part of a relational database or union over multiple relational databases mapped to documents in Extensible Markup Language and Resource Description Framework for entities, properties and values of properties where such entities and properties are URIs identifying table names and attribute names respectively. - View Dependent Claims (4, 5, 6, 7, 8, 9, 10)
-
-
11. In a network of computers over the internet, a multi-tier client/server system incorporating distributed business application logic with relational data at disparate locations comprising of:
-
A) Multiple documents in Extensible Markup Language and Resource Description Framework with data and metadata definitions to view, navigate and trigger implicit queries against a logical schema definition for a single unified Database consisting of multiple disparate relational database instances with tables, foreign key/primary key relationships, user-defined types and business application logic in object packages;
B) Multiple documents in Extensible Markup Language and Resource Description Framework with data and metadata definitions for navigating through a single unified schema containing many instances of component physical schema of relational databases, so as to locate and focus on a data set(s), a text item or any other content(s) and to initiate transaction on such focused item(s) in a separately created thin client window(s) establishing persistent connectivity with any remote physical database instance(s);
C) A single unified virtual Database for navigation, transaction processing and implicit object relational query processing over the web, defined over multiple physical component schema consisting of;
a) Uniform Resource Identifiers (URIs) used for locating remote schema objects;
b) Relations as view caches to maintain relationships over foreign keys inherited from a table in the local component schema and primary keys of a table in a remote schema located by URIs;
c) Relations as view caches to enforce referential integrity across component physical relational databases over the internet;
d) Business logic in the form of object packages implemented in Java classes to incorporate processing logic over a join or other relational operations performed in a local or remote component schema;
e) View cache tables maintaining an attribute(s) which is an user-defined type with an associated object package implemented as Java class at a remote schema location and URIs as attribute values for locating primary keys in that remote schema. D) Property based specification and navigation through multiple documents in Extensible Markup Language and Resource Description Framework for implicitly generating object SQL queries to represent a multiple resource join in a single logical schema where such a join is performed as multiple partial joins at disparate component physical schema with communications through Internet Inter ORB Protocol and Hypertext Transfer Protocol at each schema location;
E) Property based navigation through multiple documents in Extensible Markup Language and Resource Description Framework for implicitly generating and executing object SQL queries leading to results from many levels of business logic applications on a complex join in a logical schema where such a business logic application on a complex join is executed as cooperative processing of distributed business logic on partial joins in component schema at disparate locations communicating through Object Request Brokers;
F) Object SQL query processing over a single unified database over the internet in two separate stages of processing where stage (1) of processing resolves metadata definitions from disparate schema components to decompose an object SQL query into separate components and stage (2) of processing executes such SQL components in physical databases;
G) Object SQL query executions in a single unified Database over the internet leading to collaborations in stage (1) of computations by;
(a) sending proper sets of records to remote schema locations, (b) receiving resulting records from remote schema locations, (c) creating temporary tables in local database for storing record sets received and (d) triggering necessary SQL components to perform join over record sets from local and remote databases.- View Dependent Claims (12, 13, 14, 15)
A) Keeping non-detailed metadata (information about relational data) for the logical schema at each component physical schema locations or at a centralized repository so that locations of other component schema are available to said stage (1) computation of SQL processing for all tables, types and packages used in a query;
B) Parsing a Structured Query Language (SQL) query at a physical component schema location by said stage (1) SQL processing layer to resolve definitions for tables, types and packages whatever is locally available and extracting portion of the query for sending it to other locations for preparation by corresponding said stage (1) SQL processing layers at disparate locations wherever the relevant metadata is available;
C) Preparing fully a SQL query at multiple sites by successively parsing with locally available metadata and initializing any object packages used at each component schema location by said stage (1) SQL processing software layers;
D) Beginning execution only after complete preparations at all involved locations;
E) Performing relational operations by said stage (2) SQL processing layers and executing application logic at each component schema location by collaborations at said stage (1) SQL processing layers through Object Request Brokers;
F) Completing any business logic execution at a location depends on successive completion of other executions at other locations when there are dependencies with nested applications and generating result sets in Extensible Markup Language and Resource Description Framework by said stage (1) SQL processing layers for transporting back to client locations.
-
-
14. A system as defined in claim 13 wherein said preparation phase and said execution phase of an SQL query further comprises means of including internet locations with centralized legacy databases and other existing data stores with middleware software for processing documents in Extensible Markup Language and Resource Description Framework and also middleware software compliant with Common Object Request Broker Architecture.
-
15. A system as defined in claim 14 wherein said legacy databases and said existing centralized data stores carrying no object packages for business logic and carrying necessary middleware software for processing documents in Extensible Markup Language and Resource Description Framework further comprises means of supporting SQL queries with embedded business logic against such legacy databases by defining object packages in other component schema locations.
Specification