Daniel Petratsch: Minimale XML Ableitung aus Schema erzeugen

Hallo!

Folgende Problematik: Ich arbeite gerade an einer Schnittstellenumsetzung, die über XML durchgeführt wird. Zu diesen Schnittstellen existieren bereits XSD Schemen auf die teilweise Open-Source sind (bspw. OpenImmo).

Ich suche nun eine zeitsparende Möglichkeit aus diesen XSD Schemen gültige Minimal- XML-Dateien (damit meine ich mit allen unbedingt benötigten Elementen und Attributen die "required" sind) abzuleiten, da die Schemen teilweise über 100 Seiten lang sind ist das sonst ein Mordsaufwand die alle durchzugehen. Versucht habe ich es mit dem Programm "Stylus Studio", das mir zwar eine XML Datei ableiten kann - aber nur in vollem Umfang, womit ich natürlich nichts anfangen kann.

Über hilfreiche Vorschläge würde ich mich sehr freuen :)

Vielen Dank und liebe Grüße,
Daniel

  1. Hallo

    Hab Da mal etwas CSharp-Code
    ergoogelt ( xsd2xml ).

    Damit koenntest Du anfangen - da macht im wesentlichen wohl das gleiche dass Dein Kommerzielles Produkt leistet.

    Deine Aufgabenstellung scheint mir durch eine Vielzahl optinaler Attribute und min/maxOccurence Statements so komplex zu werden.

    Ist das so ?

    Diese Logik muesstest Du dann halt selbst in den Code einbauen.

    Dann gaebs ja noch den Umweg mittels XSLT in eine DTD zu konvertieren und von dort mittels eines freien Java-moduls weiterzumachen.

    Oder Du wartest bis mein mein Projekt bei Sourceforge soweit ist, denn da wird sowas bestimmt ein Thema werden.. :-)

    Gruss

    Holger

    P.S.: Wie groß ist denn solch eine XSD in KB ?

    1. Hi Holger

      Zuerst mal vielen Dank für die Antwort.

      Hab Da mal etwas CSharp-Code
      ergoogelt ( xsd2xml ).

      Damit koenntest Du anfangen - da macht im wesentlichen wohl das gleiche dass Dein Kommerzielles Produkt leistet.

      Deine Aufgabenstellung scheint mir durch eine Vielzahl optinaler Attribute und min/maxOccurence Statements so komplex zu werden.

      Ist das so ?

      Diese Logik muesstest Du dann halt selbst in den Code einbauen.

      Das resultierende XML Dokument an sich ist ja nicht groß, es ist nur eben der große Aufwand das Schema durchzuackern und die benötigten Tags/Attribute herauszufiltern und einzubauen. Ich kenne mich zwar mit CSharp ganz gut aus, möchte es aber vermeiden mir selbst alle Tools zusammenzubauen welche es möglicherweise schon gibt (wer weiß wie oft ich das in Zukunft auch noch brauchen werde?). Da würde ich meine Zeit lieber etwas sinnvoller investieren.

      Dann gaebs ja noch den Umweg mittels XSLT in eine DTD zu konvertieren und von dort mittels eines freien Java-moduls weiterzumachen.

      Oder Du wartest bis mein mein Projekt bei Sourceforge soweit ist, denn da wird sowas bestimmt ein Thema werden.. :-)

      Gruss

      Holger

      P.S.: Wie groß ist denn solch eine XSD in KB ?

      Respekt, ist sicherlich viel Arbeit dieses Framework. Werde zwischendurch mal einen Blick darauf werfen :) Warten kann ich leider nicht da ich es jetzt brauche.
      Die XSD's selbst haben alle so durchschnittlich um die 200kb, wobei das nur eine von mehreren ist die ich bearbeiten muss.

      LG,
      Daniel

      1. Hallo !

        Warten kann ich leider nicht da ich es jetzt brauche.

        :-) Dette ha' ick mir schon jedacht..

        Die XSD's selbst haben alle so durchschnittlich um die 200kb, wobei das nur eine von mehreren ist die ich bearbeiten muss.

        LG,
        Daniel

        Dann schick mir doch bite mal eine per Mail. Moechte mal den Komplexitaesgrad abschaetzen, je nach Sachlage haette ich dann vielleicht noch 'ne Idee.

        Poste bitte 'mal oder schreib dazu welche Sprachen verwendbar waeren.

        Gruss

        Holger

  2. Tach Daniel,

    Versucht habe ich es mit dem Programm "Stylus Studio", das mir zwar eine XML Datei ableiten kann - aber nur in vollem Umfang, womit ich natürlich nichts anfangen kann.

    Über hilfreiche Vorschläge würde ich mich sehr freuen :)

    XMLSpy 2006 und Visual Studio 2005 liefern das gewünschte Ergebnis. Es erstaunt mich, dass Stylus Studio anders vorgeht.

    Man liest sich,
    svg4you