In my rule, I'm looping through the values of the objectClass attribute.


<actions>
<do-for-each>
<arg-node-set>
<token-attr name="Object Class"/>
</arg-node-set>
<arg-actions>
<arg-string>
<token-text xml:space="preserve">Current Node =</token-text>
<token-op-property name="$current-node$"/>
</arg-string>
<do-set-local-variable name="objClass" scope="policy">
<arg-string>
<token-op-property name="$current-node$"/>
</arg-string>
</do-set-local-variable>
<do-trace-message level="1">
<arg-string>
<token-local-variable name="objClass"/>
</arg-string>
</do-trace-message>
</arg-actions>
</do-for-each>
</actions>


In the trace I see the rule retrieving the values:

<attr attr-name="Object Class">
<value timestamp="1438347917#433" type="string">User</value>
<value timestamp="1438347917#434" type="string">Organizational
Person</value>
<value timestamp="1438347917#435" type="string">Person</value>

But I get an error on the Organizational Person value:

Performing actions for local-variable(current-node) = <value>
@timestamp = "1438347917#434" @type = "string".
Action:
do-set-local-variable("objClass",scope="policy",token-op-property("$current-node$")).
arg-string(token-op-property("$current-node$"))
token-op-property("$current-node$")
Expanded variable reference '$current-node$' to 'Organizational Person'.
ST:Processing returned document.
Processing operation <status> for .

DirXML Log Event -------------------
Driver: \ABC_IDM_QA1\services\IDM-Driverset\Agile - Delimited Text
Channel: Subscriber
Object: \ABC_IDM_QA1\ABC\INTERNAL\NA\EMPLOYEES\a12345
Status: Error
Message: Code(-9189) Error in
vnd.nds.stream://ABC_IDM_QA1/services/IDM-Driverset/Agile+-++Delimited+Text/Subscriber/sub-ctp-ProcessUsers#XmlData:147:
Invalid element or attribute name: 'Organizational Person'.
[08/25/15 11:42:58.143]:**AgileUser** ST:End transaction.


I assume this is because of the space in "Organizational Person". When I
look at the object in an LDAP browser, the attribute name is
organizationalPerson.
How can I get this rule to work without the error? Any help much
appreciated.