code: public FlattenDescriptor merge( FlattenDescriptor descriptor )
      {
          FlattenDescriptor result = new FlattenDescriptor();
          for ( PomProperty<?> property : PomProperty.getPomProperties() )
          {
              String name = property.getName();
              ElementHandling handling = this.name2handlingMap.get( name );
              if ( handling == null )
              {
                  handling = descriptor.name2handlingMap.get( name );
              }
              if ( handling != null )
              {
                  result.name2handlingMap.put( name, handling );
              }
          }
          return result;
      }
docs: Creates and returns a new {@link FlattenDescriptor} with the {@link ElementHandling}s merged from this and the
  given {@link FlattenDescriptor}.
  
  @param descriptor is the {@link FlattenDescriptor} to merge with this one.
  @return the merged {@link FlattenDescriptor}.