public static function parse(&$src) { $result = array(); \org\rhaco\Xml::set($x, '<:>' . $src . '</:>'); foreach ($x->in('author') as $in) { $src = str_replace($in->plain(), '', $src); $o = new self(); $o->name($in->f('name.value()')); $o->url($in->f('url.value()')); $o->email($in->f('email.value()')); if (!$o->is_url()) { $o->url($in->f('uri.value()')); } $result[] = $o; } return $result; }