← Back to Patent Explorer
US6356913B1 Expired / Lapsed US ⏱️ 0.0 years remaining

Generic (database-independent) and dynamically-modifiable schema

Assignee: Avaya Inc
•
Filing: 1999-06-09
•
Granted: 2002-03-12
•
Expires: 2019-06-09
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A generic and dynamically-modifiable database schema has a tree structure that includes leaf nodes each defining a value of an attribute, branch container nodes each representing a different attribute and identifying those leaf nodes that define values of the container node's attribute, root nodes each representing a database record and identifying those leaf nodes in different container nodes that define values of an attribute of the root node's record, a root container node representing a database and identifying the root nodes that represent its records, attribute nodes each representing a different attribute and identifying the ii branch container node that represents that attribute, and a map container node identifying attribute nodes. Each leaf, root, and attribute node is a data structure that defines a name of an attribute, a value of the named attribute, and an identifier—an index or a dictionary—of zero or more nodes that define values of attributes of the named attribute's value. Attribute nodes lack the value. Each container node is a table, a dictionary, or an array. The schema further includes operations to insert, update, and delete records, and to add and delete attributes.

Inventors

  • 👤 Jeffrey Chu
  • 👤 Lei Zhu

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-09 21:58
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/20; G06F16/21; G06F16/211; G06F16/212; Y; Y10; Y10S; Y10S707/00; Y10S707/99931; Y10S707/99932; Y10S707/99941; Y10S707/99943; Y10S707/99944; Y10S707/99945; Y10S707/99951; Y10S707/99952

Claims Analysis

