Skip Headers
Oracle® Fusion Middleware Interaction Management Guide for Oracle WebLogic Portal
10g Release 3 (10.3.4)

Part Number E14238-03
Go to Documentation Home
Home
Go to Table of Contents
Contents
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

4 Creating a Property Set

Developing user interaction that uses Personalization and Campaigns can involve several steps. For example, if you want to target users with personalized content in a Campaign, you will add content to WLP's Virtual Content Repository, create Placeholders that display the content, set up properties (such as User Profile or Session properties) that are used to define the conditions under which users will be targeted with Campaign content, and then create the Campaign.

This chapter describes how to create these property sets that have conditions to identify users. The properties are used in the conditions you define for your Personalization logic. Each user is dynamically served personalized web content, or automatic e-mails based on the logic conditions.

Oracle Enterprise Pack for Eclipse provides editors to help you define the following properties and events to create conditions that identify and track users:

Developers use Oracle Enterprise Pack for Eclipse to create property sets and properties. Portal administrators can use WebLogic Portal Administration Console to update the values in the property set. See Section 2.2, "Checklist for Planning Your User Interaction Strategy" for information on designing a property set, and see Chapter 11 to learn how to update property set values.

This chapter includes the following sections:

For information on setting up and managing users that will use Interaction Management features, see the Oracle Fusion Middleware User Management Guide for Oracle WebLogic Portal.

4.1 Setting up a Property Set

You can use Oracle Enterprise Pack for Eclipse to create a property set in for a User Profile, User Segment, HTTP session or request data, date and time condition, or an event.

For example, a User Profile consists of additional attributes you collect and store about a user. Each piece of metadata in a User Profile is called a property. User properties can range from statically-defined properties, such as a user's phone number and e-mail address, to dynamically-created and persisted properties (web site tracking information for the user, for example).

You could create a property set called human resources that contains properties, such as gender, hire date, and e-mail-address. User Profile properties appear as input fields in the WebLogic Portal Administration Console when you edit a User Profile value. (You can also assign Group Profile property values to groups.) The properties you create are also used to define rules for Personalization, as well as Delegated Administration and Visitor Entitlement roles. Users and groups can have multiple profiles, if a a profile equates to a property set. WebLogic Portal provides a default User Profile property set called CustomerProperties.usr that contains common properties.

There are specific properties you can set on content items to enhance Personalization in your applications. See Chapter 6 for more information. For general information on Content Management, see the Oracle Fusion Middleware Content Management Guide for Oracle WebLogic Portal.

After you create the necessary Personalization properties and conditions and set up users and content, you can create Interaction Management functionality for your portal. For example, after you create a User Segment to trigger Personalization, you can create a Content Selector that defines the content that is shown to users in a specific User Segment.

The following section describes how to create a property set for a User Profile, User Segment, HTTP Session or Request, event, Community, or remote portlet. Property sets are application-scoped; any additional scoping or namespacing must be performed by the application.

Property Sets and other Interaction Management features use a variety of conditions that identify users and what they are doing. For more information on conditions, see Section 2.1.1, "Understanding Conditions."

Note:

The steps in this chapter refer to the data\src folder in the Package Explorer View. Your data and src directories might be named differently.

This section contains the following topics:

4.1.1 Creating a User Profile Property Set

Consult the Section 2.2, "Checklist for Planning Your User Interaction Strategy" for more details on designing a property set.

Perform the following steps to create a property set for a User Profile:

  1. In the Portal Perspective in Oracle Enterprise Pack for Eclipse, right-click the <data>\src\userprofiles folder in the Package Explorer View and choose New > User Property Set.

  2. In the New User Property Set window, enter a name for the User Profile property set in the File name field. Keep the .usr file extension.

  3. Click Finish. The User Profile Editor appears.

  4. Add properties to the property set by following the instructions in Section 4.2, "Adding Properties or Conditions to a Property Set."

4.1.2 Creating a User Segment Property Set

You can target visitors with web content or automatic e-mails by defining and using groups called User Segments (similar to segments of a population). User Segments dynamically group users based on characteristics, such as group membership, browser type, profile values, and other user properties. If users match the characteristics, they automatically and dynamically become members of that User Segment. You can use User Segments in Content Selectors, Placeholders, and Campaigns.

