/** * Creates a new ezcsseRule object from given XML node * * @param DOMElement $node * @return ezcsseRule */ static function createFromXML(DOMElement $node) { $newObj = new ezcsseRule(); if ($node->hasAttributes()) { foreach ($node->attributes as $attr) { $newObj->setAttribute($attr->name, $attr->value); } } foreach ($node->childNodes as $node) { if ($node->nodeType == XML_ELEMENT_NODE && $node->nodeName == 'property') { $newObj->addProperty(ezcsseProperty::createFromXML($node)); } elseif ($node->nodeType == XML_ELEMENT_NODE) { $newObj->setAttribute($node->nodeName, $node->nodeValue); } } return $newObj; }