Patent US1565585A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5797136A Expired / Lapsed US ⏱️ 0.0 years remaining

Optional quantifiers in relational and object-oriented views of database systems

Assignee: International Business Machines Corp
•
Filing: 1995-10-05
•
Granted: 1998-08-18
•
Expires: 2015-10-05
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A system, method, and program enables database management systems for relational and object-oriented databases to recognize a quantifier in a query as being designated as optional. An optional quantifier will participate in a query depending upon certain conditions. If the columns (or objects) projected out in the view that are dependent upon the quantifier are not used by the query, the quantifier is dropped from the definition of the view. The query is processed using only the relations in the view not associated with the optional quantifier. The results returned are as if a left outer join operation with duplicate elimination had been performed, although the actual processing of the query was independent of, i.e., did not involve, a left outer join operation. If the columns (or objects) projected out in the view that are dependent upon the quantifier are used by the query, the optional quantifier remains in the definition of the view and the query is processed using a join operation.

Inventors

  • 👤 Philip L. Boyer
  • 👤 Gerald G. Kiernan

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-29 18:45
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/20; G06F16/24; G06F16/242; G06F16/2433; G06F16/2448; G06F16/245; G06F16/2453; G06F16/24534; G06F16/24535; G06F16/24547; G06F16/2455; G06F16/24553; G06F16/24558; G06F16/2456; G06F16/28; G06F16/289; Y; Y10; Y10S; Y10S707/00; Y10S707/99931; Y10S707/99932; Y10S707/99933; Y10S707/99935

Claims Analysis

