2x main tag |
2x main tag |
4.11.2003, 20:20:13
Post
#1
|
|
Grupa: Przyjaciele php.pl Postów: 701 Pomógł: 0 Dołączył: 26.06.2002 Skąd: Londyn Ostrzeżenie: (0%) |
sprawa wyglada tak mamy 2 main tagi:
[xml:1:abbc23d2ce] <x> <x1></x1> <x1></x1> </x> <y> <y1></y1> <y1></y1> </y> [/xml:1:abbc23d2ce] jak okreslic DTD w takim przypadku? -------------------- |
|
|
5.11.2003, 23:05:32
Post
#2
|
|
Grupa: Zarejestrowani Postów: 691 Pomógł: 0 Dołączył: 6.08.2003 Ostrzeżenie: (0%) |
Cytat sprawa wyglada tak mamy 2 main tagi:
[xml:1:17aa7e432c] <x> <x1></x1> <x1></x1> </x> <y> <y1></y1> <y1></y1> </y> [/xml:1:17aa7e432c] jak okreslic DTD w takim przypadku? [xml:1:17aa7e432c]<!ELEMENT x (x1+)> <!ELEMENT y (y1+)> <!ELEMENT x1 (#PCDATA)> <!ELEMENT y1 (#PCDATA)>[/xml:1:17aa7e432c] lub [xml:1:17aa7e432c]<!ELEMENT x (x1, x1)> <!ELEMENT y (y1, y1)> <!ELEMENT x1 (#PCDATA)> <!ELEMENT y1 (#PCDATA)>[/xml:1:17aa7e432c] Pierwsza definicja określa że w elementach <x> i <y> muszą wystąpić conajmniej jeden raz elementy odpowiednio <x1> i <y1>. Druga natomiast wymusza wyłącznie dwukrotne wystąpienie elementów <x1> i <y1> wewnątrz elementów <x> i <y> |
|
|
7.11.2003, 13:03:11
Post
#3
|
|
Grupa: Zarejestrowani Postów: 339 Pomógł: 0 Dołączył: 17.06.2003 Skąd: Białystok Ostrzeżenie: (0%) |
Zaraz zaraz pierwsza i najwazniejsza zasada XML-a mowi, ze moze byc tylko jeden glowny znacznik. I teraz tak:
Po pierwsze dokument jest niepoprawny (w hierarhii pod wzgledem niepoprawnosci zajmuje pierwsze miejsce) wiec nie jest XML-em dlatego nie moze miec DTD Po drugie po co Ci DTD skoro nie da sie wstawic takiego DOCTYPE Przypominam ze doctype zawiera root element (a na mocy tego co napisalem wyzej moze on byc tylko jeden). Podsumowujac to kod ktory napisales jest zly. Poprawnie jest tak: [xml:1:12cffaf812] <z> <x> <x1></x1> <x1></x1> </x> <y> <y1></y1> <y1></y1> </y> </z> [/xml:1:12cffaf812] Tutaj znacznik z jest glownym znacznikiem. Dopiero teraz trzeba dopisac do tego DTD. A wtedy DTD wygladalo by tak: [xml:1:12cffaf812]<!ELEMENT y1 (#PCDATA)> <!ELEMENT y (y1)*> <!ELEMENT x1 (#PCDATA)> <!ELEMENT x (x1)*> <!ELEMENT z (y|x)*>[/xml:1:12cffaf812] A teraz na marginesie nie wystarczy well-fortamed? -------------------- |
|
|
12.11.2003, 10:40:38
Post
#4
|
|
Grupa: Przyjaciele php.pl Postów: 701 Pomógł: 0 Dołączył: 26.06.2002 Skąd: Londyn Ostrzeżenie: (0%) |
@Dominik: no i wlasnie o taka odpowiedz mi chodzilo - wiem ze nie moga byc dwa glowne znaczniki. dlatego nie mozna ustawic DTD :wink:
-------------------- |
|
|
Wersja Lo-Fi | Aktualny czas: 28.04.2024 - 14:27 |