public CMNamedNodeMap getElements() {
if (fElements == null) {
int length = getDocument().getElements().getLength();
CMNamedNodeMapImpl elements = new CMNamedNodeMapImpl();
for (int i = 0; i < length; i++) {
CMElementDeclaration ed = new CMElementDeclarationWrapperImpl(fPrefix, (CMElementDeclaration) getDocument().getElements().item(i));
elements.setNamedItem(ed.getNodeName(), ed);
}
fElements = elements;
}
return fElements;
}