<!-- Ignores unbound elements under <first-and-last>. -->
<binding>
  <mapping name="customer" class="simple.Customer2">
    <structure name="name" usage="optional" test-method="hasName" ordered="false">
      <structure name="first-and-last" usage="optional" ordered="false" flexible="true">
        <value name="first-name" field="firstName" usage="optional"/>
        <value name="last-name" field="lastName" usage="optional"/>
      </structure>
    </structure>
    <structure get-method="getAddress" set-method="setAddress" usage="optional">
      <value name="street1" field="street1"/>
      <value name="city" field="city"/>
      <value name="state" field="state"/>
      <value name="zip" field="zip"/>
    </structure>
    <value name="phone" field="phone"/>
  </mapping>
</binding>
