Platform for processing semi-structured self-describing data with controlled side effects
First Claim
1. A method, executed by a programmable processor, of specifying, generating, and running a data processing system, comprising the steps of:
- (a) providing a plurality of predicates, each referring to a set of arguments,(b) providing a plurality of specifications, each of which defines valid argument values for said predicates, and refers to;
i. a set of variables, andii. a set of clauses,(c) specifying some clauses of said specifications by referring to one of said predicates, and to variables of the specification to specify values for arguments of the predicate, so that any of said predicates can be defined by referring to other said predicates,(d) providing a plurality of plans, which are able to be run to generate sets of valid argument values for said predicates,(e) providing a planning means which is able to generate said plans from said specifications,(f) providing an evaluation means which is able to run said plans to generate sets of valid argument values,(g) providing an input means which is able to provide input data values for a set of the arguments of a predicate,(h) providing an output means which is able to output data,(i) inputting argument values from said input means, evaluating input argument values to generate output argument values using said evaluation means, and outputting argument values using said output means,(j) providing a data store which is able to store and retrieve data,(k) specifying some of said clauses by referring to locations in said data store,(l) further comprising specifying some of said clauses by specifying an alteration to said data store, so that any predicate or clause may have arbitrary effects on the data store, and(m) wherein said evaluation means further comprises;
i. altering said data store in accordance with only the clauses that refer to an alteration in said data store and that are also included in a successfully evaluated plan for said input, and in accordance only with the variable values that were tested successfully.
0 Assignments
0 Petitions
Accused Products
Abstract
An Extensible Markup Language (XML) Application Server for storing, processing, communicating, and displaying dynamic semi-structured information. It comprises a declarative specification language, a transactional indexed XML data store, and an XML application server engine. An integrated architecture (a) provides for optimization, indexing, and backtracking search in a business logic layer, (b) provides for general-purpose programming idioms including recursive function definitions, iteration, and dynamic dispatch in data layer queries and updates, and (c) eliminates processing overhead and maintenance issues caused by transforming between relational, object-oriented, and semi-structured data paradigms.
-
Citations
3 Claims
-
1. A method, executed by a programmable processor, of specifying, generating, and running a data processing system, comprising the steps of:
-
(a) providing a plurality of predicates, each referring to a set of arguments, (b) providing a plurality of specifications, each of which defines valid argument values for said predicates, and refers to; i. a set of variables, and ii. a set of clauses, (c) specifying some clauses of said specifications by referring to one of said predicates, and to variables of the specification to specify values for arguments of the predicate, so that any of said predicates can be defined by referring to other said predicates, (d) providing a plurality of plans, which are able to be run to generate sets of valid argument values for said predicates, (e) providing a planning means which is able to generate said plans from said specifications, (f) providing an evaluation means which is able to run said plans to generate sets of valid argument values, (g) providing an input means which is able to provide input data values for a set of the arguments of a predicate, (h) providing an output means which is able to output data, (i) inputting argument values from said input means, evaluating input argument values to generate output argument values using said evaluation means, and outputting argument values using said output means, (j) providing a data store which is able to store and retrieve data, (k) specifying some of said clauses by referring to locations in said data store, (l) further comprising specifying some of said clauses by specifying an alteration to said data store, so that any predicate or clause may have arbitrary effects on the data store, and (m) wherein said evaluation means further comprises; i. altering said data store in accordance with only the clauses that refer to an alteration in said data store and that are also included in a successfully evaluated plan for said input, and in accordance only with the variable values that were tested successfully. - View Dependent Claims (2, 3)
-
Specification