private Attributes splitAttributes ( final NamedNodeMap map ) { Attr sLoc = ( Attr ) map . getNamedItemNS ( XMLConstants . W3C_XML_SCHEMA_INSTANCE_NS_URI , "schemaLocation" ) ; Attr nNsLoc = ( Attr ) map . getNamedItemNS ( XMLConstants . W3C_XML_SCHEMA_INSTANCE_NS_URI , "noNamespaceSchemaLocation" ) ; Attr type = ( Attr ) map . getNamedItemNS ( XMLConstants . W3C_XML_SCHEMA_INSTANCE_NS_URI , "type" ) ; List < Attr > rest = new LinkedList < Attr > ( ) ; final int len = map . getLength ( ) ; for ( int i = 0 ; i < len ; i ++ ) { Attr a = ( Attr ) map . item ( i ) ; if ( ! XMLConstants . XMLNS_ATTRIBUTE_NS_URI . equals ( a . getNamespaceURI ( ) ) && a != sLoc && a != nNsLoc && a != type && getAttributeFilter ( ) . test ( a ) ) { rest . add ( a ) ; } } return new Attributes ( sLoc , nNsLoc , type , rest ) ; }
Separates XML namespace related attributes from normal attributes . xb