Virtual properties on data entities

The Data Dictionary lists certain entity properties as virtual. PolicyCenter does not store virtual properties in the PolicyCenter physical database. Instead, it derives a virtual property through a method, a concatenation of other fields, or from a pointer (foreign key) to a field that resides elsewhere.

For example, if you view the Account entity in the Data Dictionary (for PolicyCenter), you see the following next to the AccountContactRoleSubtypes field:

Derived property returning gw.api.database.IQueryResult (virtual property)

Examples

The following examples illustrate some of the various ways that Guidewire applications determine a virtual property. The following examples use Guidewire ClaimCenter for illustration.

Virtual property based on a foreign key

Claim.BenefitsDecisionReason is a virtual property that pulls its value from the cc_claimtext table, which stores ClaimText.ClaimTextType = BenefitsDecisionReason. It returns a mediumtext value. The other fields in cc_claimtext and cc_exposuretext work in a similar fashion.

Virtual property based on an associated role

Claim.claimant is a virtual property that retrieves the Contact associated with the Claim having the ClaimContactRole of claimant. The virtual property returns a Person value.

Virtual property based on a typelist

Contact.PrimaryPhoneValue is a virtual property that calculates its return value based on the value from Contact.PrimaryPhone. It retrieves the telephone number stored in the field represented by that typekey. The telephone number can be one of the following:

  • Contact.HomePhone
  • Contact.WorkPhone
  • Person.CellPhone

It returns a phone value.