Managing XPath expressions in a database system
First Claim
1. A computer-implemented method for managing expressions in a database, the method comprising the computer-implemented steps of:
- receiving a first pathname expression that identifies a particular element within a hierarchical structure and that includes a first conditional expression relating to a particular attribute of the particular element;
generating, based on the first pathname expression, position filter data that represents a level, corresponding to the particular element, within the hierarchical structure;
storing the position filter data in one or more first columns of a database table, for use in determining whether a data item satisfies the first conditional expression in the pathname expression;
generating, based on the first pathname expression, value filter data that represents the first conditional expression relating to the particular attribute of the particular element; and
storing the value filter data in one or more second columns of a database table, for use in determining whether a data item satisfies the first conditional expression in the pathname expression.
1 Assignment
0 Petitions
Accused Products
Abstract
First data that represents a level associated with an element within an expression, such as an XPath expression, is generated from the expression, and stored in one or more columns of a table. Second data that represents a condition on an attribute of the element is generated from the expression, and stored in one or more columns of the same or a different table. A plurality of expressions can be processed as such, and a determination made whether any of the expressions match with a given hierarchical data item, such as an XML document, that includes a value that corresponds to an attribute that is associated with an element that resides at a particular level within the data item. Such determination is made based on whether the particular level matches the first data and the value satisfies the second data associated with a given expression.
177 Citations
35 Claims
-
1. A computer-implemented method for managing expressions in a database, the method comprising the computer-implemented steps of:
-
receiving a first pathname expression that identifies a particular element within a hierarchical structure and that includes a first conditional expression relating to a particular attribute of the particular element; generating, based on the first pathname expression, position filter data that represents a level, corresponding to the particular element, within the hierarchical structure; storing the position filter data in one or more first columns of a database table, for use in determining whether a data item satisfies the first conditional expression in the pathname expression; generating, based on the first pathname expression, value filter data that represents the first conditional expression relating to the particular attribute of the particular element; and storing the value filter data in one or more second columns of a database table, for use in determining whether a data item satisfies the first conditional expression in the pathname expression. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. An apparatus for managing expressions in a database, comprising:
-
means for receiving a first pathname expression that identifies a particular element within a hierarchical structure and that includes a first conditional expression relating to a particular attribute of the particular element; means for generating, based on the first pathname expression, position filter data that represents a level, corresponding to the particular element, within the hierarchical structure; means for storing the position filter data in one or more first columns of a database table, for use in determining whether a data item satisfies the first conditional expression in the pathname expression; means for generating, based on the first pathname expression, value filter data that represents the first conditional expression relating to the particular attribute of the particular element; and means for storing the value filter data in one or more second columns of a database table, for use in determining whether a data item satisfies the first conditional expression in the pathname expression.
-
-
19. A computer-readable storage medium carrying one or more sequences of instructions which, when executed, cause one or more processors to perform the steps of:
-
receiving a first pathname expression that identifies a particular element within a hierarchical structure and that includes a first conditional expression relating to a particular attribute of the particular element; generating, based on the first pathname expression, position filter data that represents a level, corresponding to the particular element, within the hierarchical structure; storing the position filter data in one or more first columns of a database table, for use in determining whether a data item satisfies the first conditional expression in the pathname expression; generating, based on the first pathname expression, value filter data that represents the first conditional expression relating to the particular attribute of the particular element; and storing the value filter data in one or more second columns of a database table, for use in determining whether a data item satisfies the first conditional expression in the pathname expression. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35)
-
Specification