Browse Prior Art Database

Compilation of CMISFilter Construct for Verification and Evaluation

IP.com Disclosure Number: IPCOM000113148D
Original Publication Date: 1994-Jul-01
Included in the Prior Art Database: 2005-Mar-27
Document File: 4 page(s) / 88K

Publishing Venue

IBM

Related People

Allen, WC: AUTHOR [+3]

Abstract

A method is disclosed that compiles a value of the CMISFilter data type into a structure that can reasonably be processed for each notification. This method is fully extensible -- allowing its use for processing any notification defined and for evaluation of filter constructs in messages directed to objects.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Compilation of CMISFilter Construct for Verification and Evaluation

      A method is disclosed that compiles a value of the CMISFilter
data type into a structure that can reasonably be processed for each
notification.  This method is fully extensible --  allowing its use
for processing any notification defined and for evaluation of filter
constructs in messages directed to objects.

      The OSI management standards have defined a general mechanism
for specifying must match a given unsolicited message for it to be
forwarded to a destination.  Each set of conditions specified (each
CMISFilter) must be compared to every unsolicited message emitted by
any object on the system.  This will quickly become a major
bottleneck in the processing of messages.  The mechanism defined to
specify a set of conditions is sufficiently general that it is
impractical to match values to each message without a compilation of
the condition(s) into an internal form.  This internal form
represents the full complexity of the CMISFilter in a simple binary
tree.  Each node of the tree represents either a specific piece of
information that must match, or a logical operator that is to be
applied to the results of one or more conditions.

      The problem may best be illustrated by an example of a simple
CMISFilter that would be used to match all alarms issued by instances
of a specific object class.

(and ((or((item (equality (2.9.3.2.7.60, specific-class-desired))),
     (nonNullSetIntersection (allomorphs,
(specific-class-desired))))),
                                                -- allomorphs
attribute
(or((item (equality (2.9.3.2.7.14, 2.9.3.2.10.2))),-- communications
Alarm
(item (equality (2.9.3.2.7.14, 2.9.3.2.10.3))), -- environmentalAlarm
(item (equality (2.9.3.2.7.14, 2.9.3.2.10.4))), -- equipmentAlarm
(item (equality (2.9.3.2.7.14, 2.9.3.2.10.5))), -- integrityViolation
(item (equality (2.9.3.2.7.14, 2.9.3.2.10.8))), -- operationalV...