XML-Strukturdesign

  • hallo xml gurus!

    Ich soll beim Design einer XML-Struktur für eine schnittstelle helfen, die ungefähr folgendes können soll:

    ein client hat daten erfasst und will diese an den server übermitteln, welcher verschiedene funktionen bereitstellt. jede funktion hat div. parameter. welche der client aufruft, ist in der logik des clients.

    jetzt wirds knifflig: die funktionen am server können sich von zeit zu zeit ändern.

    daher gibts für mich jetzt 4 wege:

    1) generisch und dafür beständig

    <function name="meinefunktion">
    <parameter name="para1">value</parameter>
    <parameter name="para2">value</parameter>
    ...
    </function>

    2) konkret dafür jedesmal dtd der xml schnitstelle ändern
    <doTransaction>
    <parameter1>value</parameter1>
    <parameter2>value</parameter2>
    ...
    </doTransaction>

    3) mischform: generische funktion wird neben spezialfunktion bereitgestellt

    4) auf bestehende technologien zurückgreifen: XML-RPC oder SOAP

  • Ich wuerde aber einfach HTTP requests an den server schicken, also z.b.

    Code
    POST /meineapp/meinefunction HTTP/1.1
    Host: www.meinserver.net
    text/plain; charset=UTF-8
    Content-Length: [...]
    para1=value&para2=value

    Also so ein REST-RPC Mix.

    Bewehrter Standard, ausgezeichneter Toolsupport, skaliert extrem hoch und ist verdammt einfach und leicht zu verstehen. KISS.

  • gibts an grund dafür?

    weil aufwand ist alles,SOAP ist ja auch nicht so leicht einzurichten oder? serverseitig ist es übrigens perl, clientseitig vorwiegend visualbasic und dotnet.

    Sich an Standards zu orientieren ist nie verkehrt. Die Erfahrung war mein Lehrmeister ;)

    Es kommt natürlich drauf an, wer alles deine Dienste (also die Serveranwendung) in Anspruch nehmen soll. In wiefern ist das Ding erweiterbar?
    Oft ist das nicht absehbar. In einer grösseren Umgebung etwa kann es sehr leicht passieren, dass ein Fremdsystem, von dessen Existenz noch niemand weiss, plötzlich deinen Server verwenden möchte, das von dir angebotene Protokoll jedoch nicht unterstützen kann.

    Wenn du sagst, Aufwand ist alles, dann stimmt das natürlich. Du musst aber auch bedenken, dass es sehr viel mehr Aufwand bedeutet, eine bestehende Implementierung zu ändern bzw. zu erweitern.

    einfach nur genial: wenn man im wort "Mama" 4 buchstaben ändert, dann hat man auf einmal "Bier"

  • Ich wuerde aber einfach HTTP requests an den server schicken, also z.b.

    Code
    POST /meineapp/meinefunction HTTP/1.1
    Host: www.meinserver.net
    text/plain; charset=UTF-8
    Content-Length: [...]
    para1=value&para2=value

    Also so ein REST-RPC Mix.

    Bewehrter Standard, ausgezeichneter Toolsupport, skaliert extrem hoch und ist verdammt einfach und leicht zu verstehen. KISS.

    ich komm mir jetzt ein bissl vor wie in einem dilbert comic: das Management will aber xml :)

    das was du beschreibst haben wir jetzt auch. nebenbei gibts auch eine fileschnittstelle. das format ist immer das selbe, ein file das werte durch { trennt: {value1{value2{{{{value3{{...

    die ganzen http und fileschnitstellen sollen vereinheitlicht und in xml sein. SOAP ist vermutlich eh die bessere idee, weil in perl gibts sowas und in vb vermutlich auch, in DOTNET wird es ja angepriesen als hätten sie's erfunden. moment.. wiki sagt sie habens erfunden.. naja ok, wenigstens ist es W3C Standard.

    nichts desto trotz würd mich interessieren ob es eine art richtlinie gibt wie man XML-Elements identifiziert (siehe oben), so ähnlich wie man in datenmodellierung tabellen identifiziert oder in OOM Klassen.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!