code: private BindingProperty findSatisfiesBindingProperty( final List<BindingProperty> bindings,
                                                          final BindingProperty requirement )
    {
      final BindingProperty property = findMatchingBindingProperty( bindings, requirement );
      if ( null != property && property.matches( requirement.getValue() ) )
      {
        return property;
      }
      return null;
    }
docs: Return the binding property in the bindings list that satisfies specified requirement. Satisfies means that
  the property name matches and the value matches.