segfault: Verständnisfrage: SOAP Datentypen

Hallo liebes Selfhtmlforum,

wegen einer Präsentation an meiner FH, habe ich mich vor kurzem in die Materie von SOAP eingelesen u. bin dabei allerdings auf eine Unklarheit gestoßen:

Wann ist die Angabe eines Datentypes wichtig?

Beispiel1

....
env:Body
<r:ausgeben xmlns:r="http://beispielserver.de/hallowelt">
      <text xsi:type="xsd:string">Hallo Welt</text>
</r:ausgeben>
</env:Body>
[/CODE]

manchmal sehe ich aber auch einfach nur folgendes:

....
env:Body
<r:ausgeben xmlns:r="http://beispielserver.de/hallowelt">
      <text>Hallo Welt</text>
</r:ausgeben>
</env:Body>
[/CODE]

Meine Frage nun, wieso kann man ggf. auf die Angabe des Datentypes verzichten? Wie kann SOAP dann den Datentyp erkennen?

grüße
Segfault

  1. Hello,

    env:Body
    <r:ausgeben xmlns:r="http://beispielserver.de/hallowelt">
          <text xsi:type="xsd:string">Hallo Welt</text>
    </r:ausgeben>
    </env:Body>

    aus dem Bauch heraus würde ich das hier für eher ungewöhnlich halten. Eine Anwendungsmöglichkeit wäre z.B. ein XML-Schema, dass ein xsd:any zulässt. Um am anderen Ende nicht ein blankes Object rauszukriegen würde hier eine Information nachgeschoben.

    env:Body
    <r:ausgeben xmlns:r="http://beispielserver.de/hallowelt">
          <text>Hallo Welt</text>
    </r:ausgeben>
    </env:Body>

    würde ich für die häufigere Variante halten. Der Namespace identifiziert (wenn alles glatt läuft) ein XML-Schema. Über das Schema ist bereits festgelegt, von welchem Typ "text"-Elemente sind, eine weitere Angabe ist daher nicht notwendig.

    MfG
    Rouven

    --
    -------------------
    sh:| fo:} ch:? rl:( br:& n4:{ ie:| mo:} va:) js:| de:] zu:| fl:( ss:) ls:& (SelfCode)
    Computer programming is tremendous fun. Like music, it is a skill that derives from an unknown blend of innate talent and constant practice. Like drawing, it can be shaped to a variety of ends: commercial, artistic, and pure entertainment. Programmers have a well-deserved reputation for working long hours but are rarely credited with being driven by creative fevers. Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination, but because their imagination reveals worlds that others cannot see. -- Larry OBrien and Bruce Eckel in Thinking in C#