![]() |
![]() |
![]()
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? -------------------- |
|
|
![]() |
![]()
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> |
|
|
![]()
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 ![]() 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? -------------------- |
|
|
![]()
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: 24.07.2025 - 18:35 |