The previous examples show properties that derive their value from a simple hierarchy. Property derivation expressions can also specify various unrelated properties. In the following example, a shipping address is derived from one of the following sources:

/* item descriptors address and company previously defined */

<item-descriptor name="user">
  <property name="shipToAddress" writable="false" item-type="address">
    <derivation>
      <expression>shippingAddress</expression>
      <expression>billingAddress</expression>
      <expression>homeAddress</expression>
      <expression>company.address</expression>
    </derivation>
  </property>
  <table name="user" >
    <property name="shippingAddress" item-type="address"/>
    <property name="billingAddress" item-type="address"/>
    <property name="homeAddress" item-type="address"/>
    <property name="company" item-type="company"/>
  </table>
</item-descriptor>

To determine the value of the user’s shipToAddress for a user, the expressions specified in the derivation are searched in order. Any expression may also refer to properties that are themselves derived.


Copyright © 1997, 2012 Oracle and/or its affiliates. All rights reserved. Legal Notices