Use Explicit User Profiles to Activate Rules
You can set up your QMS rules to activate based on values in the explicit profile of a user. For example, you might have rules that activate based on manually-added fields in your user profiles, such as a location or profession.
Create an Explicit Profile
You create explicit profiles for your users in the IDOL Community component, by manually adding fields to the user profile. To add a field, you use the FieldFieldName
parameter in the UserAdd
or UserEdit
actions.
For use in QMS explicit profiling, you must add fields with the prefix AUTN_EXPLICIT_PROFILE_
. For example:
action=UserAdd&UserName=AlexSmith&Password=mypswd&FieldAUTN_EXPLICIT_PROFILE_PROFESSION=teacher
For more information about how to add user fields, refer to the IDOL Community Component Help.
After the prefix, you can use any valid IDOL document field name. QMS does not impose any limits on the number of fields, or the type of field values. Fields can have multiple values, in a comma-separated list.
Configure QMS Rules for Explicit Profiling
To set up explicit profiling, you use the QMSFIELDTEXT
field in your rules to specify restrictions that refer to the explicit profile fields.
QMS strips the AUTN_EXPLICIT_PROFILE_
prefix when it matches against your rules, so you use the shortened form of these field names to set restrictions.
For example, to specify that a particular rule applies only to users that have the value teacher in the AUTN_EXPLICIT_PROFILE_Profession
field, you set the following QMSFIELDTEXT
field in the rule:
#DREFIELD QMSFIELDTEXT="MATCH{Teacher}:PROFESSION"
You can use any valid FieldText
expression to match explicit profile fields.
NOTE: QMS does not validate the FieldText
expressions against your user profile fields. You must ensure that the explicit profile field names in the IDOL Community component and QMSFIELDTEXT
are consistent, and that they interact as planned.
TIP: QMS retrieves explicit profile fields only for queries where you turn on explicit profiling. When you create your rules and FieldText
expressions, consider whether you always want to turn on explicit profiling, or how the rule behaves when you do not have the explicit profile fields.
Turn On Explicit Profiling
To turn on explicit profiling for a particular Query
action, you:
- Set the ExplicitProfiling parameter to
True
. - Set the Username parameter to the name of the user.
When you turn on explicit profiling for a query, QMS performs the following operations:
-
QMS retrieves all the explicit profile fields from the user profile for the specified user. It strips the
AUTN_EXPLICIT_PROFILE_
prefix from the field names, and then creates a TextParse document that includes the original query text and the explicit profile fields.TextParse
documents are an IDOL document that you can use for querying. IDOL uses fields in the document as query text, and can matchFieldText
against other fields. For more information aboutTextParse
, refer to the IDOL Content Component Help. -
QMS uses the usual methods to find all rules in the promotion Agentstore that match the TextParse document version of the query and explicit profile.
This process uses the usual matching procedure to match the query text and AgentBoolean expressions (see Match QMS Rules in Queries). It also finds any blacklist or whitelist rules that you specify in the query.
It then matches the
QMSFIELDTEXT
in the rules against the fields in the query document, which includes the explicit profile fields. -
For any rules that match all query and
FieldText
restrictions, QMS applies the rule to the query or query results, as appropriate.
Example
The following rule is a simple boost rule.
#DREREFERENCE BOOST_RULE_5_1254181469986 #DRETITLE boost rule 5 #DREFIELD QMSTYPE="7" #DREFIELD QMSAGENTBOOL="*" #DREFIELD QMSFIELDTEXT="MATCH{Teacher}:PROFESSION" #DREFIELD CONCEPT="BIASVAL{GCSE,70}:examination" #DREFIELD ALWAYSMATCH="1" #DREENDDOC
A user, with the user name AlexSmith
, has the following field in their user profile:
#DREFIELD AUTN_EXPLICIT_PROFILE_PROFESSION=teacher
When you enable explicit profiling, and this user sends a query, QMS retrieves both the explicit profile fields and the rule (because the AgentBoolean is set up to match all query text). Because the user has the value Teacher
in the PROFESSION
field, the explicit profile matches the QMSFIELDTEXT
in the rule, and QMS applies the rule to the query; that is, it adds the boost FieldText
: BIASVAL{GCSE,70}:examination
.
If the user has a different value in the PROFESSION
field, or does not have a PROFESSION
field, QMS does not apply the boost rule.