Building references
There are three ways to create reference values in your XML files.
Using a known Object ID
If you know the Object ID of an object in the FIM service, you can reference the Object ID directly. The following example shows adding the built-in administrator to the membership of a set
<AttributeOperation operation="add" name="ExplicitMember">7fb2b853-24f0-4498-9534-4e10589723c4</AttributeOperation>
Referencing another ResourceOperation element
If you have a resource defined in your XML file as a ResourceOperation element, you can reference the ResourceObject instead, and the tool will automatically populate the reference attribute with the correct Object ID using an AttributeOperation with a type of xmlref
<!-- Create the workflow to reference -->
<ResourceOperation operation="Add Update" resourceType="WorkflowDefinition" id="demoWorkflowDefinition">
<AnchorAttributes>
<AnchorAttribute>DisplayName</AnchorAttribute>
</AnchorAttributes>
<AttributeOperations>
<AttributeOperation operation="replace" name="DisplayName">___Demo Workflow Definition</AttributeOperation>
<AttributeOperation operation="replace" name="XOML" type="file">.\Templates\WFDemo.xml</AttributeOperation>
<AttributeOperation operation="replace" name="RequestPhase">Action</AttributeOperation>
<AttributeOperation operation="replace" name="RunOnPolicyUpdate">false</AttributeOperation>
</AttributeOperations>
</ResourceOperation>
<!-- Update the MPR that references the workflow -->
<ResourceOperation operation="Update" resourceType="ManagementPolicyRule" id="demoMPR">
<AnchorAttributes>
<AnchorAttribute>DisplayName</AnchorAttribute>
</AnchorAttributes>
<AttributeOperations>
<AttributeOperation operation="none" name="DisplayName">___Demo MPR - Triggers Workflow</AttributeOperation>
<AttributeOperation operation="replace" name="ActionWorkflowDefinition" type="xmlref">demoWorkflowDefinition</AttributeOperation>
</AttributeOperations>
</ResourceOperation>
Referencing an object that exists in the FIM Service
If you know that an object exists in the FIM service (such as an object-of-box object), you can reference it directly using the reference
type on the AttributeOperation element. The following example sets the ExplicitMember attribute of one object to a reference to the "Administrators" built-in set.
<AttributeOperation operation="add" name="ExplicitMember" type="reference">Set|DisplayName|Administrators</AttributeOperation>
Deferencing an XML ResourceOperation
You can dereference a ResourceOperation and get one of the attributes contained in the object using a special variable syntax using the format ##xmlref:<xmlrefid>:<attribute name>##
. In the following example we define a Workflow definition with its known display name
<ResourceOperation operation="None" resourceType="WorkflowDefinition" id="demoWorkflowDefinition">
<AnchorAttributes>
<AnchorAttribute>DisplayName</AnchorAttribute>
</AnchorAttributes>
<AttributeOperations>
<AttributeOperation operation="none" name="DisplayName">___Demo Workflow Definition</AttributeOperation>
</AttributeOperations>
</ResourceOperations>
Which can then be referenced by attribute operations within other ResourceOperations
<AttributeOperation operation="replace" name="Description">Triggers the "##xmlref:demoWorkflowDefinition:DisplayName##" workflow</AttributeOperation>
Last updated