![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 206 Pomógł: 18 Dołączył: 6.03.2006 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
Jest 1:34, nie spałem od niedzieli więc może przyczyna jest banalna. Jednak ja jej znaleźć nie mogę, a googlałem, szukałem w bugsach, na forum i w wielu innych miejscach pod przeróżnymi hasłami.
Problem brzmi: PHP nie chce mi interpretować domyślnych przestrzeni nazw w czasie parsowania XMLa przy użyciu XML Schema. W wersji okrojonej, która jednak nadal powoduje takie same objawy: plik XML Schema:
plik docelowy:
walidowanie:
efekt: Cytat Warning: DOMDocument::schemaValidate(): Element '{urn:myNS}transport', attribute 'version': The attribute 'version' is not allowed. in /home/wrzasq/public_html/test.php on line 34 Warning: DOMDocument::schemaValidate(): Element '{urn:myNS}transport': The attribute '{urn:myNS}version' is required but missing. in /home/wrzasq/public_html/test.php on line 34 Jak widać problem jest z przestrzenią nazw. Mimo zadeklarowania domyślnej, PHP nadal nie traktuje atrybutu jako należącego do danej przestrzeni. Co ciekawe ten problem nie dotyczy elementów (tak jak mówiłem to wersja okrojona do lepszego zobrazowania problemu - w wersji pełnej typy danych są dużo bardziej złożone, ale jednak elementy są traktowane poprawnie jako należące do domyślnej przestrzeni nazw). |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 326 Pomógł: 121 Dołączył: 23.07.2008 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 206 Pomógł: 18 Dołączył: 6.03.2006 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
Tak, to zadziała, ale właśnie problem w tym, żeby nie trzeba było do atrybutów dółączać namespace'a. Nie wiem czy tak się da, bo nie jestem w sumie guru XSD, ale wydaje mi się, że powinno je też traktować jak z domyślnej przestrzeni :S.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 23:49 |