$content = $filesystem->read($object['path']); $xmp_data_start = strpos($content, ''); $xmp_length = $xmp_data_end - $xmp_data_start; $xmp_data = substr($content, $xmp_data_start, $xmp_length + 12); $document = new DOMDocument(); $document->loadXml($xmp_data); $xpath = new DOMXpath($document); /** * most likely a bit hackish.. thats how I do get all namespaces... */ $results = preg_match_all('_xmlns:([A-Za-z]+)="(.*)"_U', $xmp_data, $matches); foreach($matches[1] as $key => $alias){ // echo "registering $alias for ".$matches[2][$key]."\n"; $xpath->registerNamespace($alias, $matches[2][$key]); }