+ final Map<QName, Object> predicates;
+ final Collection<QName> keys = schema.getKeyDefinition();
+ if (!keys.isEmpty()) {
+ predicates = keyDefToPredicates(keys);
+ } else if (!childrenQNamesToPaths.isEmpty()) {
+ predicates = childrenToPredicates();
+ } else {
+ predicates = ImmutableMap.of();
+ }
+ return NodeIdentifierWithPredicates.of(schema.getQName(), predicates);
+ }