Rulebase technology for GIS applications
Jeffrey R. Meyers
P.E., Miner & Miner
4701 Royal Vista Circle
Fort Collins, Colorado 80528
Introduction
Object-Oriented technology is now widely accepted as the basis for many types of digital
information systems, with aspects of O-O Design and Programming Environments now
commonplace in the AM/FM/GIS industry. A variety of techniques have been employed
to make the most of the benefits of 00, and GIS implementation has used various
modeling and programming tools. But the benefits of 00 have proven too elusive at
best, and at worst not realized at all. Rapid deployment and code re-use have been offset
by the effort required to design and construct the customized objects needed in the
complex and changing operating environment of the modern utility.
One technique that has been gathering interest and momentum in a variety of industries is
the concept of a RuleBase. Like 00 itself, this technology comes in a variety of
applications and has varying definitions; but technically it is simply a technique for
codifying abstract behavior or business rules for use within an application. This paper
will provide a high-level explanation of RuleBase technology and explore the principal
motivations for using RuleBase technology in a GIS context.
What is a rulebase? And why should I care?
An object in an 00 technology possesses two key characteristics in that it embodies both
properties and methods. Properties are simply the characteristics of an object, such as its
attributes. The diameter and material of a pipe object are properties, as are the install
date and manufacturer of a transformer. Methods are the operations that an object can
perform or that can be performed on an object. For example, a transformer can be placed
onto the map, and connected to the distribution network. A pipe segment can be traced.
One of the principal benefits of 00 technology is that these behaviors can be
encapsulated within the data structure of the object to be used in a standard way by an
application or interface, or another object with a reference. But, in order to work, the
typical 00 approach requires the storage of the properties and encoding of the methods
within the object's data structure. This process usually involves writing code in a lowlevel
00 language, such as C++ or SmallTalk. In addition to the fact that these
programming tasks require special skills, they often imply longer initial implementation
times, and less flexibility at the object level. Maintenance of the object's structure is also
problematic, and oflen expensive.
Enter the RuleBase. In a basic sense, a RuleBase codifies the behavior of the object
outside of its normal data structure through a description of business logic and
relationships. This allows the data modeler, database analyst, or programmer to use
straightforward data expressions for object characteristics and behavior, which can be
turned into object properties and methods. Modern RuleBase technologies provide
engines that use RuleBase definitions to construct the object at a specific use time, such
as when the application is launched, rather than persistently storing the object nature in
low-level, inaccessible code.
Thus, the RuleBase presents four principal advantages: First, it enables the nature and the
behavior of entities to be described in a separate structure, which is easier to build and
minimizes low-level coding. Second, these same advantages make the model easier to
maintain. Third, it permits many different applications to share in the object definitions
that are maintained in the RuleBase. And finally, through codifying business rules and
behaviors in a form separate from a particular technology, overall investment in data
modeling can be preserved and both applications and data can be more easily migrated as
technology advances. It is worth a look at each of these advantages in detail to gain an
appreciation for the elegance and worth of the RuleBase for GIS applications.