Perform the following steps to create a User Segment:

  1. In the Portal Perspective in Oracle Enterprise Pack for Eclipse, right-click the <data>\src folder in the Package Explorer View and choose New > User Segment.

  2. In the New User Segment window, enter a name for the User Segment in the File name field. Keep the .seg file extension.

  3. Click Finish. The User Segment Editor appears.

  4. In the Design Palette tab, drag the conditions you want to use into the User Segment Editor. See Figure 4-1.

Figure 4-1 This User Segment is Called birdlover.seg

Description of Figure 4-1 follows
Description of "Figure 4-1 This User Segment is Called birdlover.seg"

  1. When you add a condition to the User Segment, click the condition link to set the conditions.

    For example, if you drag the condition The visitor has specific characteristics into the User Segment Editor, click the link in the Editor to select the User Profile properties and their values that make a user a member of the User Segment.

    Properties for the user, HTTP session, and HTTP request conditions are based on the User Profile, HTTP sessions, and HTTP request properties you create.

    Choose conditions based on the descriptions in Table 4-1.

Table 4-1 Conditions that Identify Users to Target and the Actions that Will Occur

Condition Description

Bind a variable

If you pick a type and bind a variable to it, the action can invoke a method where the bound variable is used as an argument.

Invoke an instance method

You can use it as a condition to trigger an action. If you invokes an instance method on a variable with specific arguments, then an action that you specify occurs.

The visitor is a member of a predefined User Segment

If the visitor to your web site belongs to a predefined User Segment, execute the specified action. For example, if the visitor belongs to the Gold Customer User Segment, show the visitor a specific piece of web content (action).

The visitor has specific characteristics

If a visitor's characteristics are compared to values you specify and those comparisons evaluate as true, execute a specified action. For example, if the visitor's salary (characteristic) is greater than or equal to (comparison) $50,000 (value), send the visitor an e-mail (action).

The visitor's HTTP request has specific properties

If the HTTP request's properties are compared to values you specify and those comparisons evaluate as true, execute a specified action.

The visitor's HTTP session has specific properties

If the HTTP session's properties are compared to values you specify and those comparisons evaluate as true, execute a specified action. An HTTP session is information your organization might want to track to learn about a visitor's browsing session on the web site.

An application property has specific values

After you create an application-defined Property Set (see Section 4.1.5, "Creating a Community or Remote Portlet Property Set") and some properties, you can use the An application property has specific values condition. You must have an existing property set in place to use this condition.

An event has specific characteristics

If an event's characteristics are compared to values you specify and those comparisons evaluate as true, execute a specified action.

An event has occurred (e.g., login, click, etc.)

After an event occurs (for example, a user logged into the portal or clicked a link), an action occurs.

The date is

If the current date is equal to the one you specify, execute a specified action. For example, if the date is equal to July 22, 2006, send users an e-mail about an upcoming sale (action). The current date refers to the date at the point that the condition is evaluated for a user visiting the web site. For more information, see Section 4.1.2.1, "Setting Dates and Times."

It is after a given date

If the current date is after a date you specify, execute a specified action. For example, if the date is after December 18, 2005, offer users a discount (action). The current date refers to the date at the point that the condition is evaluated for a user visiting the web site. For more information, see Section 4.1.2.1, "Setting Dates and Times."

It is after a given date and time

If the current date and time are after a date and time you specify, execute a specified action. For example, if the date and time are after July 22, 2006 at 3 p.m., send users an e-mail about an upcoming sale (action). The current date and time refer to the date and time at the point that the condition is evaluated for a user visiting the web site. For more information, see Section 4.1.2.1, "Setting Dates and Times."

It is between two times

If the current time falls within a range of times you specify, execute a specified action. For example, if the time is between 3 p.m. and 5 p.m., offer users a discount (action). The current time refers to the time at the point that the condition is evaluated for a given user visiting the web site. For more information, see Section 4.1.2.1, "Setting Dates and Times."

It is between two dates