Total Claims: 31
Claim 1
Independent Claim 120 words
An apparatus comprising: a memory storing a database having a schema that includes a plurality of leaf nodes each representing an instance of an attribute, a plurality of branch container nodes each corresponding to a different attribute and identifying those leaf nodes that represent instances of the container node's attribute, at least one root node each representing a database record and identifying a leaf node of a least one container node which leaf node represents an instance of an attribute of the root node's database record, a plurality of attribute nodes each corresponding to a different said attribute and identifying the branch container node that corresponds to said attribute, and a map container node identifying the plurality of attribute nodes.
Claim 2
Independent Claim 120 words
An apparatus comprising: a memory storing a database having a schema that includes a plurality of leaf nodes each representing an instance of an attribute, a plurality of branch container nodes each corresponding to a different attribute and identifying those leaf nodes that represent instances of the container node's attribute, at least one root node each representing a database record and identifying a leaf node of a least one container node which leaf node represents an instance of an attribute of the root node's database record, a plurality of attribute nodes each corresponding to a different said attribute and identifying the branch container node that corresponds to said attribute, and a map container node identifying the plurality of attribute nodes.
Claim 3
Dependent Claim 47 words
The apparatus of claim 1 wherein: each leaf and root node is represented by a data structure that defines a name of an attribute, and instance of the named attribute, and an identifier of nodes that represent instances of attributes of said instance of the named attribute.
Claim 4
Dependent Claim 34 words
The apparatus of claim 2 wherein: each container node is represented by a data structure that defines a name of an attribute and an identifier of nodes that define instances of the named attribute.
Claim 5
Dependent Claim 41 words
The apparatus of claim 3 wherein: each identifier comprises a dictionary of names of the attributes of said instance of the named attribute and corresponding pointers that point to the nodes that represent the instances of those attributes of said instances.
Claim 6
Dependent Claim 29 words
The apparatus of claim 3 wherein: each identifier comprises a pointer that points to the nodes that define values of the attributes of said instance of the named attribute.
Claim 7
Dependent Claim 59 words
The apparatus of claim 3 further comprising: instructions stored in the memory for execution by a processor to cause the processor to respond to an instruction to modify the schema, by modifying the identifier of at least one leaf or root data structure and adding or deleting both a branch container data structure and a corresponding attribute data structure.
Claim 8
Dependent Claim 52 words
The apparatus of claim 2 further comprising: instructions stored in the memory for execution by a processor to cause the processor to respond to an instruction to modify the schema, by modifying the identifier of at least one leaf or root data structure and adding or deleting a branch container data structure.
Claim 9
Dependent Claim 17 words
The apparatus of claim 1 wherein: each instance of an attribute defines a value of said attribute.
Claim 10
Dependent Claim 48 words
The apparatus of claim 1 wherein: the plurality of leaf nodes include at least one branch node each representing an instance of an attribute that has at least one other attribute and identifying at least one leaf node which represents an instance of at least one other attribute.
Claim 11
Dependent Claim 60 words
The apparatus of claim 9 further comprising: instructions stored in the memory for execution by a processor to cause the processor to respond to an instruction to modify the schema, by adding or deleting a branch container node and causing at least one root node or branch node to identify or cease identifying a leaf node of said branch container.
Claim 12
Dependent Claim 21 words
The apparatus of claim 1 further comprising: a root container node representing the database and identifying each of the root nodes.
Claim 13
Dependent Claim 87 words
The apparatus of claim 1 wherein: each container node is represented by a table, and each leaf, root, and attribute node is represented by an entry in a corresponding table wherein each leaf and root entry defines a name of an attribute, an instance of the named attribute, and an identifier of nodes that define instances of attributes of said instance of the named attribute, and each attribute entry defines a name of an attribute and an identifier of nodes that define instances of the named attribute.
Claim 14
Dependent Claim 29 words
The apparatus of claim 12 wherein: each attribute entry defines the name of the attribute and an identifier of the container table that defines instances of the named attribute.
Claim 15
Dependent Claim 71 words
The apparatus of claim 1 wherein: each node is represented by a data object defining a name of an attribute wherein each container and attribute data object further defines an identifier of nodes that define instances of the named attribute and each leaf and root data object defines an instance of the named attribute and an identifier of nodes that define instances of attributes of said instances of the named attribute.
Claim 16
Dependent Claim 43 words
The apparatus of claim 1 further comprising: instructions stored in the memory for execution by a processor to cause the processor to respond to an instruction to modify the schema, by adding or deleting a branch container node and a corresponding attribute node.
Claim 17
Dependent Claim 83 words
The apparatus of claim 1 further comprising: instructions stored in the memory for execution by a processor to cause the processor to respond to an instruction to insert a record into the database, for accessing the attribute nodes of the map container node to identify the root container node and the branch container nodes, adding a root node for the record to the identified root container node, and adding a leaf node for the record to each of the identified branch container nodes.
Claim 18
Dependent Claim 144 words
The apparatus of claim 1 further comprising: instructions stored in the memory for execution by a processor to cause the processor to respond to an instruction to update a record of the database, for finding the root node of the record in the root container node and determining leaf nodes identified by the found root node, using the found root node and the identified leaf nodes to generate the record, and returning the generated record, and responsive to receipt of modifications to the generated record, for accessing the attribute nodes of the map container node to identify the branch container nodes, modifying the leaf node for the record in each branch container node that has a leaf node for the record, and adding a leaf node for the record to each branch container node that does not have a leaf node for the record.
Claim 19
Dependent Claim 65 words
The apparatus of claim 1 further comprising: instructions stored in the memory for execution by a processor to cause the processor to respond to an instruction to delete a record from the database, for accessing the root node of the record in the root container node and determining leaf nodes identified by the root node, and deleting the root node and the identified leaf nodes.
Claim 20
Dependent Claim 64 words
The apparatus for claim 1 further comprising: instructions stored in the memory for execution by a processor to cause the processor to respond to an instruction to add an attribute to the schema, for creating a branch container node corresponding to the attribute, and adding an attribute node corresponding to the attribute and identifying the created branch container node to the map container node.
Claim 21
Dependent Claim 71 words
The apparatus of claim 1 further comprising: instructions stored in the memory for execution by a processor to cause the processor to respond to an instruction to delete an attribute from the schema, for accessing the attribute node corresponding to the attribute in the map container node, and deleting the leaf nodes identified by the branch container node identified by the attribute node, the branch container node, and the attribute node.
Claim 22
Independent Claim 151 words
An apparatus comprising: a memory storing a database having a schema that includes a plurality of leaf nodes each defining a name of an attribute and a value of the named attribute, a plurality of branch container nodes each corresponding to a different said attribute and including those leaf nodes that define values of said corresponding attribute, at least one root node each representing a database record, each defining a name and a value of an attribute of the record and identifying a leaf node of at least one container node which leaf node defines a value of an attribute of the value of the attribute of the record, a root container node including the root nodes, a plurality of attribute nodes each corresponding to a different said attribute and pointing to the container node that corresponds to said attribute, and a map container node including the plurality of attribute nodes.
Claim 23
Independent Claim 151 words
An apparatus comprising: a memory storing a database having a schema that includes a plurality of leaf nodes each defining a name of an attribute and a value of the named attribute, a plurality of branch container nodes each corresponding to a different said attribute and including those leaf nodes that define values of said corresponding attribute, at least one root node each representing a database record, each defining a name and a value of an attribute of the record and identifying a leaf node of at least one container node which leaf node defines a value of an attribute of the value of the attribute of the record, a root container node including the root nodes, a plurality of attribute nodes each corresponding to a different said attribute and pointing to the container node that corresponds to said attribute, and a map container node including the plurality of attribute nodes.
Claim 24
Dependent Claim 12 words
The apparatus of claim 21 wherein: each node comprises a data structure.
Claim 25
Dependent Claim 56 words
The apparatus of claim 21 further comprising: instructions stored in the memory for execution by a processor to cause the processor to respond to an instruction to modify the schema, by modifying node identification effected by at least one leaf or root node and adding or deleting a branch container node and a corresponding attribute node.
Claim 26
Dependent Claim 64 words
The apparatus of claim 21 further comprising: instructions stored in the memory for execution by a processor to cause the processor to respond to an instruction to add an attribute to the schema, for creating a branch container node corresponding to the attribute and adding an attribute node corresponding to the attribute and identifying the created branch container node to the map container node.
Claim 27
Dependent Claim 71 words
The apparatus of claim 24 further comprising: instructions stored in the memory for execution by the processor to cause the processor to respond to an instruction to delete an attribute from the schema, for accessing the attribute node corresponding to the attribute in the map container node, and deleting the leaf nodes identified by the branch container node identified by the attribute node, the branch container node, and the attribute node.
Claim 28
Dependent Claim 78 words
The apparatus of claim 25 further comprising: instructions stored in the memory for execution by the processor to cause the processor to insert a record into the database, for accessing the attribute nodes of the map container node to identify the root container node and the branch container nodes, adding a root node for the record to the identified root container node, and adding a leaf node for the record to each of the identified branch container nodes.
Claim 29
Dependent Claim 65 words
The apparatus of claim 26 further comprising: instructions stored in the memory for execution by the processor to cause the processor to respond to an instruction to delete a record from the database, for accessing the root node of the record in the root container node and determining leaf nodes identified by the root node, and deleting the root node and the identified leaf nodes.
Claim 30
Dependent Claim 89 words
The apparatus of claim 27 further comprising: instructions stored in the memory for execution by the processor to update a record of the database, for accessing the attribute nodes of the map container to identify the container nodes that include nodes for the record, modifying the root node or the leaf nodes for the record in each container node that has a node for the record, and adding a leaf node for the record to each branch container node that does not have a leaf node for the record.
Claim 31
Dependent Claim 81 words
The apparatus of claim 28 wherein: instructions stored in the memory for execution by the processor to cause the processor to respond to an instruction to update a record of the database further include instructions to cause the processor to find the root node of the record in the root container node and determine leaf nodes identified by the found root node, use the found root node and the identified leaf nodes to generate the record, and return the generated record.

References Cited (Backward Citations)

US5784560A Cited
US6141655A Cited
US6150062A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2005-03-11 2005-09-10 2006-03-12 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2009-03-11 2009-09-10 2010-03-12 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2013-03-11 2013-09-10 2014-03-12 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag