Editing the difference tree XML files
PolicyCenter includes difference tree XML configuration files for the built-in products. This is the primary mechanism for customizing how to show differences to users. Edit these files to modify the default behavior. Create additional XML files as desired.
To access the difference tree XML files in Studio, in the Project window, navigate to . To view the XSD for the difference tree XML files, in the Project window, navigate to . Open the difftree.xsd tree.
The following is an example of a personal auto XML difference tree configuration file.
<DiffTree xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="schema/difftree.xsd">
<Section label="displaykey.Web.Differences.LOB.Common.PolicyInfo">
<RootProperties includefromtype="PolicyPeriod" sortorder="1"/>
<RootProperties includefromtype="EffectiveDatedFields" sortorder="2">
<PropertyDisplay propertyname="OfferingCode" value="ENTITY.getOfferingName(VALUE)"/>
</RootProperties>
<RootEntity type="PolicyPriNamedInsured"
label="displaykey.Web.Differences.LOB.Common.PolicyPriNamedInsured(ENTITY.DisplayName)"
sortorder="3"/>
<RootEntity type="PolicySecNamedInsured"
label="displaykey.Web.Differences.LOB.Common.PolicySecNamedInsured(ENTITY.DisplayName)"
sortorder="4"/>
<RootEntity type="PolicyAddlInterest" showadds="false" showremoves="false"
label="displaykey.Web.Differences.LOB.Common.PolicyAddlInterest(ENTITY.DisplayName)"
sortorder="5"/>
<RootEntity type="PolicyAddress"
label="displaykey.Web.Differences.LOB.Common.PolicyAddress(ENTITY.AddressType)"
sortorder="6"/>
</Section>
<Section label="displaykey.Web.Differences.LOB.PA.Drivers">
<RootEntity type="PolicyDriver"
label="displaykey.Web.Differences.LOB.Common.PolicyDriver(ENTITY.DisplayName)"/>
</Section>
<Section label="displaykey.Web.Differences.LOB.PA.Vehicles">
<RootEntity type="PersonalVehicle">
<SubSection label="displaykey.Web.Differences.LOB.Common.Coverages" sortorder="1">
<Entity type="PersonalVehicleCov" parentpath="ENTITY.PersonalVehicle"/>
</SubSection>
<SubSection label="displaykey.Web.Differences.LOB.Common.Modifiers" sortorder="2">
<Entity type="PAVehicleModifier" parentpath="ENTITY.PAVehicle">
<Properties includefromtype="PAVehicleModifier" parentpath="ENTITY">
<PropertyDisplay propertyname="TypeKeyModifier" value="
if (ENTITY.Pattern == "PAPassiveRestraint") {
return (VALUE as PassiveRestraintType).DisplayName
} else if (ENTITY.Pattern == "PAAntiTheft") {
return (VALUE as AntiTheftType).DisplayName
} else {
return VALUE as String
}
"/>
</Properties>
</Entity>
</SubSection>
<Entity type="VehicleDriver" parentpath="ENTITY.Vehicle"
label="displaykey.Web.Differences.LOB.PA.AssignedDriver(ENTITY.DisplayName)" sortorder="3"/>
<Entity type="PAVhcleAddlInterest" parentpath="ENTITY.PAVehicle"
label="displaykey.Web.Differences.LOB.Common.PolicyAddlInterestDetail(ENTITY.DisplayName,
ENTITY.AdditionalInterestType)" sortorder="4">
<Properties includefromtype="PAVhcleAddlInterest" parentpath="ENTITY">
<PropertyDisplay propertyname="AdditionalInterestType" />
</Properties>
</Entity>
</RootEntity>
</Section>
<Section label="displaykey.Web.Differences.LOB.Common.LineCoverages">
<RootEntity type="PersonalAutoCov"/>
</Section>
</DiffTree>
Notice that this relatively small file describes all the possible changes to the personal auto line of business. One reason it is so small is that it does not have to specify all the properties on each entity. For property changes, the default node generation code implicitly creates nodes in the difference tree underneath each entity. You can customize the behavior with elements and attributes to omit properties.