If the current date falls within a range of dates you specify, execute the specified action. For example, if the date is between December 18, 2005 and December 18, 2006, show users a sale ad (action). The current date refers to the date at the point that the condition is evaluated for a given user visiting the web site. For more information, see Section 4.1.2.1, "Setting Dates and Times."

It is between two date/times

If the current date and time fall within a range of dates and times you specify, execute the specified action. For example, if the date and time is between July 22, 2005 at 3 p.m. and July 22, 2006 at 3 p.m., show users a sale ad (action). The range of dates is inclusive. The current date and time refer to the date and time at the point that the condition is evaluated for a user visiting the web site. For more information, see Section 4.1.2.1, "Setting Dates and Times."

The visitor is selected in a random sample

If the visitor to your web site is selected in a random sample, execute the specified action. This condition applies only to Campaigns and Rule Sets.


  1. Save the User Segment file by choosing File > Save.

4.1.2.1 Setting Dates and Times

When you set date and time conditions, the dates and times represent the time in your region. For example, if you are creating a Campaign action that will be triggered at 8 p.m., that means 8 p.m. in your region. For a time zone that is two hours behind you, the action will be triggered at 6 p.m. in that time zone.

This also affects dates you set. The date you set becomes effective at midnight in your time zone. In a time zone that is six hours ahead of yours, that date becomes effective for that time zone at 6 p.m. your time the day before.

Time changes also affect time-triggered actions. For example, you created a Campaign that begins October 1 at noon and ends October 31 at noon. If a change to standard time (one hour earlier) occurs on October 29, the Campaign will actually end on October 31 at 11 a.m. If you want the Campaign to end at noon on the new standard time, set the end time to 1 p.m.

Note:

Because of the different dates and times on which actions will be triggered around the country or world, it is important to tell users that dates and times are effective for your time zone. This type of information allows users to calculate when in their time zone they can take advantage of your promotions.

4.1.3 Creating a Session Property Set

Session properties capture and use specific HTTP session information to trigger Personalization and Campaigns. Session properties are associated with a session and are not persisted between sessions. An example of a Session property set could be PortalA.

Perform the following steps to create a Session property set:

  1. In the Portal Perspective in Oracle Enterprise Pack for Eclipse, right-click the <data>\src folder in the Package Explorer View and choose New > Other.

  2. Select the WebLogic Portal folder, the Property Sets folder, the Session Property Set folder, and click Next.

  3. Enter a name for the Session property set in the File name field. Keep the .ses file extension.

  4. Click Finish. The Session Editor appears.

  5. Add properties to the property set by following the instructions in Section 4.2, "Adding Properties or Conditions to a Property Set."

Use code in a JSP or Java Page Flow to populate the session.

Note:

Page flows are a feature of Apache Beehive, which is an optional framework that you can integrate with WLP. See "Apache Beehive and Apache Struts Supported Configurations" in the Oracle Fusion Middleware Portal Development Guide for Oracle WebLogic Portal.

4.1.4 Creating a Request Property Set

Request properties capture and use specific HTTP request information to trigger Personalization. Request properties are associated with a request and are not persisted between requests.

Request properties can also store values that are populated programmatically. For example, the DefaultRequestPropertySet.req property set in the <project>\data\src\request\ directory is included with every portal web project, and contains properties called User-Agent and Client Classification. These properties are populated automatically when a device accesses a portal, providing a key component of the framework that delivers appropriate web content to mobile devices.

Perform the following steps to create a Request property set:

  1. In the Portal Perspective in Oracle Enterprise Pack for Eclipse, right-click the <data>\src\request folder in the Package Explorer View and choose New > Request Property Set

  2. In the New Request Property Set window, enter a name for the Request property set in the File name field with the .req file extension.

  3. Click Finish. The Request Property Set Editor appears.

  4. Add properties to the property set by following the instructions in Section 4.2, "Adding Properties or Conditions to a Property Set."

4.1.5 Creating a Community or Remote Portlet Property Set

You can create an application-defined property set to store profile data for entities that are not users or groups. These entities include Communities and remote portlets, or a custom entity created by an application programmer.

