}
}
setCharacterData (false);
if (augs != null) {
ElementPSVI elementPSVI = (ElementPSVI)augs.getItem (Constants.ELEMENT_PSVI);
if (elementPSVI != null && fNamespaceAware) {
XSTypeDefinition type = elementPSVI.getMemberTypeDefinition ();
if (type == null) {
type = elementPSVI.getTypeDefinition ();
}
((ElementNSImpl)el).setType (type);
}
}
// filter nodes
if (fDOMFilter != null && !fInEntityRef) {
if (fRoot.rawname == null) {
// fill value of the root element
fRoot.setValues(element);
} else {
short code = fDOMFilter.startElement(el);
switch (code) {
case LSParserFilter.FILTER_INTERRUPT :
{
throw new RuntimeException("The normal processing of the document was interrupted.");
}
case LSParserFilter.FILTER_REJECT :
{
fFilterReject = true;
fRejectedElement.setValues(element);
return;
}
case LSParserFilter.FILTER_SKIP :
{
fSkippedElemStack.push(element);
return;
}
default : {}
}
}
}
fCurrentNode.appendChild (el);
fCurrentNode = el;
}
else {
Object type = null;
if (augs != null) {
ElementPSVI elementPSVI = (ElementPSVI)augs.getItem (Constants.ELEMENT_PSVI);
if (elementPSVI != null) {
type = elementPSVI.getMemberTypeDefinition ();
if (type == null) {
type = elementPSVI.getTypeDefinition ();
}
}
}
int el =