protected function useForeignAttributes(dom\element $el) { $bResult = false; foreach ($el->getAttributes() as $attr) { $sNamespace = $attr->getNamespace(); if ($sNamespace && $sNamespace != $this->getNamespace(static::PREFIX) && $sNamespace !== self::BUILDER_NS) { $bResult = true; break; } } return $bResult; }
protected function getForeignAttributes(dom\element $source, dom\element $target = null, $bRemove = false) { $aResult = array(); foreach ($source->getAttributes() as $attr) { $sNamespace = $attr->getNamespace(); if (!$sNamespace || $sNamespace == $this->getNamespace()) { if ($target) { $target->add($this->parseAttribute($attr)); } } else { if ($sNamespace !== self::BUILDER_NS) { $aResult[$sNamespace] = true; if ($bRemove) { $attr->remove(); } } } } return $aResult; }