Perform the following steps to create a property set for an Application-defined property set:

  1. In the Portal Perspective in Oracle Enterprise Pack for Eclipse, right-click the <data>\src folder in the Package Explorer View and choose New > Other.

  2. In the New Select a Wizard window, expand the WebLogic Portal folder and expand the Property Sets folder.

  3. Select the Application-Defined Property Set and click Next.

  4. Enter a name for the Community or remote portlet property set in the File name field. Keep the .propset file extension.

  5. Click Finish. The Application-Defined Property Set Editor appears.

  6. Add properties to the property set by following the instructions in Section 4.2, "Adding Properties or Conditions to a Property Set."

4.1.6 Creating an Event Property Set

You must register custom events that you create so that your portal application recognizes the events. After you register your events, you can use them to trigger Personalization and Campaigns and track user behavior in your portals.

Events need event listeners to listen for them. Register the event listeners for your custom event in the <PORTAL_APP>\META-INF\wps-config.xml file.

Perform the following steps to create an Event property set:

  1. In the Portal Perspective in Oracle Enterprise Pack for Eclipse, right-click the <data>\src folder in the Package Explorer View and choose New > Other.

  2. In the New Select a Wizard window, expand the WebLogic Portal folder and expand the Property Sets folder.

  3. Select Event Property Set and click Next.

  4. Enter a name for the Event property set in the File name field, keeping the .evt file extension.

  5. Click Finish. The Event Editor appears.

  6. In the New Event Property Set window, enter a name for the Event property set in the File name field. Keep the .evt file extension.

  7. Click Finish. The Event Editor appears.

  8. Add properties to the property set by following the instructions in Section 4.2, "Adding Properties or Conditions to a Property Set."

4.2 Adding Properties or Conditions to a Property Set

After you create a property set for a User Profile, HTTP Session or Request, Community, or WSRP, add the properties you want to it. The following steps assume you have created a property set according to the instructions in Section 4.1, "Setting up a Property Set."

Perform the following steps to add a property to a property set:

  1. In Oracle Enterprise Pack for Eclipse, open the property set file you created in Section 4.1, "Setting up a Property Set."

  2. In the Design Palette tab, drag one of property types into the Property Set Editor window, as shown in Figure 4-2.

    Figure 4-2 A Single Restricted Property Lets You Pick a Value From a List that You Define

    Description of Figure 4-2 follows
    Description of "Figure 4-2 A Single Restricted Property Lets You Pick a Value From a List that You Define"

    The type defines the number of values that can be entered for the property. Following are descriptions of each type.

    • Single Unrestricted – A single unrestricted property can have only one value, but you can enter any value. For example, date of birth.

    • Single Restricted – A single restricted property can have only one value, and you are restricted to selecting that value from a predefined list. For example, a Gender property can be Male or Female.

    • Multiple Unrestricted – A multiple unrestricted property can have multiple values, and you can enter any value. Generally, this property is used for a single category, such as names of your children. Other examples are a favorite color or preferred browser.

    • Multiple Restricted – A multiple restricted property can have multiple values, and you are restricted to selecting the values from a predefined list. Other examples are city and state. You could also use a check all that apply type data.

  1. Select the Properties tab and enter the following:

    • Click the drop-down list and select the Data Type for the property value. For example, if you select Boolean, your property's Values can be only true or false. (Properties with a Boolean data type are automatically set to Single Restricted.)

    • Enter a Description and a Property Name.

    • In the Selection Mode and Value Range fields, you can change the property type. For example, you can change a property from Single Unrestricted to Multiple Restricted.

      Note:

      Any change to the Data Type, Selection Mode, or Value Range fields removes anything previously entered in the Values field.
    • Use the Values field to enter values for Restricted types or to set the default value for Unrestricted types. Click the ellipsis icon (...) to enter values. (In the Enter Property Value dialog box that appears for a Restricted type, enter a value and click Add after each entry. Click OK after you enter all values.) See Figure 4-3.

    Figure 4-3 This Property Has Three Possible Values

    Description of Figure 4-3 follows
    Description of "Figure 4-3 This Property Has Three Possible Values"

  2. Save the properties by choosing File > Save.

    Caution:

    You can also use the Property control to create and manage properties. However, properties created with this control do not appear in the WebLogic Portal Administration Console. The properties must be modified and updated programmatically.

