ponizej link do przykladowego pliku, tak jak mówiłem nie jet to typowy plik rdf chocby ze wzgledu na rozszerzenie, ale to chyba nie powino mieć znaczenia.
http://clients.goodlux.com/tiffany/cr2/IMG_0390.xmp[EDIT]
to niby jakoś tam parsuje, działa tylko w jedną strone, sparsowany plik nie wraca do swojej poprzedniej postaci po ponownym parsowaniu za pomocą tego narzędzia
[EDIT]
Ok prepraszam jesli jest to jakiś banalny problem ale z obiektowym php jak do tej pory miałem malo do czynienia i cięzko mi jest jeszce zrozumiec pewne rzeczy. Doszedłem do szegoś takiego:
$xml = 'http://clients.goodlux.com/tiffany/cr2/IMG_0390.xmp';
$xml = simplexml_load_file($xml);
$ns = $xml->getNameSpaces(true);
$x = $xml->children($ns['x']);
rezultat jest taki
Kod
Array
(
[x] => adobe:ns:meta/
[rdf] => http://www.w3.org/1999/02/22-rdf-syntax-ns#
[exif] => http://ns.adobe.com/exif/1.0/
[aux] => http://ns.adobe.com/exif/1.0/aux/
[tiff] => http://ns.adobe.com/tiff/1.0/
[xap] => http://ns.adobe.com/xap/1.0/
[dc] => http://purl.org/dc/elements/1.1/
[crs] => http://ns.adobe.com/camera-raw-settings/1.0/
[photoshop] => http://ns.adobe.com/photoshop/1.0/
)
SimpleXMLElement Object
(
[@attributes] => Array
(
[xmptk] => Public XMP Toolkit Core 3.5
)
)
[EDIT]
Więc wychodzi na to że mam dostęp do każdej gałezi z osobna
Potrzebowałbym zrobić tak, zeby caly ten plik znalazł się w jednym obiekcie/tablicy ...trochę zaczynam rozumieć o co chodzi z namespaces. Znalazłem kilka przykałdów jak się dostać do takich gałęzi jednak żaden z nich nie ma odzwierciedlenia w moim przypadku.
Z tego co widze to zwykłe pliki xml wyglądają dokładnie tak jakbym sobie tego zyczył natomiast obiekty z namespaces są 'dziurawe' ...czy istnieje jakas funkcja która wyswietli mi cały plik rdf w takiej formie jak zwykly plik xml ale z uwzglednieniem tych namespaces?
[EDIT]
Ok poradziłem w sobie w najbardziej prozaiczny z mozliwych sposobów, szkoda, ze wcześniej na to nie wpadłem

Dla potomnych jesli komuś by się miało przydać
$xml = 'http://clients.goodlux.com/tiffany/cr2/IMG_0390.xmp';
$xml = preg_replace('#([</][a-zA-Z]+):([a-zA-Z0-9]+)#', "$1___$2", $xml); $xml = preg_replace('#([a-zA-Z]+):([a-zA-Z0-9]+=)#', "$1___$2", $xml); $xml = simplexml_load_string($xml);
...dokładnie tego mi było trzeba