<!—Hier sieht man wie eine Variable deklariert wird!-->
<element name="tickerSymbol" type="string"/>
</all>
</complexType>
</element>
<element name="TradePrice">
<complexType>
<all>
<element name="price" type="float"/>
</all>
</complexType>
</element>
</schema>
</types>
<message name="GetLastTradePriceInput">
<!—Hier Sieht man wie eine Funktion angesprochen wird-->
<part name="body" element="xsd1:TradePriceRequest"/>
</message>
<?xml version="1.0"?>
<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope">
<s:Header>
<m:RequestID xmlns:m="http://www.lecturedb.de/soap">a3f5c109b</m:RequestID>
</s:Header>
<s:Body>
<m:DbResponse xmlns:m="http://www.lecture-db.de/soap">
<m:title value="DOM, SAX und SOAP">
<m:Choice value="1">Arbeitsbericht Informatik</m:Choice>
<m:Choice value="2">Seminar XML und Datenbanken</m:Choice>
</m:title>
</m:DbResponse>
</s:Body>
</s:Envelope>
Whitebox
Black
"Die Blackbox- und Whitebox-Abstraktion bezieht sich auf die Sichtbarkeit einer Implementierung hinter der Schnittstelle. In einer idealen Blackbox-Abstraktion wissen Klienten keine Details, die sich hinter der Schnittstelle und ihrer Spezifikation befinden. In einer Whitebox-Abstraktion kann die Schnittstelle immer noch die Kapselung erzwingen und begrenzen, was die Klienten tun können, obwohl die Implementierung das Erben substanzieller Interferenzen erlaubt. Wie auch immer, die Implementierung einer Whitebox ist vollständig vorhanden und kann deswegen studiert werden, um das Darunterliegende genauer zu verstehen, was die Abstraktion ausmacht."