// Defer creation of the entry set until it is actually needed.
if (fEntrySet == null) {
final int length = getLength();
final XSNamedMapEntry[] entries = new XSNamedMapEntry[length];
for (int i = 0; i < length; ++i) {
XSObject xso = item(i);
entries[i] = new XSNamedMapEntry(new QName(xso.getNamespace(), xso.getName()), xso);
}
// Create a view of this immutable map.
fEntrySet = new AbstractSet() {
public Iterator iterator() {
return new Iterator() {