[java] dtd syntax probleem

Pagina: 1
Acties:

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024
voor het inlezen heb ik het volgende xml bestand gemaakt:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<!ELEMENT menu (subMenu | menuItem)*>
    <!ATTLIST menu   text        CDATA   #REQUIRED>
    <!ATTLIST menu  id           CDATA  #REQUIRED>
    <!ATTLIST menu   class       CDATA   #REQUIRED>
    <!ATTLIST menu   onClick     CDATA   #REQUIRED>

<!ELEMENT subMenu (EMPTY)>
    <!ATTLIST subMenu dirName    CDATA   #REQUIRED>

<!ELEMENT menuItem (EMPTY)>
    <!ATTLIST menuItem text  CDATA   #REQUIRED>
    <!ATTLIST menuItem id        CDATA  #REQUIRED>
    <!ATTLIST menuItem class     CDATA   #REQUIRED>
    <!ATTLIST menuItem onClick   CDATA   #REQUIRED>

en dit is een voorbeeld xml file:
code:
1
2
3
4
5
6
7
8
<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE menu SYSTEM "http://90.0.0.10/menu.dtd">

<menu text="blabla" id="vvv" class="vvv" onClick="ddd">
    <menuItem text="blabla" id="vvv" class="vvv" onClick="ddd"/>
    <subMenu dirName="java"/>
</menu>

Ik wil dus dat onder menu zowel menuItem en subMenu kunnen staan. Maar de parser begint te zeuren over:
Element "menuItem" requires additional elements op regel 6 van xml bestand. In ebnf is het gebruikelijk om een optie aan te geven met (jongen|meisje) dus (subMenu | menuItem) leek me goed. Ik snap hier dus niets van :(

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024
ok... vergeet het maar :) ik zie hem nu ook.. achter menuItem staat geen / }:O

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Hehe ;) .

<half off-topic>
Hoe veel verschillende menu-bar specificaties zouden er wel niet bestaan? ;) .

Dit is een stukje van de mijne:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
        <Menu>
            <Text        resource="jEcosat.menu.project.text"/>
            <Mnemonic   resource="jEcosat.menu.project.mnemonic"/>

            <Menu>
                <Text        resource="jEcosat.menu.project.new.text"/>
                <Mnemonic   resource="jEcosat.menu.project.new.mnemonic"/>
                <Icon       resource="jEcosat.menu.project.new.icon"/>

                <MenuItem action="jEcosat.project.newEmpty"/>
                <MenuItem action="jEcosat.project.clone"/>
            </Menu>

            <MenuItem action="jEcosat.project.open"/>

            <Menu>
                <Text        resource="jEcosat.menu.project.import.text"/>
                <Mnemonic   resource="jEcosat.menu.project.import.mnemonic"/>
                <Icon       resource="jEcosat.menu.project.import.icon"/>
                
                <MenuItem action="jEcosat.project.importOld"/>
            </Menu>

            <Separator/>

            <MenuItem action="jEcosat.project.save"/>
            <MenuItem action="jEcosat.project.saveAs"/>
            <MenuItem action="jEcosat.project.close"/>

            <Separator/>

            <MenuItem action="jEcosat.project.print"/>

            <Separator/>

            <MenuItem action="jEcosat.exit"/>
        </Menu>

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024
Ik vind dit menu erg mooi:
http://www.bassist.org/
en ik maak nu een proggie die aan de hand van wat xml bestandjes een lap text genereerd die je in je html pagina kan plakken, zodat je het niet zelf hoeft te schrijven en wat makkelijk en overzichtelijker kan configureren. (Ik weet het.. als ik bezig was geweest met zijn html source was ik al klaar geweest, maar daar gaat het niet om :+)

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024
Op zaterdag 15 december 2001 10:31 schreef Alarmnummer het volgende:
ok... vergeet het maar :) ik zie hem nu ook.. achter menuItem staat geen / }:O
Het staat er dus toch fout!! ik snap niet wat de fout is.

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Zet EMPTY eens niet tussen haakjes?

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Alarmnummer: ik maak nu een proggie die aan de hand van wat xml bestandjes een lap text genereerd die je in je html pagina kan plakken, zodat je het niet zelf hoeft te schrijven en wat makkelijk en overzichtelijker kan configureren
Dat roept om XSLT! Met XSLT kan je die XML specificatie heel makkelijk transformeren naar HTML...
Ik weet het.. als ik bezig was geweest met zijn html source was ik al klaar geweest, maar daar gaat het niet om :+
Als je nog langer bezig wilt zijn, moet je ff naar XSLT kijken :+ ;) .

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Die ATTLIST kan je trouwens beter zo schrijven (misschien is het zelfs verplicht, ik ken de DTD syntax niet zo goed meer).
code:
1
2
3
4
5
<!ATTLIST menuItem 
     text    CDATA  #REQUIRED
     id CDATA  #REQUIRED
     class   CDATA  #REQUIRED
     onClick CDATA  #REQUIRED>

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024
Op zaterdag 15 december 2001 10:55 schreef mbravenboer het volgende:
Zet EMPTY eens niet tussen haakjes?
werkt!!!! :) (Ik had die haakjes uit een dtd tutorial, beetje stom dus)

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Alarmnummer: werkt!!!! :) (Ik had die haakjes uit een dtd tutorial, beetje stom dus)
Hum suf ja :) . Ik had het uit mijn ultiem goede "Professional XML" boek van wrox ;) .

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment

Pagina: 1