Rules: A background

This topic provides an overview of rules and discusses some basic terminology associated with rules and rule sets. It also gives a high-level view of the PolicyCenter rule set categories.

Designing Gosu rules

In general, Guidewire strongly recommends that you develop and document the functional logic of rules before attempting to turn that logic into rules within PolicyCenter. In a large implementation, there can be a large number of rules, so it is extremely beneficial to organize the basic structure of the rules in advance. Use this guide to understand how PolicyCenter rules work. It can also help you make decisions about changing your rules as your use of PolicyCenter evolves over time.

Gosu sample rules

Guidewire provides a set of sample rules as examples and for use in testing. These are sample rules only, and Guidewire provides these rules merely as a starting point for designing your own rules and rule sets. You access sample rules (and other Studio resources) through the Studio interface.

Gosu rule terminology

Guidewire uses the following terminology in discussing Gosu rules.
entity
An entity is a type of business data configured in the data model configuration files, for example Policy. You can use the Data Dictionary to review the entity types and their properties. For an entity type, this documentation refers to an instance as an entity instance or, for brevity, object.
Guidewire Studio
Guidewire Studio is the Guidewire administration tool for managing PolicyCenter resources, such as PCF pages, Gosu rules, and Gosu classes.
job
A job encapsulates a specific set of tasks that PolicyCenter can perform on a PolicyPeriod object.
library
A library is a collection of functions (methods) that you can call from within your Gosu programs. Guidewire provides a number of standard library functions (in the gw.api.* packages).
object

An object refers to any of the following:

  • An instance of an entity type, such as Policy or Activity. For an entity type, Guidewire also calls an object an entity instance.
  • An instance of an Gosu class
  • An instance of a Java class, such as java.util.ArrayList.
policy
A Policy encapsulates all the information about a risk underwritten by an insurer. You can also think of a policy as a container of logical policy periods (with a specific range of effective time) for a policy.
policy period
A logical period of time for which a policy is in effect. For example, a typical year-long personal auto policy is one logical policy period. If you modify that policy several times, PolicyCenter keeps each version, but represents all of them with the same logical policy period.
PolicyCenter represents each logical policy period by a single identifier called a fixed ID. PolicyCenter represents each version of the logical period by a PolicyPeriod entity instance, which stores its period ID in a field called PeriodID.
Although similar, a policy period as a concept and the PolicyPeriod entity type are not exactly the same.
rule
A rule is a single decision in the following form:
  • If {some conditions}
  • Then {take some action}
The following example illustrates the logic of a validation rule.
  • If the auto policy does not list a Vehicle Identification Number (VIN) for all covered automobiles, then mark the policy as invalid.
rule set
A rule set combines many individual rules into a useful set to consider as a group.
workflow
A workflow is a Guidewire mechanism to run custom business processes asynchronously, optionally with multiple states that transition over time. You create and develop workflow within Guidewire Studio.