Configurable pattern recognition and filtering tool
First Claim
1. An apparatus for recognizing user-defined patterns in a data stream,the apparatus comprising a subpattern configuring means, each subpattern comprising a value set and a range, each value set comprised of a list of values, each range comprising a minimum number and a maximum number of occurrences of said values contained in said value set, a subpattern sequence configuring means, each subpattern sequence comprised of one or more subpatterns, each of said subpatterns being followed in said sequence by zero or more said subpatterns, a transition rule configuring means, said means used to configure the rules that the apparatus follows when making transitions between said subpatterns in said sequences, a starting subpattern designation means, said starting subpattern being the first subpattern in said sequences to be sought by the apparatus in said data stream, said starting subpattern to be sought by the apparatus when the apparatus is unable to continue making transitions from one subpattern to another in said data stream, an action configuration means that configures actions to be performed by the apparatus when events occur during the operation of the apparatus, said actions constituting the results of the operation of the apparatus, said apparatus recognizing patterns in said data stream by traversing said sequences, beginning the traversal at said starting subpattern, continuing said traversal by making transitions according to said transition rules between subpatterns in said sequences, resuming said traversal at said starting subpattern when unable to make a transition from the current subpattern to another in said sequences, said apparatus producing results with said actions, whereby any data stream may be divided into segments per the configuration of said apparatus.
0 Assignments
0 Petitions
Accused Products
Abstract
Highly configurable software apparatus for recognizing and manipulating user-defined patterns in an input data stream. It allows the user to define unlimited combinations and sequences of patterns, and actions to perform when patterns are recognized. Patterns are defined in terms of user-defined sets. Patterns are linked in graph-like structures. As the input stream is scanned the apparatus progresses from one pattern (subpattern) to the next. The rules the apparatus follows to make transitions from one pattern to the next can be configured. Configured actions are performed as patterns are recognized in the input stream.
21 Citations
7 Claims
-
1. An apparatus for recognizing user-defined patterns in a data stream,
the apparatus comprising a subpattern configuring means, each subpattern comprising a value set and a range, each value set comprised of a list of values, each range comprising a minimum number and a maximum number of occurrences of said values contained in said value set, a subpattern sequence configuring means, each subpattern sequence comprised of one or more subpatterns, each of said subpatterns being followed in said sequence by zero or more said subpatterns, a transition rule configuring means, said means used to configure the rules that the apparatus follows when making transitions between said subpatterns in said sequences, a starting subpattern designation means, said starting subpattern being the first subpattern in said sequences to be sought by the apparatus in said data stream, said starting subpattern to be sought by the apparatus when the apparatus is unable to continue making transitions from one subpattern to another in said data stream, an action configuration means that configures actions to be performed by the apparatus when events occur during the operation of the apparatus, said actions constituting the results of the operation of the apparatus, said apparatus recognizing patterns in said data stream by traversing said sequences, beginning the traversal at said starting subpattern, continuing said traversal by making transitions according to said transition rules between subpatterns in said sequences, resuming said traversal at said starting subpattern when unable to make a transition from the current subpattern to another in said sequences, said apparatus producing results with said actions, whereby any data stream may be divided into segments per the configuration of said apparatus.
Specification