![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 66 Pomógł: 0 Dołączył: 22.04.2003 Skąd: Żory / K-ce Ostrzeżenie: (0%) ![]() ![]() |
Jak w XPath odwoływać się do przestrzeni nazw? Wie ktoś?
Bo wiem, że mogę napisać: Kod /my:element/xi:include/my:tag
ale w ten sposób podaję prefiks, a chodzi mi o URI określające "podpiętą" pod prefiks przestrzeń. Doczytałem, że jest "oś" ::namespace, ale nigdzie nie udało mi się znaleźć przykładu jak jej użyć. Chodzi mi mniej więcej o coś takiego: Kod /element/include[namespace()="http://www.w3c.org/2001/XInclude"]
czyli o sposób w jaki mogę pobrać np. elementy <include> należące do XInclude, nie pobierając elementów <include> zdefiniowanych w moim własnym języku w innej przestrzeni nazw. -------------------- Gadu-Gadu: 3909164
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 335 Pomógł: 6 Dołączył: 7.03.2002 Ostrzeżenie: (0%) ![]() ![]() |
[xml:1:88a8d6e27c]/element/include[@<nazwa namespace>="http://www.w3c.org/2001/XInclude"][/xml:1:88a8d6e27c]
Moze tak :? |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 66 Pomógł: 0 Dołączył: 22.04.2003 Skąd: Żory / K-ce Ostrzeżenie: (0%) ![]() ![]() |
Gdzie <nazwa namespace> to co? Prefix? Nie chcę operować na prefiksach, bo prefiksy wybiera tworzący plik XML tak, aby nie było kolizji. Nie chcę ingerować w to czy napisze sobie "xsd" czy "schema".
-------------------- Gadu-Gadu: 3909164
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 66 Pomógł: 0 Dołączył: 22.04.2003 Skąd: Żory / K-ce Ostrzeżenie: (0%) ![]() ![]() |
Działa taki mutant:
Kod /element/*[local-name="include" and namespace-uri()="http://www.w3c.org/2001/XInclude"]
a to co wydawałoby się najbardziej intuicyjne: Kod /element/include[namespace-uri()="http://www.w3c.org/2001/XInclude"]
oczywiście nie. Nawet, gdy element <include> nie ma prefiksu. Może po prostu spaprali XPath w libxml2 lub w PHP5, bo niektóre teoretycznie poprawne przykłady XPath też nie działają tak jak powinny. Ale nakarmię Cię Seth ![]() -------------------- Gadu-Gadu: 3909164
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 16:16 |