Moim celem jest wyodrębnienie określonych węzłów z wielu plików xml z wieloma przestrzeniami nazw przy użyciu XPath. Wszystko działa dobrze, o ile znam identyfikatory URI przestrzeni nazw. Sama nazwa przestrzeni nazw pozostaje stała, ale schematy (XSD) są czasami generowane przez klienta, tj. Są mi nieznane. Wtedy mam zasadniczo trzy możliwości:
użyj tylko jednego schematu dla przestrzeni nazw, mając nadzieję, że nic nie pójdzie źle (czy mogę być pewien?)
pobierz węzły potomne dokumentu i poszukaj pierwszego węzła z identyfikatorem URI przestrzeni nazw, mając nadzieję, że tam jest, i po prostu użyj tego identyfikatora, mając nadzieję, że jest poprawny. może się nie udać z wielu powodów
jakoś powiedz xpath: "patrz, nie obchodzą mnie przestrzenie nazw, po prostu znajdź WSZYSTKIE węzły o tej nazwie, mogę nawet podać nazwę przestrzeni nazw, ale nie URI". I oto jest pytanie ...
Nie jest to powtórzenie wielu pytań typu „moje wyrażenie xpath nie działa, ponieważ nie jestem świadomy istnienia świadomości przestrzeni nazw”, które można znaleźć tutaj lub tutaj . Wiem, jak używać świadomości przestrzeni nazw. Tylko nie jak się tego pozbyć.