<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="https://www.w3.org/2005/Atom" xmlns:sy="https://purl.org/rss/1.0/modules/syndication/" xmlns:dc="https://purl.org/dc/elements/1.1/" xmlns:content="https://purl.org/rss/1.0/modules/content/" xmlns:wfw="https://wellformedweb.org/CommentAPI/" xmlns:slash="https://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>Bobby and Nima's Forefront Identity Manager Blog</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/doittoit/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/doittoit/feed.xml</link>
    <description />
    <lastBuildDate>Wed, 17 Apr 2019 03:59:31 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>Forefront Identity Manager 2010 has shipped!!</title>
      <link>https://docs.microsoft.com/archive/blogs/doittoit/forefront-identity-manager-2010-has-shipped</link>
      <pubDate>Tue, 02 Mar 2010 17:18:00 GMT</pubDate>
      <dc:creator><![CDATA[TechNet Archive]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/doittoit/2010/03/02/forefront-identity-manager-2010-has-shipped/</guid>
      <description><![CDATA[I'm happy to announce that FIM 2010 is now available for customers.&nbsp; You can read the Forefront...]]></description>
      <content:encoded><![CDATA[<P>I'm happy to announce that FIM 2010 is now available for customers.&nbsp; You can read the Forefront blog post here: <A href="https://blogs.technet.com/forefront/archive/2010/03/02/rsa-conference-2010-identity-at-the-forefront.aspx">https://blogs.technet.com/forefront/archive/2010/03/02/rsa-conference-2010-identity-at-the-forefront.aspx</A></P>
<P mce_keep="true">&nbsp;</P>]]></content:encoded>
    </item>
    <item>
      <title>Run on Policy Update - Retroactive Policy Enforcement</title>
      <link>https://docs.microsoft.com/archive/blogs/doittoit/run-on-policy-update-retroactive-policy-enforcement</link>
      <pubDate>Sat, 07 Nov 2009 18:39:00 GMT</pubDate>
      <dc:creator><![CDATA[TechNet Archive]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/doittoit/2009/11/07/run-on-policy-update-retroactive-policy-enforcement/</guid>
      <description><![CDATA[Somewhat hidden within Forefront Identity Manager 2010, there is a very useful feature for action...]]></description>
      <content:encoded><![CDATA[<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'">Somewhat hidden within Forefront Identity Manager 2010, there is a very useful feature for action workflows called "Run on Policy Update".&nbsp; <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'">Here are the situations where you may find this feature useful:<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'">1.&nbsp; You are creating a new Management Policy Rule (MPR), such as one to provision all users an AD account, and you want one or more of the action workflows in your new&nbsp;MPR to be applied, upon creation of the MPR, to&nbsp;all the members of the MPR's Resource Final Set (also referred to as "Target Resource Definition After Request" in the portal's MPR wizard).&nbsp; For example, you may be creating a new MPR to apply a new Synchronization Rule to all users.&nbsp; You may want to retroactively enforce this new policy by applying the Synchronization Rule workflow to all users that already exist.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'">2. You are enabling a previously disabled MPR, and you want one or more of the action workflows in the MPR to be applied, upon&nbsp;enabling of the MPR, to&nbsp;all the members of the MPR's Resource Final Set.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'">3. You are adding a new action workflow to an existing MPR, and you want the new workflow to be applied to&nbsp;all the members of the MPR's Resource Final Set, immediately upon adding the workflow to the MPR.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'">4.&nbsp;You are modifying the Resource Final Set of an existing MPR to reference a new set, and you want one or more of the MPR's action workflows to be applied to&nbsp;all the members of the new Resource Final Set, immediately upon modification of the MPR.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'">5.&nbsp;You are manually modifying the membership of the Resource Final Set of an&nbsp;MPR, either by modifying the set's&nbsp;Filter or ExplictMember attribute,&nbsp;and you want one or more of the MPR's action workflows to be applied to&nbsp;all the *new* members of the new Resource Final Set, immediately upon modification of the set.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'">The "Run on Policy Update" feature is an option that lives on action workflow definitions, as an attribute labeled "RunOnPolicyUpdate"&nbsp;bound to the&nbsp;WorkflowDefinition resource type.&nbsp; When this boolean attribute is set to "true" for a given action workflow, if any of the 5 scenarios above are encountered with an MPR that uses this workflow, the workflow will be automatically applied to the members of the Resource Final Set of the MPR.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'">Following is a table that summarizes the cases where a "Run on Policy Update" enabled action workflow is applied, in addition to the normal cases where a new Request satisfies all the criteria of an MPR that uses the workflow.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"><o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"><o:p>&nbsp;</o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto">
<TABLE class=MsoNormalTable style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; MARGIN: 2.75pt 6.75pt; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-yfti-tbllook: 1184; mso-border-alt: solid black 1.0pt; mso-border-themecolor: text1; mso-table-lspace: 9.0pt; mso-table-rspace: 9.0pt; mso-table-anchor-vertical: paragraph; mso-table-anchor-horizontal: margin; mso-table-left: left; mso-table-top: -22.45pt; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-insideh: 1.0pt solid black; mso-border-insideh-themecolor: text1; mso-border-insidev: 1.0pt solid black; mso-border-insidev-themecolor: text1; mso-table-tspace: 5.0pt; mso-table-bspace: 5.0pt" cellSpacing=0 cellPadding=0 align=left border=1 class="MsoNormalTable">
<TBODY>
<TR style="HEIGHT: 0.1in; mso-yfti-irow: 0; mso-yfti-firstrow: yes">
<TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: black 1pt solid; WIDTH: 131.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: black 1pt solid; HEIGHT: 0.1in; BACKGROUND-COLOR: transparent; mso-border-themecolor: text1" vAlign=top width=175>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: around; mso-element-anchor-vertical: paragraph; mso-element-anchor-horizontal: margin; mso-element-top: -22.45pt; mso-height-rule: exactly; mso-line-height-alt: 7.2pt; mso-element-frame-vspace: 5.0pt"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-themecolor: text1">User Request <o:p></o:p></SPAN></B></P></TD>
<TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #f0f0f0; WIDTH: 319.5pt; PADDING-TOP: 0in; BORDER-BOTTOM: black 1pt solid; HEIGHT: 0.1in; BACKGROUND-COLOR: transparent; mso-border-themecolor: text1; mso-border-left-alt: solid black 1.0pt; mso-border-left-themecolor: text1" vAlign=top width=426>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: around; mso-element-anchor-vertical: paragraph; mso-element-anchor-horizontal: margin; mso-element-top: -22.45pt; mso-height-rule: exactly; mso-line-height-alt: 7.2pt; mso-element-frame-vspace: 5.0pt"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-themecolor: text1">Resulting Action by the FIM Service<o:p></o:p></SPAN></B></P></TD></TR>
<TR style="HEIGHT: 0.1in; mso-yfti-irow: 1">
<TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: black 1pt solid; WIDTH: 131.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: black 1pt solid; HEIGHT: 0.1in; BACKGROUND-COLOR: transparent; mso-border-top-alt: solid black 1.0pt; mso-border-themecolor: text1; mso-border-top-themecolor: text1" vAlign=top width=175>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: around; mso-element-anchor-vertical: paragraph; mso-element-anchor-horizontal: margin; mso-element-top: -22.45pt; mso-height-rule: exactly; mso-line-height-alt: 7.2pt; mso-element-frame-vspace: 5.0pt"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">Create new MPR</SPAN><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"><o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #f0f0f0; WIDTH: 319.5pt; PADDING-TOP: 0in; BORDER-BOTTOM: black 1pt solid; HEIGHT: 0.1in; BACKGROUND-COLOR: transparent; mso-border-top-alt: solid black 1.0pt; mso-border-left-alt: solid black 1.0pt; mso-border-left-themecolor: text1; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=426>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: around; mso-element-anchor-vertical: paragraph; mso-element-anchor-horizontal: margin; mso-element-top: -22.45pt; mso-height-rule: exactly; mso-line-height-alt: 7.2pt; mso-element-frame-vspace: 5.0pt"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'">Apply each "Run on Policy Update" enabled action&nbsp;workflow&nbsp;referenced by the new MPR to all&nbsp;members of the MPR's ResourceFinalSet.<o:p></o:p></SPAN></P></TD></TR>
<TR style="HEIGHT: 0.1in; mso-yfti-irow: 2">
<TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: black 1pt solid; WIDTH: 131.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: black 1pt solid; HEIGHT: 0.1in; BACKGROUND-COLOR: transparent; mso-border-top-alt: solid black 1.0pt; mso-border-themecolor: text1; mso-border-top-themecolor: text1" vAlign=top width=175>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: around; mso-element-anchor-vertical: paragraph; mso-element-anchor-horizontal: margin; mso-element-top: -22.45pt; mso-height-rule: exactly; mso-line-height-alt: 7.2pt; mso-element-frame-vspace: 5.0pt"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">Enable an existing MPR<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #f0f0f0; WIDTH: 319.5pt; PADDING-TOP: 0in; BORDER-BOTTOM: black 1pt solid; HEIGHT: 0.1in; BACKGROUND-COLOR: transparent; mso-border-top-alt: solid black 1.0pt; mso-border-left-alt: solid black 1.0pt; mso-border-left-themecolor: text1; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=426>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: around; mso-element-anchor-vertical: paragraph; mso-element-anchor-horizontal: margin; mso-element-top: -22.45pt; mso-height-rule: exactly; mso-line-height-alt: 7.2pt; mso-element-frame-vspace: 5.0pt"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'">Apply each "Run on Policy Update" enabled action&nbsp;workflow&nbsp;referenced by the enabled MPR to all&nbsp;members of the MPR's ResourceFinalSet.<o:p></o:p></SPAN></P></TD></TR>
<TR style="HEIGHT: 0.1in; mso-yfti-irow: 3">
<TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: black 1pt solid; WIDTH: 131.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: black 1pt solid; HEIGHT: 0.1in; BACKGROUND-COLOR: transparent; mso-border-top-alt: solid black 1.0pt; mso-border-themecolor: text1; mso-border-top-themecolor: text1" vAlign=top width=175>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: around; mso-element-anchor-vertical: paragraph; mso-element-anchor-horizontal: margin; mso-element-top: -22.45pt; mso-height-rule: exactly; mso-line-height-alt: 7.2pt; mso-element-frame-vspace: 5.0pt"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">Select a new&nbsp;ResourceFinalSet for an existing MPR<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #f0f0f0; WIDTH: 319.5pt; PADDING-TOP: 0in; BORDER-BOTTOM: black 1pt solid; HEIGHT: 0.1in; BACKGROUND-COLOR: transparent; mso-border-top-alt: solid black 1.0pt; mso-border-left-alt: solid black 1.0pt; mso-border-left-themecolor: text1; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=426>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: around; mso-element-anchor-vertical: paragraph; mso-element-anchor-horizontal: margin; mso-element-top: -22.45pt; mso-height-rule: exactly; mso-line-height-alt: 7.2pt; mso-element-frame-vspace: 5.0pt"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'">Apply each "Run on Policy Update" enabled action&nbsp;workflow&nbsp;referenced by the MPR, to all members of the new set referenced by the ResourceFinalSet attribute.<o:p></o:p></SPAN></P></TD></TR>
<TR style="HEIGHT: 0.1in; mso-yfti-irow: 4">
<TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: black 1pt solid; WIDTH: 131.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: black 1pt solid; HEIGHT: 0.1in; BACKGROUND-COLOR: transparent; mso-border-top-alt: solid black 1.0pt; mso-border-themecolor: text1; mso-border-top-themecolor: text1" vAlign=top width=175>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: around; mso-element-anchor-vertical: paragraph; mso-element-anchor-horizontal: margin; mso-element-top: -22.45pt; mso-height-rule: exactly; mso-line-height-alt: 7.2pt; mso-element-frame-vspace: 5.0pt"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">Add a new "Run on Policy Update" enabled&nbsp;action workflow&nbsp;to an existing MPR</SPAN><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"><o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #f0f0f0; WIDTH: 319.5pt; PADDING-TOP: 0in; BORDER-BOTTOM: black 1pt solid; HEIGHT: 0.1in; BACKGROUND-COLOR: transparent; mso-border-top-alt: solid black 1.0pt; mso-border-left-alt: solid black 1.0pt; mso-border-left-themecolor: text1; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=426>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: around; mso-element-anchor-vertical: paragraph; mso-element-anchor-horizontal: margin; mso-element-top: -22.45pt; mso-height-rule: exactly; mso-line-height-alt: 7.2pt; mso-element-frame-vspace: 5.0pt"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'">Apply the newly added&nbsp;action workflow&nbsp;to all members of the MPR’s ResourceFinalSet.<o:p></o:p></SPAN></P></TD></TR>
<TR style="HEIGHT: 0.1in; mso-yfti-irow: 5">
<TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: black 1pt solid; WIDTH: 131.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: black 1pt solid; HEIGHT: 0.1in; BACKGROUND-COLOR: transparent; mso-border-top-alt: solid black 1.0pt; mso-border-themecolor: text1; mso-border-top-themecolor: text1" vAlign=top width=175>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: around; mso-element-anchor-vertical: paragraph; mso-element-anchor-horizontal: margin; mso-element-top: -22.45pt; mso-height-rule: exactly; mso-line-height-alt: 7.2pt; mso-element-frame-vspace: 5.0pt"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">Modify the&nbsp;filter of a set <o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #f0f0f0; WIDTH: 319.5pt; PADDING-TOP: 0in; BORDER-BOTTOM: black 1pt solid; HEIGHT: 0.1in; BACKGROUND-COLOR: transparent; mso-border-top-alt: solid black 1.0pt; mso-border-left-alt: solid black 1.0pt; mso-border-left-themecolor: text1; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=426>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: around; mso-element-anchor-vertical: paragraph; mso-element-anchor-horizontal: margin; mso-element-top: -22.45pt; mso-height-rule: exactly; mso-line-height-alt: 7.2pt; mso-element-frame-vspace: 5.0pt"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'">For all MPRs whose ResourceFinalSet references the set being modified, apply each "Run on Policy Update" enabled action&nbsp;workflow&nbsp; mapped to the MPR to each resource&nbsp;that transitions into the set because of the filter update.<o:p></o:p></SPAN></P></TD></TR>
<TR style="HEIGHT: 0.1in; mso-yfti-irow: 6; mso-yfti-lastrow: yes">
<TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: black 1pt solid; WIDTH: 131.4pt; PADDING-TOP: 0in; BORDER-BOTTOM: black 1pt solid; HEIGHT: 0.1in; BACKGROUND-COLOR: transparent; mso-border-top-alt: solid black 1.0pt; mso-border-themecolor: text1; mso-border-top-themecolor: text1" vAlign=top width=175>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: around; mso-element-anchor-vertical: paragraph; mso-element-anchor-horizontal: margin; mso-element-top: -22.45pt; mso-height-rule: exactly; mso-line-height-alt: 7.2pt; mso-element-frame-vspace: 5.0pt"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">Update explicit membership of a set<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: #f0f0f0; WIDTH: 319.5pt; PADDING-TOP: 0in; BORDER-BOTTOM: black 1pt solid; HEIGHT: 0.1in; BACKGROUND-COLOR: transparent; mso-border-top-alt: solid black 1.0pt; mso-border-left-alt: solid black 1.0pt; mso-border-left-themecolor: text1; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=426>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-element: frame; mso-element-frame-hspace: 9.0pt; mso-element-wrap: around; mso-element-anchor-vertical: paragraph; mso-element-anchor-horizontal: margin; mso-element-top: -22.45pt; mso-height-rule: exactly; mso-line-height-alt: 7.2pt; mso-element-frame-vspace: 5.0pt"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'">For all MPRs whose ResourceFinalSet references the set being modified, apply each "Run on Policy Update" enabled action&nbsp;workflow&nbsp; mapped to the MPR to each resource&nbsp;that that is added to the set.<o:p></o:p></SPAN></P></TD></TR></TBODY></TABLE></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P></o:p></SPAN>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P><FONT face=Calibri size=3>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Arial','sans-serif'"></SPAN>&nbsp;</P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Arial','sans-serif'">Note that simply enabling the “Run on Policy Update” option for a workflow does not result in the workflow being automatically run.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>The workflow will only be run upon completion of one of the requests outlined in the table above.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Arial','sans-serif'">Disabling the “Run on Policy Update” option for a workflow will allow you to perform any of the user requests outlined above, without the workflow being automatically run.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Arial','sans-serif'">If you submit one of the user requests outlined above, thereby triggering the execution of a “Run on Policy Update” enabled action workflow, you can cancel all the workflows that have been triggered by simply cancelling the request that triggered them (eg. cancel the request tracking the creation of the MPR).<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Arial','sans-serif'">Cheers,<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Arial','sans-serif'">Nima</SPAN></FONT></P>]]></content:encoded>
    </item>
    <item>
      <title>Farewell!</title>
      <link>https://docs.microsoft.com/archive/blogs/doittoit/farewell</link>
      <pubDate>Mon, 27 Jul 2009 17:56:00 GMT</pubDate>
      <dc:creator><![CDATA[TechNet Archive]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/doittoit/2009/07/27/farewell/</guid>
      <description><![CDATA[As a lot of you may already know, after 4 years of working on MIIS / ILM / FIM I've decided to leave...]]></description>
      <content:encoded><![CDATA[<P>As a lot of you may already know, after 4 years of working on MIIS / ILM / FIM I've decided to leave Microsoft. No, I'm not being fired, nor am I jumping ship to a competitor :) Rather I am leaving Microsoft to pursue a MBA at Columbia starting this fall. </P>
<P>&nbsp;If I have one hope is it that you have found&nbsp;this blog, along with the talks, webcasts and reports I have done to be useful in&nbsp;helping to digest the seemingly endless new concepts coming out with FIM 2010. It can be a lot to take in one shot for sure, as sometimes I even find myself scratching my head as to how something works and even more so when I attempt to describe it,</P>
<P>&nbsp;To all of my colleagues and friends I have made in my time on the MIIS/ILM/FIM teams, I wish you all the best going forward. As for me, its back to the student life for the time being. </P>
<P>&nbsp;Going forward, I'll still be available to help people with FIM (as much as my new student life permits of course!) if you want to reach me, you can email me at bobby.gill (at) gmail.com and you can always find me on facebook at <A href="https://www.facebook.com/jasjeet">www.facebook.com/jasjeet</A></P>
<P>&nbsp;Ill be at TechReady tomorrow morning and I should be at the FOX Sports Grill event in the evening, so come grab me if you see me.</P>
<P>&nbsp;In the meantime, I leave this blog in the more than capable hands of my colleague Nima. </P>
<P>&nbsp;Thanks</P>
<P>Bobby</P>]]></content:encoded>
    </item>
    <item>
      <title>Opening the mailbox:</title>
      <link>https://docs.microsoft.com/archive/blogs/doittoit/opening-the-mailbox</link>
      <pubDate>Tue, 14 Jul 2009 15:49:00 GMT</pubDate>
      <dc:creator><![CDATA[TechNet Archive]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/doittoit/2009/07/14/opening-the-mailbox/</guid>
      <description><![CDATA[&nbsp;Question from one of our readers:
&nbsp;
From: Sent: Tuesday, July 14, 2009 11:06 AMTo:...]]></description>
      <content:encoded><![CDATA[<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText><FONT size=3 face=Consolas>&nbsp;Question from one of our readers:</FONT></P>
<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText mce_keep="true">&nbsp;</P>
<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText><FONT size=3 face=Consolas>From: <BR>Sent: Tuesday, July 14, 2009 11:06 AM<BR>To: Bobby Gill<BR>Subject: (Bobby and Nima's Forefront Identity Manager Blog) : Question about FIM/Outlook<BR>Importance: High</FONT></P>
<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p><FONT size=3 face=Consolas>&nbsp;</FONT></o:p></P>
<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText><o:p><FONT size=3 face=Consolas>&nbsp;</FONT></o:p></P>
<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText><FONT size=3><FONT face=Consolas>Good afternoon Bobby and Nima's.<o:p></o:p></FONT></FONT></P>
<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText><o:p><FONT size=3 face=Consolas>&nbsp;</FONT></o:p></P>
<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText><FONT size=3><FONT face=Consolas>I read your blog often as I await the release of MMS...I mean MIIS...I mean ILM...I mean FIM :)<o:p></o:p></FONT></FONT></P>
<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText><o:p><FONT size=3 face=Consolas>&nbsp;</FONT></o:p></P>
<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText><FONT size=3><FONT face=Consolas>I keep seeing things about how nice it is to request to be added to groups or distribution groups through Microsoft outlook. Are all of the features available from inside Outlook available from the web interface?<o:p></o:p></FONT></FONT></P>
<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText><o:p><FONT size=3 face=Consolas>&nbsp;</FONT></o:p></P>
<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText><FONT size=3><FONT face=Consolas>The reason I'm asking is that a lot of clients may have a need to use identity management to synchronize their Microsoft world with their HR world...and their email world ! (*cough Lotus Notes*). I understand that the level of integration (especially for distribution lists) is probably not the same, but are most other features of the Outlook FIM client available on the web console ?</FONT></FONT></P>
<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText><FONT size=3><FONT face=Consolas></FONT></FONT>&nbsp;</P><FONT face=Consolas>
<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText><FONT size=3>Thank you and feel free to post the question and answer to your blog, as I think it may help other people.<o:p></o:p></FONT></P>
<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText><FONT size=3></FONT></FONT>&nbsp;</P>
<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText><FONT size=3><FONT face=Consolas>------</FONT></FONT></P>
<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText><FONT size=3 face=Consolas></FONT>&nbsp;</P>
<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText><FONT size=3 face=Consolas>The simple answer to the question above is that the Outlook plug in for FIM 2010 contains a proper subset of functionality available within the web portal. That is everything that is possible through the Outlook interface is available within the web portal.</FONT></P>
<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText><FONT size=3 face=Consolas></FONT>&nbsp;</P>
<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText><FONT size=3 face=Consolas>However the opposite is not true. While the Outlook plug in allows you to manage group memberships and approvals/requests, it does not nearly provide the same level of functionality as the web portal. For instance the creation of groups (both static and dynamic), deletion and modification (outside of membership) can only be done through the FIM portal.</FONT></P>
<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText><FONT size=3 face=Consolas></FONT>&nbsp;</P>
<P style="MARGIN: 0in 0in 0pt" class=MsoPlainText><FONT size=3 face=Consolas>Further, the Outlook plugin requires both Outlook 2007 as well as Exchange 2007 running on the backend. However, if you are using an email client which is not Outlook 2007, or a email server that is not Exchange 2007, you can still send notifications and approvals to email clients via any SMTP server. To perform any operations on said messages will require you to go to the portal and perform .</FONT></P>]]></content:encoded>
    </item>
    <item>
      <title>Introducing Hierarchical Provisioning</title>
      <link>https://docs.microsoft.com/archive/blogs/doittoit/introducing-hierarchical-provisioning</link>
      <pubDate>Wed, 20 May 2009 15:35:00 GMT</pubDate>
      <dc:creator><![CDATA[TechNet Archive]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/doittoit/2009/05/20/introducing-hierarchical-provisioning/</guid>
      <description><![CDATA[Yesterday I was eating my bowl of Frosted Miniwheats (by Kellogg) for dinner&nbsp; and out fell a...]]></description>
      <content:encoded><![CDATA[<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-fareast-font-family: 'Times New Roman'">Yesterday I was eating my bowl of Frosted Miniwheats (by Kellogg) for dinner<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>and out fell a coupon for another free box of Miniwheats. “Oh hot lam!” I exclaimed to myself. I had totally not seen the offer stamped on the front of the box for a free box of Miniwheats when I had purchased the jumbo, bachelor sized box of Miniwheats at Costco last Sunday.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>A bowl of Miniwheats alone is enough to brighten my days, but winning another 12oz of the half-sugar, half-fiber narcotic ? Well that’s like Christmas in May. I love hidden surprises.<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-fareast-font-family: 'Times New Roman'">Much like my box of Frosted Miniwheats,&nbsp;FIM 2010&nbsp;has a few hidden surprises of it’s own that lurk underneath the covers and are often ignored. One of these features is Hierarchical Provisioning. Much like the name would imply, Hierarchical Provisioning allows objects, and more importantly, any missing parent containers, to be provisioned into the connector spaces of LDAP MAs . Previously in MMS, MIIS, and ILM 2007, if one wanted to provision a user into a container in Active Directory, one would need to ensure that they created the container in Active Directory prior to provisioning the user with MMS/MIIS/ILM. However, with Hierarchical Provisioning, you do not need to do this anymore. With some settings configured in the Management Agent (MA), the missing container can be created automatically by the Active Directory Management Agent, and then the object provisioned within it.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-fareast-font-family: 'Times New Roman'">The steps to configure this feature are relatively straight forward. Assume that you want to provision the following user into Active Directory: “cn=Bobby Gill, ou=Redmond, ou=Users, dc=fabrikam, dc=com”. In this case, the Redmond OU does not exist in the Active Directory domain. Before the ILM AD MA can provision this new user into the OU specified,<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>the OU needs to be created in Active Directory. This is where Hierarchical Provisioning comes into play. <o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-fareast-font-family: 'Times New Roman'">&nbsp;As an ILM Admin, to enable Hierarchical Provisioning on a LDAP MA, you need to configure a mapping within the MA such that anytime upon export the MA detects that a parent of a object doesn’t exist, it knows what object to create in the connected directory for that parent. This configuration is done within<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>the LDAP MA screens<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>by mapping valid DN components to object classes in the connected directory. In this case, you would set up a mapping between the “OU” DN component to the object class “organizationalUnit”. Thus in the above scenario, when the MA is exporting the object to AD and realizes that the “OU=Redmond” parent is missing, it will look up the mapping for the “OU” component and first create a new organizationalUnit object named “Redmond” and then export the new user<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>into the container.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-fareast-font-family: 'Times New Roman'">&nbsp;Steps to configure Hierarchical Provisioning:&nbsp;<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'">&nbsp;<o:p></o:p></SPAN></P>
<OL type=1>
<LI class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-list: l0 level1 lfo1; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; tab-stops: list .5in"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'">Create a new instance of your favorite LDAP Management Agent. Personally, I’m a Microsoft guy, so obviously I always choose Active Directory Domain Services.<o:p></o:p></SPAN></LI>
<LI class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-list: l0 level1 lfo1; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; tab-stops: list .5in"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'">You’ll notice a new page on the left tab titled ‘Configure Provisioning Hierarchy’.<o:p></o:p></SPAN></LI>
<LI class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-list: l0 level1 lfo1; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; tab-stops: list .5in"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'">Map DN components to Object Classes. The DN Component list box lists all known valid DN components for the given directory, this is inferred by analyzing the LDAP schema of the directory. To the right is the list of available object classes in the directory, again taken from the LDAP schema.</SPAN></LI></OL><A href="https://s284.photobucket.com/albums/ll2/bobbyandnima/?action=view&amp;current=hp.jpg" target=_blank><IMG alt="FIM 2010,Forefront Identity Manager,ILM" src="https://i284.photobucket.com/albums/ll2/bobbyandnima/hp.jpg" border=0></A> 
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-list: l0 level1 lfo1; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; tab-stops: list .5in"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"><o:p></o:p></SPAN>&nbsp;</P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"><A href="https://s284.photobucket.com/albums/ll2/bobbyandnima/?action=view&amp;current=hp.jpg" target=_blank mce_href="https://s284.photobucket.com/albums/ll2/bobbyandnima/?action=view&amp;current=hp.jpg"><SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Arial','sans-serif'; TEXT-DECORATION: none; mso-fareast-font-family: 'Times New Roman'; text-underline: none; mso-no-proof: yes"><?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" /><v:shapetype id=_x0000_t75 coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"><v:stroke joinstyle="miter"></v:stroke><v:formulas><v:f eqn="if lineDrawn pixelLineWidth 0"></v:f><v:f eqn="sum @0 1 0"></v:f><v:f eqn="sum 0 0 @1"></v:f><v:f eqn="prod @2 1 2"></v:f><v:f eqn="prod @3 21600 pixelWidth"></v:f><v:f eqn="prod @3 21600 pixelHeight"></v:f><v:f eqn="sum @0 0 1"></v:f><v:f eqn="prod @6 1 2"></v:f><v:f eqn="prod @7 21600 pixelWidth"></v:f><v:f eqn="sum @8 21600 0"></v:f><v:f eqn="prod @7 21600 pixelHeight"></v:f><v:f eqn="sum @10 21600 0"></v:f></v:formulas><v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"></v:path><o:lock v:ext="edit" aspectratio="t"></o:lock></v:shapetype></SPAN></A><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin">4.)</SPAN><SPAN style="FONT-SIZE: 7pt; FONT-FAMILY: 'Times New Roman','serif'; mso-fareast-font-family: 'Times New Roman'">&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'">Mappings are created by selecting a DN component in the left list box, and a object class in the right list box, and then clicking “new”. You can only create 1 mapping per DN component.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-fareast-font-family: 'Times New Roman'">&nbsp;Once setup, Hierarchical Provisioning is transparent to the actual provisioning mechanism. Thus, if you are using Synchronization Rules or even a traditional scripted Metaverse Extension, these settings will be applied to both at export time.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Hierarchical Provisioning further reduces the burden on IT Pros by allowing much more flexibility in terms of provisioning decisions made in the FIM Workflows and eliminates an often tedious manual step whenever a new business unit comes online and an associated container or OU needs to be created. <o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-fareast-font-family: 'Times New Roman'">The feature is available to all LDAP Management Agents and is available in the ILM "2" RC0.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P>
<P mce_keep="true">&nbsp;</P>]]></content:encoded>
    </item>
    <item>
      <title>Topics Wanted!</title>
      <link>https://docs.microsoft.com/archive/blogs/doittoit/topics-wanted</link>
      <pubDate>Fri, 15 May 2009 13:54:00 GMT</pubDate>
      <dc:creator><![CDATA[TechNet Archive]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/doittoit/2009/05/15/topics-wanted/</guid>
      <description><![CDATA[The hardest part of this blog is finding topics to write about that would be interesting and useful...]]></description>
      <content:encoded><![CDATA[<P>The hardest part of this blog is finding topics to write about that would be interesting and useful to the community at large. If you have a topic or a question that you want to see addressed on this blog, please email me and I will see if I can post something up for it. </P>]]></content:encoded>
    </item>
    <item>
      <title>Dependencies - not just  for avoiding taxes!</title>
      <link>https://docs.microsoft.com/archive/blogs/doittoit/dependencies-not-just-for-avoiding-taxes</link>
      <pubDate>Fri, 01 May 2009 17:16:00 GMT</pubDate>
      <dc:creator><![CDATA[TechNet Archive]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/doittoit/2009/05/01/dependencies-not-just-for-avoiding-taxes/</guid>
      <description><![CDATA[What's our name again?
Whoa, new product name! For those of you who have been chasing butterflies...]]></description>
      <content:encoded><![CDATA[<P><STRONG>What's our name again?</STRONG></P>
<P>Whoa, new product name! For those of you who have been chasing butterflies for the past month, what was once known to us as Identity Lifecycle Manager "2" is now called Forefront Identity Manager.&nbsp; I know, it's not the sexiest name in the world and is probably the 5th different name the product has had since it's conception, but it reflects the combination of Microsoft's security and identity product lines into the Forefront brand announced last year.</P>
<P>Personally, I wanted to name the product "Black Thunder II", but then again there are a myriad of reasons why I am not allowed to name Microsoft products.</P>
<P>&nbsp;But back onto the topic at hand...</P>
<P><STRONG>Synchronization Rule Dependency</STRONG></P>
<P>I decided to take some time off today to briefly talk about Synchronization Rule Dependencies, a powerful yet not well understood part of <STRIKE>ILM</STRIKE> FIM's synchronization capabilities. In brief, a Synchronization Rule Dependency allows one to construct and apply a series of outbound Synchronization Rules ontop of each other. The scenarios that spring to mind whereupon this functionality is useful are things such as adding/removing Exchange mailbox provisioning, or adding/removing VPN access upon a user's Active Directory account (with the former 2 being dependent on the latter).</P>
<P>If an Outbound Synchronization Rule (the dependent) is marked as having a dependency on another Synchronization Rule (the root), the dependent rule will apply itself ontop of the connector that the root Synchronzation Rule is applied on. At run time, when a FIM Action Workflow attempts to add an Expected Rule Entry (ERE)&nbsp;object for the dependent Synchronization Rule onto a FIM Resource's Expected Rules List (ERL) , there needs to also exist an ERE-Add object for the root Synchronization Rule on the ERL.&nbsp; (I am just going to take a minute here and say I don't think there has been that many acronyms stuffed into one sentence since the merger between the wrestling giants&nbsp;WWF and WCW was announced). Conversely, if an Action&nbsp;Workflow adds&nbsp;a ERE-Remove entry for a root Synchronization Rule, all EREs that correspond to Synchronization Rules further up the dependency tree will be removed.</P>
<P>Its important to note that when you design an Action Workflow to add or remove a series of EREs that correspond to a Synchronization Rule dependency chain, the root rule must be added to the workflow surface prior to any other dependent rules.</P>
<P>Multiple levels of dependency can be created, with more than one Synchronization Rule being made to depend on a single Synchronization Rule. </P>
<P>In the Synchronization Rule Designer, to create a Synchronization Rule Dependency is relatively straightforward. The first page of the designer allows you to select another outbound Synchronization Rule to make a new Synchronization Rule depend on. When selected, the Scope and Relationship pages are automatically greyed out. Once a Synchronization Rule is made to depend on another rule, the only settings that are adjustable on that rule are the workflow parameters and the outbound attribute flows. Conceptually, this falls cleanly from the fact that a dependent Synchronization Rule is being applied "on top" of another rule.</P>
<P>I wish I could paste some screenshots of what this looks like, but the FIM UI has changed markedly since the RC 0 release and I dont want to ruin the surprise just yet :)</P>
<P>The canonical scenario in which Synchronization Rule Dependency's are used are around creating business processes to manage the provisioning/deprovisioning of capabilities that stem from attributes set on a Active Directory user account. In a typical provisioning scenario, one would construct a base "Active Directory User Synchronization Rule" which, as the name implies, would create a new AD User object, flow the necessary base DN, samAccountName and name information. On top of that, you could then model a dependent Synchronization Rule for granting an Exchange mailbox. This Synchronization Rule would be dependent on the Active Directory User Synchronization Rule, and as a consequence would only have a single flow to the homeMDB attribute. Modelling the user account provisioning seperately from the mailbox provisioning, through the use of Synchronization Rule dependency, allows you to define independent business processes around the lifecycle management of the two through Management Policy Rules and workflow.</P>
<P>&nbsp;As always, feel free to email me any questions you might have and I will do my best to get back to them.</P>
<P>Bobby</P>]]></content:encoded>
    </item>
    <item>
      <title>XPath Filter Dialect: Examples</title>
      <link>https://docs.microsoft.com/archive/blogs/doittoit/xpath-filter-dialect-examples</link>
      <pubDate>Sat, 07 Feb 2009 20:21:00 GMT</pubDate>
      <dc:creator><![CDATA[TechNet Archive]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/doittoit/2009/02/07/xpath-filter-dialect-examples/</guid>
      <description><![CDATA[The product team and I just wrapped up our week at the TechReady event in Seattle.&nbsp; Bobby...]]></description>
      <content:encoded><![CDATA[<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">The product team and I just wrapped up our week at the TechReady event in Seattle.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Bobby presented an excellent session on codeless provisioning, focusing on configuration and&nbsp;tips and tricks, and I presented a session on workflow and activity extensibility in ILM "2".<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>We also had the opportunity to solicit feedback about the product from attendees.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>This event reminded me of just how new so many of the concepts in ILM “2” are, and how much more knowledge there is which can be shared.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>My last post on the XPath Filter Dialect addressed one area where we frequently get questions, as our use of the xpath language is so pervasive throughout the product.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">While many of the common questions and areas of concern are fresh in my memory, I’ll proceed to share some guidance where I can.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Let’s start with some examples that demonstrate the use of the XPath Filter Dialect addressing common queries (for reporting and other scenarios).<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>I’d recommend first reading the previous post on the xpath fundamentals. <o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Note: The XPath Filter Dialect is case sensitive.</SPAN></B><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Keep this in mind when writing your xpath filters.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>For example, /</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">Person[displayname = ‘value’]<SPAN style="mso-spacerun: yes">&nbsp; </SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">is NOT the same as </SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">/Person[DisplayName = ‘value’]. </SPAN><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Example 1:<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>A User’s Pending Approvals<o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">You’ll need the following xpath if you want to build a report or page that lists all the approvals that are pending a response from a specific user.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Let’s assume the user, for which you want to see the pending approvals, has an Account Name of ‘mmeyers’ and an ObjectID of <SPAN style="mso-spacerun: yes">&nbsp;</SPAN>‘11111111-1111-1111-1111-111111111111’.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">This first filter demonstrates how to identify the pending approvals based on the user’s ObjectID:<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">/Approval[ApprovalStatus = ‘Pending’ and Approver = ‘11111111-1111-1111-1111-111111111111’]<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">This second filter demonstrates how to identify the pending approvals based on the user’s Account Name:<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">/Approval[ApprovalStatus = ‘Pending’ and Approver = /Person[AccountName = ‘mmeyers’]]<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Notice that in the second example we make use of a location path expression, </SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">/Person[AccountName = ‘mmeyers’],</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"> inside the predicate in order to identify approvals where the Approver is a user with the specified Account Name.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Note that the ApprovalStatus represents the status of an approval and can have one of the following values:<o:p></o:p></SPAN></P>
<P class=MsoListParagraphCxSpFirst style="MARGIN: 0in 0in 11.25pt 0.5in; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-list: l0 level1 lfo1; mso-add-space: auto"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"><SPAN style="mso-list: Ignore">·<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'">Pending<o:p></o:p></SPAN></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 11.25pt 0.5in; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-list: l0 level1 lfo1; mso-add-space: auto"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"><SPAN style="mso-list: Ignore">·<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'">Approved<o:p></o:p></SPAN></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 11.25pt 0.5in; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-list: l0 level1 lfo1; mso-add-space: auto"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"><SPAN style="mso-list: Ignore">·<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'">Rejected<o:p></o:p></SPAN></P>
<P class=MsoListParagraphCxSpLast style="MARGIN: 0in 0in 11.25pt 0.5in; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-list: l0 level1 lfo1; mso-add-space: auto"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"><SPAN style="mso-list: Ignore">·<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'">Expired<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">A status of ‘Pending’ means the approval is currently awaiting a response from one of the users listed in the Approvers attribute of the approval. <o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">A status of ‘Approved’ means the Request associated with the approval has been approved by the required number of approvers.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'">After an approval has been created it will only be marked as ‘Approved’ if the minimum number of responses, as specified by the ApprovalThreshold <SPAN style="mso-spacerun: yes">&nbsp;</SPAN>attribute of the approval, is met. </SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">A status of ‘Rejected’ means a user designated as an approver for the approval have rejected the approval.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>At any point in time if a valid approver rejects an approval, that approval is immediately rejected and the workflow and associated Request is terminated.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">A status of ‘Expired’ means the approval has reached the time indicated by the ApprovalDuration attribute on the Approval object as no response to the approval has been submitted.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Example 2:<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>All Security Groups expiring within the next 7 days.<o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">/Group[Type= ‘Security’ and ExpirationTime &lt;= op:add-dayTimeDuration-to-dateTime(fn:current-dateTime(), xs:dayTimeDuration(\"P7D\"))]<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Example 3:<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>All Orphaned Security Groups<o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">An ‘orphaned’ security group here refers to a group with no owner.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>The following is the xpath to identify such groups:<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">/Group[Type = ‘Security’ and Owner != /Person]<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Example 4:<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>People who are members of both the "Interns" group and the "Full Time Employees" group:</SPAN></B><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-fareast-font-family: 'Times New Roman'"><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">While my example here may not be a very compelling one, the goal is to demonstrate how we can identify users that are in sets or groups producing conflicting roles or permissions.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">/Person[ObjectID = /Group[DisplayName = ‘Interns’]/ComputedMember<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>and<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>ObjectID = /Group[DisplayName = ‘Full Time Employees’]/ComputedMember ]<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Note that I used the DisplayName attribute to identify the groups of interest, but the better practice would be to use a unique identifier to identify the groups, such as their ObjectID attribute.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Example 5:<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>People who were EVER members of both the "Interns" group and the "Full Time Employees" group at the same time:</SPAN></B><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-fareast-font-family: 'Times New Roman'"><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">The previous example identified people who are currently members of two conflicting groups.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>The following example identifies people who were ever members of these conflicting groups at the same time.<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>This example makes use of the historical querying feature of ILM to scope the query to a time in the past.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">allTime(/Person[ObjectID = /Group[DisplayName = ‘Interns’]/ComputedMember and ObjectID = /Group[DisplayName = ‘Full Time Employees’]/ComputedMember ])<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Example 6:<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>All permissions that Kim Abercombie had in the month of January, 2009.</SPAN></B><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-fareast-font-family: 'Times New Roman'"><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Again, here we see the use of historical query to check for a condition that was met at some time in the past.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>This time we are checking for permissions that existed for a user between a specified time period.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">betweenTime(/ManagementPolicyRule[GrantRight = 'True' and PrincipalSet = /Set[ComputedMember = /Person[ DisplayName = ‘Kim Ambercrombie’]]] , ‘2009-01-01T00:00’, ‘2009-01-31T00:00’)<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Notice that the filter above is looking for any Management Policy Rule, of the type that grants permissions, which granted permissions to a set that contained Kim Ambercrombie in its membership<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Example 7:<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Changes to security groups in the last 10 days</SPAN></B><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-fareast-font-family: 'Times New Roman'"><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">/Request[Target = /Group[Type = 'Security'] and Operation = 'Put' and CreatedTime &gt;= op:subtract-dayTimeDuration-from-dateTime(fn:current-dateTime(), xs:dayTimeDuration('P10D'))]</SPAN><SPAN style="COLOR: #1f497d"><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">The above filter is returning all Requests that were created, within the last 10 days, to modify a security group.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>If you want to find only the Requests that were actually ‘completed’, or the ones that were ‘rejected’ or still pending, simply add an additional condition based on the status of the request.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Example 8:<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>All full time employees that were ever contractors (ie. transitioned from one job to another).</SPAN></B><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman','serif'; mso-fareast-font-family: 'Times New Roman'"><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">/Person[EmployeeType=’Full Time Employee’ and ObjectId = allTime(/Person[EmployeeType=’Contractor’])]</SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2"></SPAN>&nbsp;</P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2"><o:p><FONT color=#000000>Each of these examples is related to a question I've recieved in the past.&nbsp; As more common scenarios become apparent, I will post examples addressing them.&nbsp; </FONT></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2"><o:p><FONT color=#000000>&nbsp;- Nima</FONT></o:p></SPAN></P>]]></content:encoded>
    </item>
    <item>
      <title>XPath Filter Dialect: Fundamentals</title>
      <link>https://docs.microsoft.com/archive/blogs/doittoit/xpath-filter-dialect-fundamentals</link>
      <pubDate>Fri, 06 Feb 2009 02:17:00 GMT</pubDate>
      <dc:creator><![CDATA[TechNet Archive]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/doittoit/2009/02/06/xpath-filter-dialect-fundamentals/</guid>
      <description><![CDATA[ILM “2” provides a Web Service Enumeration (WS-Enumeration) end point by which client applications...]]></description>
      <content:encoded><![CDATA[<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">ILM “2” provides a Web Service Enumeration (WS-Enumeration) end point by which client applications can run queries and retrieve the results. Please refer to Joe Schulman’s excellent extensibility blog for more details on </SPAN><A href="https://blogs.msdn.com/imex/archive/2008/11/12/introduction-to-ws-enumeration.aspx" mce_href="https://blogs.msdn.com/imex/archive/2008/11/12/introduction-to-ws-enumeration.aspx"><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"><FONT color=#0000ff>using the WS-Enumeration end point in ILM “2”</FONT></SPAN></A><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">.<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">This blog focuses on the XPath Filter Dialect, which you can use to create the queries to submit through the ILM Web Services. <SPAN style="mso-spacerun: yes">&nbsp;</SPAN>XPath Filter Dialect is a subset of the </SPAN><A href="https://go.microsoft.com/fwlink/?LinkId=93325" target=_blank mce_href="https://go.microsoft.com/fwlink/?LinkId=93325"><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt"><FONT color=#0000ff>XML Path Language (XPath) 2.0</FONT></SPAN></A><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">, with some additional functions.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Client applications can send WS-Enumeration Enumerate messages to the ILM Service to identify a of resources and attributes.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>The subsets resources to return are identified by expressions in the XPath Filter Dialect (from here on usually referred to simply as an ‘xpath filter’ in this blog).<SPAN style="mso-spacerun: yes">&nbsp; </SPAN><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">If you are developing your own custom client for ILM, or submitting queries to ILM through a custom activity, you will need to use the xpath filter as your query language.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>In the ILM portal, xpath is the language in which you express the queries for Search Scopes that can be created.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Xpath is also used to express the membership conditions of calculated groups and sets.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">The following is an example of an xpath filter that identifies all people whose Job Title is ‘Engineer’: </SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">/Person[JobTitle = ‘Engineer’]</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Rather than continue listing examples of xpath filters you may find useful, I’m going to use this blog post to describe the fundamentals of the ILM Xpath Filter Dialect so that you can understand the expression language and construct any filter you need.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>I will follow up this blog with another post of some sample filters for commonly requested queries and reports.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Much of the content I include here is probably covered by the ILM “2” SDK in much more detail, but hopefully you’ll also find some of the guidance here conveniently available and useful </SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: Wingdings; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana; mso-char-type: symbol; mso-symbol-font-family: Wingdings"><SPAN style="mso-char-type: symbol; mso-symbol-font-family: Wingdings">J</SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>I will build on this topic with examples as people request them, so feel free to make suggestions! <o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Let’s start by looking at the data types the ILM xpath filters support.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Data Types<o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">The ILM XPath Filter Dialect supports the four data types defined for XPath 1.0, plus the </SPAN><SPAN style="FONT-SIZE: 9pt; COLOR: #000066; FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt">dateTime</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"> type that is defined in the </SPAN><A href="https://go.microsoft.com/fwlink/?LinkId=93326" target=_blank mce_href="https://go.microsoft.com/fwlink/?LinkId=93326"><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt"><FONT color=#0000ff>XML Schema</FONT></SPAN></A><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"> specification. These types are defined in the following table.<o:p></o:p></SPAN></P>
<TABLE class=MsoNormalTable style="WIDTH: 100%; mso-cellspacing: 1.5pt; mso-yfti-tbllook: 1184" cellPadding=0 width="100%" border=0 class="MsoNormalTable">
<TBODY>
<TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 3.75pt; BACKGROUND: #efeff7; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; WIDTH: 24.02%; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #c8cdde 1pt solid; mso-border-bottom-alt: solid #C8CDDE .75pt" width="24%">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Data type<o:p></o:p></SPAN></B></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 3.75pt; BACKGROUND: #efeff7; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; WIDTH: 75.04%; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #c8cdde 1pt solid; mso-border-bottom-alt: solid #C8CDDE .75pt" width="75%">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Definition<o:p></o:p></SPAN></B></P></TD></TR>
<TR style="mso-yfti-irow: 1">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; WIDTH: 24.02%; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; mso-border-top-alt: solid white .75pt" width="24%">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">node-set<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; WIDTH: 75.04%; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; mso-border-top-alt: solid white .75pt" width="75%">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">A collection of XML nodes without duplicates.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Refer to Joe Schulman’s blog for examples of node sets in ILM WS-Enumeration.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Think of a node-set as a collection of resources.<o:p></o:p></SPAN></P></TD></TR>
<TR style="mso-yfti-irow: 2">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; WIDTH: 24.02%; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; mso-border-top-alt: solid white .75pt" width="24%">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Boolean<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; WIDTH: 75.04%; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; mso-border-top-alt: solid white .75pt" width="75%">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">true or false<o:p></o:p></SPAN></P></TD></TR>
<TR style="mso-yfti-irow: 3">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; WIDTH: 24.02%; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; mso-border-top-alt: solid white .75pt" width="24%">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">number<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; WIDTH: 75.04%; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; mso-border-top-alt: solid white .75pt" width="75%">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">A signed integer.<o:p></o:p></SPAN></P></TD></TR>
<TR style="mso-yfti-irow: 4">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; WIDTH: 24.02%; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; mso-border-top-alt: solid white .75pt" width="24%">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">string<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; WIDTH: 75.04%; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; mso-border-top-alt: solid white .75pt" width="75%">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Any sequence of characters from the </SPAN><A href="https://go.microsoft.com/fwlink/?LinkId=93328" target=_blank mce_href="https://go.microsoft.com/fwlink/?LinkId=93328"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; TEXT-DECORATION: none; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; text-underline: none">Universal Character Set</SPAN></A><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">.<o:p></o:p></SPAN></P></TD></TR>
<TR style="mso-yfti-irow: 5">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; WIDTH: 24.02%; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; mso-border-top-alt: solid white .75pt" width="24%">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">dateTime<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; WIDTH: 75.04%; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; mso-border-top-alt: solid white .75pt" width="75%">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">The dateTime represents a date and time in Universal Coordinated Time.<o:p></o:p></SPAN></P></TD></TR>
<TR style="mso-yfti-irow: 6; mso-yfti-lastrow: yes">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; WIDTH: 24.02%; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; mso-border-top-alt: solid white .75pt" width="24%">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">reference<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; WIDTH: 75.04%; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; mso-border-top-alt: solid white .75pt" width="75%">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">A GUID that identifies a reference to a resource.<o:p></o:p></SPAN></P></TD></TR></TBODY></TABLE>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"><o:p>&nbsp;</o:p></SPAN></B></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Now that we know what types of data we can filter on in our expressions, let’s take a look at what types of expressions we can actually define.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Types of Expressions<o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">ILM “2” supports the following types of xpath expressions:<o:p></o:p></SPAN></P>
<OL type=1>
<LI class=MsoNormal style="MARGIN: 0in 0in 2.25pt; COLOR: black; LINE-HEIGHT: normal; mso-list: l0 level1 lfo1; mso-margin-top-alt: auto; tab-stops: list .5in"><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Location path expressions<o:p></o:p></SPAN></LI>
<LI class=MsoNormal style="MARGIN: 0in 0in 2.25pt; COLOR: black; LINE-HEIGHT: normal; mso-list: l0 level1 lfo1; mso-margin-top-alt: auto; tab-stops: list .5in"><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Boolean expressions<o:p></o:p></SPAN></LI>
<LI class=MsoNormal style="MARGIN: 0in 0in 2.25pt; COLOR: black; LINE-HEIGHT: normal; mso-list: l0 level1 lfo1; mso-margin-top-alt: auto; tab-stops: list .5in"><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Equality expressions<o:p></o:p></SPAN></LI>
<LI class=MsoNormal style="MARGIN: 0in 0in 2.25pt; COLOR: black; LINE-HEIGHT: normal; mso-list: l0 level1 lfo1; mso-margin-top-alt: auto; tab-stops: list .5in"><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Relational expressions<o:p></o:p></SPAN></LI>
<LI class=MsoNormal style="MARGIN: 0in 0in 2.25pt; COLOR: black; LINE-HEIGHT: normal; mso-list: l0 level1 lfo1; mso-margin-top-alt: auto; tab-stops: list .5in"><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Function calls<o:p></o:p></SPAN></LI></OL>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"><o:p>&nbsp;</o:p></SPAN></B></P>
<P class=MsoListParagraph style="MARGIN: 0in 0in 11.25pt 0.5in; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-list: l3 level1 lfo2; mso-add-space: auto"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">1.<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Location Path Expressions<o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">A location path expression identifies a node-set (collection of resources). A location path expression consists of one or more location steps. Location step expressions are delimited by a forward slash (</SPAN><SPAN style="FONT-SIZE: 9pt; COLOR: #000066; FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt">/</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">). <SPAN style="mso-spacerun: yes">&nbsp;</SPAN><B style="mso-bidi-font-weight: normal">A location path expression must refer to an object type in ILM, or an attribute of type reference which refers to a resource.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN></B>Location path expressions have the following form:<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">/step/step/… | step/step/…</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">A forward slash at the beginning of an expression indicates an absolute location path expression as distinct from a relative location path expression. A relative location path expression identifies a node-set relative to the context node-set. The context node-set is the set of nodes that have already been identified. <o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Example:</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2"> /Group/ComputedMember</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"> is a location path expression that consists of two location steps: </SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">Group</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"> and </SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">ComputedMember.</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"> <SPAN style="mso-spacerun: yes">&nbsp;</SPAN>The result of this filter is all resources that are the ComputedMember of any Group.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Example: </SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">/Person[AccountName = ‘nima’]/Manager</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"> returns the resource referenced by the Manager attribute of the Person with an Account Name of ‘nima’.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Example: </SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">/Person[AccountName = ‘nima’]/DisplayName</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"> is not a valid xpath filter because DisplayName is not a reference type attribute.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><B style="mso-bidi-font-weight: normal">Union of location path expressions<o:p></o:p></B></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">The union of one or more location path expressions can be obtained by linking the location path expressions with the union operator, which is denoted by the vertical bar character, </SPAN><SPAN style="FONT-SIZE: 9pt; COLOR: #000066; FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt">|</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">. <o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Example:<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>/</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">Person | /Group</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"> returns all people and groups.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt 0.5in; LINE-HEIGHT: normal"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Predicates<o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Predicates are expressions that appear enclosed in brackets at the end of location steps. In the XPath Filter Dialect, predicate expressions must be Boolean expressions, equality expressions, function expressions or relational expressions. <o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Predicates filter the current node-set to produce a subset. A predicate is evaluated for each node in the current node-set. If the result of the predicate is <B>true</B> for a node, that node is included in the subset yielded by the predicate; otherwise, it is excluded. <o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Example:<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>/</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">Person/Manager[JobTitle = ‘VP’]</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"> returns all people whose Manager’s Job Tile is ‘VP’.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>The location step here are </SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">Person </SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">and </SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">Manager[JobTitle = ‘VP’]</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"> .<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>The second location step consists of a node name, </SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">Manager</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">, and a predicate, </SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">JobTitle = ‘VP’</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">. <SPAN style="mso-spacerun: yes">&nbsp;</SPAN><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">You can even have location path expressions nested inside predicates.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">For example, the filter </SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">/Person[Manager = /Person[JobTitle = ‘VP’]]</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"> returns all people whose Manager is a person with a Job Title of ‘VP’.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Note that this returns us the same result as a previous example: </SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">/Person/Manager[JobTitle = ‘VP’].</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"> <o:p></o:p></SPAN></P>
<P class=MsoListParagraph style="MARGIN: 0in 0in 11.25pt 0.5in; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-list: l3 level1 lfo2; mso-add-space: auto"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">2.<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Equality Expressions<o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Equality expressions test the equality of terms. They have the following form:</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2"> left_hand_term operator right_hand_term</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">The valid equality operators are as follows:<o:p></o:p></SPAN></P>
<TABLE class=MsoNormalTable style="WIDTH: 100%; mso-cellspacing: 1.5pt; mso-yfti-tbllook: 1184" cellPadding=0 width="100%" border=0 class="MsoNormalTable">
<TBODY>
<TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 3.75pt; BACKGROUND: #efeff7; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #c8cdde 1pt solid; mso-border-bottom-alt: solid #C8CDDE .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Operator<o:p></o:p></SPAN></B></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 3.75pt; BACKGROUND: #efeff7; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #c8cdde 1pt solid; mso-border-bottom-alt: solid #C8CDDE .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Result<o:p></o:p></SPAN></B></P></TD></TR>
<TR style="mso-yfti-irow: 1">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">=<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Yields true if the term on the right and the term on the left are equal; otherwise yields false.<o:p></o:p></SPAN></P></TD></TR>
<TR style="mso-yfti-irow: 2; mso-yfti-lastrow: yes">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">!=<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Yields true if the term on the right and the term on the left are not equal; otherwise yields false.<o:p></o:p></SPAN></P></TD></TR></TBODY></TABLE>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">The left-hand term of an equality expression must be the name of an attribute in the ILM schema.<o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">The right-hand term of an equality expression can be one of the following:<o:p></o:p></SPAN></P>
<P class=MsoListParagraphCxSpFirst style="MARGIN: 0in 0in 2.25pt 42pt; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-list: l1 level1 lfo3; mso-add-space: auto; mso-margin-top-alt: auto; tab-stops: list 42.0pt"><SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; mso-bidi-font-size: 8.5pt"><SPAN style="mso-list: Ignore">·<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">A function call.<o:p></o:p></SPAN></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 2.25pt 42pt; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-list: l1 level1 lfo3; mso-add-space: auto; mso-margin-top-alt: auto; tab-stops: list 42.0pt"><SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; mso-bidi-font-size: 8.5pt"><SPAN style="mso-list: Ignore">·<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">A Boolean value.<o:p></o:p></SPAN></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 2.25pt 42pt; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-list: l1 level1 lfo3; mso-add-space: auto; mso-margin-top-alt: auto; tab-stops: list 42.0pt"><SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; mso-bidi-font-size: 8.5pt"><SPAN style="mso-list: Ignore">·<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">A dateTime value.<o:p></o:p></SPAN></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 2.25pt 42pt; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-list: l1 level1 lfo3; mso-add-space: auto; mso-margin-top-alt: auto; tab-stops: list 42.0pt"><SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; mso-bidi-font-size: 8.5pt"><SPAN style="mso-list: Ignore">·<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">A number.<o:p></o:p></SPAN></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 2.25pt 42pt; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-list: l1 level1 lfo3; mso-add-space: auto; mso-margin-top-alt: auto; tab-stops: list 42.0pt"><SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; mso-bidi-font-size: 8.5pt"><SPAN style="mso-list: Ignore">·<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">A string.<o:p></o:p></SPAN></P>
<P class=MsoListParagraphCxSpLast style="MARGIN: 0in 0in 2.25pt 42pt; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-list: l1 level1 lfo3; mso-add-space: auto; mso-margin-top-alt: auto; tab-stops: list 42.0pt"><SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; mso-bidi-font-size: 8.5pt"><SPAN style="mso-list: Ignore">·<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">A reference value.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 2.25pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">If the left-hand term is a reference type attribute, the right-hand term can be a location path expression (ie. a filter representing a sub-condition).<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 2.25pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"><o:p>&nbsp;</o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt 0.5in; LINE-HEIGHT: normal"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Multi-Valued Equality Expressions<o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt 0.5in; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"><o:p></o:p></SPAN></P>
<P><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">When the </SPAN><SPAN style="FONT-SIZE: 9pt; COLOR: #000066; FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt">=</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"> operator is used in an equality expression where the left-hand term is a multi-valued attribute and the right-hand term is a literal value, the expression evaluates to <B>true</B> if the value of the right-hand term is any of the values contained in the left_hand_term.</SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt 0.5in; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Example:<SPAN style="mso-spacerun: yes">&nbsp; </SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">/Group[ComputedMember = ’11111111-1111-1111-1111-111111111111’] </SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">returns all groups whose ComputedMember attribute contains the resource with the ObjectID ’11111111-1111-1111-1111-111111111111’.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2"><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">When the </SPAN><SPAN style="FONT-SIZE: 9pt; COLOR: #000066; FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt">=</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"> operator is used in an equality expression where the left-hand term is a&nbsp;reference attribute (multivalued or single valued) and the right-hand term is a location path expression, the expression evaluates to <B>true</B> if the value of the attribute on the left-hand term is any of the values contained in the node-set returned by the right_hand_term.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt 0.5in; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Example:<SPAN style="mso-spacerun: yes">&nbsp; </SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">/Group[Owner = /Person[EmployeeType = ‘Contractor’] </SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">returns all groups whose Owner is a Contractor. In other words, this filter returns all groups where any of the values of their Owner attribute is among the set of people whose Employee Type is ‘Contractor’.</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2"><o:p></o:p></SPAN></P>
<P class=MsoListParagraph style="MARGIN: 0in 0in 11.25pt 0.5in; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-list: l3 level1 lfo2; mso-add-space: auto"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">3.<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Relational Expressions<o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Relational expressions compare the values of two terms. They have the following form: </SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">left_hand_term operator right_hand_term</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Valid relational operators are: &lt;=, &lt;, &gt;=, &gt;, which are pretty self explanitory.</SPAN></P>
<P class=MsoListParagraph style="MARGIN: 0in 0in 11.25pt 0.5in; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-list: l3 level1 lfo2; mso-add-space: auto"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">4.<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Boolean Expressions<o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Boolean expressions evaluate the validity of two expressions in a predicate using ‘or’, and ‘and’.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">When ‘or’ is used, the predicate evaluates to true if either expression is true.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt 0.5in; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Example: </SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">/Person[JobTitle = ‘VP’ or ‘Senior VP’] </SPAN><SPAN style="FONT-SIZE: 8.5pt; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">returns <SPAN style="COLOR: black">people whose Job Title is ‘VP’ or ‘Senior VP’.<o:p></o:p></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">When ‘and’ is used, the predicate evaluates to true only if both expression are true.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt 0.5in; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Example: </SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: #1f497d; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-themecolor: text2">/Person[JobTitle = ‘VP’ and Department = ‘Sales’]</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"> returns people who are VPs and are in the Sales department.<o:p></o:p></SPAN></P>
<P class=MsoListParagraph style="MARGIN: 0in 0in 11.25pt 0.5in; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-list: l3 level1 lfo2; mso-add-space: auto"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">5.<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN></B><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Function Calls<o:p></o:p></SPAN></B></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">The ILM XPath Filter Dialect provides the following functions that can be used in location path expressions:<o:p></o:p></SPAN></P>
<TABLE class=MsoNormalTable style="WIDTH: 101.58%; mso-cellspacing: 1.5pt; mso-yfti-tbllook: 1184" cellPadding=0 width="101%" border=0 class="MsoNormalTable">
<TBODY>
<TR style="HEIGHT: 21.7pt; mso-yfti-irow: 0; mso-yfti-firstrow: yes">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 3.75pt; BACKGROUND: #efeff7; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #c8cdde 1pt solid; HEIGHT: 21.7pt; mso-border-bottom-alt: solid #C8CDDE .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Function Signature<o:p></o:p></SPAN></B></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: #f0f0f0; PADDING-LEFT: 3.75pt; BACKGROUND: #efeff7; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #c8cdde 1pt solid; HEIGHT: 21.7pt; mso-border-bottom-alt: solid #C8CDDE .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><B style="mso-bidi-font-weight: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Description<o:p></o:p></SPAN></B></P></TD></TR>
<TR style="HEIGHT: 44.2pt; mso-yfti-irow: 1">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; HEIGHT: 44.2pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">boolean contains(Attribute, string)<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; HEIGHT: 44.2pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Returns true if the value of the first argument, which must be a valid attribute in the ILM schema, contains the second as a substring; otherwise returns false. <o:p></o:p></SPAN></P></TD></TR>
<TR style="HEIGHT: 44.2pt; mso-yfti-irow: 2">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; HEIGHT: 44.2pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">boolean starts-with(Attribute, string)<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; HEIGHT: 44.2pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Returns true if the value of the first argument, which must be an attribute in the ILM schema, starts with the second; otherwise returns false. <o:p></o:p></SPAN></P></TD></TR>
<TR style="HEIGHT: 44.2pt; mso-yfti-irow: 3">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; HEIGHT: 44.2pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Boolean ends-with(Attribute, string)<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; HEIGHT: 44.2pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Returns true if the value of the first argument, which must be an attribute in the ILM schema, ends with the second; otherwise returns false.<o:p></o:p></SPAN></P></TD></TR>
<TR style="HEIGHT: 98.5pt; mso-yfti-irow: 4">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; HEIGHT: 98.5pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Boolean not(boolean)<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; HEIGHT: 98.5pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">The not function returns true if the argument evaluates to false and false if the argument evaluates to true.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>The argument must be one of the following expressions which returns a Boolean:<o:p></o:p></SPAN></P>
<P class=MsoListParagraphCxSpFirst style="MARGIN: 0in 0in 11.25pt 0.5in; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-list: l2 level1 lfo4; mso-add-space: auto"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">1.<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Relational expression<o:p></o:p></SPAN></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 11.25pt 0.5in; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-list: l2 level1 lfo4; mso-add-space: auto"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">2.<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Equality expression<o:p></o:p></SPAN></P>
<P class=MsoListParagraphCxSpLast style="MARGIN: 0in 0in 11.25pt 0.5in; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-list: l2 level1 lfo4; mso-add-space: auto"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: Verdana; mso-bidi-font-family: Verdana"><SPAN style="mso-list: Ignore">3.<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Function call<o:p></o:p></SPAN></P></TD></TR>
<TR style="HEIGHT: 32.55pt; mso-yfti-irow: 5">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; HEIGHT: 32.55pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">dateTime current-dateTime()<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; HEIGHT: 32.55pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Returns the current date and time with time zone. For more information see <A href="https://go.microsoft.com/fwlink/?LinkId=104162" target=_blank mce_href="https://go.microsoft.com/fwlink/?LinkId=104162"><SPAN style="COLOR: black; TEXT-DECORATION: none; text-underline: none">current-dateTime</SPAN></A> in XPath 2.0.<o:p></o:p></SPAN></P></TD></TR>
<TR style="HEIGHT: 33.35pt; mso-yfti-irow: 6">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; HEIGHT: 33.35pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">dateTime dateTime(date, time)<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; HEIGHT: 33.35pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Returns the arithmetic sum of the arguments. For more information see <A href="https://go.microsoft.com/fwlink/?LinkId=104163" target=_blank mce_href="https://go.microsoft.com/fwlink/?LinkId=104163"><SPAN style="COLOR: black; TEXT-DECORATION: none; text-underline: none">dateTime</SPAN></A> in XPath 2.0.<o:p></o:p></SPAN></P></TD></TR>
<TR style="HEIGHT: 44.2pt; mso-yfti-irow: 7">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; HEIGHT: 44.2pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">dateTime add-dayTimeDuration-to-dateTime(dayTimeDuration, <o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">dateTime)<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; HEIGHT: 44.2pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Returns the result of adding the values of the two arguments. For more information see <A href="https://go.microsoft.com/fwlink/?LinkId=104164" target=_blank mce_href="https://go.microsoft.com/fwlink/?LinkId=104164"><SPAN style="COLOR: black; TEXT-DECORATION: none; text-underline: none">add-dayTimeDuration-to-dateTime</SPAN></A> in XPath 2.0.<o:p></o:p></SPAN></P></TD></TR>
<TR style="HEIGHT: 43.4pt; mso-yfti-irow: 8">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; HEIGHT: 43.4pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">dateTime add-yearMonthDuration-to-dateTime(yearMonthDuration, dateTime)<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; HEIGHT: 43.4pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Returns the result of adding the values of the two arguments. For more information see <A href="https://go.microsoft.com/fwlink/?LinkID=104165" target=_blank mce_href="https://go.microsoft.com/fwlink/?LinkID=104165"><SPAN style="COLOR: black; TEXT-DECORATION: none; text-underline: none">add-yearMonthDuration-to-dateTime</SPAN></A> in XPath 2.0.<o:p></o:p></SPAN></P></TD></TR>
<TR style="HEIGHT: 55.05pt; mso-yfti-irow: 9">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; HEIGHT: 55.05pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">dateTime subtract-dayTimeDuration-from-dateTime(dayTimeDuration, <o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">dateTime)<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; HEIGHT: 55.05pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Returns the results of subtracting the value of the second argument from the value of the first argument. For more information see <A href="https://go.microsoft.com/fwlink/?LinkId=104166" target=_blank mce_href="https://go.microsoft.com/fwlink/?LinkId=104166"><SPAN style="COLOR: black; TEXT-DECORATION: none; text-underline: none">subtract-dayTimeDuration-from-dateTime</SPAN></A> in XPath 2.0.<o:p></o:p></SPAN></P></TD></TR>
<TR style="HEIGHT: 82.15pt; mso-yfti-irow: 10">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 82.15pt; mso-border-bottom-alt: solid white .75pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">dateTime subtract-yearMonthDuration-from-dateTime(yearMonthDuration, dateTime)<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 82.15pt; mso-border-bottom-alt: solid white .75pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Returns the results of subtracting the value of the second argument from the value of the first argument. For more information see <A href="https://go.microsoft.com/fwlink/?LinkId=104167" target=_blank mce_href="https://go.microsoft.com/fwlink/?LinkId=104167"><SPAN style="COLOR: black; TEXT-DECORATION: none; text-underline: none">subtract-yearMonthDuration-from-dateTime</SPAN></A> in XPath 2.0.<o:p></o:p></SPAN></P></TD></TR>
<TR style="HEIGHT: 82.15pt; mso-yfti-irow: 11">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 82.15pt; mso-border-bottom-alt: solid white .75pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">node-set descendants(locationPathExpression, attributeName)<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 82.15pt; mso-border-bottom-alt: solid white .75pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Returns a node-set (set of resources) that consists of the dereferenced resources obtained by dereferencing the reference attribute specified by <I style="mso-bidi-font-style: normal">attributeName</I>, starting with the resource specified by the location path expression.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Example: descendants(/Person[DisplayName = Nima’], ‘Manager’)<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>returns the manager of the person with the DisplayName of ‘Nima’, and the manager of all those people recursively (ie. everyone ‘Nima’ reports to indirectly)<o:p></o:p></SPAN></P></TD></TR>
<TR style="HEIGHT: 82.15pt; mso-yfti-irow: 12">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 82.15pt; mso-border-bottom-alt: solid white .75pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Bool descendant-in(attributeName, Filter)<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 82.15pt; mso-border-bottom-alt: solid white .75pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'">This function</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"> obtains a set of resources by recursively dereferencing the reference attribute specified by <I style="mso-bidi-font-style: normal">attributeName</I>, starting with the context node. If the set of resources obtained contains the resource identified by Filter (or is among the resources identified by Filter), the function returns true; otherwise, it returns false.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Example: /Person[ descendant-in(‘Manager’ , /Person[DisplayName = ‘Nima’])] returns all people who report to ‘Nima’ (ie. people who have ‘Nima’ in their management chain).<o:p></o:p></SPAN></P></TD></TR>
<TR style="HEIGHT: 82.15pt; mso-yfti-irow: 13">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 82.15pt; mso-border-bottom-alt: solid white .75pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">node-set membersof(ObjectID)<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 82.15pt; mso-border-bottom-alt: solid white .75pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">The membersof function accepts the unique identifier of a Set as input, and returns the members of that Set.</SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'"><o:p></o:p></SPAN></P></TD></TR>
<TR style="HEIGHT: 82.15pt; mso-yfti-irow: 14">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 82.15pt; mso-border-bottom-alt: solid white .75pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'">node-set allTime(locationPathExpression)<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 82.15pt; mso-border-bottom-alt: solid white .75pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">The allTime function accepts a valid filter expression in the XPath Filter Dialect as input, and returns the resources matching that expression at any time over the history of the data in the ILM Service database.<o:p></o:p></SPAN></P></TD></TR>
<TR style="HEIGHT: 82.15pt; mso-yfti-irow: 15">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 82.15pt; mso-border-bottom-alt: solid white .75pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'">node-set atTime(locationPathExpression, dateTime)<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 82.15pt; mso-border-bottom-alt: solid white .75pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">The atTime function accepts a valid filter expression in the XPath Filter Dialect and a DateTime as input. It returns the resources matching that matched the expression at the specific DateTime specified.<o:p></o:p></SPAN></P></TD></TR>
<TR style="HEIGHT: 82.15pt; mso-yfti-irow: 16">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 82.15pt; mso-border-bottom-alt: solid white .75pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'">node-set betweenTime(locationPathExpression, dateTime,<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>dateTime)<o:p></o:p></SPAN></P></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: white 1pt solid; HEIGHT: 82.15pt; mso-border-bottom-alt: solid white .75pt; mso-border-top-alt: solid white .75pt">
<P class=MsoNormal style="MARGIN: 0in 0in 11.25pt; LINE-HEIGHT: normal"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">The betweenTime function accepts a valid filter expression in the XPath Filter Dialect, two DateTime values as input, and returns the resources matching that expression at any time between the two DateTimes specified.<o:p></o:p></SPAN></P></TD></TR>
<TR style="mso-yfti-irow: 17; mso-yfti-lastrow: yes">
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; mso-border-top-alt: solid white .75pt"></TD>
<TD class="" style="BORDER-RIGHT: #f0f0f0; PADDING-RIGHT: 3.75pt; BORDER-TOP: white 1pt solid; PADDING-LEFT: 3.75pt; BACKGROUND: #f7f7ff; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: #f0f0f0; PADDING-TOP: 0.75pt; BORDER-BOTTOM: #f0f0f0; mso-border-top-alt: solid white .75pt"></TD></TR></TBODY></TABLE>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"><o:p>&nbsp;</o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Hopefully this blog helps you understand the structure of the XPath Filter Dialect expression language.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Trust me when I say this knowledge will come in extremely handy if you will be performing any of the following:<o:p></o:p></SPAN></P>
<P class=MsoListParagraphCxSpFirst style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l4 level1 lfo5"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"><SPAN style="mso-list: Ignore">·<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Creating search scopes for the portal.<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>Search scopes are pre-canned searches you can use in the portal.<o:p></o:p></SPAN></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l4 level1 lfo5"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"><SPAN style="mso-list: Ignore">·<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Creating advanced calculated sets and groups that cannot be created using the Filter Builder control in the ILM portal.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>One example of such a set is the set of all resources that contain an Expected Rule Entry for a particular Synchronization Rule in their Expected Rules List.<o:p></o:p></SPAN></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l4 level1 lfo5"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"><SPAN style="mso-list: Ignore">·<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Creating custom activities that will query the ILM Service database.<o:p></o:p></SPAN></P>
<P class=MsoListParagraphCxSpLast style="MARGIN: 0in 0in 10pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l4 level1 lfo5"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"><SPAN style="mso-list: Ignore">·<SPAN style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Creating a WS client that will submit queries to the ILM Web Service.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Such clients can be used for purposes such as reporting.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Stay tuned as I will be following up with some xpath ‘tips and tricks’ and sample filters for commonly requested queries.<o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Cheers,</SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 10pt"><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"></SPAN><SPAN style="FONT-SIZE: 8.5pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">Nima Ganjeh</SPAN></P>]]></content:encoded>
    </item>
    <item>
      <title>ILM "2" also comes as a hybrid...</title>
      <link>https://docs.microsoft.com/archive/blogs/doittoit/ilm-2-also-comes-as-a-hybrid</link>
      <pubDate>Tue, 18 Nov 2008 13:26:00 GMT</pubDate>
      <dc:creator><![CDATA[TechNet Archive]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/doittoit/2008/11/18/ilm-2-also-comes-as-a-hybrid/</guid>
      <description><![CDATA[For those of you who are MIIS / ILM 2007 pros, when seeing the Codeless Provisioning functionality...]]></description>
      <content:encoded><![CDATA[<P>For those of you who are MIIS / ILM 2007 pros, when seeing the Codeless Provisioning functionality one of the first questions that comes to mind is "can I use my existing rules extension in ILM "2"?".</P>
<P>Of course.</P>
<P>At a basic level, with ILM "2" RC, you can take an existing ILM 2007 deployment and migrate it's synchronization engine component straight into ILM "2" RC. You can do this by copying the IdentityIntegrationServer DB to a ILM "2" server, and upon installing ILM "2" point to this database instance during the setup of the synchronization component. The installer will then migrate that data forward such that all existing MA and MV configurations are ready to use right away, including rules extensions.</P>
<P>But if you want to go beyond this, its important to note how Codeless Provisioning works side-by-side with existing ILM synchronizaiton concepts. That is, while Codeless Provisioning bubbles up a business process driven approach to synchronization it is inherently underpinned by the same basic mechanics which power the ILM synchronization engine. As such, the adding of this functionality should not in any way change the behaviour of how MA's work, how rules extensions are called or how traditional metaverse provisioning is done.</P>
<P>This side-by-side coexistence is collectively referred to as a hybrid deployment.</P>
<P><STRONG>Metaverse Provisioning</STRONG>&nbsp;</P>
<P>In fact, it is supported to run Codeless Provisioning based provisioning logic side by side with traditional metaverse extensions. Codeless Provisioning is driven through the processing of Expected Rule Entry (ERE) objects, these determine which MV objects are provisioned a connector and how flows are applied on top. For a MV object being sync'ed, this processing is done prior to the calling of the Metaverse rules extension. Hence if for any reason the ERE's attached to a MV object do not achieve a desired outcome in a CS, you can use a Metaverse extension to provision additional connectors, apply initial flows and&nbsp;deprovision existing connectors just you would have done with ILM 2007.</P>
<P><STRONG>Custom Functions = Rules Extensions</STRONG>&nbsp;</P>
<P>Metaverse extensions are just one aspect of a hybrid scenario. A more common use case is for scripted flow. ILM "2" RC contains around 20 built in functions, which for the most part should satisfy most basic needs. However if this is not true, then you can always use an traditional Rules Extension to apply a transformation on a outbound flow. Using an MA, you can defined an advanced flow like before. This flow will be applied after any Sync Rule flows have been pushed onto an object, thus allowing you to append or overwrite attribute flow data that was provided by a Sync Rule. </P>
<P><STRONG>Join / Projection Rules</STRONG></P>
<P>On the inbound side, the traditional Join/Projection concepts live on as you remember them in ILM 2007. Just like the extension points, you can use traditional declared/advanced join projection rules along side Synchronization Rule concepts. In this case, if you have defined a Inbound Synchronization Rule on an MA that also has traditional join/projection rules defined the Synchronization Rule will be evaluated first. So if a disconnector exists within this MA such that it matches a Synchronization Rule's connected scoping filter, than this disconnector will be attempted to be joined/projected to the MV based on that Synchronization Rule definition. If the evaluation of that disconnector against the Synchronization Rule results in the CS object remaining a disconnector, then the existing declared join/projection rules will be executed against it.</P>]]></content:encoded>
    </item>
  </channel>
</rss>