bool IApplyMemberStep.Apply(PropertyTreeBinderImpl parent, PropertyTreeMetaObject target, PropertyTreeNavigator node)
            {
                var member = target.SelectOperator(ImpliedName(node, target));

                if (member != null) {
                    DoOperatorBind(parent, target, node, member);
                    return true;
                }

                return false;
            }
            bool IApplyMemberStep.Apply(PropertyTreeBinderImpl parent, PropertyTreeMetaObject target, PropertyTreeNavigator node)
            {
                var member = target.SelectOperator(ImpliedName(node, target));

                if (member != null)
                {
                    DoOperatorBind(parent, target, node, member);
                    return(true);
                }

                return(false);
            }
        internal static Predicate <PropertyTreeNavigator> ImplicitDirective(PropertyTreeMetaObject target, string name)
        {
            var defaultNS = NamespaceUri.Default + name;
            var langNS    = Xmlns.PropertyTrees2010Uri + name;
            var existing  = (PropertyNodeDefinition)target.SelectProperty(defaultNS, allowDefaultProperties: false)
                            ?? target.SelectOperator(defaultNS);

            if (existing == null)
            {
                return(t => t.Name == name);
            }
            else
            {
                return(t => t.QualifiedName == langNS);
            }
        }