Total Claims: 36
Claim 1
Independent Claim 106 words
A method, in a database management system, for processing a query, said method comprising: receiving said query over a view having a first relation and a second relation, said view having a quantifier designated as optional wherein said quantifier refers to said second relation, said query selecting elements only from said first relation; processing the query independently of a left outer join operation; and returning a result set having a number of tuples dependent upon the number of elements in said first relation; whereby a semantic of the query is equivalent to a left outer join with duplicate elimination if said first relation contains no duplicates.
Claim 2
Independent Claim 106 words
A method, in a database management system, for processing a query, said method comprising: receiving said query over a view having a first relation and a second relation, said view having a quantifier designated as optional wherein said quantifier refers to said second relation, said query selecting elements only from said first relation; processing the query independently of a left outer join operation; and returning a result set having a number of tuples dependent upon the number of elements in said first relation; whereby a semantic of the query is equivalent to a left outer join with duplicate elimination if said first relation contains no duplicates.
Claim 3
Dependent Claim 68 words
The method of claim 1 further comprising: receiving a second query over the view having the first relation and the second relation, said view having the quantifier designated as optional wherein said quantifier refers to said second relation, said second query selecting elements from said first relation and said second relation; and returning a result set from said first relation and said second relation using a join semantic.
Claim 4
Independent Claim 139 words
A method, in a database management system, for processing a query, said method comprising: determining a usage, by said query, of a view having at least a first relation and a second relation by determining whether at least one element is referenced, by said query, from each one of said at least said first relation and said second relation making up the view; determining which one relation of said at least one of said first relation and said second relation is not referenced by the query and determining if there is an optional quantifier associated with said one relation not referenced; removing, from a definition of the view for said query, each of said one relation having said optional quantifier, thereby making a second definition of said view; and processing said query using said second definition of the view.
Claim 5
Independent Claim 139 words
A method, in a database management system, for processing a query, said method comprising: determining a usage, by said query, of a view having at least a first relation and a second relation by determining whether at least one element is referenced, by said query, from each one of said at least said first relation and said second relation making up the view; determining which one relation of said at least one of said first relation and said second relation is not referenced by the query and determining if there is an optional quantifier associated with said one relation not referenced; removing, from a definition of the view for said query, each of said one relation having said optional quantifier, thereby making a second definition of said view; and processing said query using said second definition of the view.
Claim 6
Independent Claim 105 words
A method, in a database management system, for processing a query, said method comprising: determining a usage, by said query, of a view having at least a first relation and a second relation; determining if there is an optional quantifier associated with elements from any of said first relation and said second relation; and removing, from a definition of the view for said query, said optional quantifier if elements, belonging to the optional quantifier, that are projected out from the view are unused by the query, thereby making a second definition of the view; and processing said query using said second definition of the view.
Claim 7
Independent Claim 105 words
A method, in a database management system, for processing a query, said method comprising: determining a usage, by said query, of a view having at least a first relation and a second relation; determining if there is an optional quantifier associated with elements from any of said first relation and said second relation; and removing, from a definition of the view for said query, said optional quantifier if elements, belonging to the optional quantifier, that are projected out from the view are unused by the query, thereby making a second definition of the view; and processing said query using said second definition of the view.
Claim 8
Independent Claim 105 words
A method, for use in a database management system, for processing a query, said method comprising: parsing said query; generating an internal representation of said query including a) each view that the query is referencing and any additional view said view is using, b) each quantifier, and c) an indication if said each quantifier has been designated as optional; determining whether or not to keep any one of said each quantifier designated as optional; determining whether said quantifier designated as optional will affect a semantic of the query; rewriting said query dependent upon said determinations; and processing said query based upon said query as rewritten.
Claim 9
Independent Claim 105 words
A method, for use in a database management system, for processing a query, said method comprising: parsing said query; generating an internal representation of said query including a) each view that the query is referencing and any additional view said view is using, b) each quantifier, and c) an indication if said each quantifier has been designated as optional; determining whether or not to keep any one of said each quantifier designated as optional; determining whether said quantifier designated as optional will affect a semantic of the query; rewriting said query dependent upon said determinations; and processing said query based upon said query as rewritten.
Claim 10
Dependent Claim 22 words
The method of claim 5, further comprising a step of optimizing a rewritten query independently of the optional designation of the quantifier.
Claim 11
Dependent Claim 36 words
The method of claim 5, wherein the step of determining whether or not to keep said any one of said at least one quantifier is dependent upon determining a usage of the quantifier in the query.
Claim 12
Dependent Claim 38 words
The method of claim 5 wherein if the optional quantifier is used in any of at least one dependency, a whole view, up to a point where the optional quantifier is used, is used in processing said query.
Claim 13
Dependent Claim 33 words
The method of claim 5 wherein if the query makes references independently of any column associated with the optional quantifier, said optional quantifier is removed from a list of quantifiers in the view.
Claim 14
Dependent Claim 81 words
A database system comprising: means for providing a capability for a user to query, via a query, at least one subpart of a view; means for providing a capability for said user to designate another part of the view as optional; means enabling a behavior of a view to be dependent upon an element selected from the view by the query; and means for changing a semantic of the view depending upon a different use of the view by the query.
Claim 15
Dependent Claim 81 words
A database system comprising: means for providing a capability for a user to query, via a query, at least one subpart of a view; means for providing a capability for said user to designate another part of the view as optional; means enabling a behavior of a view to be dependent upon an element selected from the view by the query; and means for changing a semantic of the view depending upon a different use of the view by the query.
Claim 16
Dependent Claim 80 words
A database system comprising: means for providing a capability for a user to query, via a query, at least one subpart of a view; means, in response to the query involving only said subpart of the view, for eliminating a remaining part of the view from an optimized query if said remaining part of the view is not involved in accessing certain ones of at least one attribute from the query and said remaining part had been designated as optional.
Claim 17
Dependent Claim 80 words
A database system comprising: means for providing a capability for a user to query, via a query, at least one subpart of a view; means, in response to the query involving only said subpart of the view, for eliminating a remaining part of the view from an optimized query if said remaining part of the view is not involved in accessing certain ones of at least one attribute from the query and said remaining part had been designated as optional.
Claim 18
Dependent Claim 60 words
A database system comprising: means for recognizing a quantifier designated, in a view, as optional in a query to said database system; and means for eliminating the quantifier from participation in the view if each one of at least one element, dependent upon the quantifier and projected out in the view used by the view, are unused by the query.
Claim 19
Dependent Claim 60 words
A database system comprising: means for recognizing a quantifier designated, in a view, as optional in a query to said database system; and means for eliminating the quantifier from participation in the view if each one of at least one element, dependent upon the quantifier and projected out in the view used by the view, are unused by the query.
Claim 20
Dependent Claim 27 words
The database system of 12 wherein said means for eliminating the quantifier from participation in said query comprises dropping the quantifier from the definition of the view.
Claim 21
Dependent Claim 27 words
The database system of 12 wherein said means for eliminating the quantifier from participation in said query comprises dropping the quantifier from the definition of the view.
Claim 22
Dependent Claim 82 words
A database system comprising: means for providing a single view type of a plurality of relations; means for providing a capability for at least one quantifier associated with at least one of said plurality of relations to be designated as optional; means for allowing at least one of a plurality of columns to be selected in a query; and providing a capability to change a semantic of the query depending upon which columns are selected and which quantifier is designated as optional.
Claim 23
Dependent Claim 82 words
A database system comprising: means for providing a single view type of a plurality of relations; means for providing a capability for at least one quantifier associated with at least one of said plurality of relations to be designated as optional; means for allowing at least one of a plurality of columns to be selected in a query; and providing a capability to change a semantic of the query depending upon which columns are selected and which quantifier is designated as optional.
Claim 24
Dependent Claim 77 words
A database system comprising: means for recognizing a quantifier, appearing in a view definition, annotated as being optional; means for dropping the quantifier marked as optional, by a query rewrite engine, if each of at least one projected column, dependent upon the quantifier, of the view is unused by a query; means for reusing the view for a second query; and means for changing a semantic of the second query depending upon a usage of the view.
Claim 25
Dependent Claim 77 words
A database system comprising: means for recognizing a quantifier, appearing in a view definition, annotated as being optional; means for dropping the quantifier marked as optional, by a query rewrite engine, if each of at least one projected column, dependent upon the quantifier, of the view is unused by a query; means for reusing the view for a second query; and means for changing a semantic of the second query depending upon a usage of the view.
Claim 26
Dependent Claim 198 words
A computer system having a database management system, at least one random access storage device for storing relations of information, a communication link for receiving and sending data to at least one remote client computer system having access to said relations of information, said computer system comprising: means for parsing a query received from a user; means for generating an internal representation of said query including a) each one of at least one view that the query is referencing and any additional at least one view said each one of at least one view is using, b) each one of at least one quantifier, and c) an indication if said each one of at least one quantifier has been designated as optional; and means for determining whether or not to keep any one of said at least one quantifier designated as optional; means for determining whether said quantifier designated as optional will affect a semantic of the query; means for rewriting said query dependent upon said determinations; means for optimizing a rewritten query independently of an optional designation of any of said at least one quantifier; and means for processing said query based upon said rewritten query optimized.
Claim 27
Dependent Claim 198 words
A computer system having a database management system, at least one random access storage device for storing relations of information, a communication link for receiving and sending data to at least one remote client computer system having access to said relations of information, said computer system comprising: means for parsing a query received from a user; means for generating an internal representation of said query including a) each one of at least one view that the query is referencing and any additional at least one view said each one of at least one view is using, b) each one of at least one quantifier, and c) an indication if said each one of at least one quantifier has been designated as optional; and means for determining whether or not to keep any one of said at least one quantifier designated as optional; means for determining whether said quantifier designated as optional will affect a semantic of the query; means for rewriting said query dependent upon said determinations; means for optimizing a rewritten query independently of an optional designation of any of said at least one quantifier; and means for processing said query based upon said rewritten query optimized.
Claim 28
Dependent Claim 159 words
An article of manufacture comprising: a computer usable medium having computer readable program code means embodied therein for processing a query, the computer readable program code means in said article of manufacture comprising: computer readable program code means for providing a database management system a capability to receive said query over a view having a first relation and a second relation, said view having a quantifier designated as optional wherein said quantifier refers to said second relation, said query selecting elements only from said first relation; computer readable program code means for providing a capability to process the query independently of a left outer join operation; and computer readable program code means for providing a capability to return a result set having a number of tuples dependent upon the number of elements in said first relation; whereby a semantic of the query is equivalent to a left outer join with duplicate elimination if said first relation contains no duplicates.
Claim 29
Dependent Claim 159 words
An article of manufacture comprising: a computer usable medium having computer readable program code means embodied therein for processing a query, the computer readable program code means in said article of manufacture comprising: computer readable program code means for providing a database management system a capability to receive said query over a view having a first relation and a second relation, said view having a quantifier designated as optional wherein said quantifier refers to said second relation, said query selecting elements only from said first relation; computer readable program code means for providing a capability to process the query independently of a left outer join operation; and computer readable program code means for providing a capability to return a result set having a number of tuples dependent upon the number of elements in said first relation; whereby a semantic of the query is equivalent to a left outer join with duplicate elimination if said first relation contains no duplicates.
Claim 30
Dependent Claim 90 words
The article of manufacture of claim 17 further comprising: computer readable program code means for providing a capability to receive a second query over the view having the first relation and the second relation, said view having the quantifier designated as optional wherein said quantifier refers to said second relation, said second query selecting elements from said first relation and said second relation; and computer readable program code means for providing a capability to return a result set from said first relation and said second relation using a join semantic.
Claim 31
Dependent Claim 178 words
An article of manufacture comprising: a computer usable medium having computer readable program code means embodied therein, the computer readable program code means in said article of manufacture comprising: computer readable program code means for providing a database management system a capability to determine a usage, by said query, of a view having at least a first relation and a second relation by determining whether at least one element is referenced, by said query, from each one of said at least said first relation and said second relation making up the view; computer readable program code means for providing a capability to determine which one relation of said at least one of said first relation and said second relation is not referenced by the query and determining if there is an optional quantifier associated with said one relation not referenced; and computer readable program code means for providing a capability to remove, from a definition of the view for said query, each of said one relation having said optional quantifier, thereby making a second definition of said view.
Claim 32
Dependent Claim 178 words
An article of manufacture comprising: a computer usable medium having computer readable program code means embodied therein, the computer readable program code means in said article of manufacture comprising: computer readable program code means for providing a database management system a capability to determine a usage, by said query, of a view having at least a first relation and a second relation by determining whether at least one element is referenced, by said query, from each one of said at least said first relation and said second relation making up the view; computer readable program code means for providing a capability to determine which one relation of said at least one of said first relation and said second relation is not referenced by the query and determining if there is an optional quantifier associated with said one relation not referenced; and computer readable program code means for providing a capability to remove, from a definition of the view for said query, each of said one relation having said optional quantifier, thereby making a second definition of said view.
Claim 33
Dependent Claim 170 words
An article of manufacture comprising: a computer usable medium having computer readable program code means embodied therein for processing a query, the computer readable program code means in said article of manufacture comprising: computer readable program code means for providing a database management system a capability to determine a usage, by said query, of a view having at least a first relation and a second relation; computer readable program code means for providing a capability to determine if there is an optional quantifier associated with elements from any of said at least said first relation and said second relation; computer readable program code means for providing a capability to remove, from a definition of the view for said query, said optional quantifier if elements, belonging to the optional quantifier, that are projected out from the view are unused by the query, thereby making a second definition of the view; and computer readable program code means for providing a capability to process said query using said second definition of the view.
Claim 34
Dependent Claim 170 words
An article of manufacture comprising: a computer usable medium having computer readable program code means embodied therein for processing a query, the computer readable program code means in said article of manufacture comprising: computer readable program code means for providing a database management system a capability to determine a usage, by said query, of a view having at least a first relation and a second relation; computer readable program code means for providing a capability to determine if there is an optional quantifier associated with elements from any of said at least said first relation and said second relation; computer readable program code means for providing a capability to remove, from a definition of the view for said query, said optional quantifier if elements, belonging to the optional quantifier, that are projected out from the view are unused by the query, thereby making a second definition of the view; and computer readable program code means for providing a capability to process said query using said second definition of the view.
Claim 35
Dependent Claim 109 words
An article of manufacture comprising: a computer usable medium having computer readable program code means embodied therein for processing a query, the computer readable program code means in said article of manufacture comprising: computer readable program code means for providing a database management system a capability to recognize a quantifier designated, in a view, as optional in a query to a database system; and computer readable program code means for providing a capability to eliminate the quantifier from participation in said query if each one of at least one element, dependent upon the quantifier and projected out in the view used by said query, are unused by the query.
Claim 36
Dependent Claim 109 words
An article of manufacture comprising: a computer usable medium having computer readable program code means embodied therein for processing a query, the computer readable program code means in said article of manufacture comprising: computer readable program code means for providing a database management system a capability to recognize a quantifier designated, in a view, as optional in a query to a database system; and computer readable program code means for providing a capability to eliminate the quantifier from participation in said query if each one of at least one element, dependent upon the quantifier and projected out in the view used by said query, are unused by the query.

References Cited (Backward Citations)

US5091852A Cited
US5121494A Cited
US5241648A Cited
US5557791A Cited
US5367675A Cited
US5412804A Cited
US5555367A Cited
US5548755A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-08-17 2002-02-16 2002-08-18 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-08-17 2006-02-16 2006-08-18 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-08-17 2010-02-16 2010-08-18 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag