addi: element einer ext. dtd intern überschreiben

Hallo,

wie kann ich ein ELEMENT das in einer ext. dtd definiert ist,
intern überschreiben? bzw. geht das überhaupt?

bsp: in der ext. dtd steht folgendes: <!ELEMENT TITEL (#PCDATA)>

jetzt möchte ich in meinem xml Dokument, das Element um Haupttitel und Untertitel erweitern.
<!ELEMENT TITEL (HAUPTTITEL,  UNTERTITEL)>
<!ELEMENT HAUPTTITEL (#PCDATA)>
<!ELEMENT UNTERTITEL (#PCDATA)>

Danke für Tipps

gruß

  1. Hello out there!

    wie kann ich ein ELEMENT das in einer ext. dtd definiert ist, intern überschreiben? bzw. geht das überhaupt?

    Ich denke schon:

    <!DOCTYPE foo SYSTEM "foo.dtd" [  
      <!ELEMENT TITEL (HAUPTTITEL,  UNTERTITEL)>  
      <!ELEMENT HAUPTTITEL (#PCDATA)>  
      <!ELEMENT UNTERTITEL (#PCDATA)>  
    ]>
    

    See ya up the road,
    Gunnar

    --
    “Remember, in the end, nobody wins unless everybody wins.” (Bruce Springsteen)
    1. Hi Gunnar,

      ne leider funtzt das so nicht.
      Beim Validieren öffnet XMLSpy die externe dtd und weist auf das Element hin, quittiert mit einem Fehlerton.

      gruß
      addi

      Hello out there!

      wie kann ich ein ELEMENT das in einer ext. dtd definiert ist, intern überschreiben? bzw. geht das überhaupt?

      Ich denke schon:

      <!DOCTYPE foo SYSTEM "foo.dtd" [

      <!ELEMENT TITEL (HAUPTTITEL,  UNTERTITEL)>
        <!ELEMENT HAUPTTITEL (#PCDATA)>
        <!ELEMENT UNTERTITEL (#PCDATA)>
      ]>

      
      >   
      > See ya up the road,  
      > Gunnar  
        
      
      
      1. Hallo,

        ne leider funtzt das so nicht.
        Beim Validieren öffnet XMLSpy die externe dtd und weist auf das Element hin, quittiert mit einem Fehlerton.

        Ja, er wie andere Parser bemengeln in dem Fall, dass das Element TITLE schon einmal definiert wurde. Es gibt jedoch Parser, die diesen Mangel zwar ebenfalls aufzeigen, aber das TITLE element dann doch nach der internen Definition validieren.

        Was du ohne Probleme machen kannst, sind Erweiterungen der DTD mit Attributen:

        <!DOCTYPE foo SYSTEM "foo.dtd" [  
                <!ATTLIST TITLE  
         haupttitel CDATA #REQUIRED  
         untertitel CDATA #REQUIRED  
        ]>
        

        Grüße
        Thomas