Archive entities and the RootInfo delegate

Whenever PolicyCenter archives an instance of the archive domain graph, PolicyCenter keeps the following entities in the main PolicyCenter database:

  • The PolicyPeriod entity instance
  • The related EffectiveDatedFields entity instance for the PolicyPeriod
  • Other, optional, entity instances

The root of the archive domain graph must implement the RootInfo delegate. In PolicyCenter, the PolicyPeriod entity type implements the RootInfo delegate. You cannot change which entity type implements the RootInfo delegate. It must always be PolicyPeriod.

The PolicyPeriod instance provides the following:

  • Sufficient information to retrieve the archival data
  • Sufficient information for a minimal search on archival data

The following sample code shows the metadata definition of the PolicyPeriod entity implementing the RootInfo delegate.

<entity xmlns="http://guidewire.com/datamodel" 
      desc="Policy Period allows a point in time reconstruction of all key policy attributes."
      effDatedContainerField="Policy"
      entity="PolicyPeriod"
      exportable="true"
      loadable="false"
      lockable="true"
      table="policyperiod"
      type="effdatedbranch">
  ...
  <implementsEntity name="RootInfo"/>
  ...
</entity>

PolicyCenter does not archive the PolicyPeriod table. PolicyCenter archives only the tables that the PolicyPeriod entity type owns.

Important: Because PolicyCenter does not archive the PolicyPeriod table, the table continues to grow regardless of archiving. Therefore, Guidewire recommends against extending the PolicyPeriod entity to store large amounts of data, such as BLOB fields.