Extending a base configuration entity

You can define all your entity extensions in files that end with the .etx extension by using Guidewire Studio™. Studio automatically manages the process and stores the .etx file in the correct location in the application.

Important: Guidewire provides certain entity extensions as part of the base application configuration. Many of the extension index definitions address performance issues. Other extensions provide the ability to configure the data model in ways that would not be possible if the extension was part of the base data model. Do not overwrite a Guidewire extension with your own extension without understanding the full implications of the change.

PolicyCenter extensions enable you to add new fields to the base data entities. You can add custom fields to extendible entities only. Not all entities are extendible. However, most of the important business entities are. For examples, Policy, User, and Contact are extendible entities. You can determine if an entity is extendible by looking in the Data Dictionary to see if it supports the Extendable attribute. The Data Dictionary displays the list of attributes for that entity type directly underneath the entity name.

Use the <extension> XML root element to create an extension entity. Before creating a new extension file, first determine if one already exists.

  • If an extension file for the entity does exist, edit that file to extend the entity.
  • If an extension file for the entity does not exist, create the new extension file and populate it accordingly.

You can define multiple extensions for base configuration entities and typelist entities. Each extension file must have a unique name.

You can add a qualifier to a base entity or typelist file name to adhere to the uniqueness constraint. The following list contains valid entity extension file names with the first name being the base file name and the subsequent file names having qualifiers:
  • Account.etx
  • Account.Householder.etx
  • Account.Renter.etx
The following list contains valid typelist extension file names with the first name being the base file name and the subsequent file names having qualifiers:
  • Jurisdiction.ttx
  • Jurisdiction.Canada.ttx
  • Jurisdiction.Australia.ttx

Create a new extension file

About this task

The simplest (and safest) way to create a new extension file is to let Studio manage the process.

Procedure

  1. In the Studio Project tool window, navigate to configuration > config > Metadata > Entity, and then locate the entity that you want to extend.
  2. Right-click the entity, and then click New > Entity Extension. Studio creates a basically empty extension file named <entity>.etx, places it in the configuration > config > Extensions > Entity folder, and opens it in a view tab for editing.
    Note: If an extension file for the selected entity file already exists, Studio does not permit you to create another one. If the file name in the Entity Extension dialog box is grayed out, that means that an extension already exists. In that case, search in the configuration > config > Extensions > Entity folder for an existing extension file.
  3. Populate the extension with the required attributes.
  4. Deploy your changes to the application server.

What to do next

You must redeploy the application after you make any change to the Guidewire PolicyCenter data model. See Deploying data model changes to the application server for details.