4.3 Modifying Properties and Conditions

You can edit properties and values in Oracle Enterprise Pack for Eclipse or you can edit just the property values in the WebLogic Portal Administration Console.

This section contains the following topics:

4.3.1 Editing Properties

Perform the following steps in Oracle Enterprise Pack for Eclipse to modify properties or conditions and their values for User Profiles, User Segments, HTTP session or request data, date and time conditions, or events:

  1. In Oracle Enterprise Pack for Eclipse, double-click the property set file.

  2. In the Properties tab, change the property or its default value.

  3. Save your change by choosing File > Save.

You can also use the <profile:setProperty> JSP tag in your JSPs or the Property control in your Page Flows to modify existing property values for users.

Note:

Page flows are a feature of Apache Beehive, which is an optional framework that you can integrate with WLP. See "Apache Beehive and Apache Struts Supported Configurations" in the Oracle Fusion Middleware Portal Development Guide for Oracle WebLogic Portal.

4.3.2 Editing Property Values

Portal administrators can use the WebLogic Portal Administration Console to modify a property's value. For instructions, see Section 11.1, "Editing a Property Value."

4.3.3 Retrieving Properties from External Data Stores

If you created a Unified User Profile (UUP) to access external user or group properties, you can use those properties to define rules for Personalization, Delegated Administration, or Visitor Entitlement.

After you create a UUP to access the properties stored in an external user store, such as an LDAP server, you can access those external properties only through WebLogic Portal's JSP tags, controls, or API. After you deploy a UUP, when the Administration Console focuses on the associated property set, it will call on the UUP to read values. A UUP must implement writable interfaces if you want to be able to write to the UUP properties.

If you want to use those external properties in defining rules for Personalization, Delegated Administration, or Visitor Entitlement, you must retrieve those properties in the WebLogic Portal Administration Console. Simply defining rules requires access only to the property set "schema", which you created in Section 4.1.1, "Creating a User Profile Property Set." When the rules are evaluated, the actual values are fetched. You do not have to use the Administration Console.

Note:

The properties you retrieve from an external user store may be read-only, and their values cannot be updated in the WebLogic Portal Administration Console. To make those properties writable, your custom UUP must implement writable properties.

A password is not considered a property.

Perform the following steps to retrieve user or group properties from an external data store:

  1. Create a UUP for the external data store. See the Oracle Fusion Middleware User Management Guide for Oracle WebLogic Portal for instructions.

  2. To create the User Profile property set for the external data store, locate the name of the property set to create. In your enterprise application root directory, inside the p13n_app.jar file, copy the /META-INF/p13n-profile-config.xml file to your own application's /META-INF directory.

  3. Modify the p13n-profile-config.xml file in the /META-INF directory of your own application. See the instructions in the Oracle Fusion Middleware User Management Guide for Oracle WebLogic Portal.

  4. Add properties to the property set that exactly match the property names in the external store you want to surface. If you are using the LDAP UUP provided by WebLogic Portal, the property set might be named ldap.usr

  5. Save the property set file.

4.4 Deleting a Property or a Property Set

You can delete individual properties from a property set, and you can delete an entire property set.

Perform the following steps to delete a property from a property set:

  1. In the Portal Perspective in Oracle Enterprise Pack for Eclipse, double-click the property set file.

  2. In the Editor window, select the property. For example, a User Segment could contain the condition The visitor has specific characteristics.

  3. Right-click the property and choose Delete.

Perform the following steps to delete a property set:

  1. In the Portal Perspective in Oracle Enterprise Pack for Eclipse, double-click the property set file.

  2. Right-click the property set and choose Delete.

You can also use the <profile:removeProperty> JSP tag in your JSPs or the Property control in your Page Flow to remove existing property values from a user's profile.

Note:

"Apache Beehive and Apache Struts Supported Configurations"Page flows are a feature of Apache Beehive, which is an optional framework that you can integrate with WLP. See in the Oracle Fusion Middleware Portal Development Guide for Oracle WebLogic Portal.