Driving Sitecore with the rule set editor

The Sitecore rule set editor is one of the key pillars of the Sitecore Experience Platform (SEP), right up there with the Experience Database, the notion of engagement value in analytics and pattern & profile cards for persona matching.  The rule set editor is core to dynamically configuring the SEP for things like personalization, engagement plan set-up, device specific presentation and a bevy of other ways to make the customer’s digital experience better. 

The Sitecore rule set editor was modeled after the Microsoft Outlook rule editor.  It includes conditions and actions grouped together to drive condition based dynamic configuration, or personalization.  The slideshow below shows a path to the rule set editor in the personalization function in the new Sitecore 8 SEP.  We’ll use this to help visualize the conditions & actions. 

Let’s get into it…

Conditions

There is a rich menu of out of the box conditions that can be used to dynamically change content, presentation, etc. 

Campaigns

  • when current interaction's campaign's custom facet field is classified under the specified custom group

Channel

  • when the current interaction is on the specified channel
  • when the current interaction is on a channel in the specified group
  • when the current interaction is on a channel in the specified channel type

Date

  • when the date has passed
  • when the current day of the month compares to number
  • when the current day is day of the week
  • when the current month is month

Fields

  • where the specific field compares to specific value
  • where the specific field is empty
  • where the item contains a field type that compares to specific

GeoIP

  • where the area code compares to specific value
  • where the business name compares to specific value
  • where the city compares to specific city
  • where the country compares to specific country
  • where the DNS address compares to specific value
  • where the IP address compares to specific value
  • where the ISP name compares to specific value
  • where the latitude compares to specific value
  • where the longitude compares to specific value
  • where the metro code compares to specific value
  • where the postal code compares to specific value
  • where the region compares to specific value

Item Hierarchy

  • where the item is the specific item or one of its ancestors
  • where the item is the specific item or one of its descendants
  • where the level of the item compares to number
  • where the item path compares to path
  • where the parent name compares to value
  • where the parent template is specific template

Item Information

  • where the item ID compares to value
  • where the item name compares to value
  • where the item template is specific template

Item Version

  • where the item language compares to value

Outcomes

  • where the current contact has registered the outcome during any interaction
  • where the current contact has registered the outcome during any interaction where monetary value compares to value

Security

  • where the current user is anonymous
  • where the current user domain name compares to value
  • where the user profile includes a valid email address
  • where the current user name compares to value
  • where the specific field in the user profile compares to value
  • where the specific field in the user profile is not empty
  • where the value in the specific numeric field in the user profile compares to number
  • where the current user is a member of the specific role

Sitecore Query

  • where the result of the expression query exists

Social

  • where the gender of the current contact is value
  • where the current contact is interested in value on any connected social network
  • where the current contact is connected to the specific social network
  • where the current contact's Klout Score compares to number
  • where the network profile specific field compares to value

System

  • Analytics has been enabled
  • where calling the specific script returns true
  • where a condition in the specific rule is true
  • where the current domain name compares to value
  • when the Item Buckets feature is enabled
  • where predefined condition is true
  • where true (actions always execute)

Visit

  • where the specific campaign was triggered during the current visit
  • where the number of engagement value points compares to number
  • where the specific goal was triggered during the current visit
  • where the current visit matches the specific pattern card in the specific profile
  • where the ID of the page event is specific value
  • where the name of the page event compares to specific value
  • where the page index compares to number
  • where the specific page has been visited during the current visit
  • where the value of the specific profile key compares to specific value
  • where the search keywords compares to specific value
  • where the site name compares to value
  • where the traffic type compares to number
  • where the duration of the visit compares to seconds
  • where the Asset was downloaded
  • where the number of downloaded Assets compares to number
  • where the Language was language
  • where the Visit started at the Entry Page
  • where the Visit ended at the Exit Page
  • where start date compares to date
  • where the referrer compares to specific value
  • where the internal search keywords compares to specific value

Visitor

  • where the visit no. compares to number
  • where the specific tag of the visitor is not empty
  • where the ISP name compares to specific value
  • where the value in the specific numeric field in the user profile compares to number
  • where the visitor identification compares to specific value

Custom conditions can be developed an incorporated into the system profile, so that they can be used across the site. 

Actions

Actions differ based on the system function.  When using component personalization, the content editor can select content (e.g., alternate messaging) or rendering (e.g., styling) options.  When using the Engagement Plan functionality actions can include: 

  • Add or remove visitor from roles
  • Add points
  • Copy visitor to another plan
  • Increase or decrease profile value
  • Move visitor to another state
  • Record email address as validated
  • Record password as validated
  • Remove visitor from a plan
  • Send email message
  • Update value on the Visitor User Profile

As you can probably see, the actions get pretty useful when automating system interaction with the customer.  There are a lot of other uses for the rule set editor in Sitecore, but this covers the two major use cases for most marketers.  

If you find this helpful please bookmark it for handy reference.  Please also feel free to follow me on Twitter or subscribe to the Bonfire newsletter to get notifications on upcoming Sitecore blog posts.