Guude!
Kann mir bitte jemand etwas darüber sagen, was man zum Beispiel machen kann, was man mit der anderen Sprachen nicht machen kann (z.B wie php, oder asp)?
Zunächst: XML ist keine Programmiersprache wie die zwei von Dir genannten! Es ist vielmehr vergleichbar mit HTML (das ja auch eine Art XML mit fester DTD ist). Während HTML aber speziell für's Web entwickelt wurde, ist XML zunächst auf keinen Anwendungsfall festgelegt. Mit XML kann man Daten strukturieren - fertig. Ob sie nun später an Druckmaschinen, im Browser oder in Java-Programmen ausgegeben werden sollen, ist damit noch nicht festgelegt. Dies geschieht erst durch die Verwendung von DTDs, CSS und/oder XSL.
Wir hatten bspw. mal ein Projekt, indem ein Java-Servlet eine Ausgabe erzeugen musste, die ein C-Programm entgegennehmen, verstehen und ändern (sprich: neue Daten hinzufügen) sollte. Natürlich könnte man jetzt sagen, dass Java eine Text-Datei erzeugen soll, die von C ergänzt wird, doch da müsste man dann mit stinknormalen String-Methoden ran und es wird sehr schnell sehr komplex und unübersichtlich. Zudem kommt noch hinzu, dass eine einzige Konzeptänderung riesige Wartungsarbeiten nach sich zieht.
Mit XML-Werkzeugen ist das ganze wesentlich einfacher zu lösen: Das Servlet erzeugt ein XML-Dokument, das C-Programm sucht spezielle Knoten, ändert mal eben Attribute, fügt neue Daten bzw. Knoten hinzu und ist ziemlich fix fertig. Das alles erlauben diese XML-Tools ohne großen Programmieraufwand.
Es gibt wahrscheinlich noch bessere Anwendungsfälle, aber ich hab XML meist dann benutzt, wenn zwei völlig unterschiedliche Programmiersprachen sich austauschen müssen und man keine Datenbank benutzen möchte (bzw. sich der Aufwand nicht rechtfertigt).
LG ausm Hesseland
Lemmy