carstencs: XML Datei mit dtd und verschiedenen Namensräumen

Beitrag lesen

https://forum.selfhtml.org/self/2021/feb/19/neueinstieg-programmieren/1784623#m1784623

Hallo

Ich habe mich jetzt wieder für Eclipse entschieden und doch wieder auf XML und XSLT und PHP zu setzen.

ich lese gerade die xml Kapitel in der selfhtml Wiki nach und habe aber für folgendes Grundkonstrukt nichts Richtiges gefunden. Außerdem gibt der Editor in Eclipse einen Fehler an, den ich nicht verstehe. Irgendwie liegt das wohl am root Element?

Ich habe gedacht, dass ich gleich mit verschiedenen Namensräumen anfange, weil so kann ich mich quasi mithilfe dieser xml datei in dem sortieren, was ich vorhab. Ich habe halt gedacht, dass diese xml datei dazu dienen kann grob die Softwarearchitektur, KlassenObjekte und Klassenfunktionen zu definieren. Und mit den Namensräumen könnte ich eine weitere Struktur da reinbringen. Aber ich habe diese Grundkonstruktion nicht hinbekommen.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--

To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
<!DOCTYPE Dateiname  SYSTEM "../dtd/Dateiname.dtd">

-->

<!DOCTYPE Dateiname [

  <!ELEMENT Dateiname  (Datenbank:Datenbankname)>
  	<!ELEMENT Datenbank:Datenbankname (#PCDATA)>
]>


<Dateiname 

xmlns:Datenbank="http://localhost/XML/Datenbank" 
xmlns:Logik="http://localhost/XML/Logik"
xmlns:Stylesheet="http://localhost/XML/Logik">
  
 <Datenbank:Datenbankname></Datenbank:Datenbankname>
      
</Dateiname>

Fehlermeldung:
Attribute "xmlns:Datenbank" must be declared for element type "Dateiname".
Attribute "xmlns:Logik" must be declared for element type "Dateiname".
Attribute "xmlns:Stylesheet" must be declared for element type "Dateiname".

leider kann man die Fehlermeldungen aus dem Eclipse Editor nicht direkt hierher kopieren. Irgendwie verlangt der Editor dass man das Element Dateiname noch einmal deklarieren soll. Was soll denn da jetzteigentlich in diese Ordner reinkommen ? Die dtds? Oder ist das eher dafür da wenn man z.B. mit PHP in der XML datei mit Xpath Elemente ansteuern will und der Link ist ohne Funktion ?

Aber theoretisch so wie ich das ja vorhabe müßte ich ja auch in einer dtd auch die Abhängigkeiten zwischen den Namensräumen definieren, was ich ok fände. Also würde man wenn das so funktionieren würde nur eine dtd benötigen und ich finde das auch ok, dass die dtd in diesem Entwicklungszustand in der xml datei selbst wäre, weil der Eclipse Editor auch bei einer externen dtd ja nur sehr rudimentär zu sein scheint.