Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

...

Example: if the IPerson contained a "role" attribute that were one of three values, "student", "faculty", or "alumni" then to include a layout fragment in the layout for all users having role equal to student the following <dlm:audience> element would suffice.

Code Block
xml
xml
borderStylesolid
titleSample Audience DeclarationborderStylesolidxml
<dlm:audience evaluatorFactory="campuspipeline.uportal.dlm.IPersonEvaluatorFactory">
 <attribute name="role" mode="contains" value="student"/>
</dlm:audience>

Example: if there were a number of roles beyond just these three and a particular layout fragment needed to be included in all roles except for those of faculty and alumni then either of the following <dlm:audience> elements would do the trick although stricly speaking the paren is not needed inside of the <NOT> element.

Code Block
borderStyle
xml
xml
borderStylesolid
titleSample Audience Declarationsolidxml
<dlm:audience evaluatorFactory="campuspipeline.uportal.dlm.IPersonEvaluatorFactory">
 <parent mode="NOT"> 
  <attribute name="role" mode="contains" value="faculty"/>
  <attribute name="role" mode="contains" value="alumni"/>
 </paren>
</dlm:audience>

<dlm:audience evaluatorFactory="campuspipeline.uportal.dlm.IPersonEvaluatorFactory">
 <paren mode="NOT"> 
  <paren mode="OR">
   <attribute name="role" mode="contains" value="faculty"/>
   <attribute name="role" mode="contains" value="alumni"/>
  </paren>
 </paren>
</dlm:audience>

Example: The following complex rule shows the capabilities of combining these three elements. The layout containing this <dlm:audience> element would be included for all juniors in any chemistry class or any senior in any biology class except biology 101.

Code Block
xml
xml
borderStylesolid
titleSample Audience Declaration
borderStylesolid
xml
<dlm:audience evaluatorFactory="campuspipeline.uportal.dlm.IPersonEvaluatorFactory">
 <paren operation="OR"> 
  <paren operation="AND">
   <attribute name="yearLevel" mode="equals" value="junior"/>
   <attribute name="courses" mode="contains" value="Chemistry"/>
  </paren>
  <paren operation="AND">
   <paren operation="AND">
    <attribute name="courses" mode="contains" value="Biology"/>
    <NOT>
     <attribute name="courses" mode="contains" value="101"/>
    </NOT>
   </paren>
   <attribute name="yearLevel" mode="equals" value="senior"/>
  </paren>
 </paren>
</dlm:audience>