initial check in
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/.project b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/.project
new file mode 100644
index 0000000..82a27bb
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/.project
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<projectDescription>

+	<name>org.eclipse.wst.xml.security.doc</name>

+	<comment></comment>

+	<projects>

+	</projects>

+	<buildSpec>

+		<buildCommand>

+			<name>org.eclipse.pde.ManifestBuilder</name>

+			<arguments>

+			</arguments>

+		</buildCommand>

+		<buildCommand>

+			<name>org.eclipse.pde.SchemaBuilder</name>

+			<arguments>

+			</arguments>

+		</buildCommand>

+	</buildSpec>

+	<natures>

+		<nature>org.eclipse.pde.PluginNature</nature>

+	</natures>

+</projectDescription>

diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/META-INF/MANIFEST.MF b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..f23bac6
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/META-INF/MANIFEST.MF
@@ -0,0 +1,7 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.wst.xml.security.doc;singleton:=true
+Bundle-Version: 0.5.0.qualifier
+Bundle-Vendor: %providerName
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/about.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/about.html
new file mode 100644
index 0000000..7eb7324
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/about.html
@@ -0,0 +1,34 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+<HTML>
+
+<head>
+<title>About</title>
+<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
+</head>
+
+<BODY lang="EN-US">
+
+<H3>About This Content</H3>
+
+<P>October, 2008</P>
+
+<H3>License</H3>
+
+<P>The Eclipse Foundation makes available all content in this plug-in
+("Content"). Unless otherwise indicated below, the Content is provided to you
+under the terms and conditions of the Eclipse Public License Version 1.0
+("EPL"). A copy of the EPL is available at
+<A href="http://www.eclipse.org/org/documents/epl-v10.php">http://www.eclipse.org/org/documents/epl-v10.php</A>.
+For purposes of the EPL, "Program" will mean the Content.</P>
+
+<P>If you did not receive this Content directly from the Eclipse Foundation, the
+Content is being redistributed by another party ("Redistributor") and different
+terms and conditions may apply to your use of any object code in the Content.
+Check the Redistributor’s license that was provided with the Content. If no such
+license exists, contact the Redistributor. Unless otherwise indicated below, the
+terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at
+<A href="http://www.eclipse.org/">http://www.eclipse.org/</A>.</P>
+
+</BODY>
+</HTML>
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/bsp.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/bsp.html
new file mode 100644
index 0000000..0b29f8d
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/bsp.html
@@ -0,0 +1,78 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Das Basic Security Profile</h1>
+      	
+      		
+      <p>Das Basic Security Profile (BSP) der Web Services Interoperability Organization (WS-I) basiert auf einer ganzen Reihe von
+         herstellerunabhängigen (<em>non-proprietary</em>) Web Service Spezifikationen. Zurzeit liegt die Version 1.0 als Working Group Draft vor. Das Basic Security Profile ist dabei
+         eine Erweiterung des Basic Profile um Sicherheitsmechanismen. Ziel des BSP ist es, die Interoperabilität zwischen verschiedenen
+         Web Services zu erhöhen. Teilweise geht mit diesem Ziel eine Erhöhung der Sicherheit einher, was aber selbst kein primäres
+         Ziel des Profils darstellt. Die Anmerkungen und Einschränkungen des Basic Security Profile zu den digitalen Signaturen und
+         der Verschlüsselung mit XML (sowie natürlich auch alle anderen Angaben) beziehen sich ausschließlich auf die Verwendung in
+         Web Services. Das BSP macht damit keinerlei Aussagen zur generellen Verwendung der XML-Sicherheit noch bewertet es diese.
+      </p>
+      		
+      <p>Neben den digitalen Signaturen und der Verschlüsselung mit XML beschäftigt sich das Basic Security Profile zum Beispiel noch
+         mit der <em>Transport Layer Security</em> sowie in Ansätzen mit X.509 Zertifikaten. Generell ist das BSP auf moderne Standards ausgelegt. Als Algorithmus kommt daher
+         häufiger der moderne Advanced Encryption Standard (AES) als das schon etwas ältere Triple DES zum Zug.
+      </p>
+      		
+      <p>Warum unterstützt nun das XML-Security Plug-In das Basic Security Profile und macht die XML-Sicherheit noch etwas komplizierter
+         und umfangreicher? Das Plug-in stellt ja primär eine Lernsoftware für die XML-Sicherheit dar, die Interoperabilität der generierten
+         Signaturen oder Verschlüsselung in Web Services ist damit nicht unbedingt erforderlich.
+      </p>
+      		
+      <p>Das XML-Security Plug-In will neben der Theorie auch Anwendungen der XML-Sicherheit zeigen und auch einen praktischen Einsatz
+         der gesicherten XML-Dokumente ermöglichen. Web Services verwenden bekanntermaßen XML (bzw. die SOAP Nachrichten bestehen aus
+         XML) und sind gleichzeitig, bedingt durch die Offenheit des Internets, auch ideale Kandidaten für die XML-Sicherheit. Das
+         Plug-in will mit dem BSP zeigen, welche Einschränkungen auch für offene und herstellerunabhängige W3C Empfehlungen gemacht
+         werden (müssen), um die Interoperabilität bei den Web Services zu erhöhen.
+      </p>
+      		
+      <p>Hier in der Hilfe wird dabei nicht das gesamte umfangreiche Basic Security Profile wiedergegeben. Stattdessen werden nur einige
+         ausgewählte Aspekte erwähnt (vornehmlich die durch die Empfehlung vorgegebenen Einschränkungen). Sollten Sie am BSP interessiert
+         sein, können Sie das BSP im <a href="../plugin/sign.html">XML Digital Signature Wizard</a> und im <a href="../plugin/encrypt.html">XML Encryption Wizard</a> aktivieren und BSP konforme Signaturen und Verschlüsselungen generieren.
+      </p>
+      		
+      <h2 id="Signatures">Digitale Signaturen</h2>
+      		
+      <p>Bei den Empfehlungen des W3C zu den <strong>digitalen Signaturen</strong> legt das Basic Security Profile einige Einschränkungen bei den Signaturvarianten sowie bei den verwendeten Algorithmen auf.
+         So erlaubt das BSP nicht die Verwendung einer <a href="signatures_enveloping.html">enveloping signature</a>. Begründet wird dies mit den Eigenschaften des <em>SOAP Processing Models</em>, bei dem die Kindelemente des Header/ Body auch von Zwischenstationen (<em>SOAP Intermediaries</em>) einfach erkannt werden müssen. Da enveloping signatures die signierte Nachricht als Kindelement innerhalb der Signatur enthalten,
+         ist diese Signaturvariante ungeeignet. Eine <a href="signatures_enveloped.html">enveloped signature</a> kann dagegen verwendet werden. Da diese <a href="signatures_types.html">Signaturvariante</a> die Nachrichtenverarbeitung jedoch zumindest einschränkt, wird von ihrer Verwendung aber abgeraten. Das Basic Security Profile
+         empfiehlt daher die Verwendung einer <a href="signatures_detached.html">detached signature</a>, also die Trennung von Signatur und signierten Daten.
+      </p>
+      		
+      <p>Auch bezüglich der Algorithmen werden verschiedene Einschränkungen vorgegeben. Für die <a href="signatures_canon.html">Kanonisierung</a> muss so eine <em>Exclusive XML Canonicalization without Comments</em> verwendet werden. Als <em>Message Digest </em>gibt es nur <em>SHA1</em>. Bei den <em>Key Signature Algorithms</em> sind der symmetrische Algorithmus <em>HMAC-SHA1</em> und der asymmetrische Algorithmus <em>RSA-SHA1</em> zugelassen.
+      </p>
+      		
+      <p>Dies sind nur einige der vorhandenen Eigenschaften des Basic Security Profile zu den XML Digitalen Signaturen. Die vollständige
+         Dokumentation findet sich im Basic Security Profile in Abschnitt acht.
+      </p>
+      		
+      <h2 id="Encryption">Verschlüsselung</h2>
+      		
+      <p>Bei der <strong>XML-Verschlüsselung</strong> macht das Basic Security Profile vor allem Vorgaben, wann welche Attribute erscheinen dürfen/ müssen und wann nicht. So darf
+         z.B. ein <a href="encryption_syntax_keyinfo.html#EncryptedKey">EncryptedKey</a> Element nicht die Attribute <em>Type</em>, <em>MimeType</em> und <em>Encoding</em> enthalten. Das Element <a href="encryption_syntax_encrypteddata.html">EncryptedData</a> muss dagegen ein <em>Id</em> Attribut besitzen. <a href="encryption_syntax_encrypteddata.html">EncryptedData</a> und <a href="encryption_syntax_keyinfo.html#EncryptedKey">EncryptedKey</a> müssen beide ein <a href="encryption_syntax_encryptionmethod.html">EncryptionMethod</a> Kindelement haben.
+      </p>
+      		
+      <p>Auch so - eigentlich selbstverständliche - Dinge wie das Ersetzen des Klartexts durch den Chiffretext gibt das Basic Security
+         Profile vor.
+      </p>
+      		
+      <p>In Bezug auf die Algorithmen zur Datenverschlüsselung (<em>Data Encryption Algorithm</em>) schreibt das BSP derzeit die Verwendung von <em>Triple DES</em>, <em>AES 128</em> oder <em>AES 256</em> (jeweils im CBC Modus) vor. Als Schlüsseltransportalgorithmus (<em>Key Transport Algorithm</em>) sind derzeit die Algorithmen <em>RSA PKCS#1.5</em> sowie <em>RSA-OAEP</em> erlaubt. Bei den <em>Key Wrap Algorithmen</em> sind <em>Triple DES Key Wrap</em> sowie <em>AES 128</em> und <em>AES 256 Key Wrap</em> zugelassen.
+      </p>
+      		
+      <p>Sowohl bei digitalen Signaturen als auch der Verschlüsselung sollte die Anwendung sicherstellen, dass vergebene IDs im XML-Dokument
+         eindeutig sind. Dies wird zwar auch von der XML-Empfehlung gefordert aber lediglich von validierenden Parsern überprüft.
+      </p>
+      		
+      <p>Die vollständigen Eigenschaften des Basic Security Profiles zur XML-Verschlüsselung finden sich in Abschnitt neun der Empfehlung.</p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_basics.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_basics.html
new file mode 100644
index 0000000..4544d2f
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_basics.html
@@ -0,0 +1,55 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Verschlüsselung Grundlagen</h1>
+      	
+      		
+      <p>Die Verschlüsselung mit XML beschreibt die <strong>XML Encryption Syntax and Processing Recommendation</strong> des World Wide Web Consortiums vom 10. Dezember 2002. Diese Empfehlung spezifiziert die Syntax zur Repräsentation von beliebigen
+         verschlüsselten Daten (ein XML-Dokument, ein XML-Element oder XML Elementinhalt) in XML-Dokumenten.
+      </p>
+      		
+      <p>Die XML-Verschlüsselung greift teilweise auf Elemente und Konzepte der <a href="signatures_basics.html">XML-Digitale Signaturen</a> zurück und schützt die Vertraulichkeit von XML-Dokumenten. Die Vertraulichkeit gewährleistet den Schutz der Informationen
+         vor unbefugter Preisgabe. Nur der rechtmäßige Empfänger kann aus dem Geheimtext wieder den ursprünglichen Klartext gewinnen.
+      </p>
+      		
+      <p>Verschlüsselt werden kann ein einzelnes XML-Element (<em>element</em>), ein XML-Element samt seiner Kindelemente (<em>elements</em>) und auch der Inhalt eines XML-Elements (<em>character data</em>). Außerdem ist natürlich die Verschlüsselung eines vollständigen XML-Dokuments sowie anderer binärer Daten möglich. Ein Spezialfall
+         ist die Mehrfachverschlüsselung bereits verschlüsselter Daten (<em>super-encryption</em>).
+      </p>
+      		
+      <p>Beim Verschlüsseln von Inhalten die kein XML sind werden die zur Entschlüsselung erforderlichen Informationen (z.B. Verschlüsselungsmethode
+         oder Schlüsselinformationen) in XML-Form gespeichert. Die verschlüsselten Daten können dann entweder im Base-64 encoding integriert
+         oder referenziert werden.
+      </p>
+      		
+      <p>Mit der Mehrfachverschlüsselung lassen sich fein abgestufte Zugriffsrechte realisieren. Zu diesem Zweck existiert die Möglichkeit,
+         verschiedene Dokumentteile mit unterschiedlichen Schlüsseln zu verschlüsseln. Ein Empfänger kann damit nur die für ihn relevanten
+         Teile entschlüsseln und lesbar machen. Mehrfach verschlüsselte Daten besitzen die gleiche Syntax und Semantik wie einfach
+         verschlüsselte Daten.
+      </p>
+      		
+      <p>Bei der Verschlüsselung ist eine sehr feine Granularität möglich. Damit erhält man die Möglichkeit, XML-Dokumentfragmente
+         - einzelne Elemente oder nur deren Inhalte - zu verschlüsseln. Sinnvoll ist das beispielsweise bei der Verschlüsselung von
+         Online-Bestellungen, bei denen nur die Kreditkarteninformationen geschützt werden müssen. Die Verschlüsselung von einzelnen
+         Attributen ist, ebenso wie deren Signierung, derzeit nicht möglich. Dieses wurde lange diskutiert, dann aber aus Komplexitätsgründen
+         noch nicht umgesetzt.
+      </p>
+      		
+      <p>Im Gegensatz zu den XML-Signaturen kann die Struktur des verschlüsselten XML-Dokuments verändert (verborgen) werden, je nachdem,
+         welche Dokumentteile verschlüsselt werden. So wird beim Verschlüsseln eines XML-Elements oder XML-Elements mit weiteren Kindelementen
+         dieser Klartext im verschlüsselten XML-Dokument ersetzt. Beim Verschlüsseln beliebiger Daten (auch binär) oder des gesamten
+         XML-Dokuments kann das Element EncryptedData entweder zum neuen Wurzelelement oder zu einem Kindelement werden.
+      </p>
+      		
+      <p>In jedem Fall ist das XML-Dokument weiterhin wohlgeformt, jedoch werden durch die kryptografische Bearbeitung zumindest der
+         Elementinhalt und möglicherweise auch die Dokumentstruktur verändert. Das verschlüsselte XML-Dokument ist daher nicht mehr
+         unbedingt gültig zu seiner ursprünglichen DTD oder Schema Definition. Nach der Entschlüsselung steht selbstverständlich wieder
+         das ursprüngliche Dokument, in seiner ursprünglichen Struktur und mit all seinen Elementen, zur Verfügung. 
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_decrypt.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_decrypt.html
new file mode 100644
index 0000000..24af061
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_decrypt.html
@@ -0,0 +1,64 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Entschlüsselung</h1>
+      	
+      		
+      <p>Für jeden zu entschlüsselnden <a href="encryption_syntax_encryptedtype.html">EncryptedType</a> (<a href="encryption_syntax_encrypteddata.html">EncryptedData</a> oder <a href="encryption_syntax_keyinfo.html#EncryptedKey">EncryptedKey</a>) müssen
+      </p>
+      		
+      <ol>
+         			
+         <li>das Element verarbeitet und der Algorithmus mit allen Parametern sowie das <a href="encryption_syntax_keyinfo.html">KeyInfo</a> Element festgelegt werden (falls eine oder mehrere dieser Informationen nicht vorhanden sind müssen diese durch die Applikation
+            festgelegt werden),
+         </li>
+         			
+         <li>der <em>data encryption key</em> samt möglicher Kindelemente lokalisiert werden. Falls dieser ebenfalls verschlüsselt ist muss dieser zunächst mit dem zugehörigen
+            Schlüssel entschlüsselt werden.
+         </li>
+         			
+         <li>Anschließend werden die verschlüsselten Daten innerhalb von <a href="encryption_syntax_cipherdata.html">CipherData</a> entschlüsselt;
+         </li>
+         			
+         				
+         <li>falls diese in einem <a href="encryption_syntax_cipherdata.html#CipherValue">CipherValue</a> Element vorliegen wird der Text abgerufen und Base-64 dekodiert um die verschlüsselte <em>octect</em> Sequenz zu erhalten
+         </li>
+         				
+         <li>falls diese in einem <a href="encryption_syntax_cipherdata.html#CipherReference">CipherReference</a> Element vorliegen wird die URI und mögliche Transformationen angewandt um die verschlüsselte <em>octect</em> Sequenz zu erhalten
+         </li>
+         				
+         <li>und anschließend die erhaltene <em>octect</em> Sequenz mit dem angegebenen Algorithmus, dessen Parametern und dem Schlüssel aus den Schritten 1 und 2 entschlüsselt.
+         </li>
+         			
+         			
+         <li>Anschließend werden die entschlüsselten Daten vom Typ <em>element</em> oder <em>content</em>
+            			
+         </li>
+         			
+         				
+         <li>als UTF-8 kodierte Daten interpretiert</li>
+         				
+         <li>und als UTF-8 kodierte XML-Daten an die Applikation zurückgegeben.</li>
+         				
+         <li>Abschließend wird der Geheimtext im XML-Dokument durch den Klartext ersetzt. Falls das Zieldokument dabei nicht als UTF-8
+            kodiertes XML-Dokument vorliegt werden die entschlüsselten Daten zunächst in das Encoding des Zieldokuments transformiert.
+         </li>
+         			
+         			
+         <li>Falls die entschlüsselten Daten nicht vom Typ <em>element</em> oder <em>content</em> sind
+         </li>
+         			
+         				
+         <li>wird der ermittelte Klartext mit den Attributen <em>Type</em>, <em>MimeType</em> und <em>Encoding</em> an die Applikation zur weiteren Verarbeitung zurückgegeben.
+         </li>
+         			
+         		
+      </ol>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_encrypt.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_encrypt.html
new file mode 100644
index 0000000..4c7eaf0
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_encrypt.html
@@ -0,0 +1,69 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Verschlüsselung</h1>
+      	
+      		
+      <p>
+         			<strong>Für jede zu verschlüsselnde Ressource</strong> (<a href="encryption_syntax_encrypteddata.html">EncryptedData</a> oder <a href="encryption_syntax_keyinfo.html#EncryptedKey">EncryptedKey</a>)
+      </p>
+      		
+      <ol>
+         			
+         <li>werden der Algorithmus und falls notwendig die Parameter bestimmt,</li>
+         			
+         <li>der Schlüssel ermittelt und optional abgebildet</li>
+         			
+         				
+         <li>falls der Schlüssel identifiziert werden soll (über den Namen, URI oder in einem Kindelement) muss das <a href="encryption_syntax_keyinfo.html">KeyInfo</a> Element generiert werden
+         </li>
+         				
+         <li>falls der Schlüssel selbst verschlüsselt werden soll muss das <a href="encryption_syntax_keyinfo.html#EncryptedKey">EncryptedKey</a> Element generiert werden. Dieses Element kann entweder als Kindelement an <a href="encryption_syntax_keyinfo.html">KeyInfo</a> oder anderswo eingefügt werden
+         </li>
+         			
+         			
+         <li>die Daten verschlüsselt</li>
+         			
+         				
+         <li>falls die zu verschlüsselnden Daten vom Typ <em>element</em> oder <em>content</em> sind werden die Daten UTF-8 kodiert abgelegt,
+         </li>
+         				
+         <li>falls die Daten nicht vom Typ <em>octect</em> sind müssen diese als Oktette serialisiert werden,
+         </li>
+         				
+         <li>anschließend werden die Daten mit dem Algorithmus und dem Schlüssel aus den Schritten 1 und 2 verschlüsselt</li>
+         				
+         <li>und der Typ der verschlüsselten Daten hinzugefügt</li>
+         			
+         			
+         <li>die <a href="encryption_syntax_encryptedtype.html">EncryptedType</a> (<a href="encryption_syntax_encrypteddata.html">EncryptedData</a> oder <a href="encryption_syntax_keyinfo.html#EncryptedKey">EncryptedKey</a>) Struktur erstellt
+         </li>
+         			
+         				
+         <li>falls die verschlüsselten Daten innerhalb von <a href="encryption_syntax_cipherdata.html">CipherData</a> angezeigt werden sollen wird ein <a href="encryption_syntax_cipherdata.html#CipherValue">CipherValue</a> Element mit den Base-64 kodierten Daten eingefügt
+         </li>
+         				
+         <li>falls die verschlüsselten Daten außerhalb von <a href="encryption_syntax_cipherdata.html">CipherData</a> angezeigt werden sollen werden ein oder mehrere <a href="encryption_syntax_cipherdata.html#CipherReference">CipherReference</a> Elemente mit den URIs eingefügt
+         </li>
+         			
+         			
+         <li>und zum Abschluss <a href="encryption_syntax_encrypteddata.html">EncryptedData</a> verarbeitet
+         </li>
+         			
+         				
+         <li>falls der Typ der verschlüsselten Daten <em>element</em> oder <em>content</em> ist kann der Applikation das vollständige <a href="encryption_syntax_encrypteddata.html">EncryptedData</a> Element zurückgegeben und der ursprüngliche Klartext durch den Geheimtext ersetzt werden
+         </li>
+         				
+         <li>falls der Typ der verschlüsselten Daten nicht <em>element</em> oder <em>content</em> sind muss der Applikation das vollständige <a href="encryption_syntax_encrypteddata.html">EncryptedData</a> Element zurückgegeben und der ursprüngliche Klartext durch den Geheimtext ersetzt werden.
+         </li>
+         			
+         		
+      </ol>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_syntax.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_syntax.html
new file mode 100644
index 0000000..94afb18
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_syntax.html
@@ -0,0 +1,36 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Syntax</h1>
+      	
+      		
+      <p>Alle relevanten Daten (die verwendeten Algorithmen) werden, analog zur XML-Signatur, in das XML-Dokument eingebettet. Neben
+         den verschlüsselten Daten sind somit auch die Informationen enthalten, wie der Geheimtext wieder zu entschlüsseln ist.
+      </p>
+      		
+      <p>Das folgende Listing zeigt alle möglichen Elemente einer XML-Verschlüsselung. <strong>?</strong> erlaubt das null- bis einmalige, <strong>+</strong> das mindestens ein- bis mehrmalige und <strong>*</strong> das null- bis mehrmalige Vorkommen als Attribut oder Element. Elemente mit dem Namespace-Präfix <em>ds</em> stammen von den XML digitalen Signaturen. Die vollständige Syntax beschreibt das Schema zur Verschlüsselung mit XML. 
+      </p>
+      		
+      <div class="code"><pre>&lt;xenc:<a href="encryption_syntax_encrypteddata.html">EncryptedData</a> Id? Type? MimeType? Encoding?&gt;
+  &lt;xenc:<a href="encryption_syntax_encryptionmethod.html">EncryptionMethod</a>/&gt;?
+  &lt;ds:<a href="encryption_syntax_keyinfo.html">KeyInfo</a>&gt;
+    &lt;xenc:<a href="encryption_syntax_keyinfo.html#EncryptedKey">EncryptedKey</a>/&gt;?
+    &lt;xenc:<a href="encryption_syntax_keyinfo.html#AgreementMethod">AgreementMethod</a>/&gt;?
+    &lt;ds:<a href="encryption_syntax_keyinfo.html">KeyName</a>/&gt;?
+    &lt;ds:<a href="encryption_syntax_keyinfo.html">RetrievalMethod</a>/&gt;?
+    &lt;ds:<a href="encryption_syntax_keyinfo.html">*</a>/&gt;?
+  &lt;/ds:<a href="encryption_syntax_keyinfo.html">KeyInfo</a>&gt;?
+  &lt;xenc:<a href="encryption_syntax_cipherdata.html">CipherData</a>&gt;
+    &lt;xenc:<a href="encryption_syntax_cipherdata.html#CipherValue">CipherValue</a>/&gt;?
+    &lt;xenc:<a href="encryption_syntax_cipherdata.html#CipherReference">CipherReference</a> URI?/&gt;?
+  &lt;/xenc:<a href="encryption_syntax_cipherdata.html">CipherData</a>&gt;	
+  &lt;xenc:<a href="encryption_syntax_encryptionproperties.html">EncryptionProperties</a>/&gt;?
+&lt;/xenc:<a href="encryption_syntax_encrypteddata.html">EncryptedData</a>&gt;</pre></div>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_syntax_cipherdata.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_syntax_cipherdata.html
new file mode 100644
index 0000000..9d98011
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_syntax_cipherdata.html
@@ -0,0 +1,47 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Das CipherData Element</h1>
+      	
+      		
+      <p>Das Pflichtelement <strong>CipherData</strong> enthält die eigentlichen verschlüsselten Daten. Die verschlüsselten Daten können dabei entweder eingehüllt oder referenziert
+         werden.
+      </p>
+      		
+      <p id="CipherValue">Bei eingehüllten Daten (<em>enveloping encryption</em>) werden die verschlüsselten Daten im Base-64 encoding im Kindelement <strong>CipherValue</strong> direkt im XML-Dokument angezeigt.
+      </p>
+      		
+      <div align="center"><img src="../images/encryption_enveloping.png" alt="Enveloping Encryption" width="425" height="284"><p><em>Enveloping Encryption</em></p>
+      </div>
+      		
+      <p>Das Element hat bei einer eingehüllten Verschlüsselung den folgenden Aufbau:</p>
+      		
+      <div class="code"><pre>&lt;CipherData&gt;
+  &lt;CipherValue&gt;
+  &lt;/CipherValue&gt;
+&lt;/CipherData&gt;</pre></div>
+      		
+      <p id="CipherReference">Werden die Daten referenziert (<em>detached encryption</em>) wird durch das Element <strong>CipherReference</strong> und einem <em>URI</em> Attribut auf die externen verschlüsselten Daten verwiesen.
+      </p>
+      		
+      <div align="center"><img src="../images/encryption_detached.png" alt="Detached Encryption" width="425" height="284"><p><em>Detached Encryption</em></p>
+      </div>
+      		
+      <p>Das Element hat bei einer referenzierten Verschlüsselung den folgenden Aufbau:</p>
+      		
+      <div class="code"><pre>&lt;CipherData&gt;
+  &lt;CipherReference URI/&gt;
+&lt;/CipherData&gt;</pre></div>
+      		
+      <h2 id="Transforms">Transforms</h2>
+      		
+      <p>Das optionale Kindelement <strong>Transforms</strong> erlaubt bei einer <em>detached encryption</em>, wie bei der <a href="signatures_transform.html">digitalen Signatur</a>, vor der Verschlüsselung verschiedene Transformationen der referenzierten Daten in einer bestimmten Reihenfolge durchzuführen.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_syntax_encrypteddata.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_syntax_encrypteddata.html
new file mode 100644
index 0000000..b1bdda1
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_syntax_encrypteddata.html
@@ -0,0 +1,33 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Das EncryptedData Element</h1>
+      	
+      		
+      <p>Das <strong>EncryptedData</strong> Element ist das Wurzelelement bei der Verschlüsselung mit XML. Daten, die verschlüsselt werden, werden durch ihre Verschlüsselung
+         in dem Element <strong>EncryptedData</strong> an der gleichen Stelle ersetzt. Das Element <strong>EncryptedData</strong> kann dabei das neue Wurzelelement eines XML-Dokuments werden (beim Verschlüsseln von beliebigen Daten oder des vollständigen
+         XML-Dokuments) oder in ein bestehendes XML-Dokument integriert werden (beim Verschlüsseln eines XML-Elements oder eines XML-Elements
+         mit weiteren Kindelementen).
+      </p>
+      		
+      <p>
+         			<strong>EncryptedData</strong> wird vom abstrakten Typ <a href="encryption_syntax_encryptedtype.html">EncryptedType</a> abgeleitet und kann damit alle dort definierten Kindelemente und Attribute besitzen. Zusätzlich besitzt es noch das Attribut
+         <em>xmlns</em> mit dem derzeitig einzig gültigen Wert <em>xmlns:xenc="http://www.w3.org/2001/04/xmlenc#"</em>. Wie bei den digitalen Signaturen identifiziert der Namensraum nebenbei noch die verwendete Version der Empfehlung. Zukünftige
+         Versionen werden daher auch hier einen anderen Namensraum besitzen.
+      </p>
+      		
+      <p>Ein XML-Dokument kann beliebig viele <strong>EncryptedData</strong> Elemente und damit beliebig viele unterschiedliche Verschlüsselungen enthalten. Jedes dieser Elemente repräsentiert die verschlüsselte
+         Form eines bzw. mehrerer Elemente oder eines Elementinhalts und kann mit verschiedenen Schlüsseln chiffriert werden.
+      </p>
+      		
+      <p>
+         			<strong>EncryptedData</strong> darf jedoch nicht Eltern- oder Kindelement von einem anderen <strong>EncryptedData</strong> Element sein. Die tatsächlichen verschlüsselten Daten können aber auch die Elemente <strong>EncryptedData</strong> oder <a href="encryption_syntax_keyinfo.html#EncryptedKey">EncryptedKey</a> enthalten (z.B. bei der Mehrfachverschlüsselung).
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_syntax_encryptedtype.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_syntax_encryptedtype.html
new file mode 100644
index 0000000..b5f129d
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_syntax_encryptedtype.html
@@ -0,0 +1,42 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>EncryptedType</h1>
+      	
+      		
+      <p>
+         			<strong>EncryptedType</strong> ist der abstrakte Typ von dem die Elemente <a href="encryption_syntax_encrypteddata.html">EncryptedData</a> und <a href="encryption_syntax_keyinfo.html#EncryptedKey">EncryptedKey</a> abgeleitet werden. Abstrakt bedeutet, dass <strong>EncryptedType</strong> nicht selbst als Element, sondern ausschließlich zur Ableitung verwendet werden kann. Ein <strong>EncryptedType</strong> Element wird also niemals in einem gültigen verschlüsselten XML-Dokument auftauchen. Die beiden Elemente <a href="encryption_syntax_encrypteddata.html">EncryptedData</a> und <a href="encryption_syntax_keyinfo.html#EncryptedKey">EncryptedKey</a> sind sich jedoch sehr ähnlich, weswegen ein gemeinsamer Supertyp Sinn macht.
+      </p>
+      		
+      <p>
+         			<strong>EncryptedType</strong> besitzt insgesamt vier optionale Attribute: <em>Id</em>, <em>Type</em>, <em>MimeType</em> und <em>Encoding</em>.
+      </p>
+      		
+      <p>Das optionale Attribut <em>Id</em> ist vom Typ ID. Mit diesem Attribut kann die Verschlüsselung identifiziert und referenziert werden, bei mehreren verschlüsselten
+         Daten in einem XML-Dokument ist die Verwendung daher sehr sinnvoll.
+      </p>
+      		
+      <p>Das ebenfalls optionale Attribut <em>Type</em> vom Typ anyURI legt fest, welche Arten von Daten verschlüsselt werden und unterscheidet sich je nach den verschlüsselten
+         Informationen. Wird ein XML-Element mit oder ohne weitere Kindelemente verschlüsselt lautet der Attributwert <em>http://www.w3.org/2001/04/xmlenc#Element</em>. Beim Verschlüsseln des Inhalts eines Elements oder mehrerer XML-Elemente nimmt das Attribut den Wert <em>http://www.w3.org/2001/04/xmlenc#Content</em> an. Auch wenn das Attribut optional ist wird die Verwendung sehr empfohlen. Eine automatische Entschlüsselung und Wiederherstellung
+         von Elementen oder Elementinhalt ist ohne dieses Attribut nicht möglich.
+      </p>
+      		
+      <p>Werden binäre Daten (<em>arbitrary data</em>) oder ganze XML-Dokumente verschlüsselt kennzeichnet das optionale Attribut <em>MimeType</em> vom Typ String den MIME-Typ der Daten. Der von der IETF in verschiedenen RFCs spezifizierte MIME-Typ (<em>Multipurpose Internet Mail Extensions</em>) sollte ursprünglich den Typ von Email-Anhängen angeben, wurde dann aber auch für HTTP, und daher auch für die XML Encryption,
+         verwendet. Für XML-Dokumente hat das Attribut beispielsweise den Wert <em>text/xml</em>.
+      </p>
+      		
+      <p>Das letzte ebenfalls optionale Attribut <em>Encoding</em> vom Typ anyURI identifiziert über den angegebenen URI den Kodierungs-Mechanismus zur Verarbeitung der Daten (meist Base-64
+         encoding).
+      </p>
+      		
+      <p>
+         			<em>EncryptedType</em> besitzt die vier Kindelemente <a href="encryption_syntax_encryptionmethod.html">EncryptionMethod</a> (optional), <a href="encryption_syntax_keyinfo.html">KeyInfo</a> (optional), <a href="encryption_syntax_cipherdata.html">CipherData</a> (pflicht) und <a href="encryption_syntax_encryptionproperties.html">EncryptionProperties</a> (optional).
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_syntax_encryptionmethod.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_syntax_encryptionmethod.html
new file mode 100644
index 0000000..0335912
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_syntax_encryptionmethod.html
@@ -0,0 +1,150 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Das EncryptionMethod Element</h1>
+      	
+      		
+      <p>Das optionale Element <strong>EncryptionMethod</strong> bestimmt mit dem Attribut <em>Algorithm</em> den verwendeten Verschlüsselungsalgorithmus und mögliche zugehörige Parameter. Fehlt dieses Element muss dem Empfänger oder
+         der verarbeitenden Applikation der zur Verschlüsselung verwendete Algorithmus bekannt sein.
+      </p>
+      		
+      <p>Zwei der möglichen Kindelemente sind <strong>KeySize</strong> und <strong>OAEPparams</strong> die den verwendeten Algorithmus durch Angabe der Schlüssellänge und weiterer Parameter näher beschreiben. Welche Kindelemente
+         jeweils erlaubt bzw. erforderlich sind hängt vom gewählten Algorithmus ab der über das <em>Algorithm</em> Attribut bestimmt wird.
+      </p>
+      		
+      <p>Das <em>Algorithm</em> Attribut der <strong>EncryptionMethod</strong> kann u.a. die in der folgenden Tabelle aufgeführten URIs annehmen.
+      </p>
+      		
+      <table cellspacing="0">
+         <thead>
+            <tr>
+               <th>Name</th>
+               <th>URI</th>
+               <th>Implementierung</th>
+            </tr>
+         </thead>
+         <tbody>
+            <tr class="uneven">
+               <td>
+                  					AES 128
+                  				
+               </td>
+               <td>http://www.w3.org/2001/04/xmlenc#aes128-cbc</td>
+               <td>erforderlich</td>
+            </tr>
+            <tr class="even">
+               <td>
+                  					AES 192
+                  				
+               </td>
+               <td>http://www.w3.org/2001/04/xmlenc#aes192-cbc</td>
+               <td>optional</td>
+            </tr>
+            <tr class="uneven">
+               <td>
+                  					AES 256
+                  				
+               </td>
+               <td>http://www.w3.org/2001/04/xmlenc#aes256-cbc</td>
+               <td>erforderlich</td>
+            </tr>
+            <tr class="even">
+               <td>
+                  					TRIPLEDES
+                  				
+               </td>
+               <td>http://www.w3.org/2001/04/xmlenc#tripledes-cbc</td>
+               <td>erforderlich</td>
+            </tr>
+         </tbody>
+      </table>
+      		
+      <p>Zum Kodieren von geheimen Schlüsseln dienen die symmetrischen Algorithmen mit dem Zusatz <em>Key Wrap</em> in der folgenden Tabelle. <strong>EncryptionMethod</strong> muss dazu ein Kindelement von <a href="encryption_syntax_keyinfo.html#EncryptedKey">EncryptedKey</a> sein.
+      </p>
+      		
+      <table cellspacing="0">
+         <thead>
+            <tr>
+               <th>Name</th>
+               <th>URI</th>
+               <th>Implementierung</th>
+            </tr>
+         </thead>
+         <tbody>
+            <tr class="uneven">
+               <td>
+                  					AES-128 Key Wrap
+                  				
+               </td>
+               <td>http://www.w3.org/2001/04/xmlenc#kw-aes128</td>
+               <td>erforderlich</td>
+            </tr>
+            <tr class="even">
+               <td>
+                  					AES-192 Key Wrap
+                  				
+               </td>
+               <td>http://www.w3.org/2001/04/xmlenc#kw-aes192</td>
+               <td>optional</td>
+            </tr>
+            <tr class="uneven">
+               <td>
+                  					AES-256 Key Wrap
+                  				
+               </td>
+               <td>http://www.w3.org/2001/04/xmlenc#kw-aes256</td>
+               <td>erforderlich</td>
+            </tr>
+            <tr class="even">
+               <td>
+                  					TRIPLEDES Key Wrap
+                  				
+               </td>
+               <td>http://www.w3.org/2001/04/xmlenc#kw-tripledes</td>
+               <td>erforderlich</td>
+            </tr>
+         </tbody>
+      </table>
+      		
+      <p>Die RSA Algorithmen <em>RSA-v1.5</em> und <em>RSA-OAEP</em> sind asymmetrische Algorithmen zum sicheren Schlüsseltransport. Diese Algorithmen können nur verwendet werden, wenn <strong>EncryptionMethod</strong> ein Kindelement von <a href="encryption_syntax_keyinfo.html#EncryptedKey">EncryptedKey</a> ist.
+      </p>
+      		
+      <table cellspacing="0">
+         <thead>
+            <tr>
+               <th>Name</th>
+               <th>URI</th>
+               <th>Implementierung</th>
+            </tr>
+         </thead>
+         <tbody>
+            <tr class="uneven">
+               <td>
+                  					RSA-v1.5
+                  				
+               </td>
+               <td>http://www.w3.org/2001/04/xmlenc#rsa-1\_5</td>
+               <td>erforderlich</td>
+            </tr>
+            <tr class="even">
+               <td>
+                  					RSA-OAEP
+                  				
+               </td>
+               <td>http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p</td>
+               <td>erforderlich</td>
+            </tr>
+         </tbody>
+      </table>
+      		
+      <p>Prinzipiell können beliebige weitere Algorithmen verwendet werden. Dies ist von der konkreten Implementierung abhängig. Die
+         Empfehlung des W3C lässt dabei offen, ob symmetrische oder asymmetrische Algorithmen verwendet werden.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_syntax_encryptionproperties.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_syntax_encryptionproperties.html
new file mode 100644
index 0000000..cd58b96
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_syntax_encryptionproperties.html
@@ -0,0 +1,24 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Das EncryptionProperties Element</h1>
+      	
+      		
+      <p>Mit dem optionalen <strong>EncryptionProperties</strong> Element können zusätzliche Informationen angegeben werden, die von der entschlüsselnden Anwendung interpretiert werden sollen
+         und nicht Teil der offiziellen W3C-Empfehlung darstellen. Diese Parameter können ergänzende Informationen zur Verschlüsselung,
+         wie beispielsweise einen Zeitstempel oder auch zusätzliche Informationen über die verschlüsselten Daten oder den verschlüsselten
+         Schlüssel, enthalten.
+      </p>
+      		
+      <h2 id="EncryptionProperty">EncryptionProperty</h2>
+      		
+      <p>Das <a href="encryption_syntax_encryptionproperties.html">EncryptionProperties</a> Element enthält dazu mindestens ein Kindelement <strong>EncryptionProperty</strong> in dem die zusätzlichen Parameter definiert werden können.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_syntax_keyinfo.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_syntax_keyinfo.html
new file mode 100644
index 0000000..715731e
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/encryption_syntax_keyinfo.html
@@ -0,0 +1,50 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Das KeyInfo Element</h1>
+      	
+      		
+      <p>Das Element <strong>KeyInfo</strong> stammt von den <a href="signatures_syntax_keyinfo.html">XML-Digitalen Signaturen</a> und weist dieselben Eigenschaften auf. Das Element befindet sich auch bei der XML-Verschlüsselung im Namensraum der digitalen
+         Signaturen und benötigt daher ein eigenes <em>xmlns</em> Attribut zur Deklaration des Namensraumes der digitalen Signaturen (<em>xmlns:ds="http://www.w3.org/2000/09/xmldsig#"</em>). <strong>KeyInfo</strong> stellt bei der XML-Verschlüsselung Informationen über den zur Entschlüsselung von Daten oder Schlüsseln benötigten Schlüssel
+         bereit.
+      </p>
+      		
+      <p>Zusätzlich enthält <strong>KeyInfo</strong> bei der Verschlüsselung die beiden optionalen Kindelemente <a href="encryption_syntax_keyinfo.html#EncryptedKey">EncryptedKey</a> und <a href="encryption_syntax_keyinfo.html#AgreementMethod">AgreementMethod</a>.
+      </p>
+      		
+      <h2 id="EncryptedKey">EncryptedKey</h2>
+      		
+      <p>Mit dem Element <strong>EncryptedKey</strong> wird der verwendete Schlüssel (<em>content encryption key</em>) innerhalb von <a href="encryption_syntax_keyinfo.html">KeyInfo</a> mit einem Public-Key-Verfahren verschlüsselt vom Sender zum Empfänger übertragen. Verschlüsselt wird dieses Element dabei
+         von einem Verschlüsselungsalgorithmus zum sicheren Schlüsselaustausch wie <em>Diffie-Hellman</em> oder einem anderen <em>Key Wrap Algorithmus</em>. Das Element ist optional und kann mehrfach vorkommen.
+      </p>
+      		
+      <p>
+         			<em>EncryptedKey</em> wird ebenfalls vom abstrakten Typ <a href="encryption_syntax_encryptedtype.html">EncryptedType</a> abgeleitet und besitzt damit alle dort definierten Elemente und Attribute. Zusätzlich enthält das Element ein optionales
+         Attribut <em>Recipient</em>, mit dem der Anwendung ein Hinweis auf den Empfänger gegeben werden kann.
+      </p>
+      		
+      <p>
+         			<em>EncryptedKey</em> besitzt außerdem die beiden optionalen Kindelemente <a href="encryption_syntax_keyinfo.html#ReferenceList">ReferenceList</a> und <a href="encryption_syntax_keyinfo.html#CarriedKeyName">CarriedKeyName</a>. Diese beiden Kindelemente können ein optionales Element <a href="signatures_transform.html">Transforms</a> enthalten, mit dessen Hilfe vor der Verschlüsselung die bereits erwähnten Transformationen durchgeführt werden können.
+      </p>
+      		
+      <p id="ReferenceList">
+         			<strong>ReferenceList</strong> verfügt über ein oder mehrere Kindelemente <strong>DataReference</strong> und <strong>KeyReference</strong>. Diese Elemente verweisen über einen URI auf verschlüsselte Daten bzw. Schlüssel, die mit Hilfe des angegebenen Schlüssels
+         chiffriert worden sind.
+      </p>
+      		
+      <p id="CarriedKeyName">Das Element <strong>CarriedKeyName</strong> dient der Identifizierung und Referenzierung des chiffrierten Schlüsselwerts mit einem eindeutigen Schlüsselnamen.
+      </p>
+      		
+      <h2 id="AgreementMethod">AgreementMethod</h2>
+      		
+      <p>
+         			<strong>AgreementMethod</strong> enthält weitere Informationen zum verwendeten Schlüssel und ein <em>Algorithm</em> Attribut zur Bestimmung des verwendeten Algorithmus zum Schlüsselaustausch (<em>key agreement algorithm</em>). Mögliche Algorithmen sind Diffie-Hellman, die SHA Varianten und RIPEMD-160.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/sample.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/sample.html
new file mode 100644
index 0000000..b367263
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/sample.html
@@ -0,0 +1,59 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Beispiel</h1>
+      	
+      		
+      <p>Auf das folgende XML-Dokument wird in der Online-Hilfe (Tutorials) und den Cheat Sheets im XML-Security Plug-In immer wieder
+         zurückgegriffen. Das XML-Dokument stellt eine fiktive Rechnung dar und wird im Verlauf des Tutorials signiert und verschlüsselt
+         werden. Bei Verwendung der Cheat Sheets wird damit das XML-Dokument <strong>FirstSteps.xml</strong> in dem ebenfalls angelegten Projekt <strong>XML-Security</strong> erstellt.
+      </p>
+      		
+      <div class="code"><pre>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
+&lt;Invoice&gt;
+ &lt;ID&gt;IN 2008/00645&lt;/ID&gt;
+ &lt;IssueDate&gt;2008-03-30&lt;/IssueDate&gt;
+ &lt;BuyerParty&gt;
+  &lt;ID&gt;458746&lt;/ID&gt;
+  &lt;name&gt;John Doe&lt;/name&gt;
+ &lt;/BuyerParty&gt;
+ &lt;PaymentMeans&gt;
+  &lt;PayeeFinancialAccount&gt;
+   &lt;ID&gt;07044961&lt;/ID&gt;
+   &lt;Name&gt;The Specialists Company&lt;/Name&gt;
+   &lt;AccountTypeCode&gt;Credit&lt;/AccountTypeCode&gt;
+   &lt;FinancialInstitutionBranch&gt;
+    &lt;ID&gt;776631&lt;/ID&gt;
+    &lt;Institution&gt;LOYDGB852&lt;/Institution&gt;
+   &lt;/FinancialInstitutionBranch&gt;
+  &lt;/PayeeFinancialAccount&gt;
+ &lt;/PaymentMeans&gt;
+ &lt;TotalAmount currencyID="€"&gt;382.00&lt;/TotalAmount&gt;
+ &lt;!-- item 1 --&gt;
+ &lt;InvoiceLine id="1"&gt;
+  &lt;Quantity&gt;2&lt;/Quantity&gt;
+  &lt;LineAmount currencyID="€"&gt;205.00&lt;/LineAmount&gt;
+  &lt;Item id="236WV"&gt;
+   &lt;BasePrice currencyID="€"&gt;102.50&lt;/BasePrice&gt;
+  &lt;/Item&gt;
+ &lt;/InvoiceLine&gt;
+ &lt;!-- item 2 --&gt;
+ &lt;InvoiceLine id="2"&gt;
+  &lt;Quantity&gt;1&lt;/Quantity&gt;
+  &lt;LineAmount currencyID="€"&gt;177.00&lt;/LineAmount&gt;
+  &lt;Item id="193DX"&gt;
+   &lt;BasePrice currencyID="€"&gt;177.00&lt;/BasePrice&gt;
+  &lt;/Item&gt;
+ &lt;/InvoiceLine&gt;
+&lt;/Invoice&gt;</pre></div>
+      		
+      <p>Das Beispiel <a href="sample_signed.html">signiert</a> (<a href="sample_signed.html#envelopedSignature">enveloped</a>, <a href="sample_signed.html#envelopingSignature">enveloping</a>, <a href="sample_signed.html#detachedSignature">detached</a>) oder <a href="sample_encrypted.html">verschlüsselt</a> (<a href="sample_encrypted.html#envelopingEncryption">enveloping</a>, <a href="sample_encrypted.html#detachedEncryption">detached</a>).
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/sample_encrypted.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/sample_encrypted.html
new file mode 100644
index 0000000..b8a37dc
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/sample_encrypted.html
@@ -0,0 +1,79 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Beispiel - Verschlüsselt</h1>
+      	
+      		
+      <p>Die folgenden Beispiele zeigen die zwei <a href="encryption_syntax_cipherdata.html">Verschlüsselungsvarianten</a> im von oben bekanntem <a href="sample.html">Beispiel XML-Dokument</a>. Zur übersichtlicheren Darstellung wurden alle Beispiele nachträglich formatiert.
+      </p>
+      		
+      <h2 id="envelopingEncryption">Enveloping Encryption</h2>
+      		
+      <div class="code"><pre>
+&lt;?xml version="1.0" encoding="UTF-8"?&gt;
+&lt;xenc:EncryptedData xmlns:xenc="http://www.w3.org/2001/04/xmlenc#"
+ Id="enveloping-sample" Type="http://www.w3.org/2001/04/xmlenc#Element"&gt;
+ &lt;xenc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#aes256-cbc"/&gt;
+ &lt;ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#"&gt;
+  &lt;xenc:EncryptedKey&gt;
+   &lt;xenc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#kw-aes128"/&gt;
+   &lt;xenc:CipherData&gt;
+    &lt;xenc:CipherValue&gt;rojIk5KAKQLdxwsvNzKL1slqdrAbvhQa&lt;/xenc:CipherValue&gt;
+   &lt;/xenc:CipherData&gt;
+  &lt;/xenc:EncryptedKey&gt;
+ &lt;/ds:KeyInfo&gt;
+ &lt;xenc:CipherData&gt;
+  &lt;xenc:CipherValue&gt;
+   IxZg5/ybM3tKnRK7krng3YE+GmosiCY7u1ZJB3s7LoTDf4KvGnSTh+CUQ50g5lz2SnRFgUj4PpxG
+   4EBX6MOPWG7Idx+JlzOx0+PCnVLU7JNIYi8MXGKtmj3yxtFr6Lx9kT6lPPqoorhWm/jaQqsdRhMc
+   XbLQLRMfY2ZqckcLpd7w55K8iMu5P8w1l4RRV4tw0XLI3TDj++204NFiBzyd5joVyDfCibuP+UXs
+   ArtPsGVGoF5zIy/1d9dW96hTpiLIeU82mYCLF3d+2dLAGi0Gd4Awp3eoYKPti9l60r3NqMfZIW+s
+   5oDzUc3b7DrtXUYEp4oxb5CXdWuVdnStFG03uBOgMqk189EZaBUZWpx0wabxAs3yHQktFIKsIHKk
+   a4MOK9dHCiqc7ja/CHDUKAhCyrg+H5xE5E60+p0JYnWUovax+wa/x+QnbjYH9JyV9+41H7wpb3pA
+   0ONHyrciJbQtZJKLvkMGOv7Q1Qx1TjM4PPiUqs71KyizqJ40Y8yG4bBlUD/2T+eyCXN1iLHZwInQ
+   SUqceU094kAtQA5IErwUh/yZlVFw90H5gVeyhddQhXb2ggQ4ENyLSWY/tgdsE0qPz7Z2bU06wmOs
+   Tj1cQUCQIiCuoGu9DqF16uExNtZ/QPwHTeFiUmCwOLi7blPPlFzz2P2r9GjJFVTrNSAODLUE7wRE
+   j+qLyIO8sUBHrl6BeDwBcGdHtmuLeTh4uSrCORib8l65Djr+pmCo0/LPHwBhH4s2o1tU1Kcvde4Q
+   Fpt3jtBsAxARueRSBqg0PqR8GDerBu6tS8FvsGDz1D4IwwY/Xq3SD0ew4XLQc2vcSMKN5hRSuYDm
+   5jEPNpy0JEXYn94OarnnfMfvHEATFi9nX/egmc8kmLXFMB5B6R9GD6SCuNcnyqvX+VM+v98yy3mb
+   ub2XOeshOnhqox3DA5r/7LXLv6BOYWWqpNjFJEOoPizOow4NQLzd5SpbHY7FJhuDkMkYrWLJGg3B
+   x/JMueEGmYOPuutVTh9m9L8bbWFflE+/etTs+ZYvl9rt4rcXJxK6Dk06hUMgzEpFNjFHCY84bbYp
+   Zkk/31x6BxhJgmAPR+E5e0cZUuqzG2Q2FNgAMt+OpOUHtWi8EPp8Am2GMlUOs3hJH/+4g9gz6WiI
+   ZZFT3e35OGyadFEQNiobzBCTbp9ymu7U+A9WAohXFg0jlRGWVUPFHByjw7QKqyGJIlSPJSyfeG1j
+   U+Gcbrb9Zy4Jv/cwgYVx9zJNbnlURbtVBt5+996YTtcIOcVRKNuxozUI8H8Q8KO7
+  &lt;/xenc:CipherValue&gt;
+ &lt;/xenc:CipherData&gt;
+&lt;/xenc:EncryptedData&gt;
+</pre></div>
+      		
+      <h2 id="detachedEncryption">Detached Encryption</h2>
+      		
+      <div class="code"><pre>
+&lt;?xml version="1.0" encoding="UTF-8"?&gt;
+&lt;xenc:EncryptedData xmlns:xenc="http://www.w3.org/2001/04/xmlenc#"
+ Id="detached-sample" Type="http://www.w3.org/2001/04/xmlenc#Element"&gt;
+ &lt;xenc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#tripledes-cbc"/&gt;
+ &lt;ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#"&gt;
+  &lt;xenc:EncryptedKey&gt;
+   &lt;xenc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#kw-tripledes"/&gt;
+   &lt;xenc:CipherData&gt;
+    &lt;xenc:CipherValue&gt;8PSWTVBjn4m5Q0fDV2Q4c6FZ2BigxoCi&lt;/xenc:CipherValue&gt;
+   &lt;/xenc:CipherData&gt;
+  &lt;/xenc:EncryptedKey&gt;
+ &lt;/ds:KeyInfo&gt;
+ &lt;xenc:CipherData&gt;
+  &lt;xenc:CipherReference URI="invoice.xml"/&gt;
+ &lt;/xenc:CipherData&gt;
+&lt;/xenc:EncryptedData&gt;
+</pre></div>
+      		
+      <p>Das Beispiel <a href="sample_signed.html">signiert</a> (<a href="sample_signed.html#envelopedSignature">enveloped</a>, <a href="sample_signed.html#envelopingSignature">enveloping</a>, <a href="sample_signed.html#detachedSignature">detached</a>) oder im <a href="sample.html">Original</a>.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/sample_signed.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/sample_signed.html
new file mode 100644
index 0000000..252a6f5
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/sample_signed.html
@@ -0,0 +1,268 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Beispiel - Signiert</h1>
+      	
+      		
+      <p>Die folgenden Beispiele zeigen die drei <a href="signatures_types.html">Signaturvarianten</a> im von oben bekanntem <a href="sample.html">Beispiel XML-Dokument</a>. Zur übersichtlicheren Darstellung wurden alle Beispiele nachträglich formatiert und können daher auch nach einer Kanonisierung
+         nicht mehr erfolgreich verifiziert werden.
+      </p>
+      		
+      <h2 id="envelopedSignature">Enveloped Signature</h2>
+      		
+      <div class="code"><pre>
+&lt;?xml version="1.0" encoding="UTF-8"?&gt;
+&lt;Invoice&gt;
+ &lt;ID&gt;IN 2008/00645&lt;/ID&gt;
+ &lt;IssueDate&gt;2008-03-30&lt;/IssueDate&gt;
+ &lt;BuyerParty&gt;
+  &lt;ID&gt;458746&lt;/ID&gt;
+  &lt;name&gt;John Doe&lt;/name&gt;
+ &lt;/BuyerParty&gt;
+ &lt;PaymentMeans&gt;
+  &lt;PayeeFinancialAccount&gt;
+   &lt;ID&gt;07044961&lt;/ID&gt;
+   &lt;Name&gt;The Specialists Company&lt;/Name&gt;
+   &lt;AccountTypeCode&gt;Credit&lt;/AccountTypeCode&gt;
+   &lt;FinancialInstitutionBranch&gt;
+    &lt;ID&gt;776631&lt;/ID&gt;
+    &lt;Institution&gt;LOYDGB852&lt;/Institution&gt;
+   &lt;/FinancialInstitutionBranch&gt;
+  &lt;/PayeeFinancialAccount&gt;
+ &lt;/PaymentMeans&gt;
+ &lt;TotalAmount currencyID="€"&gt;382.00&lt;/TotalAmount&gt;
+ &lt;!-- item 1 --&gt;
+ &lt;InvoiceLine id="1"&gt;
+  &lt;Quantity&gt;2&lt;/Quantity&gt;
+  &lt;LineAmount currencyID="€"&gt;205.00&lt;/LineAmount&gt;
+  &lt;Item id="236WV"&gt;
+   &lt;BasePrice currencyID="€"&gt;102.50&lt;/BasePrice&gt;
+  &lt;/Item&gt;
+ &lt;/InvoiceLine&gt;
+ &lt;!-- item 2 --&gt;
+ &lt;InvoiceLine id="2"&gt;
+  &lt;Quantity&gt;1&lt;/Quantity&gt;
+  &lt;LineAmount currencyID="€"&gt;177.00&lt;/LineAmount&gt;
+  &lt;Item id="193DX"&gt;
+   &lt;BasePrice currencyID="€"&gt;177.00&lt;/BasePrice&gt;
+  &lt;/Item&gt;
+ &lt;/InvoiceLine&gt;
+ &lt;ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#" Id="enveloped-sample"&gt;
+  &lt;ds:SignedInfo&gt;
+   &lt;ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#WithComments"/&gt;
+   &lt;ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#dsa-sha1"/&gt;
+   &lt;ds:Reference URI=""&gt;
+    &lt;ds:Transforms&gt;
+     &lt;ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/&gt;
+     &lt;ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#WithComments"/&gt;
+    &lt;/ds:Transforms&gt;
+    &lt;ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/&gt;
+    &lt;ds:DigestValue&gt;eFlanbs4nTiHuhG6WvG9gkdGVTQ=&lt;/ds:DigestValue&gt;
+   &lt;/ds:Reference&gt;
+  &lt;/ds:SignedInfo&gt;
+  &lt;ds:SignatureValue&gt;hfC4X3wn66WeEsk8/cowxbsQ60JseyNNASjWO8idbR4kSczmTWcCkg==&lt;/ds:SignatureValue&gt;
+  &lt;ds:KeyInfo&gt;
+   &lt;ds:X509Data&gt;
+    &lt;ds:X509Certificate&gt;
+     MIIC4TCCAp+gAwIBAgIER++fqzALBgcqhkjOOAQDBQAwVDEMMAoGA1UEBhMDZG9zMQwwCgYDVQQI
+     EwNkb3MxDDAKBgNVBAcTA2RvczEMMAoGA1UEChMDZG9zMQwwCgYDVQQLEwNkb3MxDDAKBgNVBAMT
+     A2RvczAeFw0wODAzMzAxNDExNTVaFw0wOTAzMzAxNDExNTVaMFQxDDAKBgNVBAYTA2RvczEMMAoG
+     A1UECBMDZG9zMQwwCgYDVQQHEwNkb3MxDDAKBgNVBAoTA2RvczEMMAoGA1UECxMDZG9zMQwwCgYD
+     VQQDEwNkb3MwggG3MIIBLAYHKoZIzjgEATCCAR8CgYEA/X9TgR11EilS30qcLuzk5/YRt1I870QA
+     wx4/gLZRJmlFXUAiUftZPY1Y+r/F9bow9subVWzXgTuAHTRv8mZgt2uZUKWkn5/oBHsQIsJPu6nX
+     /rfGG/g7V+fGqKYVDwT7g/bTxR7DAjVUE1oWkTL2dfOuK2HXKu/yIgMZndFIAccCFQCXYFCPFSML
+     zLKSuYKi64QL8Fgc9QKBgQD34aCF1ps93su8q1w2uFe5eZSvu/o66oL5V0wLPQeCZ1FZV4661FlP
+     5nEHEIGAtEkWcSPoTCgWE7fPCTKMyKbhPBZ6i1R8jSjgo64eK7OmdZFuo38L+iE1YvH7YnoBJDvM
+     pPG+qFGQiaiD3+Fa5Z8GkotmXoB7VSVkAUw7/s9JKgOBhAACgYAis6u62/7EEpM6MiavL8lmfWOm
+     tzBYkh9acc5NOlqo77lMlZw4Fzrmyeco14LTcs0zA2A6KZJeZ4/NFdLHOPbxu6Os6KgtHeTCcxr2
+     iJpngedSona97jiEv4zjJlGJC7dzi9/gyjB4H9U7yUwe5DkwnHBLXaJDJT3VjwrlSo7G7zALBgcq
+     hkjOOAQDBQADLwAwLAIUcmTX6EqCSO3U7QgUq8m3mGhZv4ACFDHCHiqH6wjgV4dnGWj5/tudEVRJ
+    &lt;/ds:X509Certificate&gt;
+   &lt;/ds:X509Data&gt;
+   &lt;ds:KeyValue&gt;
+    &lt;ds:DSAKeyValue&gt;
+     &lt;ds:P&gt;
+      /X9TgR11EilS30qcLuzk5/YRt1I870QAwx4/gLZRJmlFXUAiUftZPY1Y+r/F9bow9subVWzXgTuA
+      HTRv8mZgt2uZUKWkn5/oBHsQIsJPu6nX/rfGG/g7V+fGqKYVDwT7g/bTxR7DAjVUE1oWkTL2dfOu
+      K2HXKu/yIgMZndFIAcc=
+     &lt;/ds:P&gt;
+     &lt;ds:Q&gt;l2BQjxUjC8yykrmCouuEC/BYHPU=&lt;/ds:Q&gt;
+     &lt;ds:G&gt;
+      9+GghdabPd7LvKtcNrhXuXmUr7v6OuqC+VdMCz0HgmdRWVeOutRZT+ZxBxCBgLRJFnEj6EwoFhO3
+      zwkyjMim4TwWeotUfI0o4KOuHiuzpnWRbqN/C/ohNWLx+2J6ASQ7zKTxvqhRkImog9/hWuWfBpKL
+      Zl6Ae1UlZAFMO/7PSSo=
+     &lt;/ds:G&gt;
+     &lt;ds:Y&gt;
+      IrOrutv+xBKTOjImry/JZn1jprcwWJIfWnHOTTpaqO+5TJWcOBc65snnKNeC03LNMwNgOimSXmeP
+      zRXSxzj28bujrOioLR3kwnMa9oiaZ4HnUqJ2ve44hL+M4yZRiQu3c4vf4MoweB/VO8lMHuQ5MJxw
+      S12iQyU91Y8K5UqOxu8=
+     &lt;/ds:Y&gt;
+    &lt;/ds:DSAKeyValue&gt;
+   &lt;/ds:KeyValue&gt;
+  &lt;/ds:KeyInfo&gt;
+ &lt;/ds:Signature&gt;
+&lt;/Invoice&gt;
+</pre></div>
+      		
+      <h2 id="envelopingSignature">Enveloping Signature</h2>
+      		
+      <div class="code"><pre>
+&lt;?xml version="1.0" encoding="UTF-8"?&gt;
+&lt;ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#" Id="enveloping-sample"&gt;
+ &lt;ds:SignedInfo&gt;
+  &lt;ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/&gt;
+  &lt;ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#dsa-sha1"/&gt;
+  &lt;ds:Reference URI="#Invoice"&gt;
+   &lt;ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/&gt;
+   &lt;ds:DigestValue&gt;6DoxsZRaVy6fYXt5ezkMv81EjPM=&lt;/ds:DigestValue&gt;
+  &lt;/ds:Reference&gt;
+ &lt;/ds:SignedInfo&gt;
+ &lt;ds:SignatureValue&gt;OvQ0ruu0XQxzmT9cWSC1s2z+3FQYlDXARhB5HxWgn4LHg5DMYMH0Ag==&lt;/ds:SignatureValue&gt;
+ &lt;ds:KeyInfo&gt;
+  &lt;ds:X509Data&gt;
+   &lt;ds:X509Certificate&gt;
+    MIIC4TCCAp+gAwIBAgIER++fqzALBgcqhkjOOAQDBQAwVDEMMAoGA1UEBhMDZG9zMQwwCgYDVQQI
+    EwNkb3MxDDAKBgNVBAcTA2RvczEMMAoGA1UEChMDZG9zMQwwCgYDVQQLEwNkb3MxDDAKBgNVBAMT
+    A2RvczAeFw0wODAzMzAxNDExNTVaFw0wOTAzMzAxNDExNTVaMFQxDDAKBgNVBAYTA2RvczEMMAoG
+    A1UECBMDZG9zMQwwCgYDVQQHEwNkb3MxDDAKBgNVBAoTA2RvczEMMAoGA1UECxMDZG9zMQwwCgYD
+    VQQDEwNkb3MwggG3MIIBLAYHKoZIzjgEATCCAR8CgYEA/X9TgR11EilS30qcLuzk5/YRt1I870QA
+    wx4/gLZRJmlFXUAiUftZPY1Y+r/F9bow9subVWzXgTuAHTRv8mZgt2uZUKWkn5/oBHsQIsJPu6nX
+    /rfGG/g7V+fGqKYVDwT7g/bTxR7DAjVUE1oWkTL2dfOuK2HXKu/yIgMZndFIAccCFQCXYFCPFSML
+    zLKSuYKi64QL8Fgc9QKBgQD34aCF1ps93su8q1w2uFe5eZSvu/o66oL5V0wLPQeCZ1FZV4661FlP
+    5nEHEIGAtEkWcSPoTCgWE7fPCTKMyKbhPBZ6i1R8jSjgo64eK7OmdZFuo38L+iE1YvH7YnoBJDvM
+    pPG+qFGQiaiD3+Fa5Z8GkotmXoB7VSVkAUw7/s9JKgOBhAACgYAis6u62/7EEpM6MiavL8lmfWOm
+    tzBYkh9acc5NOlqo77lMlZw4Fzrmyeco14LTcs0zA2A6KZJeZ4/NFdLHOPbxu6Os6KgtHeTCcxr2
+    iJpngedSona97jiEv4zjJlGJC7dzi9/gyjB4H9U7yUwe5DkwnHBLXaJDJT3VjwrlSo7G7zALBgcq
+    hkjOOAQDBQADLwAwLAIUcmTX6EqCSO3U7QgUq8m3mGhZv4ACFDHCHiqH6wjgV4dnGWj5/tudEVRJ
+   &lt;/ds:X509Certificate&gt;
+  &lt;/ds:X509Data&gt;
+  &lt;ds:KeyValue&gt;
+   &lt;ds:DSAKeyValue&gt;
+    &lt;ds:P&gt;
+     /X9TgR11EilS30qcLuzk5/YRt1I870QAwx4/gLZRJmlFXUAiUftZPY1Y+r/F9bow9subVWzXgTuA
+     HTRv8mZgt2uZUKWkn5/oBHsQIsJPu6nX/rfGG/g7V+fGqKYVDwT7g/bTxR7DAjVUE1oWkTL2dfOu
+     K2HXKu/yIgMZndFIAcc=
+    &lt;/ds:P&gt;
+    &lt;ds:Q&gt;l2BQjxUjC8yykrmCouuEC/BYHPU=&lt;/ds:Q&gt;
+    &lt;ds:G&gt;
+     9+GghdabPd7LvKtcNrhXuXmUr7v6OuqC+VdMCz0HgmdRWVeOutRZT+ZxBxCBgLRJFnEj6EwoFhO3
+     zwkyjMim4TwWeotUfI0o4KOuHiuzpnWRbqN/C/ohNWLx+2J6ASQ7zKTxvqhRkImog9/hWuWfBpKL
+     Zl6Ae1UlZAFMO/7PSSo=
+    &lt;/ds:G&gt;
+    &lt;ds:Y&gt;
+     IrOrutv+xBKTOjImry/JZn1jprcwWJIfWnHOTTpaqO+5TJWcOBc65snnKNeC03LNMwNgOimSXmeP
+     zRXSxzj28bujrOioLR3kwnMa9oiaZ4HnUqJ2ve44hL+M4yZRiQu3c4vf4MoweB/VO8lMHuQ5MJxw
+     S12iQyU91Y8K5UqOxu8=
+    &lt;/ds:Y&gt;
+   &lt;/ds:DSAKeyValue&gt;
+  &lt;/ds:KeyValue&gt;
+ &lt;/ds:KeyInfo&gt;
+ &lt;ds:Object Id="Invoice"&gt;
+  &lt;Invoice&gt;
+   &lt;ID&gt;IN 2008/00645&lt;/ID&gt;
+   &lt;IssueDate&gt;2008-03-30&lt;/IssueDate&gt;
+   &lt;BuyerParty&gt;
+    &lt;ID&gt;458746&lt;/ID&gt;
+    &lt;name&gt;John Doe&lt;/name&gt;
+   &lt;/BuyerParty&gt;
+   &lt;PaymentMeans&gt;
+    &lt;PayeeFinancialAccount&gt;
+     &lt;ID&gt;07044961&lt;/ID&gt;
+     &lt;Name&gt;The Specialists Company&lt;/Name&gt;
+     &lt;AccountTypeCode&gt;Credit&lt;/AccountTypeCode&gt;
+     &lt;FinancialInstitutionBranch&gt;
+      &lt;ID&gt;776631&lt;/ID&gt;
+      &lt;Institution&gt;LOYDGB852&lt;/Institution&gt;
+     &lt;/FinancialInstitutionBranch&gt;
+    &lt;/PayeeFinancialAccount&gt;
+   &lt;/PaymentMeans&gt;
+   &lt;TotalAmount currencyID="€"&gt;382.00&lt;/TotalAmount&gt;
+   &lt;!-- item 1 --&gt;
+   &lt;InvoiceLine id="1"&gt;
+    &lt;Quantity&gt;2&lt;/Quantity&gt;
+    &lt;LineAmount currencyID="€"&gt;205.00&lt;/LineAmount&gt;
+    &lt;Item id="236WV"&gt;
+     &lt;BasePrice currencyID="€"&gt;102.50&lt;/BasePrice&gt;
+    &lt;/Item&gt;
+   &lt;/InvoiceLine&gt;
+   &lt;!-- item 2 --&gt;
+   &lt;InvoiceLine id="2"&gt;
+    &lt;Quantity&gt;1&lt;/Quantity&gt;
+    &lt;LineAmount currencyID="€"&gt;177.00&lt;/LineAmount&gt;
+    &lt;Item id="193DX"&gt;
+     &lt;BasePrice currencyID="€"&gt;177.00&lt;/BasePrice&gt;
+    &lt;/Item&gt;
+   &lt;/InvoiceLine&gt;
+  &lt;/Invoice&gt;
+ &lt;/ds:Object&gt;
+&lt;/ds:Signature&gt;
+</pre></div>
+      		
+      <h2 id="detachedSignature">Detached Signature</h2>
+      		
+      <div class="code"><pre>
+&lt;?xml version="1.0" encoding="UTF-8"?&gt;
+&lt;root&gt;
+ &lt;ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#" Id="detached-sample"&gt;
+  &lt;ds:SignedInfo&gt;
+   &lt;ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/&gt;
+   &lt;ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#dsa-sha1"/&gt;
+   &lt;ds:Reference URI="invoice.xml"&gt;
+    &lt;ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/&gt;
+    &lt;ds:DigestValue&gt;3L2BX8RM8edeO+/fAhHXm6pcWtISDyJYDQxHe+JisXg=&lt;/ds:DigestValue&gt;
+   &lt;/ds:Reference&gt;
+  &lt;/ds:SignedInfo&gt;
+  &lt;ds:SignatureValue&gt;BSv5aeWsbpWB06b51jDuJex1olkfI9EwQNeh9+DmXq4qkas/BYLPJQ==&lt;/ds:SignatureValue&gt;
+  &lt;ds:KeyInfo&gt;
+   &lt;ds:X509Data&gt;
+    &lt;ds:X509Certificate&gt;
+     MIIC4TCCAp+gAwIBAgIER++fqzALBgcqhkjOOAQDBQAwVDEMMAoGA1UEBhMDZG9zMQwwCgYDVQQI
+     EwNkb3MxDDAKBgNVBAcTA2RvczEMMAoGA1UEChMDZG9zMQwwCgYDVQQLEwNkb3MxDDAKBgNVBAMT
+     A2RvczAeFw0wODAzMzAxNDExNTVaFw0wOTAzMzAxNDExNTVaMFQxDDAKBgNVBAYTA2RvczEMMAoG
+     A1UECBMDZG9zMQwwCgYDVQQHEwNkb3MxDDAKBgNVBAoTA2RvczEMMAoGA1UECxMDZG9zMQwwCgYD
+     VQQDEwNkb3MwggG3MIIBLAYHKoZIzjgEATCCAR8CgYEA/X9TgR11EilS30qcLuzk5/YRt1I870QA
+     wx4/gLZRJmlFXUAiUftZPY1Y+r/F9bow9subVWzXgTuAHTRv8mZgt2uZUKWkn5/oBHsQIsJPu6nX
+     /rfGG/g7V+fGqKYVDwT7g/bTxR7DAjVUE1oWkTL2dfOuK2HXKu/yIgMZndFIAccCFQCXYFCPFSML
+     zLKSuYKi64QL8Fgc9QKBgQD34aCF1ps93su8q1w2uFe5eZSvu/o66oL5V0wLPQeCZ1FZV4661FlP
+     5nEHEIGAtEkWcSPoTCgWE7fPCTKMyKbhPBZ6i1R8jSjgo64eK7OmdZFuo38L+iE1YvH7YnoBJDvM
+     pPG+qFGQiaiD3+Fa5Z8GkotmXoB7VSVkAUw7/s9JKgOBhAACgYAis6u62/7EEpM6MiavL8lmfWOm
+     tzBYkh9acc5NOlqo77lMlZw4Fzrmyeco14LTcs0zA2A6KZJeZ4/NFdLHOPbxu6Os6KgtHeTCcxr2
+     iJpngedSona97jiEv4zjJlGJC7dzi9/gyjB4H9U7yUwe5DkwnHBLXaJDJT3VjwrlSo7G7zALBgcq
+     hkjOOAQDBQADLwAwLAIUcmTX6EqCSO3U7QgUq8m3mGhZv4ACFDHCHiqH6wjgV4dnGWj5/tudEVRJ
+    &lt;/ds:X509Certificate&gt;
+   &lt;/ds:X509Data&gt;
+   &lt;ds:KeyValue&gt;
+    &lt;ds:DSAKeyValue&gt;
+     &lt;ds:P&gt;
+      /X9TgR11EilS30qcLuzk5/YRt1I870QAwx4/gLZRJmlFXUAiUftZPY1Y+r/F9bow9subVWzXgTuA
+      HTRv8mZgt2uZUKWkn5/oBHsQIsJPu6nX/rfGG/g7V+fGqKYVDwT7g/bTxR7DAjVUE1oWkTL2dfOu
+      K2HXKu/yIgMZndFIAcc=
+     &lt;/ds:P&gt;
+     &lt;ds:Q&gt;l2BQjxUjC8yykrmCouuEC/BYHPU=&lt;/ds:Q&gt;
+     &lt;ds:G&gt;
+      9+GghdabPd7LvKtcNrhXuXmUr7v6OuqC+VdMCz0HgmdRWVeOutRZT+ZxBxCBgLRJFnEj6EwoFhO3
+      zwkyjMim4TwWeotUfI0o4KOuHiuzpnWRbqN/C/ohNWLx+2J6ASQ7zKTxvqhRkImog9/hWuWfBpKL
+      Zl6Ae1UlZAFMO/7PSSo=
+     &lt;/ds:G&gt;
+     &lt;ds:Y&gt;
+      IrOrutv+xBKTOjImry/JZn1jprcwWJIfWnHOTTpaqO+5TJWcOBc65snnKNeC03LNMwNgOimSXmeP
+      zRXSxzj28bujrOioLR3kwnMa9oiaZ4HnUqJ2ve44hL+M4yZRiQu3c4vf4MoweB/VO8lMHuQ5MJxw
+      S12iQyU91Y8K5UqOxu8=
+     &lt;/ds:Y&gt;
+    &lt;/ds:DSAKeyValue&gt;
+   &lt;/ds:KeyValue&gt;
+  &lt;/ds:KeyInfo&gt;
+ &lt;/ds:Signature&gt;
+&lt;/root&gt;
+</pre></div>
+      		
+      <p>Das Beispiel <a href="sample_encrypted.html">verschlüsselt</a> (<a href="sample_encrypted.html#envelopingEncryption">enveloping</a>, <a href="sample_encrypted.html#detachedEncryption">detached</a>) oder im <a href="sample.html">Original</a>.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_basics.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_basics.html
new file mode 100644
index 0000000..bb03580
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_basics.html
@@ -0,0 +1,44 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Signaturen Grundlagen</h1>
+      	
+      		
+      <p>Gemeinsam mit der Internet Engineering Task Force (IETF) hat das W3C am 12. Februar 2002 die <strong>XML Signature Syntax and Processing Recommendation</strong> freigegeben. In dieser Empfehlung (und im identischen RFC der IETF) ist exakt und umfassend festgelegt, welche Form eine
+         digitale Signatur mit XML besitzt und wie diese verarbeitet werden kann. Die Empfehlung beschreibt dabei sowohl das Signieren
+         beliebiger Elemente eines XML-Dokuments als auch beliebiger, auch binärer, externer Daten mit gängigen kryptografischen Standards
+         und bietet vielfältige Möglichkeiten zur Erstellung einer digitalen Signatur.
+      </p>
+      		
+      <p>XML-Signaturen basieren auf der Metasprache XML und beschreiben ein auf XML basierendes Format für digital signierte Daten.
+         XML Digitale Signaturen sorgen für Nachrichtenintegrität, Nachrichten- und Teilnehmerauthentizität sowie Verbindlichkeit (Nicht-Abstreitbarkeit)
+         für Daten beliebigen Typs (<em>arbitrary data</em>), egal ob die Daten innerhalb oder außerhalb des XML-Dokuments mit der Signatur liegen.
+      </p>
+      		
+      <p>Kurz gesagt bindet eine digitale Signatur eine Nachricht eindeutig an eine Nachrichtenquelle. Die Integrität gewährleistet
+         dabei, dass die Informationen vollständig und unverändert vorliegen. Nachrichtenauthentizität bedeutet, dass die Informationen
+         einem bestimmten Urheber zugeordnet werden können, Teilnehmerauthentizität steht für die zweifelsfreie Nachweisbarkeit der
+         Identität des Senders. Die Verbindlichkeit sorgt schließlich für den Nachweis, dass eine bestimmte Nachricht von einem bestimmten
+         Sender stammt. Die von Cisco im Februar 2003 als Ergänzung (<em>W3C Note</em>) veröffentlichten <em>XML Advanced Electronic Signatures (XAdES)</em> widmet sich ganz dieser Thematik. XAdES Signaturen bauen auf XML Signaturen auf und verwenden deren Erweiterungsmechanismen
+         (das <a href="signatures_syntax_object.html">ds:Object</a> Element). XAdES ergänzt XML Digitale Signaturen also um einige weitere Möglichkeiten wie Langzeitsignaturen, Unwiderrufbarkeit
+         und verschiedene andere gesetzliche Aspekte.
+      </p>
+      		
+      <p>XML-Signaturen sind zwar vorrangig für XML-Dokumente vorgesehen aber keineswegs auf diese beschränkt. Vielmehr lassen sich
+         mit XML alle Daten, die durch einen Uniform Resource Identifier (URI) referenziert werden können, inhalts- und herstellerunabhängig
+         signieren. Einer XML-Signatur ist immer mindestens eine Ressource (XML-Baum oder beliebige Binärdaten) zugeordnet. Es spielt
+         dabei keine Rolle ob sich diese Daten innerhalb oder außerhalb des XML-Dokuments befinden.
+      </p>
+      		
+      <p>Der Inhalt der übertragenen Daten wird durch die digitale Signatur nicht verändert, allerdings verändert sich die Struktur
+         des XML-Dokuments. Trotz der Veränderungen durch die Signatur bleibt das XML-Dokument auch weiterhin für Dritte lesbar, Schemata
+         oder DTDs für validierende Parser müssen unter Umständen aber entsprechend angepasst werden.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_canon.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_canon.html
new file mode 100644
index 0000000..d49fcc3
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_canon.html
@@ -0,0 +1,167 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Kanonisierung</h1>
+      	
+      		
+      <p>Trotz logischer Gleichheit der reinen Dokumentdaten lassen sich Veränderungen am physischen Dokument durch die Verarbeitung,
+         beispielsweise auf verschiedenen Plattformen oder in unterschiedlichen Editoren/ Anwendungen, nicht verhindern. Um ungültige
+         Signaturen auszuschließen, wird daher vor dem Signieren ein Kanonisierungs-Algorithmus auf das wohlgeformte XML-Dokument angewandt.
+         Hiermit werden syntaktische Unterschiede - wie beispielsweise der Zeichensatz, Zeilenumbrüche, leere Tags und die Reihenfolge
+         der Attribute - von ansonsten semantisch identischen XML-Dokumenten kanonisiert. Eine andere Bezeichnung für Kanonisierung
+         ist Normalisierung. Der Kanonisierungs-Algorithmus stellt dabei sicher, dass immer dieselben Bytes in die Hashwertberechnung
+         einfließen und anschließend signiert werden. Die bei digitalen Signaturen zahlreich vorhandenen URIs werden jedoch niemals
+         kanonisiert.
+      </p>
+      		
+      <p>Auffällig ist, dass zwar die XML-Deklaration zur Kanonisierung herangezogen wird, diese Deklaration im kanonisierten XML-Dokument
+         aber nicht mehr enthalten ist. Das ist nur konsequent, die Angabe des <em>encodings</em> ist überflüssig da ein kanonisches XML-Dokument immer in einer <em>UTF-8</em> Kodierung vorliegt und eine fehlende Versionsangabe immer XML Version 1.0 bedeutet. Das erfordert allerdings, dass bei einer
+         neuen XML-Version auch die Kanonisierung überarbeitet wird.
+      </p>
+      		
+      <p>
+         			<strong>Beim Kanonisieren eines XML-Dokuments finden die folgenden Aktionen statt:</strong>
+         		
+      </p>
+      		
+      <ul>
+         			
+         <li>Das Dokument wird in UTF-8 kodiert</li>
+         			
+         <li>Zeilenumbrüche werden vor dem Parsen normalisiert zu #xA</li>
+         			
+         <li>Attributwerte werden normalisiert (wie bei einem validierenden Parser)</li>
+         			
+         <li>Character- und parsed-entity Referenzen werden ersetzt</li>
+         			
+         <li>CDATA Abschnitte werden durch ihren Inhalt ersetzt</li>
+         			
+         <li>Die XML-Deklaration und eine möglicherweise vorhandene DTD werden entfernt</li>
+         			
+         <li>Leere Elemente werden zu Start-End-Tag Paaren umgewandelt</li>
+         			
+         <li>Whitespace außerhalb des Dokumentelements und innerhalb von Start- und End-Tags wird normalisiert</li>
+         			
+         <li>Whitespace in Textknoten wird beibehalten (gilt jedoch nicht für Zeichen die bei der Normalisierung der Zeilenumbrüche entfernt
+            wurden)
+         </li>
+         			
+         <li>Attributwerte werden in doppelten Anführungsstrichen eingeschlossen</li>
+         			
+         <li>Sonderzeichen in Attributwerten und Textknoten werden durch Zeichenreferenzen ersetzt</li>
+         			
+         <li>Überflüssige Namespace Deklarationen werden von jedem Element entfernt</li>
+         			
+         <li>Defaultattribute werden zu den jeweiligen Elementen hinzugefügt</li>
+         			
+         <li>Namespace Deklarationen und Attribute werden alphanumerisch sortiert</li>
+         		
+      </ul>
+      		
+      <p>Zu kanonischem XML existieren seit 15. März 2001, 18. Juli 2002 bzw. 29. Januar 2008 drei Empfehlungen des W3C: <em>Canonical XML 1.0 (C14N 1.0)</em>, <em>Canonical XML 1.1 (C14N 1.1)</em> und <em>Exclusive XML Canonicalization 1.0</em>. Drei Empfehlungen, die alle mehr oder weniger das Gleiche tun...
+      </p>
+      		
+      <p>Nun ja, es gibt einige Unterschiede: So wird die <em>exclusive</em> Variante unter anderem für Protokolle wie SOAP und damit Web Services benötigt und sollte auch in Zusammenhang mit <strong>xml:id</strong> verwendet werden. Mit der gebräuchlicheren <em>Exclusive XML Canonicalization 1.0</em> wird ein XML-Dokument soweit wie möglich ohne den dazugehörigen Kontext (d.h. Namensräume der Vorfahren) normalisiert. Damit
+         wird eine digitale Signatur auch nicht ungültig falls ein kanonisiertes Dokumentfragment aus dem Kontext entfernt und/ oder
+         in ein anderes XML-Dokument eingefügt wird.
+      </p>
+      		
+      <p>Alternativ kann bei Verwendung von <strong>xml:id</strong> oder <strong>xml:base</strong> Attributen auch die aktualisierte <em>Canonical XML 1.1</em> Empfehlung angewendet werden, mit <em>Canonical XML 1.0</em> gibt es hier Probleme. <em>Canonical XML 1.0</em> und <em>Canonical XML 1.1</em> machen jedoch prinzipiell dasselbe, die Verwendung der aktualisierten Version 1.1 wird aber empfohlen. Es wurde weiter oben
+         schon angesprochen, bei der Kanonisierung von Dokumentfragmenten kann der übergeordnete Kontext verloren gehen. Damit das
+         XML-Dokument z.B. durch eine nach der Kanonisierung fehlende Namespace Deklaration nicht ungültig wird, werden Attribute kopiert.
+         Auch solche im xml Namespace wie z.B. <strong>xml:base</strong> und <strong>xml:id</strong>. Und mit diesen beiden gibt es Probleme. Während bei <strong>xml:base</strong> einfach auch der Attributwert (d.h. der darin enthaltene Pfad) angepasst werden muss, ist das Kopieren von <strong>xml:id</strong> schlichtweg falsch. <strong>xml:id</strong> ist eine Empfehlung vom September 2005 und beschreibt kurz gesagt eine Möglichkeit, Elemente mit eindeutigen IDs auszustatten.
+         Eine ID muss eindeutig sein, nach dem Kopieren ist das aber nicht mehr der Fall. C14N 1.1 wurde dahingehend erweitert, dass
+         <strong>xml:base</strong> Attribute angepasst werden und <strong>xml:id</strong> nicht kopiert, d.h. nicht in den Kontext eines Subdokuments übernommen werden. Bei der Verwendung von C14N 1.0 können hier
+         <em>xml:id errors</em> auftreten. Das sind zwar keine fatalen Fehler, d.h. das XML-Dokument kann weiterverarbeitet werden, trotzdem kann das XML-Dokument
+         später unbrauchbar sein.
+      </p>
+      		
+      <p>Die <em>Exclusive XML Canonicalization 1.0</em> und auch <em>Canonical XML 1.1</em> weisen dieses Feature (es handelt sich tatsächlich ein Feature und kein Bug) nicht auf, daher sollte bei XML-Dokumenten mit
+         <strong>xml:id</strong> Attributen besser auf einen dieser Kanonisierungs-Algorithmen zurückgegriffen werden.
+      </p>
+      		
+      <p>Canonical XML 1.1 ist übrigens, auch wenn es der Name andeuten mag, nicht für XML 1.1 geeignet. Für XML 1.1 steht noch keine
+         Kanonisierungsmöglichkeit zur Verfügung; XML Digitale Signaturen können daher mit XML 1.1 derzeit nicht verwendet werden.
+         Mangels Rückwärtskompatibilität wird XML 1.1 wohl ohnehin nur für wenige Anwendungsgebiete und Entwickler interessant sein,
+         daher lässt sich das wohl verschmerzen. Elliotte Rusty Harold empfiehlt XML 1.1 ohnehin nur einer eingeschränkten Zielgruppe:
+         <em>"XML 1.1 has a number of new features that make it much more suitable for use by IBM mainframe programmers and people whose
+            native language is Amharic, Burmese, or Cambodian."</em>. Alle anderen können ohne schlechtes Gewissen auch weiterhin XML 1.0 verwenden.
+      </p>
+      		
+      <p>Aber ganz egal welche Kanonisierung verwendet wird, es stehen immer jeweils zwei Möglichkeiten zur Kanonisierung zur Verfügung.
+         Bei der einen Version werden die Kommentare im kanonisierten XML-Dokument entfernt (<em>canonical XML omits comments</em>), bei der anderen Version bleiben die Kommentare erhalten (<em>canonical XML with comments</em>). Auch bei der Kanonisierung ist es möglich, nur XML-Dokumentfragmente zu kanonisieren und die restlichen Dokumentteile in
+         ihrer ursprünglichen Form zu belassen. Im Gegensatz zum vollständigen Kanonisieren eines XML-Dokuments kann es bei einer XML-Dokument
+         Untermenge (<em>document subset</em>) durchaus vorkommen, dass das resultierende XML-Dokument nicht mehr wohlgeformt ist.
+      </p>
+      		
+      <p>Die vorhandenen Kanonisierungs-Algorithmen und die zugehörigen Uniform Resource Identifier zeigt die folgende Tabelle. Identifiziert
+         wird der gewünschte Algorithmus immer über den jeweiligen URI.
+      </p>
+      		
+      <table cellspacing="0">
+         <thead>
+            <tr>
+               <th>Name</th>
+               <th>URI</th>
+               <th>Implementierung</th>
+            </tr>
+         </thead>
+         <tbody>
+            <tr class="uneven">
+               <td>
+                  					Canonical XML 1.0
+                  				
+               </td>
+               <td>http://www.w3.org/TR/2001/REC-xml-c14n-20010315</td>
+               <td>erforderlich</td>
+            </tr>
+            <tr class="even">
+               <td>
+                  					Canonical XML 1.0 with Comments
+                  				
+               </td>
+               <td>http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments</td>
+               <td>empfohlen</td>
+            </tr>
+            <tr class="uneven">
+               <td>
+                  					Canonical XML 1.1
+                  				
+               </td>
+               <td>http://www.w3.org/2006/12/xml-c14n11</td>
+               <td>erforderlich</td>
+            </tr>
+            <tr class="even">
+               <td>
+                  					Canonical XML 1.1 with Comments
+                  				
+               </td>
+               <td>http://www.w3.org/2006/12/xml-c14n11#WithComments</td>
+               <td>empfohlen</td>
+            </tr>
+            <tr class="uneven">
+               <td>
+                  					Exclusive XML Canonicalization 1.0
+                  				
+               </td>
+               <td>http://www.w3.org/2001/10/xml-exc-c14n#</td>
+               <td>optional</td>
+            </tr>
+            <tr class="even">
+               <td>
+                  					Exclusive XML Canonicalization 1.0 with Comments
+                  				
+               </td>
+               <td>http://www.w3.org/2001/10/xml-exc-c14n#WithComments</td>
+               <td>optional</td>
+            </tr>
+         </tbody>
+      </table>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_canon_transform.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_canon_transform.html
new file mode 100644
index 0000000..755d6f2
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_canon_transform.html
@@ -0,0 +1,25 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Kanonisierung und Transformation</h1>
+      	
+      		
+      <p>Zwei Begriffen kommen bei der digitalen Signatur mit XML eine große Bedeutung zu: Kanonisierung (<em>canonicalization</em>, auch <em>C14N</em>) und Transformation (<em>transformation</em>). C14N übrigens deshalb, weil zwischen dem ersten Buchstaben C und dem letzten n von Canonicalization genau 14 weitere Buchstaben
+         stehen.
+      </p>
+      		
+      <p>Bei der <a href="signatures_canon.html">Kanonisierung</a> eines XML-Dokuments wird dieses in einheitlicher Form in einen Bytestrom überführt. Kanonisierung steht somit für die Normalisierung
+         von XML-Dokumenten, um robuste und sichere Signaturen zu ermöglichen. Neben dem Einsatz in digitalen Signaturen ist die Kanonisierung
+         beispielsweise auch wichtig bei der XML-basierten Versionskontrolle (d.h. beim <em>diff</em>).
+      </p>
+      		
+      <p>Mit <a href="signatures_transform.html">Transformationen</a> beschreibt XML die Umwandlung von referenzierten Daten vor der Signierung auf verschiedenste Art und Weise.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_detached.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_detached.html
new file mode 100644
index 0000000..dc7d732
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_detached.html
@@ -0,0 +1,27 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Detached Signature</h1>
+      	
+      		
+      <p>Bei einer <strong>detached signature</strong> gibt es keine Eltern-Kind-Beziehung zwischen Signatur und Dokument. Das Originaldokument ist vielmehr eine separate Ressource.
+         Das zu signierende Dokument wird bei einer <strong>detached signature</strong> nicht verändert. Der signierte Inhalt kann sich im selben Dokument wie die Signatur oder in einem anderen Dokument befinden.
+      </p>
+      		
+      <div align="center"><img src="../images/signatures_detached.png" alt="Detached Signature" width="425" height="284"><p><em>Detached Signature</em></p>
+      </div>
+      		
+      <p>Der XML-Baum hat damit den folgenden Aufbau:</p>
+      		
+      <div class="code"><pre>&lt;Signature&gt;
+&lt;/Signature&gt;
+&lt;DocumentData&gt;
+&lt;/DocumentData&gt;</pre></div>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_enveloped.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_enveloped.html
new file mode 100644
index 0000000..6247bd4
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_enveloped.html
@@ -0,0 +1,27 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Enveloped Signature</h1>
+      	
+      		
+      <p>Bei einer <strong>enveloped signature</strong> stellt das zu signierende Dokument das Elternelement zum <a href="signatures_syntax_signature.html">Signature</a> Element dar. Das <a href="signatures_syntax_signature.html">Signature</a> Element ist somit vom zu signierenden Dokument umgeben und damit in der Baumstruktur der zu signierenden Daten enthalten.
+         Diese Variante ist mit einer herkömmlichen handschriftlichen Unterschrift vergleichbar.
+      </p>
+      		
+      <div align="center"><img src="../images/signatures_enveloped.png" alt="Enveloped Signature" width="425" height="284"><p><em>Enveloped Signature</em></p>
+      </div>
+      		
+      <p>Der XML-Baum hat damit den folgenden Aufbau:</p>
+      		
+      <div class="code"><pre>&lt;DocumentData&gt;
+  &lt;Signature&gt;
+  &lt;/Signature&gt;
+&lt;/DocumentData&gt;</pre></div>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_enveloping.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_enveloping.html
new file mode 100644
index 0000000..5d2b04f
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_enveloping.html
@@ -0,0 +1,26 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Enveloping Signature</h1>
+      	
+      		
+      <p>Werden die zu signierenden Daten als Kindelemente der Signatur dargestellt, wird dies als <strong>enveloping signature</strong> bezeichnet. Der signierte Inhalt steht bei dieser Signaturvariante als Kindelement  von <a href="signatures_syntax_object.html">Object</a> innerhalb des <a href="signatures_syntax_signature.html">Signature</a> Elements.
+      </p>
+      		
+      <div align="center"><img src="../images/signatures_enveloping.png" alt="Enveloping Signature" width="425" height="284"><p><em>Enveloping Signature</em></p>
+      </div>
+      		
+      <p>Der XML-Baum hat damit den folgenden Aufbau:</p>
+      		
+      <div class="code"><pre>&lt;Signature&gt;
+  &lt;DocumentData&gt;
+  &lt;/DocumentData&gt;
+&lt;/Signature&gt;</pre></div>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_presentation.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_presentation.html
new file mode 100644
index 0000000..7585e24
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_presentation.html
@@ -0,0 +1,44 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Präsentationsproblem</h1>
+      	
+      		
+      <p>Beim Signieren mit XML gilt die Redensart <em>What You See Is What You Sign (WYSIWYS)</em>. Also eigentlich genau das, was der Anwender erwartet: das was er sieht wird auch von ihm signiert. Das ist eine gefährliche
+         Behauptung wie das folgende Beispiel gleich zeigen wird. Nehmen wir z.B. ein XML-Dokument und dazu ein XSL-Stylesheet. Wird
+         die Signatur nur über das Daten-XML berechnet kann das Stylesheet ohne Auswirkung auf die Signatur ausgetauscht oder modifiziert
+         werden. Als Folge davon kann das angezeigte XML-Dokument erheblich vom Original abweichen, obwohl die Signatur über dem Daten-XML
+         immer noch gültig ist. Das Daten-XML wurde ja nicht verändert, mit dem Stylesheet können aber beliebig viele Transformationen,
+         z.B. Berechnungen, darauf angewendet werden. Diese Probleme sind bekannt und auch nicht rein auf XML beschränkt. Generell
+         spricht man hierbei vom Präsentationsproblem.
+      </p>
+      		
+      <p>Eine Lösung besteht darin, mit dem Daten-XML auch alle verbundenen XML-Dokumente (XSLT, Schema, DTD, ...) zu signieren. Ganz
+         so einfach lässt sich das Problem aber nicht aus der Welt schaffen. XSL-Stylesheets können weitere Stylesheets importieren
+         usw., das Berechnen der Signatur, in erster Linie das Zusammensuchen der XML-Dokumente, kann beliebig aufwändig und komplex
+         werden. Gleichzeitig müssen ja alle zu signierenden Ressourcen auch noch verfügbar (zugreifbar) sein.
+      </p>
+      		
+      <p>Die nächste auftretende Frage ist dann, wie dem Anwender ein ungültiges Stylesheet (das kann eines von vielen sein oder auch
+         alle) präsentiert wird. Sprich die Signatur über das XML-Dokument ist gültig, aber eines oder mehrere Stylesheets wurden nach
+         dem Signieren verändert oder sind einfach nicht mehr vorhanden. Die Herausforderung ist hier eine verständliche Anzeige für
+         den Anwender. Am einfachsten ist es sicherlich, die ganze Signatur als ungültig darzustellen. Nur ist das nicht ganz korrekt.
+         Wird dem Anwender jedoch mitgeteilt, dass Teile der Signatur ungültig sind, benötigt er umfangreichere XML-Kenntnisse als
+         er vielleicht hat. Weiterhin ist es ja auch so, dass nicht alle Manipulationen am Stylesheet eine (negative) Auswirkung auf
+         die Darstellung haben müssen.
+      </p>
+      		
+      <p>Die beste Lösung ist meiner Ansicht nach die Darstellung mit zwei Fehlerarten: das Daten-XML ist ungültig und/ oder eine zur
+         Darstellung verwendete Ressource ist ungültig bzw. nicht mehr erreichbar. Bei einem ungültigen Daten-XML ist der Fall klar.
+         Bei einem ungültigen Stylesheet sollte der Anwender auf das reine Daten-XML hingewiesen werden. Auch wenn der Anwender selbst
+         nicht über genügend Kenntnisse verfügt kann sich immer noch ein Experte die Daten ansehen und bewerten. In jedem Fall nehmen
+         aber die Fehlerarten zu, die Verantwortung wie letztlich damit umgegangen wird, liegt aber beim Anwender.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_sign.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_sign.html
new file mode 100644
index 0000000..7d4b28d
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_sign.html
@@ -0,0 +1,65 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Signierung</h1>
+      	
+      		
+      <p>Die Erzeugung von digitalen Signaturen (<em>core generation</em>) mit der Extensible Markup Language verläuft in zwei aufeinander folgenden Schritten. Zuerst wird das zu signierende XML-Dokument
+         aufbereitet und für die Signierung vorbereitet (<em>reference generation</em>), anschließend folgt die Generierung der Signatur (<em>signature generation</em>).
+      </p>
+      		
+      <p>
+         			<strong>Reference Generation (Generierung der Reference-Elemente)</strong>
+         		
+      </p>
+      		
+      <p>Für jedes zu signierende Datenobjekt werden nach dem Laden der Ressource</p>
+      		
+      <ol>
+         			
+         <li>alle angegebenen <a href="signatures_transform.html">Transformationen</a> angewandt,
+         </li>
+         			
+         <li>wird aus dem Ergebnis der letzten <a href="signatures_transform.html">Transformation</a> für jede kanonisierte Ressource der Hashwert berechnet
+         </li>
+         			
+         <li>und zuletzt das <a href="signatures_syntax_signedinfo.html#Reference">Reference</a> Element zusammen mit Angabe der angewandten Transformationen, einer optionalen ID, der <a href="signatures_syntax_signedinfo.html#DigestMethod">DigestMethod</a> und des <a href="signatures_syntax_signedinfo.html#DigestValue">DigestValue</a> Elements erzeugt.
+         </li>
+         		
+      </ol>
+      		
+      <p>
+         			<strong>Signature Generation (Generierung der Signatur)</strong>
+         		
+      </p>
+      		
+      <ol>
+         			
+         <li>Zunächst wird das <a href="signatures_syntax_signedinfo.html">SignedInfo</a> Element zusammen mit den Kindelementen <a href="signatures_syntax_signedinfo.html#SignatureMethod">SignatureMethod</a>, <a href="signatures_syntax_signedinfo.html#CanonicalizationMethod">CanonicalizationMethod</a> und ein bis mehreren <a href="signatures_syntax_signedinfo.html#Reference">Reference</a> Elementen generiert.
+         </li>
+         			
+         <li>Die Elemente werden in das Element <a href="signatures_syntax_signedinfo.html">SignedInfo</a> eingeschlossen und die Kanonisierung dieses Elements durchgeführt. Über diese kanonische Form wird dann der <a href="signatures_syntax_signaturevalue.html">SignatureValue</a> basierend auf den in <a href="signatures_syntax_signedinfo.html">SignedInfo</a> angegebenen Algorithmen berechnet.
+         </li>
+         			
+         <li>Mit diesen Daten wird das vollständige <a href="signatures_syntax_signature.html">Signature</a> Element erstellt und der Wert der Signatur im Base-64 encoding in SignatureValue abgelegt. Optional können noch weitere Schlüsselinformationen
+            (der öffentliche Schlüssel des Signierenden) mittels des Elements <a href="signatures_syntax_keyinfo.html">KeyInfo</a> zur Signatur hinzugefügt werden. Der öffentliche Schlüssel wird für eine spätere Verifizierung der Signatur benötigt. Im
+            Falle einer qualifizierten Signatur fordert das Gesetz, dass das Zertifikat mit in die Signaturberechnung eingeht. Daher kann
+            an dieser Stelle auch das gesamte Zertifikat und nicht nur der öffentliche Schlüssel angegeben werden. Mit einer Referenz
+            auf dieses Element wird dieses dann ebenfalls mit in die Signaturberechnung einbezogen.
+         </li>
+         		
+      </ol>
+      		
+      <p>Mit einem Manifest können mehrere Ressourcen auf ein Mal signiert werden. Hierbei hat auch die Anwendung die Kontrolle über
+         die weiteren Aktionen, wenn z.B. die Verifizierung einer Referenz fehlschlägt. Normalerweise würde bei nur einer ungültigen
+         oder nicht erreichbaren Ressource automatisch die gesamte Signatur ungültig. Mit einem Manifest ist es außerdem möglich, mit
+         mehreren Schlüsseln effizient dieselben Ressourcen zu signieren.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_syntax.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_syntax.html
new file mode 100644
index 0000000..e192a95
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_syntax.html
@@ -0,0 +1,45 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Syntax</h1>
+      	
+      		
+      <p>XML Digitale Signaturen basieren auf einer großen Anzahl verschiedener XML und kryptografischer Techniken. Die Syntax zeichnet
+         sich daher durch eine starke Strukturierung sowie eine weit reichende Erweiterbarkeit und Flexibilität aus.
+      </p>
+      		
+      <p>Zunächst einmal werden alle relevanten Signaturdaten (die signierten Ressourcen, verwendete Algorithmen, usw.) in das XML-Dokument
+         eingebettet. Der Empfänger bzw. die empfangende Applikation findet somit alle notwendigen Informationen im XML-Dokument vor
+         die für eine erfolgreiche Verifizierung benötigt werden.
+      </p>
+      		
+      <p>Innerhalb einer XML-Signatur werden wie gesagt stets die verwendeten Algorithmen angegeben. Diese Algorithmen werden mit einem
+         URI identifiziert, unter dem im Normalfall eine Beschreibung des jeweiligen Verfahrens abgelegt ist.
+      </p>
+      		
+      <p>Das folgende Listing zeigt alle vorhandenen Elemente einer XML-Signatur. <strong>?</strong> erlaubt das null- bis einmalige, <strong>+</strong> das mindestens ein- bis mehrmalige und <strong>*</strong> das null- bis mehrmalige Vorkommen als Attribut oder Element. Die vollständige Syntax beschreibt das Schema zu den digitalen
+         Signaturen mit XML.
+      </p>
+      		
+      <div class="code"><pre>&lt;ds:<a href="signatures_syntax_signature.html">Signature</a> ID?&gt;
+  &lt;ds:<a href="signatures_syntax_signedinfo.html">SignedInfo</a>&gt;
+   &lt;ds:<a href="signatures_syntax_signedinfo.html#CanonicalizationMethod">CanonicalizationMethod</a>/&gt;
+   &lt;ds:<a href="signatures_syntax_signedinfo.html#SignatureMethod">SignatureMethod</a>/&gt;
+   (&lt;ds:<a href="signatures_syntax_signedinfo.html#Reference">Reference</a> URI?&gt;
+    (&lt;ds:<a href="signatures_syntax_signedinfo.html#Transforms">Transforms</a>/&gt;)?  
+    &lt;ds:<a href="signatures_syntax_signedinfo.html#DigestMethod">DigestMethod</a>/&gt;
+    &lt;ds:<a href="signatures_syntax_signedinfo.html#DigestValue">DigestValue</a>/&gt;
+   &lt;/ds:<a href="signatures_syntax_signedinfo.html#Reference">Reference</a>&gt;)+
+  &lt;/ds:<a href="signatures_syntax_signedinfo.html">SignedInfo</a>&gt;
+  &lt;ds:<a href="signatures_syntax_signaturevalue.html">SignatureValue</a>/&gt;
+  (&lt;ds:<a href="signatures_syntax_keyinfo.html">KeyInfo</a>/&gt;)?
+  (&lt;ds:<a href="signatures_syntax_object.html">Object</a> ID?/&gt;)*
+&lt;/ds:<a href="signatures_syntax_signature.html">Signature</a>&gt;</pre></div>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_syntax_keyinfo.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_syntax_keyinfo.html
new file mode 100644
index 0000000..2febf55
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_syntax_keyinfo.html
@@ -0,0 +1,38 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Das KeyInfo Element</h1>
+      	
+      		
+      <p>Das optionale und mitunter sehr komplexe <strong>KeyInfo</strong> enthält Informationen zur Verifizierung einer XML-Signatur in Form eines öffentlichen Schlüssels oder eines X.509-Zertifikats,
+         das wiederum den öffentlichen Schlüssel enthält. Im Gegensatz zur restlichen Empfehlung ist dieses Element weit weniger spezifiziert
+         als alle anderen Elemente. Das Element ist optional da der Empfänger der Nachricht den richtigen Schlüssel zur Verifizierung
+         evtl. auch mit Hilfe der verwendeten Applikation oder über den Anwendungskontext ermitteln kann. Damit kann der Sender auch
+         bestimmen, welcher Empfänger seine Schlüsselinformationen erhalten darf oder nicht.
+      </p>
+      		
+      <p>Das <strong>KeyInfo</strong> Element wird standardmäßig nicht mit signiert, kann aber leicht über eine zusätzliche <a href="signatures_syntax_signedinfo.html#Reference">Reference</a> ebenfalls mit in die Signatur einbezogen werden.
+      </p>
+      		
+      <p>Jedes <strong>KeyInfo</strong> Element kann null bis mehrere Kindelemente besitzen, die entweder den verwendeten öffentlichen Schlüssel enthalten oder mit
+         einer Referenz auf diesen verweisen.
+      </p>
+      		
+      <p id="key">Zu den Kindelementen gehören neben einigen anderen <strong>KeyName</strong>, <strong>KeyValue</strong>, <strong>RetrievalMethod</strong> und <strong>X509Data</strong>. <strong>KeyName</strong> dient der Benennung des Schlüssels, wobei in diesem Namen auch Leerzeichen von Bedeutung sind. <strong>KeyValue</strong> enthält einen einzelnen öffentlichen Schlüssel zur Validierung der enthaltenen Signatur. Das Element <strong>X509Data</strong> beinhaltet in seinen Kindelementen den Schlüsselbezeichner oder ein bis mehrere Zertifikate nach X.509 innerhalb der XML-Struktur.
+         X.509 ist ein weit verbreiteter Standard für den Aufbau und die Kodierung von Zertifikaten und Authentifizierungsdiensten.
+      </p>
+      		
+      <p>Die Schlüsselinformationen spielen eine wichtige Rolle bei der <em>XML Key Management Specification (XKMS)</em> und damit beim Schlüsselmanagement, das im XML-Security Plug-In aber nicht behandelt wird. Kurz gesagt hat das Key Management
+         die Aufgabe, Schlüsselbeziehungen zwischen verschiedenen autorisierten Entitäten einzurichten und zu pflegen. XKMS stellt
+         dazu Protokolle bereit, um öffentliche Schlüssel zu verbreiten. Die Key Management Protokolle erfordern ihrerseits einen sicheren
+         Austausch der Schlüsselinformationen zwischen Client und Server. Diese Sicherheit beruht auf XML Encryption und XML Digital
+         Signatures. XKMS deckt damit die Sicherheitsanforderungen Authentifizierung und Vertraulichkeit ab. 
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_syntax_object.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_syntax_object.html
new file mode 100644
index 0000000..8738dd3
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_syntax_object.html
@@ -0,0 +1,39 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Das Object Element</h1>
+      	
+      		
+      <p>Das letzte Element <strong>Object</strong> kann Daten beliebigen Typs enthalten, aber auch XML-Dokumente oder Teile davon und beliebig oft vorkommen. Diese Daten gehören
+         zur Signatur, werden aber außerhalb des Elements <a href="signatures_syntax_signedinfo.html">SignedInfo</a> gespeichert. Binärdaten müssen vor der Verwendung so transformiert werden, dass sie in XML-Dokumenten dargestellt werden
+         können (wiederum Base-64 encoding).
+      </p>
+      		
+      <p>
+         			<strong>Object</strong> besitzt drei optionale Attribute: <em>Id</em>, <em>MimeType</em> und <em>Encoding</em>. <em>Id</em> dient wiederum zur Referenzierung des Object Elements von anderen Stellen innerhalb der digitalen Signatur und ist wiederum
+         vom Typ ID. <em>MimeType</em> vom Typ String bestimmt den Typ der Daten in Object. Dieses Attribut wird beim Erzeugen der digitalen Signatur nicht beachtet,
+         steht aber verarbeitenden Applikationen zur Verfügung. <em>Encoding</em> vom Typ anyURI identifiziert mit dem URI den Kodierungs-Mechanismus zur Verarbeitung der Daten. Derzeit wird nur das Base-64
+         encoding unterstützt.
+      </p>
+      		
+      <p>Das Element Object kann als Kindelemente die Elemente <a href="signatures_syntax_object.html#SignatureProperties">SignatureProperties</a> und <a href="signatures_syntax_object.html#Manifest">Manifest</a> enthalten.
+      </p>
+      		
+      <p id="SignatureProperties">
+         			<strong>SignatureProperties</strong> enthalten beispielsweise weitere Informationen wie die Signaturzeit oder Informationen über die verwendete Hardware.
+      </p>
+      		
+      <p id="Manifest">Ein <strong>Manifest</strong> Element enthält ausschließlich eine Sammlung von Referenzen auf Daten in Form einer Liste von <a href="signatures_syntax_signedinfo.html#Reference">Reference</a> Elementen. Im Unterschied zu den normalen <a href="signatures_syntax_signedinfo.html#Reference">Reference</a> Elementen hat bei einem Manifest die zugehörige Applikation die Kontrolle darüber, was passiert, wenn die Validierung einer
+         oder mehrerer Referenzen fehlschlägt. Normalerweise würde in diesem Fall ja die gesamte Signatur ungültig. Um das zu verhindern
+         wird bei einem Manifest nicht der Inhalt der angegebenen Referenzen validiert, sondern die Struktur des Manifests. Die Validierung
+         der Referenzen steht hierbei also vollkommen unter der Kontrolle der Applikation. Manifeste sind ebenfalls interessant wenn
+         sehr viele Signaturen mit unterschiedlichen Schlüsseln über eine große Anzahl von Dokumenten erstellt werden.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_syntax_signature.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_syntax_signature.html
new file mode 100644
index 0000000..02fdb22
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_syntax_signature.html
@@ -0,0 +1,26 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Das Signature Element</h1>
+      	
+      		
+      <p>Das Wurzelelement einer digitalen Signatur mit XML wird durch das Element <strong>Signature</strong> dargestellt.
+      </p>
+      		
+      <p>
+         			<strong>Signature</strong> besitzt ein optionales Attribut <em>Id</em> vom Typ ID zur Identifikation der Signatur. Dieses Attribut ermöglicht die Identifikation einer bestimmten Signatur, falls
+         ein XML-Dokument mehrere Signaturen enthält. Des Weiteren deklariert das Element den Namensraum (<em>namespace</em>) der Signatur mit dem Attribut <em>xmlns</em>. Das Namensraum Attribut kennzeichnet gleichzeitig auch die Version der XML-Signatur, eine Versionsangabe wie beispielsweise
+         bei den XSL Transformations ist daher nicht notwendig. Derzeit gibt es für den Namensraum einen einzigen Wert: <em>http://www.w3.org/2000/09/xmldsig#</em> der an das Präfix <em>ds</em> gebunden wird. Neuere Versionen der Empfehlung werden einen anderen Namensraum verwenden.
+      </p>
+      		
+      <p>
+         			<strong>Signature</strong> besitzt vier Kindelemente, wovon die beiden Elemente <a href="signatures_syntax_signedinfo.html">SignedInfo</a> und <a href="signatures_syntax_signaturevalue.html">SignatureValue</a> Pflicht sind. Des Weiteren kann ein <a href="signatures_syntax_keyinfo.html">KeyInfo</a> Element angegeben werden sowie beliebig viele <a href="signatures_syntax_object.html">Object</a> Elemente (auch null). Im Minimalfall besteht die XML-Signatur somit nur aus den Elementen <a href="signatures_syntax_signedinfo.html">SignedInfo</a> und <a href="signatures_syntax_signaturevalue.html">SignatureValue</a>.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_syntax_signaturevalue.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_syntax_signaturevalue.html
new file mode 100644
index 0000000..60e44a4
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_syntax_signaturevalue.html
@@ -0,0 +1,26 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Das SignatureValue Element</h1>
+      	
+      		
+      <p>Das Element <strong>SignatureValue</strong> enthält in binärer Form (immer Base-64 encoding) den über das gesamte <a href="signatures_syntax_signedinfo.html">SignedInfo</a> Element berechneten Hashwert der Signatur. Dieser Hashwert wird mit dem in der <a href="signatures_syntax_signedinfo.html#SignatureMethod">SignatureMethod</a> angegebenen Algorithmus, den kanonisierten Daten und dem privaten Schlüssel berechnet. Damit wird nicht die Nachricht selbst,
+         sondern deren - in der Regel viel kürzerer - Hashwert unterschrieben (<em>Hash-Then-Sign Paradigma</em>).
+      </p>
+      		
+      <p>In den unterschriebenen Daten sind somit sämtliche Informationen über die signierten Referenzen und deren Hashwerte enthalten.
+         Damit ist es nicht erforderlich, dass die Daten selbst im Dokument vorliegen. Die Angaben über die verwendeten Algorithmen
+         fließen jedoch mit in die Signaturberechnung ein. Dadurch werden nachträgliche Manipulationen verhindert.
+      </p>
+      		
+      <p>Da alle Referenzen vor dem Signieren zusammengefasst und gemeinsam signiert werden existiert für die gesamte Signatur immer
+         genau ein <strong>SignatureValue</strong> Element.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_syntax_signedinfo.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_syntax_signedinfo.html
new file mode 100644
index 0000000..c37ebc2
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_syntax_signedinfo.html
@@ -0,0 +1,164 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Das SignedInfo Element</h1>
+      	
+      		
+      <p>Das erste und auch komplexeste Element innerhalb von <a href="signatures_syntax_signature.html">Signature</a> ist <strong>SignedInfo</strong> und enthält die verwendeten Algorithmen zur Kanonisierung und Signierung, eine oder mehrere Referenzen auf die signierten
+         Daten, eventuelle Transformationen und die Hashwerte dieser Daten. <strong>SignedInfo</strong> enthält also alle Informationen zu den zu signierenden Ressourcen und ist damit der Teil, über den die digitale Signatur
+         erstellt wird.
+      </p>
+      		
+      <p>Mit dem Signieren der verwendeten Algorithmen erhöht sich die Sicherheit. Ein sicherer Algorithmus kann so nicht gegen einen
+         unsicheren ausgetauscht werden, ohne dass die Signatur ungültig wird.
+      </p>
+      		
+      <p>Weitere Eigenschaften, wie z.B. ein Zeitstempel oder die Seriennummer der verwendeten kryptografischen Hardware, können nur
+         durch ein oder mehrere optionale Kindelemente <a href="signatures_syntax_object.html#SignatureProperties">SignatureProperties</a> in einem <a href="signatures_syntax_object.html">Object</a> Element angegeben werden. Für einen Zeitstempel existiert dazu beispielsweise das Element <em>timestamp</em>, mit dem ein Zeitstempel vor der Erstellung der Signatur in die signierten Daten eingebunden werden kann.
+      </p>
+      		
+      <p>
+         			<strong>SignedInfo</strong> kann ein optionales Attribut <em>Id</em> enthalten mit dem das Element z.B. von anderen Signaturen referenziert werden kann. Kindelemente von <strong>SignedInfo</strong> sind die Pflichtelemente <a href="signatures_syntax_signedinfo.html#CanonicalizationMethod">CanonicalizationMethod</a> und <a href="signatures_syntax_signedinfo.html#SignatureMethod">SignatureMethod</a> sowie ein oder mehrere <a href="signatures_syntax_signedinfo.html#Reference">Reference</a> Elemente.
+      </p>
+      		
+      <h2 id="CanonicalizationMethod">CanonicalizationMethod</h2>
+      		
+      <p>Das leere Pflichtelement <strong>CanonicalizationMethod</strong> enthält ein <em>Algorithm</em> Attribut zur Identifikation des <a href="signatures_canon.html">Kanonisierungs-Algorithmus</a>, der vor der Signaturberechnung auf die Daten in <a href="signatures_syntax_signedinfo.html">SignedInfo</a> angewendet wird. Die möglichen Werte des URI finden sich in der Tabelle bei der <a href="signatures_canon.html">Kanonisierung</a>.
+      </p>
+      		
+      <h2 id="SignatureMethod">SignatureMethod</h2>
+      		
+      <p>
+         			<strong>SignatureMethod</strong> ist ebenfalls ein leeres Pflichtelement mit einem <em>Algorithm</em> Attribut und gibt den zur Signaturgenerierung (und später zur Verifizierung) verwendeten Algorithmus an. Mit diesem Algorithmus
+         wird das kanonische <a href="signatures_syntax_signedinfo.html">SignedInfo</a> Element in den <a href="signatures_syntax_signaturevalue.html">SignatureValue</a> konvertiert. Der URI kann die in der folgenden Tabelle aufgeführten Werte annehmen. Die Verwendung von weiteren Algorithmen
+         ist möglich, aber von der konkreten Implementierung abhängig.
+      </p>
+      		
+      <table cellspacing="0">
+         <thead>
+            <tr>
+               <th>Name</th>
+               <th>URI</th>
+               <th>Implementierung</th>
+            </tr>
+         </thead>
+         <tbody>
+            <tr class="uneven">
+               <td>
+                  					DSA with SHA 1 (DSS)
+                  				
+               </td>
+               <td>http://www.w3.org/2000/09/xmldsig#dsa-sha1</td>
+               <td>erforderlich</td>
+            </tr>
+            <tr class="even">
+               <td>
+                  					HMAC-SHA 1
+                  				
+               </td>
+               <td>http://www.w3.org/2000/09/xmldsig#hmac-sha1</td>
+               <td>erforderlich</td>
+            </tr>
+            <tr class="uneven">
+               <td>
+                  					RSA with SHA 1
+                  				
+               </td>
+               <td>http://www.w3.org/2000/09/xmldsig#rsa-sha1</td>
+               <td>empfohlen</td>
+            </tr>
+         </tbody>
+      </table>
+      		
+      <h2 id="Reference">Reference</h2>
+      		
+      <p>Es folgen mindestens ein oder mehrere <strong>Reference</strong> Elemente, die angeben, welche beliebigen, auch binären, Daten in die Signaturberechnung miteinbezogen werden sollen. Die
+         <strong>Reference</strong> Elemente stellen somit den Kern einer Signatur dar. Mehrere <strong>Reference</strong> Elemente entsprechen einer Sammelsignatur, also dem Signieren von mehreren Objekten mit einer Signatur. Jedes Element steht
+         dabei für einen signierten Inhalt.
+      </p>
+      		
+      <p>XML-Signaturen signieren niemals direkt die Ressourcen, sondern legen zunächst eine Liste von Hashwerten dieser an. Diese
+         Liste wird dann mit einem Signatur-Algorithmus signiert. Damit wird nicht nur die Signatur-Operation beschleunigt, sondern
+         auch ein einfacher Weg angeboten, um mehrere Ressourcen gleichzeitig zu signieren.
+      </p>
+      		
+      <p>Zum <strong>Reference</strong> Element gehören drei optionale Attribute: <em>Id</em>, <em>Type</em> und <em>URI</em>. <em>Id</em> vom Typ ID dient der Identifizierung der Referenz. Das Attribut <em>Type</em> vom Typ anyURI bestimmt mit dem als Attributwert angegebenen URI den Typ der Referenz. Das Attribut bezieht sich nicht auf
+         die referenzierten Daten, sondern auf den Container, der die Daten enthält. Damit kann angezeigt werden ob es sich bei der
+         Referenz um ein <a href="signatures_syntax_object.html">Object</a>, <a href="signatures_syntax_object.html#SignatureProperties">SignatureProperty</a> oder <a href="signatures_syntax_object.html#Manifest">Manifest</a> Element handelt.
+      </p>
+      		
+      <p>Das dritte Attribut <em>URI</em> ist ebenfalls vom Typ anyURI und enthält die Adresse, unter der die zu signierenden Daten verfügbar sind. Die Daten, auf
+         die sich die digitale Signatur bezieht, müssen nicht im <a href="signatures_syntax_signature.html">Signature</a> Element selbst vorhanden sein, sondern können auch über das lokale Dateisystem oder eine Internet-Adresse referenziert werden.
+         Enthält das Attribut also eine Webadresse handelt es sich um eine <a href="signatures_detached.html">detached signature</a>.
+      </p>
+      		
+      <p>Daneben gibt es noch URIs, die auf das aktuelle Dokument verweisen wie z.B. <em>URI=""</em>. Dieser spezielle Uniform Resource Identifier steht für alle XML-Knoten des aktuellen XML-Dokuments, jedoch ohne die möglicherweise
+         vorhandenen Kommentare. Die zur Signatur gehörenden Knoten sind in der Auswahl jedoch enthalten.
+      </p>
+      		
+      <p>Auch das gezielte Auswählen von Teildokumenten (<em>fragment identifier</em>) oder Elementen ist mittels XPointer und XPath möglich. Werden mehrere <strong>Reference</strong> Elemente angegeben darf das <em>URI</em> Attribut nur bei einem ausgelassen werden. In diesem Fall ist die Applikation dafür zuständig, die zu signierenden Daten
+         zu bestimmen.
+      </p>
+      		
+      <p>Reference besitzt drei Kindelemente: <a href="signatures_syntax_signedinfo.html#Transforms">Transforms</a> (optional) sowie die Pflichtelemente <a href="signatures_syntax_signedinfo.html#DigestMethod">DigestMethod</a> und <a href="signatures_syntax_signedinfo.html#DigestValue">DigestValue</a>.
+      </p>
+      		
+      <h2 id="Transforms">Transforms</h2>
+      		
+      <p>Wird das optionale Element <strong>Transforms</strong> angegeben, so durchlaufen die referenzierten Daten zunächst der Reihe nach sämtliche in den <strong>Transform</strong> Kindelementen aufgeführten Transformationen. Der Hashwert wird vom Ergebnis der letzten Transformation berechnet, die Reihenfolge
+         der Transformationen ist also von Bedeutung. In dem Fall wird damit nicht das ursprüngliche, sondern das transformierte Dokument(fragment)
+         signiert. Fehlt das <strong>Transforms</strong> Element wird der Hashwert vom gesamten referenzierten Objekt berechnet.
+      </p>
+      		
+      <p>Jedes <strong>Transforms</strong> Element besteht dazu aus einem <em>Algorithm</em> Attribut mit dem anzuwendenden <a href="signatures_transform.html">Transformations-Algorithmus</a>.
+      </p>
+      		
+      <h2 id="DigestMethod">DigestMethod</h2>
+      		
+      <p>Das leere Pflichtelement <strong>DigestMethod</strong> enthält im <em>Algorithm</em> Attribut ausschließlich einen URI zur Identifikation des Message Digest Algorithmus. Der URI kann die in der folgenden Tabelle
+         aufgeführten Werte annehmen.
+      </p>
+      		
+      <table cellspacing="0">
+         <thead>
+            <tr>
+               <th>Name</th>
+               <th>URI</th>
+               <th>Implementierung</th>
+            </tr>
+         </thead>
+         <tbody>
+            <tr class="uneven">
+               <td>
+                  					MD5
+                  				
+               </td>
+               <td>http://www.w3.org/2000/09/xmldsig#md5</td>
+               <td>nicht empfohlen</td>
+            </tr>
+            <tr class="even">
+               <td>
+                  					SHA 1
+                  				
+               </td>
+               <td>http://www.w3.org/2000/09/xmldsig#sha1</td>
+               <td>erforderlich</td>
+            </tr>
+         </tbody>
+      </table>
+      		
+      <h2 id="DigestValue">DigestValue</h2>
+      		
+      <p>Mit dem in <a href="signatures_syntax_signedinfo.html#DigestMethod">DigestMethod</a> angegebenen Algorithmus wird der <strong>DigestValue</strong>, ein eindeutiger Hashwert des signierten Objekts, berechnet und per Base-64 encoding in diesem Element gespeichert. Der Hashwert,
+         der auch als digitaler Fingerabdruck bezeichnet werden kann, ist meist kürzer als die signierten Daten und kann somit im folgenden
+         Schritt schneller signiert werden. Es ist praktisch unmöglich, aus einem gegebenen Hashwert die ursprüngliche Nachricht zu
+         ermitteln. Außerdem sollte es unmöglich sein, dass zwei beliebige Nachrichten denselben Hashwert ergeben (Kollision und Geburtstagsparadoxon).
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_transform.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_transform.html
new file mode 100644
index 0000000..4944f61
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_transform.html
@@ -0,0 +1,87 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Transformation</h1>
+      	
+      		
+      <p>Mittels Transformationen können die durch das URI Attribut adressierten Daten vor der Hashwertberechnung umgewandelt und gezielt
+         Dokumentfragmente zum Signieren ausgewählt werden.
+      </p>
+      		
+      <p>
+         			<strong>Base64</strong> wandelt Base-64 Zeichenketten zurück in die entsprechenden Oktette. Base-64 ist ein von der IETF spezifiziertes Kodierungsverfahren
+         für Binärdaten und ermöglicht die Einbettung beliebiger Daten in das XML-Dokument. Der Name Base-64 kommt daher, dass zur
+         Kodierung von Daten aller Art nur die 64 Zeichen <em>a-z, A-Z, 0-9,+,/</em> verwendet werden. Binäre Zeichen könnten sonst nicht in XML dargestellt werden. Die so eingebetteten Binärdaten werden im
+         Base-64 encoding dadurch allerdings um 33% größer als die Ursprungsdaten im Binärformat.
+      </p>
+      		
+      <p>Die <strong>Enveloped Signature Transform</strong> verhindert, dass Signaturen sich selbst signieren, indem vor dem Signieren alle zur Signatur gehörenden Elemente durch die
+         Transformation entfernt werden.
+      </p>
+      		
+      <p>Das <strong>XPath Filtering</strong> verarbeitet XPath-Knoten. Mit diesen Transformationen können Knoten aus einer XML-Knotenmenge ausgewählt werden, die beim
+         Signieren berücksichtigt werden sollen. Der Rest des Dokuments wird nicht in die Signatur miteinbezogen. Wird XPath als Transformation
+         einer XML-Signatur verwendet, wird es als Filtermechanismus angewandt und nicht als Auswahlmechanismus. Der XPath Filter 2.0
+         besitzt die gleichen Funktionen wie die ursprünglichen XPath Transformationen, arbeitet aber sehr viel effizienter und besitzt
+         eine einfachere Syntax.
+      </p>
+      		
+      <p>Eine <strong>XSLT Transform</strong> transformiert die zu signierenden Daten mit den Extensible Stylesheet Language Transformations (XSLT). Mit XSLT können die
+         XML-Daten beispielsweise vor dem Signieren in die HyperText Markup Language (HTML) umgewandelt werden.
+      </p>
+      		
+      <p>Möglich sind die in der folgenden Tabelle aufgeführten Transformationen. Zusätzlich zu den hier aufgeführten Algorithmen gehören
+         auch die bereits bei der <a href="signatures_canon.html">Kanonisierung</a> genannten Algorithmen zu den Transformationen.
+      </p>
+      		
+      <table cellspacing="0">
+         <thead>
+            <tr>
+               <th>Name</th>
+               <th>URI</th>
+               <th>Implementierung</th>
+            </tr>
+         </thead>
+         <tbody>
+            <tr class="uneven">
+               <td>
+                  					Base64
+                  				
+               </td>
+               <td>http://www.w3.org/2000/09/xmldsig#base64</td>
+               <td>erforderlich</td>
+            </tr>
+            <tr class="even">
+               <td>
+                  					Enveloped Signature Transform
+                  				
+               </td>
+               <td>http://www.w3.org/2000/09/xmldsig#enveloped-signature</td>
+               <td>erforderlich</td>
+            </tr>
+            <tr class="uneven">
+               <td>
+                  					XPath Filtering
+                  				
+               </td>
+               <td>http://www.w3.org/TR/1999/REC-xpath-19991116</td>
+               <td>empfohlen</td>
+            </tr>
+            <tr class="even">
+               <td>
+                  					XSLT Transform
+                  				
+               </td>
+               <td>http://www.w3.org/TR/1999/REC-xslt-19991116</td>
+               <td>optional</td>
+            </tr>
+         </tbody>
+      </table>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_types.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_types.html
new file mode 100644
index 0000000..4d72713
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_types.html
@@ -0,0 +1,38 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Signaturvarianten</h1>
+      	
+      		
+      <p>Wie bereits erwähnt können mit XML erstellte Signaturen mittels Referenzen verschiedene Typen von Objekten signieren. Die
+         Signaturen lassen sich daher in drei verschiedenen Varianten erzeugen: <a href="signatures_enveloped.html">enveloped signature</a> (eingebettet), <a href="signatures_enveloping.html">enveloping signature</a> (einbettend) und <a href="signatures_detached.html">detached signature</a> (getrennt). Der wesentliche Unterschied zwischen diesen drei Varianten ist, an welcher Stelle im XML-Dokument die Signatur
+         dargestellt wird. Signaturen vom Typ <em>enveloped</em> und <em>enveloping</em> werden im gleichen XML-Dokument wie die zu signierenden Daten abgelegt, signiertes Dokument und Signatur weisen daher eine
+         enge Bindung auf. Bei <em>detached</em> Signaturen liegt die Signatur normalerweise in einer separaten Datei, signiertes Dokument und Signatur haben damit eine eher
+         lose Bindung.
+      </p>
+      		
+      <p>Es gibt keine generelle Empfehlung, wann welche Signaturvariante zu verwenden ist. Letztendlich hängt dies von der Applikation
+         und weiteren Anforderungen ab. Grob orientieren kann man sich an den folgenden Empfehlungen: Eine <a href="signatures_enveloped.html">enveloped signature</a> ist ideal geeignet zum Signieren von einfachen XML-Dokumenten. Die <a href="signatures_enveloping.html">enveloping signature</a> ist besser geeignet, wenn zu den signierten Daten weitere Informationen wie z.B. ein Zeitstempel hinzugefügt werden sollen
+         (und natürlich ebenfalls mit signiert werden). Die <a href="signatures_detached.html">detached signature</a> schließlich ist ideal, wenn die zu signierende Ressource nicht modifiziert werden kann oder soll.
+      </p>
+      		
+      <p>Weitergehende Möglichkeiten als die bekannten herkömmlichen Signaturverfahren bieten XML-Signaturen beim Signieren von Teilbäumen,
+         Dokumentfragmenten und mehreren Dokumenten gleichzeitig. Der entscheidende Vorteil von digitalen Signaturen mit XML - das
+         Signieren von Dokumentfragmenten - kann natürlich nur ausgespielt werden, wenn das Dokument selbst in XML-Syntax vorliegt.
+      </p>
+      		
+      <p>XML-Digitale Signaturen ermöglichen es daher, ein oder mehrere Knoten eines XML-Baums auszuwählen und nur diese zu signieren.
+         Vorteilhaft ist das beispielsweise, wenn ein Anwender nur ausgewählte Teile eines Dokuments digital signieren will. Ein weiterer
+         Anwender kann bestimmte Dokumentteile anschließend trotzdem verändern, ohne dass die vorherige Signatur ungültig wird. Anschließend
+         kann dieser Anwender ein weiteres Dokumentfragment (oder auch das gesamte XML-Dokument) signieren. Gleichzeitig bedeutet das
+         aber, dass nicht signierte Dokumentfragmente wie gezeigt verändert werden können, ohne dass dies von der Signatur bemerkt
+         wird. Nur signierte Bestandteile eines Dokuments können als sicher betrachtet werden.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_verify.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_verify.html
new file mode 100644
index 0000000..8b872dd
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/signatures_verify.html
@@ -0,0 +1,65 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Verifizierung</h1>
+      	
+      		
+      <p>Bei der Verifizierung einer Signatur (<em>core validation</em>) müssen alle beiden Schritte erfolgreich verlaufen. Zunächst erfolgt die Überprüfung der Ressourcen (<em>reference validation</em>), anschließend die Verifizierung der Signatur (<em>signature validation</em>). Die in den URI Attributen der <a href="signatures_syntax_signedinfo.html#Reference">Reference</a> Elemente angegeben signierten Daten müssen dafür zugänglich sein.
+      </p>
+      		
+      <p>
+         			<strong>Reference Validation (Verifikation der Reference-Elemente)</strong>
+         		
+      </p>
+      		
+      <ol>
+         			
+         <li>Zunächst wird die Kanonisierung des <a href="signatures_syntax_signedinfo.html">SignedInfo</a> Elements mit der angegebenen <a href="signatures_syntax_signedinfo.html#CanonicalizationMethod">CanonicalizationMethod</a> durchgeführt.
+         </li>
+         			
+         <li>Für jedes Reference Element in SignedInfo werden</li>
+         			
+         				
+         <li>die signierten Daten ermittelt und die möglicherweise bei der Generierung der Signatur angewandten Transformationen durchgeführt.</li>
+         				
+         <li>Von den transformierten Daten wird mit dem in der <a href="signatures_syntax_signaturemethod.html#DigestMethod">DigestMethod</a> angegebenen Algorithmus der Hashwert berechnet.
+         </li>
+         				
+         <li>Anschließend wird der berechnete Hashwert mit dem im <a href="signatures_syntax_signaturemethod.html#DigestValue">DigestValue</a> übermittelten Hashwert verglichen. Jeglicher Unterschied lässt die gesamte Verifizierung scheitern (auch wenn nur ein Hashwert
+            von vielen eine Abweichung aufweist).
+         </li>
+         			
+         		
+      </ol>
+      		
+      <p>
+         			<strong>Signature Validation (Verifikation der Signatur)</strong>
+         		
+      </p>
+      		
+      <ol>
+         			
+         <li>Der öffentliche Schlüssel wird aus dem <a href="signatures_syntax_keyinfo.html">KeyInfo</a> Element oder einer externen Quelle ermittelt.
+         </li>
+         			
+         <li>Das <a href="signatures_syntax_signedinfo.html">SignedInfo</a> Element wird kanonisiert. Mit den Schlüsselinformationen und dem kanonisierten <a href="signatures_syntax_signedinfo.html">SignedInfo</a> Element wird der <a href="signatures_syntax_signaturevalue.html">SignatureValue</a> berechnet und mit dem übermittelten Wert verglichen.
+         </li>
+         		
+      </ol>
+      		
+      <p>Ein möglicherweise durch eine Referenz ebenfalls signiertes <a href="signatures_syntax_keyinfo.html">KeyInfo</a> Element wird auf die gleiche Art verifiziert.
+      </p>
+      		
+      <p>Ist bei der Verifizierung auch nur eine der angegebenen Referenzen ungültig oder stimmen zwei Werte nicht überein, schreibt
+         die Empfehlung des W3C vor, dass die gesamte Signatur ungültig wird. Die Signatur wird ebenfalls ungültig, wenn ein URI nicht
+         aufgelöst werden kann, die Daten somit nicht erreichbar sind. Alle Schritte der Verifizierung müssen damit für eine gültige
+         Signatur erfolgreich abgeschlossen werden.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/xml-security.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/xml-security.html
new file mode 100644
index 0000000..07932d5
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/basics/xml-security.html
@@ -0,0 +1,126 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>XML-Security Basics</h1>
+      	
+      		
+      <p>Die Empfehlung zur Extensible Markup Language aus dem Jahr 1998 beschreibt in ihrer ersten Version und allen weiteren Überarbeitungen
+         zehn vom World Wide Web Consortium (W3C) definierte Entwurfsziele (<em>XML in 10 Points</em>) für die Metasprache XML. Sicherheitsmechanismen wie digitale Signaturen oder Verschlüsselung finden hierin jedoch keinerlei
+         Beachtung.
+      </p>
+      		
+      <p>Unter dem Stichwort XML-Sicherheit (<em>XML Security</em>) werden daher seit einigen Jahren Mechanismen zum digitalen Signieren sowie zum Verschlüsseln (mit) der Extensible Markup
+         Language zusammengefasst. Die XML-Sicherheit stellt dabei einen deutlichen Paradigmenwechsel von auf der <em>Abstract Syntax Notation One</em>  (ASN.1) basierten Binärstandards hin zu vollständig portablen und textbasierten XML-Lösungen dar. Im Gegensatz zur XML-Sicherheit
+         ist ASN.1 eine Notationsart für die Beschreibung von abstrakten Datentypen und Werten. Interessant sind XML-Signaturen und
+         XML-Verschlüsselung neben <em>normalen</em> XML-Anwendungen auch für <em>Security Assertion Markup Language</em> (SAML) und die umfangreichen <em>WS-Security</em> (<em>Web Service Security</em>) Empfehlungen.
+      </p>
+      		
+      <p>Die W3C Empfehlungen zur digitalen Signatur und Verschlüsselung mit XML führen dabei keinerlei neuen Sicherheitsmechanismen
+         ein. Sie legen vielmehr fest wie XML-Dokumente oder XML-Dokumentfragmente digital signiert bzw. verschlüsselt werden und wie
+         diese Sicherheitselemente in das XML-Dokument eingebettet werden. Die Empfehlungen des W3C bringen so bekannte und vor allem
+         bewährte kryptografische Algorithmen und Techniken mit der Extensible Markup Language zusammen. XML-Digitale Signaturen und
+         XML-Verschlüsselung nutzen somit die Vorteile, die das Internet und XML bieten und bilden gängige Sicherungstechniken in die
+         XML-Syntax ab. Die Sicherheit und Vertrauenswürdigkeit selbst werden auch nicht durch die Empfehlung vorgeschrieben, sondern
+         vollständig der Implementierung überlassen.
+      </p>
+      		
+      <p>Bezüglich der erlaubten Algorithmen machen die W3C-Empfehlungen dabei nur einige wenige Vorschläge. Meist werden aus jeder
+         Algorithmenfamilie (beispielsweise symmetrische und asymmetrische Algorithmen) zumindest ein oder zwei Algorithmen angegeben,
+         die für die W3C Konformität implementiert werden müssen. Was wie beim annähernd kompromittierten <em>SHA-1</em> Algorithmus zu Problemen führen kann (ein Algorithmus der implementiert werden muss!). Außerdem folgen meist noch einige
+         optional zu implementierende Algorithmen. Diese Vorgaben gewährleisten eine gewisse Interoperabilität und gleichzeitig eine
+         leichte Erweiterbarkeit. Weitere Algorithmen können daher von einer konkreten Implementierung ergänzt werden, worunter allerdings
+         die Interoperabilität leiden kann.
+      </p>
+      		
+      <p>Vor allem die Festlegung bestimmter Algorithmen zeigt ein Problem auf: die W3C-Empfehlungen benötigen bekanntermaßen meist
+         längere Zeit bis eine <em>Candidate Recommendation</em> daraus entsteht und sind dann auch für längere Zeit gültig. Im Gegensatz dazu kann aber ein lange als sicher geglaubter Algorithmus
+         sehr schnell als unsicher eingestuft werden.
+      </p>
+      		
+      <h2 id="Feingranular">Feingranulare Sicherheit</h2>
+      		
+      <p>Der größte Vorteil der XML-Sicherheit überhaupt gegenüber herkömmlichen Sicherungsmethoden liegt vor allem in der Möglichkeit,
+         feingranular zu sichern. Mit Hilfe dieser Granularität lassen sich sowohl ganze XML-Dokumente als auch ausgewählte Fragmente
+         (beispielsweise einzelne Elemente oder auch Elementinhalt) digital signieren und verschlüsseln:
+      </p>
+      		
+      <ul>
+         			
+         <li>Erhaltung der Dokumentstruktur: Nicht sicherheitsrelevante Teile bleiben weiterhin im Klartext erhalten und können wie bisher
+            weiterverarbeitet werden, geschützte Dokumentbereiche bleiben weiterhin geschützt. Damit können nur die relevanten Informationen
+            gesichert werden, die gesicherten Bestandteile können gleichzeitig nahtlos in XML integriert werden.
+         </li>
+         			
+         <li>Verwendung mehrerer Zertifikate: Verschiedene Dokumentteile können mit unterschiedlichen Schlüsseln/ Zertifikaten signiert
+            oder verschlüsselt werden. Somit ist eine feine Abstufung möglich, welche Kommunikationspartner welche Bereiche lesen oder
+            bearbeiten dürfen und welcher Kommunikationspartner für welchen Bereich die Verantwortung übernimmt.
+         </li>
+         		
+      </ul>
+      		
+      <h2 id="End-to-End-Security">Informationsgebundene Sicherheit</h2>
+      		
+      <p>Sowohl bei den XML-Signaturen als auch bei der XML-Verschlüsselung spricht man von einer so genannten Ende-zu-Ende-Sicherheit
+         (<em>End-to-End-Security</em>) oder auch informationsgebundenen Sicherheit. Das bedeutet, dass die Daten auch bei der Weiterverarbeitung verschlüsselt
+         und signiert bleiben können und die Sicherheit nicht von einem bestimmten Dienst abhängt (bekanntestes Beispiel ist hier neben
+         der <em>XML Security</em> auch <em>PKCS#7</em>). Somit kann die Signatur zusammen mit den verschlüsselten Daten auf dem Server, in der Datenbank oder anderswo gespeichert
+         werden.
+      </p>
+      		
+      <p>Das Gegenteil zur informationsgebundenen Sicherheit ist die so genannte Punkt-zu-Punkt-Sicherheit (<em>Hop-to-Hop-Security</em>) oder auch transportgebundene Sicherheit. Dabei ist die Sicherheit nur von einer Entität zur benachbarten Entität gewährleistet.
+         Hierbei wird auch von dienstgebundener Sicherheit gesprochen (bekanntestes Beispiel ist hier <em>https</em> bzw. <em>SSL</em>). Am Endpunkt angekommen gibt es somit keine Sicherheit mehr, die Daten werden im Klartext gespeichert (Sicherheit des Übertragungskanals
+         aber keine Sicherheit der Daten).
+      </p>
+      		
+      <p>Vorteil der informationsgebundenen Sicherheit ist neben dem Speichern der gesicherten Daten auch, dass die Daten während des
+         Transports durch berechtigte Beteiligte verarbeitet, ergänzt und modifiziert werden können. Die informationsgebundene Sicherheit
+         ist gleichzeitig unabhängig von Anwendung und Protokoll. Bei der dienstgebundenen Sicherheit kann das nur der Empfänger am
+         Endpunkt. Außerdem gilt bei der dienstgebundenen Sicherheit das Prinzip <em>ganz oder gar nicht</em>, d.h. entweder wird alles signiert bzw. verschlüsselt oder überhaupt nichts. Das verursacht spätestens bei den Web Services
+         Probleme, da hier bestimmte Bereiche des XML-Dokuments Transportinformationen enthalten können auf die auch während der Übertragung
+         zugegriffen werden müssen. Außerdem kann eine SOAP Nachricht (die ja nichts anderes ist als ein XML-Dokument) von mehreren
+         Web Services erstellt/ ergänzt werden. Nachteile der informationsgebundenen Sicherheit sind allerdings die höhere Komplexität
+         und der höhere Aufwand beim Verarbeiten der Nachrichten. Dieser höhere Aufwand entsteht durch das Sichern der Anwendungsschicht,
+         die Nachrichten werden im Gegensatz zu SSL auf der Transportschicht auch inhaltlich modifiziert.
+      </p>
+      		
+      <h2 id="Reihenfolge">Signierte Verschlüsselung vs. verschlüsselte Signatur</h2>
+      		
+      <p>Die übliche Frage, zuerst signieren oder verschlüsseln, stellt sich natürlich auch bei der XML-Sicherheit. Bewährt hat sich
+         die Reihenfolge, die Nachricht zuerst zu signieren und anschließend zu verschlüsseln. Zum einen liegt dies daran, dass der
+         Signierende einen verschlüsselten Text unter Umständen nicht lesen kann und damit überhaupt nicht weiß, was er signiert. Dadurch
+         können rechtliche Probleme aufgeworfen werden. Eine Signatur über den Klartext bestätigt daher, dass der Signierende die Nachricht
+         verfasst hat oder zumindest Kenntnis davon hat. Außerdem lässt sich eine digitale Signatur in einem verschlüsselten Dokument
+         nicht entfernen und durch eine andere ersetzen. Gleichzeitig besteht damit die Möglichkeit, dass der Signierende so lange
+         anonym bleibt, bis die Nachricht vom Empfänger entschlüsselt wird. Ein weiterer Punkt ist, dass eine Signatur über ein verschlüsseltes
+         Dokument zwangsläufig ungültig wird, sobald dieses entschlüsselt wird. Auf der anderen Seite ist es bei der Reihenfolge zuerst
+         Signatur dann Verschlüsselung durchaus möglich, dass nicht der Signierende die Verschlüsselung durchgeführt hat.
+      </p>
+      		
+      <p>Bei der anderen Vorgehensweise, zuerst Verschlüsselung dann Signatur, steht fest, dass der Signierende den Geheimtext erzeugt
+         hat oder ihn zumindest bewusst durch seine Signatur bestätigt. Es ist jedoch nicht sicher, ob der Signierende den Klartext
+         überhaupt kennt.
+      </p>
+      		
+      <h2 id="Signaturarten">Signaturarten</h2>
+      		
+      <p>Wie bei den herkömmlichen digitalen Signaturen unterscheidet man auch bei den XML Digitalen Signaturen drei verschiedene Arten:
+         einfache, fortgeschrittene und qualifizierte Signaturen. Nur die qualifizierte Signatur ist dabei der eigenhändigen Unterschrift
+         gleichgestellt. Diese gilt dabei im Gegensatz zu den beiden anderen Arten im Streitfall automatisch (bis zum Beweis des Gegenteils)
+         als echt.
+      </p>
+      		
+      <p>Qualifizierte Signaturen verwenden ein von einem Trustcenter ausgestelltes Zertifikat, das in der Regel auf einer Smartcard
+         gespeichert wird. Fortgeschrittene Signaturen können dagegen auch mit Softwaremitteln erzeugt werden; der Erzeuger muss nur
+         gewährleisten, dass ausschließlich er die Signatur generieren kann (z.B. durch ein Passwort). Einfache Signaturen schließlich
+         entsprechen der Unterschrift, z.B. unter einem beliebigen digitalen Dokument wie einer Email. Sie gewährleisten folglich nicht
+         einmal die Integrität des Dokuments (die beiden anderen Signaturarten stellen das durch den signierten Hashwert sicher). Außerdem
+         kann eine solche digitale Unterschrift natürlich von jedem erstellt werden.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/book.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/book.html
new file mode 100644
index 0000000..6e87dcb
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/book.html
@@ -0,0 +1,40 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="format.css">
+   </head>
+   <body>
+
+      <h1>XML Security Tools User Guide</h1>
+
+
+      <p>Das <strong>XML-Security Plug-In</strong> ist das Open Source eLearning Plug-in zur XML-Sicherheit für Eclipse ab Version 3.0. Mit dem XML-Security Plug-In können
+         Sie beliebige XML-Dokumente sichern und <em>XML Canonicalization</em>, <em>XML Digitale Signaturen</em> sowie <em>XML Verschlüsselung</em> in beliebigen XML-Dokumenten ausprobieren und anwenden. Verschiedene Cheat Sheets erleichtern Einsteigern die ersten Schritte
+         mit dem Plug-in und der XML-Sicherheit. Die umfangreiche Online-Hilfe des Plug-ins enthält ausführliche Informationen zu den
+         W3C Empfehlungen und Hintergründe zu den digitalen Signaturen und der Verschlüsselung mit der Extensible Markup Language sowie
+         Erläuterungen zur Verwendung des XML-Security Plug-Ins.
+      </p>
+
+      <p>Im Vordergrund des XML-Security Plug-Ins stehen die praktische Anwendung und das Experimentieren mit den vielfältigen Möglichkeiten
+         der XML-Sicherheit: beliebige XML-Dokumente können kanonisiert, digital signiert, verifiziert sowie ver- und entschlüsselt
+         werden. Die theoretischen Kenntnisse und Hintergründe zu den umfangreichen W3C Empfehlungen stehen in der ausführlichen Online-Hilfe
+         und diesen Tutorials verständlich zum Nachlesen bereit.
+      </p>
+
+      <p>Für das XML-Security Plug-In sind Kenntnisse in <em>XML</em> erforderlich, <em>XPath Expressions</em> und <em>Namespaces</em> sind hilfreich aber nicht zwingend notwendig. Empfehlenswert sind außerdem Kenntnisse in <em>XML Schema (xsd)</em>, <em>Document Type Definition (DTD)</em> und <em>XSL Transformations (XSLT)</em>. Kenntnisse in der <em>Kryptografie</em> (Digitale Signaturen, Verschlüsselung, Hashfunktionen) sind hilfreich aber nicht unbedingt erforderlich. Für das XML-Security
+         Plug-In sollten grundlegende <em>Eclipse</em> Kenntnisse vorhanden sein.
+      </p>
+
+      <p>Die Homepage zum <strong>XML-Security Plug-In</strong> und zur <strong>XML-Sicherheit</strong> mit Benutzerforen, Support, Tipps, Update Site und vielem mehr ist verfügbar unter <a href="http://www.xml-sicherheit.de/">http://www.xml-sicherheit.de</a>. Der Source Code des Plug-ins findet sich auf der SourceForge Projektseite unter <a href="http://sourceforge.net/projects/xml-security">http://sourceforge.net/projects/xml-security</a>.
+      </p>
+
+      <p>Das <strong>XML-Security Plug-In</strong> steht unter der <em>Eclipse Public License Version 1.0</em>, einsehbar unter <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>. Die für das XML-Security Plug-in notwendige Apache XML Security API (<em>Santuario</em>) im Plug-in <strong>org.apache.xml.security</strong> sowie Apache Xalan im Plug-in <strong>org.apache.xalan</strong> stehen unter der <em>Apache Software License Version 2.0</em>. Diese ist einsehbar unter <a href="http://www.apache.org/licenses/LICENSE-2.0.html">http://www.apache.org/licenses/LICENSE-2.0.html</a>.
+      </p>
+
+      <p>Fehler im Tutorial? Unverständliche oder unvollständige Erklärung? Mehr Informationen gewünscht? Den Entwickler und Autor
+         Dominik Schadow erreichen Sie per Email über <a href="mailto:info@xml-sicherheit.de">info@xml-sicherheit.de</a> oder über die zahlreichen Kontaktmöglichkeiten auf der Homepage.
+      </p>
+
+
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/build.properties b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/build.properties
new file mode 100644
index 0000000..9c3b183
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/build.properties
@@ -0,0 +1,24 @@
+###############################################################################
+# Copyright (c) 2008 Dominik Schadow - http://www.xml-sicherheit.de
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+#     Dominik Schadow - initial API and implementation
+###############################################################################
+bin.includes = META-INF/,\
+               basics/,\
+               images/,\
+               plugin/,\
+               *.css,\
+               *.xml,\
+               book.html,\
+               glossary.html,\
+               literature.html,\
+               overview.html,\
+               resources.html,\
+               plugin.properties,\
+               about.html,\
+               notices.html
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/contexts.xml b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/contexts.xml
new file mode 100644
index 0000000..f0f8b50
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/contexts.xml
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<contexts>

+	<context id="signselection">

+		<description>Select a resource to sign (the complete document or a fragment of it), the signature type (enveloping, enveloped or detached) and a key option (create a new one or use an existing one). The Basic Security Profile option increases interoperability of Web Service Security.</description>

+		<topic href="plugin/sign.html" label="Digital Signature Wizard"/>

+		<topic href="plugin/sign_page_resource.html" label="Resource and Signature Type"/>

+	</context>

+	<context id="signopenkey">

+		<description>Provide all required information for the key to use in the current signing process.</description>

+		<topic href="plugin/sign.html" label="Digital Signature Wizard"/>

+		<topic href="plugin/sign_page_open_key.html" label="Open Key"/>

+	</context>

+	<context id="signcreatekey">

+		<description>Provide all required information to create a new key in an existing keystore. This key will be used in the current signing process and is stored in the selected keystore.</description>

+		<topic href="plugin/sign.html" label="Digital Signature Wizard"/>

+		<topic href="plugin/sign_page_create_key.html" label="Create Key"/>

+	</context>

+	<context id="signcreatekeystore">

+		<description>Provide all required information to create a new keystore together with a new key. This key will be used in the current signing process and is stored in the current project folder as [Keystore Name].jks.</description>

+		<topic href="plugin/sign.html" label="Digital Signature Wizard"/>

+		<topic href="plugin/sign_page_create_keystore.html" label="Create Keystore and Key"/>

+	</context>

+	<context id="signalgorithms">

+		<description>Select a canonicalization and a transformation algorithm, a message digest and a signature algorithm. The signature properties are optional. A new property can be added by clicking on the + button. The signature id is optional but makes it much easier to identify the signature. The characters &lt;, &gt;, &amp;, &quot;, &apos; and blanks are not allowed as id (signature id and signature property id), the maximum length is 20 characters. Selecting the Start Encryption Wizard afterwards checkbox opens the Encryption Wizard after a successful digital signature operation.</description>

+		<topic href="plugin/sign.html" label="Digital Signature Wizard"/>

+		<topic href="plugin/sign_page_algorithms.html" label="Algorithms and Signature Properties"/>

+	</context>

+	<context id="encryptresource">

+		<description>Select the resource to encrypt (the complete document or a fragment of it), the encryption type (enveloping or detached) and a key option (create a new one or use an existing one). The Basic Security Profile option increases interoperability of Web Service Security.</description>

+		<topic href="plugin/encrypt.html" label="Encryption Wizard"/>

+		<topic href="plugin/encrypt_page_resource.html" label="Resource and Encryption Type"/>

+	</context>

+    <context id="encryptopenkey">

+        <description>Provide all required keystore information for the public key to use in the current encryption process.</description>

+        <topic href="plugin/encrypt.html" label="Encryption Wizard"/>

+        <topic href="plugin/encrypt_page_open_key.html" label="Open an existing Key"/>

+    </context>

+    <context id="encryptcreatekey">

+        <description>Provide all required information to create a new public/private key pair in an existing keystore. The public key will be used in the current encryption process and is stored in the selected keystore.</description>

+        <topic href="plugin/encrypt.html" label="Encryption Wizard"/>

+        <topic href="plugin/encrypt_page_create_key.html" label="Create a new Key in an existing Keystore"/>

+    </context>

+    <context id="encryptcreatekeystore">

+        <description>Provide all required information to create a new keystore with a new public/private key pair. The public key will be used in the current encryption process and is stored in the current project folder as [Keystore Name].jks.</description>

+        <topic href="plugin/encrypt.html" label="Encryption Wizard"/>

+        <topic href="plugin/encrypt_page_create_keystore.html" label="Create a new Key and a new Keystore"/>

+    </context>

+	<context id="encryptalgorithms">

+		<description>Select the encryption algorithms and provide a file to store the key in. The encryption id is optional but makes it much easier to identify the encryption. The characters &lt;, &gt;, &amp;, &quot;, &apos; and blanks are not allowed as id, the maximum length is 20 characters. Selecting the Start Digital Signature Wizard afterwards checkbox opens the Digital Signature Wizard after a successful encryption operation.</description>

+		<topic href="plugin/encrypt.html" label="Encryption Wizard"/>

+		<topic href="plugin/encrypt_page_algorithms.html" label="Algorithms"/>

+	</context>

+	<context id="xpath">

+		<description>This dialog displays all elements in the current XML document as unique XPath expressions. Select the element you want to use.</description>

+		<topic href="plugin/sign.html" label="Digital Signature Wizard"/>

+		<topic href="plugin/encrypt.html" label="Encryption Wizard"/>

+	</context>

+	<context id="decryptdecrypt">

+		<description>Select the KeyStore used for encrypting this document (-fragment) and enter the password for the store. Specify the key name and enter the corresponding password. If you didn&apos;t enter an encryption id during the encryption process you can only select to decrypt the first encrypted data found in the selected document. Otherwise select the desired encryption id and click Finish to start the decryption process.</description>

+		<topic href="plugin/decrypt.html" label="Decryption Wizard"/>

+		<topic href="plugin/decrypt_page_decryption.html" label="Decryption"/>

+	</context>

+	<context id="prefssec">

+		<description>Configure general preferences for the XML-Security Plug-In and Canonicalization.</description>

+		<topic href="plugin/canonicalize.html" label="Canonicalization"/>

+		<topic href="plugin/prefs.html" label="XML-Security Preferences"/>

+	</context>

+	<context id="prefssig">

+		<description>Configure the preferences for Quick Signature and Quick Verification.</description>

+		<topic href="plugin/quick.html" label="Quick Signature"/>

+		<topic href="plugin/prefs_sign.html" label="Quick Signature Preferences"/>

+	</context>

+	<context id="prefsenc">

+		<description>Configure the preferences for Quick Encryption and Quick Decryption.</description>

+		<topic href="plugin/quick.html" label="Quick Encryption"/>

+		<topic href="plugin/prefs_encrypt.html" label="Quick Encryption Preferences"/>

+	</context>

+    <context id="signatureview">

+        <description>Shows all XML Digital Signatures (valid, invalid and unkown) of the selected XML document. Click Refresh for a new scan of the XML document. Select one verification result and click Properties for detailed information about this digital signature.</description>

+        <topic href="plugin/verify.html" label="XML Digital Signature View"/>

+    </context>

+</contexts>

diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/format.css b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/format.css
new file mode 100644
index 0000000..bba2b71
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/format.css
@@ -0,0 +1,113 @@
+body {

+	background-color: #fff;

+	color: #000;

+	font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;

+}

+

+h1 {

+	font-size: 1.5em;

+	font-style: normal;

+	color: #333;

+} 		

+

+h2 {

+	font-size: 1.3em;

+	font-style: normal;

+	color: #666;

+}		

+

+h3 {

+	font-size: 1.1em;

+	font-style: normal;

+	color: #666;

+}

+

+div {

+	font-size: 0.8em;

+	text-decoration: none;

+}

+

+p, td, ul, ol {

+	font-size: 1em;

+	text-decoration: none;

+}

+

+img {

+	border: 0;

+	vertical-align: bottom;

+}

+

+strong {

+	font-weight: bold;

+}

+

+em {

+	font-style: italic;

+}

+

+table {

+	border-color: none;

+	width: 99%;

+	margin-left: 0.5%;

+}

+

+th {

+	font-size: 1em;

+	font-weight: bold;

+	color: #695d54;

+	text-decoration: none;

+	background-color: #ccc;

+	text-align: left;

+}

+

+td {

+	font-size: 1.0em;

+}

+

+tr.even {

+	font-size: 1.0em;

+	background-color: #fff;

+	vertical-align: top;

+}

+

+tr.uneven {

+	font-size: 1.0em;

+	background-color: #eee;

+	vertical-align: top;

+}

+

+div.code {

+	background-color: #fff;

+	border-left-width: 8px;

+	border-left-color: #ccc;

+	border-left-style: solid;

+	padding-left: 15px;

+	margin-left: 5px;

+	font-family: "Courier New", Courier, monospace;

+	font-size: 1.1em;

+}

+		 		 

+a:link, a:visited, a:hover, a:active {

+	font-size: 1em;

+	text-decoration: none;

+	color: #00f;

+}

+a:hover {

+	text-decoration: underline;

+}	 		   

+

+a.c:link, a.c:visited, a.c:hover, a.c:active {

+	font-family: "Courier New", Courier, monospace;

+	font-size: 0.9em;

+	text-decoration: none;

+	color: #00f;

+}

+a.c:hover {

+	text-decoration: underline;

+}

+

+.resource {

+  background-color: #ccc;

+  padding: 3pt;

+}

+

diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/glossary.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/glossary.html
new file mode 100644
index 0000000..b14447d
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/glossary.html
@@ -0,0 +1,224 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="format.css">
+   </head>
+   <body>
+      	
+      <h1>Glossar</h1>
+      	
+      		
+      <table cellspacing="0">
+         <thead>
+            <tr>
+               <th>Akronym</th>
+               <th>Beschreibung</th>
+            </tr>
+         </thead>
+         <tbody>
+            <tr class="uneven">
+               <td><strong>AES</strong></td>
+               <td><em>Advanced Encryption Standard</em><br>Blockchiffre mit variabler Schlüssellänge von 128, 192 oder 256 Bit. 2001 vom NIST zum DES Nachfolger bestimmt
+               </td>
+            </tr>
+            <tr class="even">
+               <td><strong>ASN.1</strong></td>
+               <td><em>Abstract Syntax Notation One</em><br>Notationsart für die Beschreibung von abstrakten Datentypen und Werten
+               </td>
+            </tr>
+            <tr class="uneven">
+               <td><strong>BSP</strong></td>
+               <td><em>Basic Security Profile</em><br>Herstellerunabhängige Empfehlung mit dem Ziel maximaler Interoperabilität und einfachem Datenaustausch
+               </td>
+            </tr>
+            <tr class="even">
+               <td><strong>CBC</strong></td>
+               <td><em>Cipher Block Chaining</em><br>Symmetrische Blockchiffre - der folgende Block wird mit dem vorherigen verknüpft, erster Block beliebig
+               </td>
+            </tr>
+            <tr class="uneven">
+               <td><strong>CEK</strong></td>
+               <td><em>Content Encryption Key</em><br>Verschlüsselt die Nutzdaten einer Kommunikation - aus Geschwindigkeitsgründen meist symmetrische Schlüssel
+               </td>
+            </tr>
+            <tr class="even">
+               <td><strong>CFB</strong></td>
+               <td><em>Cipher Feedback</em><br>Symmetrische Blockchiffre - Pseudozufallsgenerator zur Erzeugung einer Schlüsselfolge
+               </td>
+            </tr>
+            <tr class="uneven">
+               <td><strong>CSP</strong></td>
+               <td><em>Cryptographic Service Provider</em><br>Stellt kryptografische Funktionalität bereit
+               </td>
+            </tr>
+            <tr class="even">
+               <td><strong>DES</strong></td>
+               <td><em>Data Encryption Standard</em><br>Mittlerweile als unsicher (zu geringe Schlüssellänge) betrachteter symmetrischer Algorithmus
+               </td>
+            </tr>
+            <tr class="uneven">
+               <td><strong>DES-EDE</strong></td>
+               <td><em>Data Encryption Standard-Encryption Decryption Encryption</em><br>Verbesserter DES Algorithmus durch längeren Schlüssel (auch Triple DES genannt)
+               </td>
+            </tr>
+            <tr class="even">
+               <td><strong>DH</strong></td>
+               <td><em>Diffie-Hellman</em><br>1976 als erstes Public-Key-Verfahren vorgestellt, basiert auf dem ElGamal Algorithmus
+               </td>
+            </tr>
+            <tr class="uneven">
+               <td><strong>DSA</strong></td>
+               <td><em>Digital Signature Algorithm</em><br>Reiner Signaturalgorithmus vom NIST und der NSA 1991 entwickelt
+               </td>
+            </tr>
+            <tr class="even">
+               <td><strong>DSS</strong></td>
+               <td><em>Digital Signature Standard</em><br>Spezifiziert den Digital Signature Algorithm (DSA)
+               </td>
+            </tr>
+            <tr class="uneven">
+               <td><strong>DTD</strong></td>
+               <td><em>Document Type Definition</em><br>Formale Sprache (nicht in XML-Syntax) zur Festlegung der Struktur eines XML-Dokuments
+               </td>
+            </tr>
+            <tr class="even">
+               <td><strong>ECB</strong></td>
+               <td><em>Electronic Code Book</em><br>Symmetrische Blockchiffre - jeder Block Text wird separat verschlüsselt, gleicher Text mit gleichem Schlüssel gibt gleiche
+                  Chiffre
+               </td>
+            </tr>
+            <tr class="uneven">
+               <td><strong>IDEA</strong></td>
+               <td><em>International Data Encryption Algorithm</em><br>1990 veröffentlichter, patentierter, symmetrischer Blockverschlüsselungsalgorithmus
+               </td>
+            </tr>
+            <tr class="even">
+               <td><strong>IETF</strong></td>
+               <td><em>Internet Engineering Task Force</em><br>Internationale Vereinigung zur Erarbeitung von Standardisierungsvorschlägen für das Internet
+               </td>
+            </tr>
+            <tr class="uneven">
+               <td><strong>KEK</strong></td>
+               <td><em>Key Encryption Key</em><br>Verschlüsselt (symmetrisch und asymmetrisch) nur den Schlüssel (CEK) und keine Nutzdaten
+               </td>
+            </tr>
+            <tr class="even">
+               <td><strong>MD2-MD5</strong></td>
+               <td><em>Message Digest</em><br>Von Ron Rivest entwickelte Hashfunktionen - aktuell MD5, sehr weit verbreitet (Schwächen bekannt)
+               </td>
+            </tr>
+            <tr class="uneven">
+               <td><strong>MIME</strong></td>
+               <td><em>Multipurpose Internet Mail Extensions</em><br>Kodierungsstandard zur Festlegung der Struktur und des Aufbaus von Emails und anderen Internetnachrichten
+               </td>
+            </tr>
+            <tr class="even">
+               <td><strong>NIST</strong></td>
+               <td><em>National Institute of Standards and Technology</em><br>US Behörde für technologische Standardisierungsprozesse
+               </td>
+            </tr>
+            <tr class="uneven">
+               <td><strong>OASIS</strong></td>
+               <td><em>Organisation for the Advancement of Structured Information Standards</em><br>Internationales Standardisierungsgremium zur Weiterentwicklung von E-Business- und Web Service Standards
+               </td>
+            </tr>
+            <tr class="even">
+               <td><strong>OCSP</strong></td>
+               <td><em>Online Certificate Status Protocol</em><br>Internetprotokoll mit dem Clients den Status von X.509 Zertifikaten abfragen können
+               </td>
+            </tr>
+            <tr class="uneven">
+               <td><strong>OFB</strong></td>
+               <td><em>Output Feedback</em><br>Symmetrische Blockchiffre - Pseudozufallsgenerator zur Erzeugung einer Schlüsselfolge
+               </td>
+            </tr>
+            <tr class="even">
+               <td><strong>PBE</strong></td>
+               <td><em>Password-based Encryption</em><br>Der Schlüssel wird aus einem Kennwort generiert
+               </td>
+            </tr>
+            <tr class="uneven">
+               <td><strong>PCBC</strong></td>
+               <td><em>Propagating Cipher Block Chaining</em><br>Symmetrische Blockchiffre ähnlich CBC - der vorige Klartextblock und der vorige Chiffretextblock werden mit dem aktuellen
+                  Klartextblock XOR-verknüpft
+               </td>
+            </tr>
+            <tr class="even">
+               <td><strong>PKI</strong></td>
+               <td><em>Public Key Infrastructure</em><br>Infrastruktur zur Verteilung öffentlicher Schlüssel
+               </td>
+            </tr>
+            <tr class="uneven">
+               <td><strong>RC2-RC6</strong></td>
+               <td><em>Rons Cipher</em><br>Verschlüsselungsalgorithmus mit variabler Schlüssellänge, erste Version 1989 von Ron Rivest - aktuell RC6, Vorversionen als
+                  unsicher betrachtet (bzw. gebrochen)
+               </td>
+            </tr>
+            <tr class="even">
+               <td><strong>RSA</strong></td>
+               <td><em>Rivest, Shamir, Adleman</em><br>1977 von Rivest, Shamir und Adleman vorgestellter Algorithmus - bekannt vor allem durch die Verwendung in PGP zur asymmetrischen
+                  Verschlüsselung
+               </td>
+            </tr>
+            <tr class="uneven">
+               <td><strong>SAML</strong></td>
+               <td><em>Security Assertion Markup Language</em><br>XML-basierte Spezifikation zur Definition von sicherheitsrelevanten Informationen zur Authentifizierung, Autorisierung und
+                  Anwender-Attributen sowie Berechtigungs-Schemata
+               </td>
+            </tr>
+            <tr class="even">
+               <td><strong>SHA</strong></td>
+               <td><em>Secure Hash Algorithm</em><br>Speziell zum Signieren entwickelter Hashalgorithmus mit einem 160 Bit langen Hashwert für DSS
+               </td>
+            </tr>
+            <tr class="uneven">
+               <td><strong>SOAP</strong></td>
+               <td><em>ursprünglich: Simple Object Access Protocol</em><br>Protokoll zum Übermittlung von XML-Nachrichten, SOAP ist seit Version 1.2 kein Akronym mehr
+               </td>
+            </tr>
+            <tr class="even">
+               <td><strong>URI</strong></td>
+               <td><em>Uniform Resource Identifier</em><br>Zeichenfolge zur Identifizierung einer abstrakten oder physikalischen Ressource
+               </td>
+            </tr>
+            <tr class="uneven">
+               <td><strong>W3C</strong></td>
+               <td><em>World Wide Web Consortium</em><br>Gremium zur Standardisierung von Techniken rund um das World Wide Web
+               </td>
+            </tr>
+            <tr class="even">
+               <td><strong>WSS</strong></td>
+               <td><em>Web Service Security (auch WS-Security)</em><br>Umfangreiche Empfehlungen rund um die Sicherheit von Web Services
+               </td>
+            </tr>
+            <tr class="uneven">
+               <td><strong>XAdES</strong></td>
+               <td><em>XML Advanced Electronic Signatures</em><br>Ergänzung von Cisco mit deren Hilfe die Nicht-Abstreitbarkeit für XML-Signaturen umgesetzt werden kann
+               </td>
+            </tr>
+            <tr class="even">
+               <td><strong>XKMS</strong></td>
+               <td><em>XML Key Management Specification</em><br>PKI Funktionen basierend auf XML als Beschreibungssprache für den Nachrichtenaustausch der Teilnehmer
+               </td>
+            </tr>
+            <tr class="uneven">
+               <td><strong>X-KISS</strong></td>
+               <td><em>XML Key Information Service Specification</em><br>Spezifikation zur Suche und Validierung von öffentlichen Schlüsseln
+               </td>
+            </tr>
+            <tr class="even">
+               <td><strong>X-KRSS</strong></td>
+               <td><em>XML Key Registration Service Specification</em><br>Spezifikation zur Erstellung, Registrierung und dem Widerruf von Schlüsseln
+               </td>
+            </tr>
+            <tr class="uneven">
+               <td><strong>XML</strong></td>
+               <td><em>Extensible Markup Language</em><br>Erweiterbare Metasprache des W3C zur Dokumentenauszeichnung in maschinen- und menschenlesbarer Form
+               </td>
+            </tr>
+         </tbody>
+      </table>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/contextmenu.png b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/contextmenu.png
new file mode 100644
index 0000000..a165516
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/contextmenu.png
Binary files differ
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/dec-1.jpg b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/dec-1.jpg
new file mode 100644
index 0000000..834c5ed
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/dec-1.jpg
Binary files differ
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/dsig-1.png b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/dsig-1.png
new file mode 100644
index 0000000..7c6856e
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/dsig-1.png
Binary files differ
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/dsig-2a.png b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/dsig-2a.png
new file mode 100644
index 0000000..d41b2da
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/dsig-2a.png
Binary files differ
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/dsig-2b.png b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/dsig-2b.png
new file mode 100644
index 0000000..0ee03d0
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/dsig-2b.png
Binary files differ
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/dsig-2c.png b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/dsig-2c.png
new file mode 100644
index 0000000..a8edde6
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/dsig-2c.png
Binary files differ
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/dsig-3.png b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/dsig-3.png
new file mode 100644
index 0000000..59af605
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/dsig-3.png
Binary files differ
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/dsig-xpath.png b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/dsig-xpath.png
new file mode 100644
index 0000000..e71bb60
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/dsig-xpath.png
Binary files differ
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/enc-1.jpg b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/enc-1.jpg
new file mode 100644
index 0000000..bada6e7
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/enc-1.jpg
Binary files differ
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/enc-2.jpg b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/enc-2.jpg
new file mode 100644
index 0000000..6d1a6e0
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/enc-2.jpg
Binary files differ
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/enc-xpath.jpg b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/enc-xpath.jpg
new file mode 100644
index 0000000..83344a8
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/enc-xpath.jpg
Binary files differ
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/encryption_detached.png b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/encryption_detached.png
new file mode 100644
index 0000000..3b1e30d
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/encryption_detached.png
Binary files differ
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/encryption_enveloping.png b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/encryption_enveloping.png
new file mode 100644
index 0000000..bafab3d
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/encryption_enveloping.png
Binary files differ
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/prefs_dsig.png b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/prefs_dsig.png
new file mode 100644
index 0000000..c36238c
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/prefs_dsig.png
Binary files differ
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/prefs_enc.png b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/prefs_enc.png
new file mode 100644
index 0000000..63ed55c
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/prefs_enc.png
Binary files differ
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/prefs_general.png b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/prefs_general.png
new file mode 100644
index 0000000..ba87714
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/prefs_general.png
Binary files differ
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/signatures_detached.png b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/signatures_detached.png
new file mode 100644
index 0000000..128ea76
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/signatures_detached.png
Binary files differ
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/signatures_enveloped.png b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/signatures_enveloped.png
new file mode 100644
index 0000000..c61d04f
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/signatures_enveloped.png
Binary files differ
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/signatures_enveloping.png b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/signatures_enveloping.png
new file mode 100644
index 0000000..1d29229
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/signatures_enveloping.png
Binary files differ
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/valid_signature.png b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/valid_signature.png
new file mode 100644
index 0000000..a2beb7d
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/valid_signature.png
Binary files differ
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/view_verification.png b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/view_verification.png
new file mode 100644
index 0000000..35af888
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/images/view_verification.png
Binary files differ
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/literature.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/literature.html
new file mode 100644
index 0000000..3c9bacd
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/literature.html
@@ -0,0 +1,236 @@
+<html>
+<head>
+  <title>Literatur</title>
+  <meta http-equiv="content-type" content="text/html; charset=iso-8859-15" />
+  <link rel="stylesheet" type="text/css" href="format.css" />

+<style type="text/css">

+  /*<![CDATA[*/

+    table {

+        width: 98%;

+        border: 0pt;

+    }

+  /*]]>*/

+</style>

+</head>

+

+<body>

+  <h1>Literatur</h1>

+

+  <p>Im Bereich der <a href="#cryptography">Kryptografie</a> und der kryptografischen Grundlagen

+  gibt es unzählige sehr empfehlenswerte Bücher. Und längst nicht alle setzen hier mathematische

+  Expertenkenntnisse voraus. Genauso sieht es bei <a href="#xml">XML</a> und natürlich auch bei

+  <a href="#eclipse">Eclipse</a> aus. Hier hängt die Empfehlung für ein konkretes Buch von den

+  Vorkenntnissen ab.</p>

+

+  <p>Die Auswahl im Bereich der <a href="#xml-security">XML-Sicherheit</a> ist dagegen sehr

+  übersichtlich. Hier gibt es ganze zwei Bücher. Wobei leider beide nicht mehr ganz aktuell sind

+  und teilweise noch auf den Working Drafts der entsprechenden W3C Empfehlungen basieren.</p>

+

+  <h2><a name="eclipse" id="eclipse"></a>Eclipse</h2>

+

+  <table summary="Eclipse Buchempfehlungen">

+    <tr height="100">

+      <td><strong>Eclipse IDE kurz &amp; gut</strong><br />

+      Ed Burnette<br />

+      O'Reilly, 2006<br />

+      ISBN 978-3-89721-518-4<br />

+      <a href=

+      "http://www.amazon.de/exec/obidos/redirect?link_code=as2&path=ASIN/3897215187&tag=dominikswelt&camp=1638&creative=6742"

+      target="_blank">Mehr Infos bei amazon.de</a></td>

+    </tr>

+

+    <tr height="100">

+      <td><strong>Einstieg in Eclipse 3.3</strong><br />

+      Thomas Künneth<br />

+      Galileo Press, 2007<br />

+      ISBN 978-3-89842-792-0<br />

+      <a href=

+      "http://www.amazon.de/exec/obidos/redirect?link_code=as2&path=ASIN/3898427927&tag=dominikswelt&camp=1638&creative=6742"

+      target="_blank">Mehr Infos bei amazon.de</a></td>

+    </tr>

+  </table>

+

+  <h2><a name="cryptography" id="cryptography"></a>Kryptografie</h2>

+

+  <table summary="Kryptografie Buchempfehlungen">

+    <tr height="100">

+      <td><strong>Angewandte Kryptographie</strong><br />

+      Wolfgang Ertel<br />

+      Hanser Fachbuchverlag, 2007<br />

+      ISBN 978-3-446-41195-1<br />

+      <a href=

+      "http://www.amazon.de/gp/product/344641195X?ie=UTF8&tag=dominikswelt&linkCode=as2&camp=1638&creative=6742&creativeASIN=344641195X"

+      target="_blank">Mehr Infos bei amazon.de</a></td>

+    </tr>

+

+    <tr height="100">

+      <td><strong>Elektronische Signatur</strong><br />

+      Stephan Hochmann<br />

+      BoD GmbH, 2001<br />

+      ISBN 3-8311-2396-9<br />

+      <a href=

+      "http://www.amazon.de/exec/obidos/redirect?link_code=as2&path=ASIN/3831123969&tag=dominikswelt&camp=1638&creative=6742"

+      target="_blank">Mehr Infos bei amazon.de</a></td>

+    </tr>

+

+    <tr height="100">

+      <td><strong>Einführung in die Kryptographie</strong><br />

+      Johannes Buchmann<br />

+      Springer, 2003<br />

+      ISBN 3-540-40508-9<br />

+      <a href=

+      "http://www.amazon.de/exec/obidos/redirect?link_code=as2&path=ASIN/3540405089&tag=dominikswelt&camp=1638&creative=6742"

+      target="_blank">Mehr Infos bei amazon.de</a></td>

+    </tr>

+

+    <tr height="100">

+      <td><strong>Elliptische Kurven in der Kryptographie</strong><br />

+      Annette Werner<br />

+      Springer, 2002<br />

+      ISBN 3-540-42518-7<br />

+      <a href=

+      "http://www.amazon.de/exec/obidos/redirect?link_code=as2&path=ASIN/3540425187&tag=dominikswelt&camp=1638&creative=6742"

+      target="_blank">Mehr Infos bei amazon.de</a></td>

+    </tr>

+

+    <tr height="100">

+      <td><strong>Geheime Botschaften</strong><br />

+      Simon Singh<br />

+      Dtv, 2001<br />

+      ISBN 3-423-33071-6<br />

+      <a href=

+      "http://www.amazon.de/exec/obidos/redirect?link_code=as2&path=ASIN/3423330716&tag=dominikswelt&camp=1638&creative=6742"

+      target="_blank">Mehr Infos bei amazon.de</a></td>

+    </tr>

+

+    <tr height="100">

+      <td><strong>Kryptographie</strong><br />

+      Dietmar Wätjen<br />

+      Spektrum Akademischer Verlag, 2003<br />

+      ISBN 3-8274-1431-8<br />

+      <a href=

+      "http://www.amazon.de/exec/obidos/redirect?link_code=as2&path=ASIN/3827414318&tag=dominikswelt&camp=1638&creative=6742"

+      target="_blank">Mehr Infos bei amazon.de</a></td>

+    </tr>

+

+    <tr height="100">

+      <td><strong>Kryptografie. Verfahren, Protokolle, Infrastrukturen</strong><br />

+      Klaus Schmeh<br />

+      Dpunkt Verlag, 2007<br />

+      ISBN 978-3-89864-435-8<br />

+      <a href=

+      "http://www.amazon.de/exec/obidos/redirect?link_code=as2&path=ASIN/3898644359&tag=dominikswelt&camp=1638&creative=6742"

+      target="_blank">Mehr Infos bei amazon.de</a></td>

+    </tr>

+

+    <tr height="100">

+      <td><strong>Moderne Verfahren der Kryptographie</strong><br />

+      Albrecht Beutelspacher, Jörg Schwenk, Klaus-Dieter Wolfenstetter<br />

+      Vieweg, 2006<br />

+      ISBN 3-8348-0083-X<br />

+      <a href=

+      "http://www.amazon.de/exec/obidos/redirect?link_code=as2&path=ASIN/383480083X&tag=dominikswelt&camp=1638&creative=6742"

+      target="_blank">Mehr Infos bei amazon.de</a></td>

+    </tr>

+

+    <tr height="100">

+      <td><strong>Practical Cryptography</strong><br />

+      Niels Ferguson, Bruce Schneier<br />

+      John Wiley &amp; Sons, 2003<br />

+      ISBN 0-471-22357-3<br />

+      <a href=

+      "http://www.amazon.de/exec/obidos/redirect?link_code=as2&path=ASIN/0471223573&tag=dominikswelt&camp=1638&creative=6742"

+      target="_blank">Mehr Infos bei amazon.de</a></td>

+    </tr>

+

+    <tr height="100">

+      <td><strong>Verschlüsselungsalgorithmen</strong><br />

+      Gilbert Brands<br />

+      Vieweg, 2002<br />

+      ISBN 3-528-03182-4<br />

+      <a href=

+      "http://www.amazon.de/exec/obidos/redirect?link_code=as2&path=ASIN/3528031824&tag=dominikswelt&camp=1638&creative=6742"

+      target="_blank">Mehr Infos bei amazon.de</a></td>

+    </tr>

+  </table>

+

+  <h2><a name="xml" id="xml"></a>XML</h2>

+

+  <table summary="XML Buchempfehlungen">

+

+    <tr height="100">

+      <td><strong>Einstieg in XML. Aktuelle Standards: XML Schema, XSL, XLink</strong><br />

+      Helmut Vonhoegen<br />

+      Galileo Press, 2007<br />

+      ISBN 978-3-8362-1074-4<br />

+      <a href=

+      "http://www.amazon.de/exec/obidos/redirect?link_code=as2&path=ASIN/3836210746&tag=dominikswelt&camp=1638&creative=6742"

+      target="_blank">Mehr Infos bei amazon.de</a></td>

+    </tr>

+

+    <tr height="100">

+      <td><strong>XML</strong><br />

+      Helmut Erlenkötter<br />

+      Rowohlt Tb., 2003<br />

+      ISBN 3-499-61209-7<br />

+      <a href=

+      "http://www.amazon.de/exec/obidos/redirect?link_code=as2&path=ASIN/3499612097&tag=dominikswelt&camp=1638&creative=6742"

+      target="_blank">Mehr Infos bei amazon.de</a></td>

+    </tr>

+

+    <tr height="100">

+      <td><strong>XML in a Nutshell</strong><br />

+      Elliotte Rusty Harold, W. Scott Means<br />

+      O'Reilly, 2005<br />

+      ISBN 3-89721-339-7<br />

+      <a href=

+      "http://www.amazon.de/exec/obidos/redirect?link_code=as2&path=ASIN/3897213397&tag=dominikswelt&camp=1638&creative=6742"

+      target="_blank">Mehr Infos bei amazon.de</a></td>

+    </tr>

+

+    <tr height="100">

+      <td><strong>XML kurz und gut</strong><br />

+      Simon Saint Laurent, Michael Fitzgerald<br />

+      O'Reilly, 2006<br />

+      ISBN 3-89721-516-0<br />

+      <a href=

+      "http://www.amazon.de/exec/obidos/redirect?link_code=as2&path=ASIN/3897215160&tag=dominikswelt&camp=1638&creative=6742"

+      target="_blank">Mehr Infos bei amazon.de</a></td>

+    </tr>

+

+    <tr height="100">

+      <td><strong>XML Standards</strong><br />

+      Tobias Hauser<br />

+      Entwickler.Press, 2006<br />

+      ISBN 3-935042-91-8<br />

+      <a href=

+      "http://www.amazon.de/exec/obidos/redirect?link_code=as2&path=ASIN/3935042914&tag=dominikswelt&camp=1638&creative=6742"

+      target="_blank">Mehr Infos bei amazon.de</a></td>

+    </tr>

+  </table>

+

+  <h2><a name="xml-security" id="xml-security"></a>XML-Sicherheit</h2>

+

+  <table summary="XML-Sicherheit Buchempfehlungen">

+    <tr height="100">

+      <td><strong>Secure XML - The New Syntax for Signatures and Encryption</strong><br />

+      Donald Eastlake, Kitty Niles<br />

+      Addison-Wesley, 2003<br />

+      ISBN 0-201-75605-6<br />

+      <a href=

+      "http://www.amazon.de/exec/obidos/redirect?link_code=as2&path=ASIN/0201756056&tag=dominikswelt&camp=1638&creative=6742"

+      target="_blank">Mehr Infos bei amazon.de</a></td>

+    </tr>

+

+    <tr height="100">

+      <td><strong>XML Security</strong><br />

+      Blake Dournaee<br />

+      RSA Press, 2002<br />

+      ISBN 0-07-219399-9<br />

+      <a href=

+      "http://www.amazon.de/exec/obidos/redirect?link_code=as2&path=ASIN/0072193999&tag=dominikswelt&camp=1638&creative=6742"

+      target="_blank">Mehr Infos bei amazon.de</a></td>

+    </tr>

+  </table> 

+</body>

+</html>

diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/notices.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/notices.html
new file mode 100644
index 0000000..969b5a5
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/notices.html
@@ -0,0 +1,16 @@
+<html>
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="format.css">
+   </head>
+   <body>
+
+      <h1>Notices</h1>
+
+
+      <p>The material in this guide is Copyright (c) Dominik Schadow, 2008.</p>
+
+      <p><a href="about.html">Terms and conditions regarding the use of this guide.</a></p>
+
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/overview.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/overview.html
new file mode 100644
index 0000000..15c233b
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/overview.html
@@ -0,0 +1,21 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="format.css">
+   </head>
+   <body>
+      	
+      <h1>Übersicht</h1>
+      	
+      		
+      <p>Der XML Security Guide besteht aus den beiden Teilen <a href="basics/xml-security.html">XML-Security Basics</a> und <a href="plugin/plugin.html">XML-Security Plug-In</a>. Im theoretischen ersten Teil finden Sie ausführliche und verständliche Informationen über die Empfehlungen des World Wide
+         Web Consortiums (W3C) zu den digitalen Signaturen (<em>XML Digital Signatures</em>) und der Verschlüsselung (<em>XML Encryption</em>) mit XML, zum Basic Security Profile (BSP) und anderen verwandten Themen wie der Kanonisierung (<em>XML Canonicalization</em>). Kenntnisse in diesen Themen sind Vorraussetzung um effektiv mit dem XML-Security Plug-In arbeiten zu können. Im praktischen
+         zweiten Teil des Guides erhalten Sie umfassende und verständliche Anleitungen zur Verwendung des XML-Security Plug-Ins.
+      </p>
+      		
+      <p>Weiterführende Informationen und Grundlagen zu XML und der Kryptografie finden Sie unter <a href="literature.html">Literatur</a> und <a href="resources.html">Ressourcen</a>. Im <a href="glossary.html">Glossar</a> finden Sie wichtige Abkürzungen aus dem Bereich der XML-Sicherheit und eine kurze Beschreibung.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin.properties b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin.properties
new file mode 100644
index 0000000..2ff7c05
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin.properties
@@ -0,0 +1,12 @@
+###############################################################################
+# Copyright (c) 2008 Dominik Schadow - http://www.xml-sicherheit.de
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+#     Dominik Schadow - initial API and implementation
+###############################################################################
+pluginName=XML Security Tools Doc (Incubating)
+providerName=Eclipse.org
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin.xml b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin.xml
new file mode 100644
index 0000000..f3754cd
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<?eclipse version="3.2"?>

+<plugin>

+   <!-- Help Topics -->

+   <extension

+         point="org.eclipse.help.toc">

+      <toc

+            file="toc.xml"

+            primary="true">

+      </toc>      

+   </extension>

+   <!-- Context Help -->

+   <extension

+         id="org.eclipse.wst.xml.security.doc.context"

+         name="org.eclipse.wst.xml.security.doc.context"

+         point="org.eclipse.help.contexts">

+      <contexts file="contexts.xml"/>

+   </extension>

+</plugin>

diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/canonicalize.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/canonicalize.html
new file mode 100644
index 0000000..0425e63
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/canonicalize.html
@@ -0,0 +1,26 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Canonicalization</h1>
+      	
+      		
+      <p>Mit den Menüeinträgen <strong>Canonicalization without comments</strong> und <strong>Canonicalization with comments</strong> aus dem Kontextmenü können Sie das gewählte XML-Dokument mit der <em>Exclusive XML Canonicalization</em> oder <em>Inclusive XML Canonicalization</em> kanonisieren. Ob die <em>exclusive</em> oder die <em>inclusive</em> Variante verwendet wird und ob das XML-Dokument direkt aktualisiert wird oder ein weiteres Editorfenster mit der kanonisierten
+         Version erstellt wird hängt von den Einstellungen in den <a href="prefs.html">Preferences</a> ab. Beim Aufruf über eine View wie den Navigator und der Zieldokument Einstellung <em>New Document</em> wird das kanonisierte XML-Dokument als <em>[Dateiname]_canon.xml</em> im aktuellen Projekt gespeichert.
+      </p>
+      		
+      <p>Wenn Sie <strong>Canonicalization without comments</strong> auswählen werden die Kommentare im XML-Dokument entfernt und durch Leerzeilen ersetzt, bei <strong>Canonicalization with comments</strong> bleiben die Kommentare erhalten. In jedem Fall wird der Befehl sofort ausgeführt (ohne Assistent) und das XML-Dokument entweder
+         im Editor aktualisiert oder im Dateisystem gespeichert.
+      </p>
+      		
+      <p>Die Kanonisierung ist an sich ein sehr einfacher Vorgang. Mit der Möglichkeit diese separat auszuführen sollen Ihnen vor allem
+         die Vorgänge bei der Signierung verdeutlicht werden, was sich hinter dem Stichwort <em>Kanonisierung</em> verbirgt und welche Veränderungen dabei in einem XML-Dokument durchgeführt werden. Die Kanonisierung ist einer der wichtigsten
+         Vorgänge die unter anderem bei der Signierung vor den Blicken des Benutzers verborgen ablaufen.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/cheatsheets.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/cheatsheets.html
new file mode 100644
index 0000000..c2fae1a
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/cheatsheets.html
@@ -0,0 +1,30 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Cheat Sheets</h1>
+      	
+      		
+      <p>Die <strong>Cheat Sheets</strong> sind deutsch- bzw. englischsprachige Tutorials (die angezeigte Sprache hängt von den Ländereinstellungen des Betriebssystems
+         ab) speziell für Anfänger und sollen Ihnen den Einstieg in das XML-Security Plug-In und die XML-Sicherheit erleichtern. Mit
+         den fünf verfügbaren Anleitungen werden Sie Schritt für Schritt durch die Generierung einer <a href="sign.html">digitalen Signatur</a>, die <a href="verify.html">Verifizierung</a> sowie <a href="encrypt.html">Ver-</a> und <a href="decrypt.html">Entschlüsselung</a> und die Verwendung der <a href="quick.html">Quick Functions</a> geführt.
+      </p>
+      		
+      <p>Anzeigen können Sie die Cheat Sheets über den Menüpunkt <em>Cheat Sheets...</em> im Menü <em>Help</em>. Im sich öffnenden Fenster finden Sie eine Rubrik <em>XML Security</em> mit den fünf enthaltenen Cheat Sheets. Nach der Auswahl eines Tutorials und dem Klick auf <strong>OK</strong> wird die gewünschte Anleitung angezeigt und Sie können diese schrittweise durcharbeiten. Über die Hilfe-Icons neben jedem
+         Eintrag gelangen Sie zu weiterführenden Informationen in der Online-Hilfe.
+      </p>
+      		
+      <p>Einige Abschnitte besitzen Icons zum Starten einer Aktion. Beispielsweise können Sie sich in den Signatur- und Verschlüsselungs-Cheat
+         Sheets ein Projekt und ein XML-Dokument zum Ausprobieren generieren lassen. Außerdem können Sie direkt von aus dem <em>Quick Functions</em> Cheat Sheet in die Preferences Ihres Workspace wechseln.
+      </p>
+      		
+      <p>Selbstverständlich können Sie einzelne Schritte überspringen sofern Sie die darin enthaltenen Aktionen bereits durchgeführt
+         haben (wenn Sie z.B. bereits ein XML-Dokument zum Sichern erstellt haben).
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/decrypt.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/decrypt.html
new file mode 100644
index 0000000..13d003e
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/decrypt.html
@@ -0,0 +1,21 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Decryption Wizard</h1>
+      	
+      		
+      <p>Mit dem <em>Decryption Wizard</em> können Sie auf komfortable und einfache Weise Ihre verschlüsselten XML-Dokumente wieder entschlüsseln und den Klartext wiederherstellen.
+         Hierfür benötigen Sie die bei der <a href="encrypt.html">Verschlüsselung</a> gespeicherte Datei mit dem Schlüssel und den für diese Datei gewählten Verschlüsselungsalgorithmus.
+      </p>
+      		
+      <p>Der <em>Decryption Wizard</em> wird über den Eintrag <strong>New Decryption...</strong> im Kontextmenü aufgerufen. Er besteht aus einer einzigen Seite <a href="decrypt_page_decryption.html">Decryption</a>. Über das Hilfe-Icon links unten auf jeder Seite erhalten Sie eine kontextabhängige Kurzhilfe und können weitergehende Informationen
+         abrufen.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/decrypt_page_decryption.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/decrypt_page_decryption.html
new file mode 100644
index 0000000..d5f57c2
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/decrypt_page_decryption.html
@@ -0,0 +1,34 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Decryption</h1>
+      	
+      		
+      <p>Auf der ersten und einzigen Seite des Assistenten müssen Sie die bei der Verschlüsselung verwendete Schlüsseldatei angeben,
+         den verwendeten Algorithmus aus der Drop-Down-Box auswählen und eine Encryption ID auswählen.
+      </p>
+      		
+      <div align="center"><img src="../images/dec-1.jpg" alt="Decryption" width="275" height="261"><p><em>Decryption</em></p>
+      </div>
+      		
+      <p>Geben Sie in dem Textfeld die bei der Verschlüsselung für dieses XML-Dokument verwendete Schlüsseldatei an. Über den Button
+         <strong>Select...</strong> können Sie diese einfach auswählen. Anschließend bestimmen Sie mit Hilfe der Drop-Down-Box den dabei verwendeten Algorithmus.
+      </p>
+      		
+      <p>In der <em>Encryption ID</em> Drop-Down-Box wählen Sie die Verschlüsselung aus die Sie wieder entschlüsseln möchten (und die zum angegebenen Schlüssel
+         passt). Die <em>Encryption ID</em> entspricht dabei der ID die Sie beim Verschlüsseln angegeben haben. Haben Sie keine ID festgelegt oder möchten Sie die Entschlüsselung
+         der Reihe nach vornehmen wählen Sie den Eintrag <em>Use first encryption id</em> aus.
+      </p>
+      		
+      <p>Weitere Angaben sind nicht erforderlich. Ein Klick auf <strong>Finish</strong> entschlüsselt, bei korrekt eingegebenen Daten, das gewählte XML-Dokument und ersetzt den Chiffretext durch den Klartext.
+         Bleibt das XML-Dokument verschlüsselt haben Sie evtl. nicht die Schlüsseldatei ausgewählt, die zur Verschlüsselung des XML-Dokuments
+         verwendet wurde. Oder Sie haben einen anderen Algorithmus als bei der Verschlüsselung ausgewählt bzw. die falsche <em>Encryption ID</em> angeklickt. Rufen Sie in diesem Fall den Wizard erneut auf und geben die korrekten Daten an.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/encrypt.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/encrypt.html
new file mode 100644
index 0000000..ccb32cb
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/encrypt.html
@@ -0,0 +1,25 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Encryption Wizard</h1>
+      	
+      		
+      <p>Mit dem <em>Encryption Wizard</em> können Sie auf komfortable und einfache Weise XML-Dokumente verschlüsseln.
+      </p>
+      		
+      <p>Der Wizard besteht aus zwei Seiten die nacheinander ausgefüllt werden müssen. Nur wenn Sie alle Pflichtfelder einer Seite
+         korrekt ausgefüllt haben können Sie auf die nächste Seite wechseln. Beachten Sie zu Ihrer Unterstützung die Textmeldungen
+         oben im Assistenten. Der Wizard kann nur auf der letzten Seite zum Generieren der Verschlüsselung beendet werden.
+      </p>
+      		
+      <p>Der <em>Encryption Wizard</em> wird über den Eintrag <strong>New Encryption...</strong> im Kontextmenü aufgerufen. Er besteht aus den Seiten <a href="encrypt_page_resource.html">Resource</a> und <a href="encrypt_page_algorithms.html">Algorithms</a>. Über das Hilfe-Icon links unten auf jeder Seite erhalten Sie eine kontextabhängige Kurzhilfe und können weitergehende Informationen
+         abrufen.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/encrypt_page_algorithms.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/encrypt_page_algorithms.html
new file mode 100644
index 0000000..201233d
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/encrypt_page_algorithms.html
@@ -0,0 +1,57 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Algorithms</h1>
+      	
+      		
+      <p>Auf der letzten Seite müssen Sie noch die verschiedenen erforderlichen Algorithmen und für die Schlüsseldatei auch die Schlüssellänge
+         festlegen. Erforderlich ist außerdem die Angabe einer Datei, in welcher Sie den erzeugten Schlüssel speichern möchten. Diese
+         Datei wird später zur <a href="decrypt.html">Entschlüsselung</a> wieder benötigt! Die Angabe einer ID für die Verschlüsselung ist optional, wird aber sehr empfohlen.
+      </p>
+      		
+      <div align="center"><img src="../images/enc-2.jpg" alt="Algorithms" width="275" height="261"><p><em>Algorithms</em></p>
+      </div>
+      		
+      <p>Zunächst müssen Sie die drei erforderlichen Algorithmen für die Verschlüsselung der Daten (<em>Encryption Algorithm</em>), zum Schlüsseltransport (<em>Key Wrap Algorithm</em>) sowie zur Erzeugung des benötigten symmetrischen Schlüssels (<em>Key File Algorithm</em>) auswählen. Beim letzten Algorithmus müssen Sie zusätzlich noch die gewünschte Schlüssellänge auswählen. Das dazugehörige
+         Auswahlfeld passt die angebotenen Schlüssellängen automatisch an Ihre Algorithmenauswahl an.
+      </p>
+      		
+      <p>Der Key Wrap Algorithmus dient dem sicheren Schlüsseltransport von einem Teilnehmer zu einem oder mehreren anderen (bspw.
+         bei einer ungesicherten Übertragung über das Internet).
+      </p>
+      		
+      <p>Der symmetrische Algorithmus wird sowohl als <em>Content Encryption Key</em> (CEK) als auch als <em>Key Encryption Key</em> (KEK) verwendet. Der CEK verschlüsselt die Nutzdaten einer Kommunikation, wohingegen der KEK nur einen Schlüssel, also den
+         CEK, und keine Nutzdaten verschlüsselt.
+      </p>
+      		
+      <p>Nicht auf jeder Plattform stehen alle Algorithmen in allen möglichen Schlüssellängen zur Verfügung. Bei der Erzeugung der
+         Verschlüsselung wird unter Umständen eine Fehlermeldung ausgegeben und die Verschlüsselung abgebrochen. Bitte verwenden Sie
+         in diesem Fall einen anderen Algorithmus oder eine kürzere Schlüssellänge.
+      </p>
+      		
+      <p>Anschließend müssen Sie noch festlegen, wo der erzeugte Schlüssel gespeichert werden soll. Bitte bewahren Sie diese Datei
+         gut auf! Ohne diese kann das verschlüsselte XML-Dokument (zumindest nach derzeitigem Kenntnisstand der Kryptografie) nicht
+         mehr entschlüsselt werden. Diese Datei besitzt <strong>keine Endung</strong>. Geben Sie daher einfach den gewünschten Pfad und Dateinamen an oder wählen ihn über das Dialogfeld aus (z.B. <em>C:\xml-security\key1</em>).
+      </p>
+      		
+      <p>Beachten Sie, dass dieser Key nichts mit den Java Keystores der <a href="sign.html">digitalen Signaturen</a> zu tun hat. Wenn Sie also ein XML-Dokument signieren und anschließend verschlüsseln, besitzen Sie einen zugehörigen <em>Java Keystore</em> von der digitalen Signatur (z.B. <em>Signatur.jks</em>) und ein <em>Key File</em> von der Verschlüsselung (z.B. <em>Key</em>). Das Key File benötigen Sie später wieder zur <a href="decrypt.html">Entschlüsselung</a>, den Keystore können Sie für zukünftige Signaturen verwenden. Wenn Sie den Key einer Verschlüsselung beim Generieren einer
+         weiteren Verschlüsselung überschreiben können Sie das XML-Dokument nicht mehr entschlüsseln (auch wenn Sie denselben Algorithmus
+         verwenden)!
+      </p>
+      		
+      <p>Die Angabe der ID für die Verschlüsselung ist optional. Hier können Sie beliebige Zeichen außer den fünf bekannten XML Entity-Referenzen
+         <strong>&lt;</strong>, <strong>&amp;</strong>, <strong>&gt;</strong>, <strong>"</strong> und <strong>'</strong> bis zu einer maximalen Länge von 20 Zeichen eingeben. Diese ID muss im XML-Dokument eindeutig sein, d.h. sie darf von keiner
+         anderen Verschlüsselung verwendet werden.
+      </p>
+      		
+      <p>Nach der Angabe aller erforderlichen Daten und dem Klick auf <strong>Finish</strong> erzeugt das Plug-in das verschlüsselte XML-Dokument. Der gewählte Klartext wird dabei automatisch entfernt und durch den
+         Chiffretext ersetzt.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/encrypt_page_resource.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/encrypt_page_resource.html
new file mode 100644
index 0000000..5a2e762
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/encrypt_page_resource.html
@@ -0,0 +1,48 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Resource</h1>
+      	
+      		
+      <p>Auf der ersten Seite des Assistenten müssen Sie die zu verschlüsselnden <em>Ressource</em> auswählen. Mit der Auswahl von <em>Generate a Basic Security Profile compliant encryption</em> werden die Auswahlmöglichkeiten im gesamten Assistenten im Hinblick auf diese Empfehlung eingeschränkt.
+      </p>
+      		
+      <div align="center"><img src="../images/enc-1.jpg" alt="Resource" width="275" height="261"><p><em>Resource</em></p>
+      </div>
+      		
+      <p>Die erste Auswahlmöglichkeit betrifft die Wahl der zu verschlüsselnden Ressource. <em>Document</em> ist immer verfügbar und verschlüsselt das vollständige Dokument. <em>Selection</em> ist nur möglich wenn Sie im Editor mindestens ein Element oder Elementinhalt vor dem Aufruf des Assistenten markiert haben
+         und der Assistent über das Kontextmenü eines Editors aufgerufen wurde. Die Auswahl muss wohlgeformt sein, d.h. sowohl das
+         öffnende als auch das schließende Tag müssen in der Auswahl vorhanden sein. Werden die Regeln der Wohlgeformtheit verletzt
+         kann <em>Selection</em> nicht aktiviert werden.
+      </p>
+      		
+      <p>Bei der Auswahl von <em>XPath</em> können Sie im Textfeld einen XPath-Ausdruck eingeben. Alternativ können Sie über den Button <strong>Browse...</strong> einen weiteren Dialog zur Auswahl eines XPath Ausdrucks für das aktuelle XML-Dokument öffnen.
+      </p>
+      		
+      <div align="center"><img src="../images/enc-xpath.jpg" alt="XPath Selection" width="225" height="263"><p><em>XPath Selection</em></p>
+      </div>
+      		
+      <p>Damit die XPath-Ausdrücke zu jedem Element angezeigt werden können muss es sich um ein wohlgeformtes XML-Dokument handeln.
+         Insbesondere bei der Verwendung von Namensräumen muss der Namensraum auch definiert werden, d.h. ein <em>xmlns:MeinNamensraum="http://www.namensraum.de"</em> muss bei der Verwendung von <em>MeinNamensraum</em> unbedingt vorhanden sein.
+      </p>
+      		
+      <p>
+         			<em>Keep root element as plain text</em> bewirkt, dass nur der Inhalt des gewählten Elements verschlüsselt wird, das Element selbst aber im Klartext erhalten bleibt.
+         Beim Verschlüsseln des vollständigen Dokuments bedeutet das, dass das Wurzelelement im Klartext erhalten bleibt. Bei einer
+         Textauswahl bleibt das entsprechende temporäre Wurzelelement der Textauswahl im Klartext erhalten. Standardmäßig werden sowohl
+         das Element als auch der Elementinhalt verschlüsselt.
+      </p>
+      		
+      <p>Durch das Aktivieren von <em>Generate a Basic Security Profile compliant encryption</em> wird der Wizard auf zu dieser Empfehlung kompatible Einstellungen eingeschränkt. Auf der Seite <a href="encrypt_page_algorithms.html">Algorithms</a> werden so alle Algorithmen gemäß der Empfehlung eingeschränkt.
+      </p>
+      		
+      <p>Hierbei werden hinsichtlich der zugelassenen Algorithmen folgende Einschränkungen vorgenommen. Für die <a href="../basics/encryption_syntax_encryptionmethod.html">EncryptionMethod</a> innerhalb von <a href="../basics/encryption_syntax_encrypteddata.html">EncryptedData</a> sind ausschließlich die Algorithmen <em>Triple DES</em>, <em>AES 128</em> und <em>AES 256</em> erlaubt. Für <a href="../basics/encryption_syntax_encryptionmethod.html">EncryptionMethod</a> als Kindelement von <a href="../basics/encryption_syntax_keyinfo.html#EncryptedKey">EncryptedKey</a> sind die Algorithmen <em>Triple DES Key Wrap</em>, <em>AES-128 Key Wrap</em> und <em>AES-256 Key Wrap</em> zugelassen.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/overview.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/overview.html
new file mode 100644
index 0000000..ef6489d
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/overview.html
@@ -0,0 +1,69 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>XML-Security Plug-In</h1>
+      	
+      		
+      <p>Das XML-Security Plug-In besteht aus den fünf Komponenten <a href="canonicalize.html">Canonicalization</a>, <a href="sign.html">Digital Signature Wizard</a>, <a href="verify.html">Digital Signature View</a>, <a href="encrypt.html">Encryption Wizard</a> und <a href="decrypt.html">Decryption Wizard</a>. Der Fokus liegt stets auf der zu sichernden Ressource, Ausgangspunkt ist also immer ein beliebiges XML-Dokument in einem
+         <strong>Eclipse Editor</strong> (empfohlen) oder in der <strong>Navigator</strong> bzw. <strong>Package Explorer</strong> View. Die Wizards erfordern daher immer zunächst ein zu sicherndes XML-Dokument (-fragment) bevor Sie die Details der digitalen
+         Signatur oder Verschlüsselung festgelegen können.
+      </p>
+      		
+      <p>Ganz im Sinne einer Lernsoftware ist es das Ziel des XML-Security Plug-Ins, Ihnen die größtmöglichen Freiheiten zu lassen
+         und das Experimentieren mit der XML-Sicherheit zu fördern. Das bedeutet, dass Sie in den Wizards so viele Einstellungen wie
+         möglich selbst vornehmen müssen und Ihnen so wenige Einschränkungen wie möglich durch das Plug-in gemacht werden. Teilweise
+         hat das zur Folge, dass in den Wizards viele Angaben getätigt werden müssen, bevor das XML-Dokument verarbeitet werden kann.
+         Auf diese Art können Sie aber am Besten die umfangreichen Eigenschaften und Möglichkeiten der XML-Sicherheit kennen lernen.
+      </p>
+      		
+      <p>Die Grundlagen der Kryptografie, also digitale Signaturen und Verschlüsselung, sind nicht Bestandteil des XML-Security Plug-Ins.
+         Kenntnisse in diesem Bereich sind aber natürlich von Vorteil. Ein hervorragendes und sehr empfehlenswertes Tool hierfür ist
+         das frei erhältliche CrypTool.
+      </p>
+      		
+      <p>Zum schnellen Signieren, Verifizieren sowie Ver- und Entschlüsseln stehen die so genannten <a href="quick.html">Quick Functions</a> zur Verfügung. Die dabei verwendeten Einstellungen werden vorab in den <a href="prefs.html">Preferences</a> festgelegt wodurch das Sichern des XML-Dokuments (fast) mit einem Klick erfolgen kann. Zur einfacheren Unterscheidung sind
+         die Icons aller <a href="quick.html">Quick Functions</a> rot eingefärbt, besitzen aber dasselbe Symbol wie die normale Funktion.
+      </p>
+      		
+      <p>Alle Wizards und Befehle des XML-Security Plug-Ins lassen sich über das übersichtliche Kontextmenü an verschiedenen Stellen
+         aufrufen:
+      </p>
+      		
+      <p>Zum einen können Sie im <em>Package Explorer</em> oder <em>Navigator</em> genau <strong>ein</strong> XML-Dokument markieren. Zum anderen lassen sich sämtliche Funktionen bei einem geöffneten XML-Dokument auch über das Kontextmenü
+         in den meisten <em>Eclipse Editoren</em> erreichen. Die Funktionen des Plug-ins sind immer mit der rechten Maustaste über das Untermenü <strong>XML Security</strong> erreichbar.
+      </p>
+      		
+      <div align="center"><img src="../images/contextmenu.png" alt="Kontextmenü" width="464" height="247"><p><em>Kontextmenü</em></p>
+      </div>
+      		
+      <p>Nicht alle Eclipse Editoren erlauben eine Erweiterung (das hängt vom Editor ab). Es ist daher durchaus möglich, dass die Funktionen
+         des XML-Security Plug-Ins nicht in Ihrem bevorzugten Editor zur Verfügung stehen. In diesem Fall können Sie das XML-Security
+         Plug-In über das Navigator bzw. Package Explorer Kontextmenü verwenden oder auf einen anderen Editor ausweichen.
+      </p>
+      		
+      <p>Das Kontextmenü ist immer dasselbe, jedoch kann bei einem Aufruf über den <em>Package Explorer</em> bzw. <em>Navigator</em> in den <a href="sign.html">Signature</a> und <a href="encrypt.html">Encryption</a> Wizards nicht die Option <em>Selection</em> ausgewählt werden. Auch bei der <a href="quick.html">Quick Signature</a> und <a href="quick.html">Quick Encryption</a> ist das Sichern einer Textmarkierung nicht möglich.
+      </p>
+      		
+      <p>Um eine Textauswahl zu signieren oder zu verschlüsseln muss die Textmarkierung bereits vor dem Aufruf des Wizards im Editor
+         vorhanden sein. Ihre Textauswahl darf die Regeln der Wohlgeformtheit nicht verletzen! Das heißt, dass beim Signieren eines
+         Elements sowohl das öffnende als auch das schließende Tag mit in die Auswahl einbezogen werden müssen. Der Inhalt eines Elements
+         kann beliebig signiert oder verschlüsselt werden. Das Signieren oder Verschlüsseln von einzelnen Attributen ist nicht möglich.
+         Würde das Signieren oder Verschlüsseln Ihrer Textauswahl die Wohlgeformtheit verletzen, können Sie im jeweiligen Wizard den
+         Eintrag <em>Selection</em> nicht auswählen. Verlassen Sie in diesem Fall den Wizard wieder und korrigieren Sie die Textauswahl oder sichern Sie das
+         ganze Dokument bzw. ein durch einen XPath Ausdruck spezifiziertes Dokumentfragment.
+      </p>
+      		
+      <p>Beim Aufruf eines Wizards über das Kontextmenü eines Editors steht die Rückgängig-Funktion von Eclipse zur Verfügung. Alle
+         durch das Plug-in vorgenommenen Änderungen können so mit dieser Funktion rückgängig gemacht werden. Beim Aufruf eines Wizards
+         über den <em>Package Explorer</em> bzw. <em>Navigator</em> werden die Änderungen dagegen direkt in das XML-Dokument geschrieben und können nicht rückgängig gemacht werden. Ist das
+         XML-Dokument aber gleichzeitig in einem <em>Eclipse Editor</em> geöffnet können dort auch die Änderungen einer View rückgängig gemacht werden. Bitte beachten Sie daher, dass die Rückgängig-Funktion
+         auch ein entsprechendes Sicherheitsrisiko darstellen kann (der Klartext kann einfach wiederhergestellt werden).
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/prefs.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/prefs.html
new file mode 100644
index 0000000..16ae7f5
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/prefs.html
@@ -0,0 +1,29 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Preferences</h1>
+      	
+      		
+      <p>In den <strong>Preferences</strong> können auf dieser Hauptseite <strong>XML Security</strong> und den Unterseiten <a href="prefs_sign.html">Digital Signature</a> sowie <a href="prefs_encrypt.html">Encryption</a> verschiedene Optionen für das XML-Security Plug-In eingestellt werden. Die Einstellungen auf den Unterseiten betreffen ausschließlich
+         die <a href="quick.html">Quick Functions</a> des Plug-ins. Diese Angaben müssen vollständig ausgefüllt sein, bevor die Einträge zum schnellen Signieren, Verifizieren
+         oder Ver- und Entschlüsseln verwenden können. Fehlen Angaben beim Aufruf einer <a href="quick.html">Quick Function</a> können diese über den angezeigten Link auf der jeweiligen <strong>Preference</strong> Seite eingegeben werden.
+      </p>
+      		
+      <p>Auf der Hauptseite <strong>XML Security</strong> können Sie zunächst festlegen, was beim Aufruf der <a href="canonicalize.html">Canonicalization</a> über das Kontextmenü passieren soll. Beim <em>Canonicalization Type</em> können Sie zwischen der inklusiven und der exklusiven Variante auswählen. Mit dem <em>Canonicalization Target</em> können Sie bestimmen, wie ein über das Kontextmenü kanonisiertes XML-Dokument angezeigt werden soll. Mit <em>Same Document</em> wird das angezeigte XML-Dokument selbst kanonisiert, mit <em>New Document</em> öffnet sich ein neues Editorfenster in dem das kanonisierte XML-Dokument angezeigt wird. Das Ursprungsdokument wird dabei
+         nicht verändert. So lassen sich die Unterschiede leichter vergleichen.
+      </p>
+      		
+      <div align="center"><img src="../images/prefs_general.png" alt="Allgemeine Einstellungen für das Plug-in und zur Kanonisierung" width="300" height="272"><p><em>Allgemeine Einstellungen für das Plug-in und zur Kanonisierung</em></p>
+      </div>
+      		
+      <p>Alle weiteren Einstellungen auf den Unterseiten <a href="prefs_sign.html">Digital Signature</a> und <a href="prefs_encrypt.html">Encryption</a> betreffen die <a href="quick.html">Quick Functions</a>. Sie müssen hier sämtliche Informationen angeben die Sie normalerweise über den entsprechenden Assistenten angeben würden.
+         Lediglich sicherheitsrelevante Daten wie Passwörter werden nicht gespeichert und müssen direkt beim Aufruf der <a href="quick.html">Quick Functions</a> angegeben werden (ein Popup-Fenster fordert Sie zur Eingabe auf).
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/prefs_encrypt.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/prefs_encrypt.html
new file mode 100644
index 0000000..6abd1c2
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/prefs_encrypt.html
@@ -0,0 +1,22 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Encryption Preferences</h1>
+      	
+      		
+      <p>Unter <strong>Encryption</strong> finden Sie alle Einstellungen, die für die Befehle <strong>Quick Encryption</strong> und <strong>Quick Decryption</strong> notwendig sind. Dies betrifft die Auswahl der zu verschlüsselnden Ressource, des Verschlüsselungstyps und die gewünschten
+         Algorithmen. Außerdem müssen Sie noch eine Datei zur Speicherung des symmetrischen Schlüssels auswählen. Auch hier bestimmt
+         die Encryption ID die Verschlüsselung, nach der bei der Entschlüsselung gesucht wird. Auf fehlende Angaben werden Sie beim
+         Aufruf von <strong>Quick Encryption</strong> bzw. <strong>Quick Decryption</strong> hingewiesen und können diese dann entweder angeben oder die Operation abbrechen.
+      </p>
+      		
+      <div align="center"><img src="../images/prefs_enc.png" alt="Einstellungen für die Quick Encryption und Quick Decryption" width="300" height="272"><p><em>Einstellungen für die Quick Encryption und Quick Decryption</em></p>
+      </div>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/prefs_sign.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/prefs_sign.html
new file mode 100644
index 0000000..0fbce37
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/prefs_sign.html
@@ -0,0 +1,22 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Digital Signatures Preferences</h1>
+      	
+      		
+      <p>Die Einstellungen auf der Unterseite <strong>Digital Signatures</strong> beeinflussen sowohl den Befehl <strong>Quick Signature</strong> als auch <strong>Quick Verification</strong>. Wie im Wizard müssen Sie zunächst auswählen welche Ressource Sie signieren möchten und welchen Signaturtyp Sie verwenden
+         wollen (nur <em>enveloping</em> und <em>enveloped</em> stehen zur Verfügung). Anschließend müssen Sie noch die zu verwendenden Algorithmen und einen Java Keystore mit dem Zertifikat
+         auswählen sowie den Aliasnamen dieses Zertifikats angeben. Die Signature ID schließlich entspricht auch der ID nach der bei
+         der Quick Verification gesucht wird. Auf fehlende Angaben werden Sie beim Aufruf von <strong>Quick Signature</strong> bzw. <strong>Quick Verification</strong> hingewiesen und können diese Angaben dann entweder nachholen oder die Operation abbrechen.
+      </p>
+      		
+      <div align="center"><img src="../images/prefs_dsig.png" alt="Einstellungen für die Quick Signature und Quick Verification" width="300" height="272"><p><em>Einstellungen für die Quick Signature und Quick Verification</em></p>
+      </div>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/quick.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/quick.html
new file mode 100644
index 0000000..67e8615
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/quick.html
@@ -0,0 +1,48 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Quick Functions</h1>
+      	
+      		
+      <p>Mit den <strong>Quick Functions</strong> können Sie schnell ein XML-Dokument(-fragment) signieren, verifizieren sowie ver- und wieder entschlüsseln. Um diese Funktionen
+         nutzen zu können sind daher einige Einstellungen in den <a href="prefs.html">Preferences</a> erforderlich. Anschließend ersparen Ihnen diese Befehle das umfangreiche Ausfüllen des jeweiligen Wizards. Abgefragt werden
+         nur noch die sicherheitskritischen Angaben wie Passwörter (ein Popup-Dialog fordert Sie zur Eingabe auf). Alle weiteren Informationen
+         werden in den Workspace Einstellungen gespeichert. Fehlen eine oder mehrere Einstellungen in den <a href="prefs.html">Preferences</a> werden Sie beim Aufruf einer Quick Function entsprechend darüber informiert und können direkt in die <a href="prefs.html">Preferences</a> wechseln oder die Operation abbrechen. Zur besseren Unterscheidung besitzen die Icons der Quick Functions eine leichte Rotfärbung
+         im Menü.
+      </p>
+      		
+      <p>Passwörter werden grundsätzlich verschlüsselt in den Eingabefeldern angezeigt. Sollten Sie sich bei der Eingabe vertippen
+         erhalten Sie eine entsprechende Fehlermeldung.
+      </p>
+      		
+      <p>Bitte beachten Sie, dass Sie eine Textauswahl nur Signieren oder Verschlüsseln können, sofern Sie die Quick Function in einem
+         Editor mit einem XML-Dokument aufrufen. Über eine View wie den Navigator oder Package Explorer ist das Sichern einer Textauswahl
+         nicht möglich.
+      </p>
+      		
+      <p>
+         			<strong>Quick Signature</strong> ermöglicht das schnelle Signieren eines XML-Dokuments oder eines Dokumentfragments. Sie werden dabei nur nach dem <em>Keystore Password</em> und dem <em>Certificate Password</em> gefragt.
+      </p>
+      		
+      <p>
+         			<strong>Quick Verification</strong> zeigt Ihnen in einem kleinen Dialogfeld an, ob die Signatur mit der angegebenen ID gültig <em>(valid)</em> oder ungültig <em>(invalid)</em> ist. Sollte keine Signatur mit der gespeicherten ID im XML-Dokument vorhanden sein erhalten Sie eine entsprechende Fehlermeldung.
+      </p>
+      		
+      <p>
+         			<strong>Quick Encryption</strong> verschlüsselt ein XML-Dokument oder Teile davon mit einem Klick. Es müssen keine weiteren Informationen angegeben werden,
+         der verwendete Schlüssel wird unter dem von Ihnen angegebenen Pfad und Dateinamen gespeichert.
+      </p>
+      		
+      <p>
+         			<strong>Quick Decryption</strong> entschlüsselt ein XML-Dokument ohne weitere Eingaben. Dazu wird der zur Verschlüsselung verwendete Schlüssel geladen und
+         das XML-Dokument entschlüsselt. Sollte der Key nicht gefunden werden erhalten Sie eine entsprechende Fehlermeldung und das
+         XML-Dokument kann nicht entschlüsselt werden.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/sign.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/sign.html
new file mode 100644
index 0000000..0126fe0
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/sign.html
@@ -0,0 +1,32 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Digital Signature Wizard</h1>
+      	
+      		
+      <p>Mit dem <em>Digital Signature Wizard</em> können Sie assistentengestützt eine digitale Signatur für das von Ihnen gewählte XML-Dokument erstellen. Der Digital Signature
+         Wizard stellt den umfangreichsten Assistenten im Plug-in dar und ermöglicht viele unterschiedliche Kombinationen und Anwendungsmöglichkeiten.
+         Bei der Signatur handelt es sich um eine Mischung aus einfacher und fortgeschrittener Signatur. Trotz einer erfolgreich verifizierten
+         Signatur (d.h. einem erfolgreich verifizierten Hashwert) muss der Signierende aber nicht der sein, der er vorgibt zu sein
+         (Sie können beim Generieren des Schlüssels jeden beliebigen Namen angeben). Um die Benutzerauthentizität zu garantieren wäre
+         beispielsweise ein Key Management in der Art von XKMS notwendig. Dafür ist es mit dem XML-Security Plug-In sehr einfach, einen
+         eigenen Schlüssel auf dem eigenen System zu generieren und diesen in verschiedenen Signaturen zu verwenden.
+      </p>
+      		
+      <p>Der <em>Digital Signature Wizard</em> besteht aus drei Seiten, die der Reihe nach von Ihnen ausgefüllt werden müssen. Die zweite Seite hängt dabei von der gewählten
+         Zertifikat Option ab und unterscheidet sich dadurch geringfügig. Nur nachdem Sie alle Pflichtfelder einer Seite korrekt ausgefüllt
+         haben können Sie auf die nächste Seite wechseln. Zu Ihrer Unterstützung stellt der Assistent Kurzhinweise im oberen Bereich
+         zur Verfügung. Der <em>Digital Signature Wizard</em> kann nur auf der letzten Seite erfolgreich beendet werden. Nach dem Klick auf den <strong>Finish</strong> Button wird anschließend die Signatur generiert.
+      </p>
+      		
+      <p>Der <em>Digital Signature Wizard</em> wird über den Eintrag <strong>New Signature...</strong> im Kontextmenü aufgerufen. Er besteht aus den Seiten <a href="sign_page_resource.html">Resource and Signature Type</a>, <a href="sign_page_certificate.html">Certificates</a> und <a href="sign_page_algorithms.html">Algorithms and Signature Properties</a>. Über das Hilfe-Icon links unten auf jeder Wizard Seite erhalten Sie eine kontextabhängige Kurzhilfe und können weitergehende
+         Informationen zum Wizard abrufen.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/sign_page_algorithms.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/sign_page_algorithms.html
new file mode 100644
index 0000000..d4400c4
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/sign_page_algorithms.html
@@ -0,0 +1,48 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Algorithms and Signature Properties</h1>
+      	
+      		
+      <p>Auf der letzten Seite des <em>Digital Signature Wizard</em> müssen Sie sämtliche Algorithmen zur <em>Canonicalization</em>, <em>Transformation</em> sowie den <em>Message Digest</em> und <em>Signature Algorithmus</em> festlegen. Zusätzlich können Sie zur Signature beliebige <em>Signature Properties</em> angeben und der Signatur eine optionale beliebige <em>ID</em> geben.
+      </p>
+      		
+      <div align="center"><img src="../images/dsig-3.png" alt="Algorithms and Signature Properties" width="275" height="392"><p><em>Algorithms and Signature Properties</em></p>
+      </div>
+      		
+      <p>Sie müssen in jedem der vier Auswahlfelder zu den Algorithmen eine Auswahl treffen. Lediglich beim <em>Transformation Algorithm</em> können Sie auch <em>None</em> auswählen und damit auf eine Transformation verzichten. Wenn Sie auf der <a href="sign_page_resource.html">Resource and Signature Type</a> Seite des Wizard das <em>Basic Security Profile</em> aktiviert haben sind die Einträge in allen Auswahlfeldern entsprechend eingeschränkt. Die möglichen <em>Signature Algorithm</em> hängen von dem von Ihnen gewählten Zertifikat ab (bei DSA stehen nur DSA Algorithmen zur Auswahl, bei EC nur EC Algorithmen
+         und bei RSA entsprechend nur RSA Algorithmen).
+      </p>
+      		
+      <p>Nicht auf jeder Plattform stehen alle Algorithmen in allen verfügbaren Schlüssellängen zur Verfügung. Bei der Erzeugung der
+         Signatur wird unter Umständen eine Fehlermeldung ausgegeben und die Signierung abgebrochen. Bitte verwenden Sie in diesem
+         Fall einen anderen Algorithmus oder eine kürzere Schlüssellänge. Der Algorithmus <em>RIPEMD160</em> beispielsweise steht nur auf Systemen mit zusätzlichem Kryptografieprovider (z.B. <em>BouncyCastle</em>) zur Verfügung.
+      </p>
+      		
+      <p>Als <em>Message Digest Algorithm</em> können Sie auch den Algorithmus <em>MD5</em> auswählen. Dieser gilt jedoch nicht mehr als ausreichend sicher und sollte keinesfalls zur Sicherung von wichtigen Dokumenten
+         verwendet werden. Als ausreichend sicher gelten derzeit Hashwerte ab einer Länge von 160 Bit.
+      </p>
+      		
+      <p>Bei den <a href="signatures_syntax_object.html#SignatureProperties">Signature Properties</a> können Sie zusätzliche Informationen erfassen, die ebenfalls mit signiert werden sollen. Um einen neuen Eintrag hinzuzufügen
+         klicken Sie zunächst auf den <strong>+</strong> Button neben der Tabelle. Anschließend können Sie die Informationen in der Tabelle eintragen. <em>ID</em> und <em>Target</em> sind dabei Pflichtangaben. IDs müssen außerdem im Dokument eindeutig sein. Einen markierten Eintrag löschen Sie über den
+         <strong>-</strong> Button.
+      </p>
+      		
+      <p>Eine optionale ID können Sie der Signatur mit Hilfe des Textfelds zuweisen. Erlaubt sind hierfür alle Zeichen bis auf die
+         fünf bekannten XML Entity-Referenzen <strong>&lt;</strong>, <strong>&amp;</strong>, <strong>&gt;</strong>, <strong>"</strong> und <strong>'</strong> bis zu einer maximalen Länge von 20 Zeichen. Diese ID muss im XML-Dokument eindeutig sein, d.h. sie darf von keiner anderen
+         Signatur verwendet werden.
+      </p>
+      		
+      <p>Durch das Markieren der Checkbox <em>Start Encryption Wizard afterwards</em> wird direkt nach dem erfolgreichen Signieren der <a href="encrypt.html">Encryption Wizard</a> aufgerufen.
+      </p>
+      		
+      <p>Nach der korrekten Eingabe aller erforderlichen Daten können Sie mit dem <strong>Finish</strong> Button den Digital Signature Wizard beenden und das XML-Dokument signieren lassen.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/sign_page_create_key.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/sign_page_create_key.html
new file mode 100644
index 0000000..3626977
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/sign_page_create_key.html
@@ -0,0 +1,41 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Create a new Key</h1>
+      	
+      		
+      <p>Auf dieser zweiten Seite des <em>Digital Signature Wizard</em> können Sie einen neuen Schlüssel in einem vorhandenen Java Keystore generieren. Nach Angabe aller erforderlichen Daten wird
+         das Zertifikat unter dem von Ihnen angegebenen <em>Alias</em> im ausgewählten Keystore gespeichert und zur Generierung dieser digitalen Signatur verwendet.
+      </p>
+      		
+      <div align="center"><img src="../images/dsig-2b.png" alt="Create a new Certificate" width="275" height="392"><p><em>Create a new Certificate</em></p>
+      </div>
+      		
+      <p>Zunächst müssen Sie die Daten für den <em>Distinguished Name</em> angeben. Dazu gehören <em>Common Name</em>, <em>Organizational Unit</em>, <em>Organization</em>, <em>Location</em>, <em>State</em> und <em>Country</em>. Lediglich der <em>Common Name</em> ist ein Pflichtfeld, die anderen fünf sind optional. Während der Eingabe der Daten zeigt das Vorschaufeld eine Übersicht
+         Ihrer getätigten Eingaben an.
+      </p>
+      		
+      <p>Anschließend sind einige Angaben zum Schlüssel (<em>Key</em>) erforderlich. Der <em>Alias</em> ist ein Pflichtfeld und muss zwischen 4 und 20 Zeichen lang sein. Das <em>Password</em> für das Zertifikat ist ebenfalls ein Pflichtfeld und muss mindestens 6, maximal jedoch 20 Zeichen lang sein. Mit dem <strong>Punkt</strong> Button rechts neben den Eingabefeld können Sie sich den Klartext anzeigen lassen und Ihre Eingabe kontrollieren. Aus der
+         <em>Type</em> Auswahlbox können Sie jetzt noch den Typ des Zertifikats auswählen. Möglich sind <em>Digital Signature Algorithm (DSA)</em>, <em>Elliptic Curve DSA (ECDSA)</em> und <em>Rivest, Shamir, Adleman (RSA)</em>.
+      </p>
+      		
+      <p>Jetzt müssen Sie noch den Java Keystore (mit der Dateiendung <em>.jks</em>) angeben, den Sie um das neue Zertifikat erweitern wollen. Über den Button <strong>Open...</strong> öffnen Sie das Standarddialogfeld zur Auswahl einer solchen Datei. Damit das Zertifikat darin gespeichert werden kann ist
+         noch die Eingabe des Keystore Passworts im <em>Password</em> Feld erforderlich. Mit dem <strong>Punkt</strong> Button rechts neben den Eingabefeld können Sie sich den Klartext anzeigen lassen und Ihre Eingabe kontrollieren.
+      </p>
+      		
+      <p>Nach der korrekten Angabe aller erforderlichen Daten können Sie das Zertifikat über den Button <strong>Create Certificate</strong> generieren und im angegebenen Keystore speichern lassen.
+      </p>
+      		
+      <p>Das generierte Zertifikat können Sie in Zukunft über die Seite <a href="sign_page_open_certificate.html">Open an existing Certificate</a> direkt verwenden. Dazu benötigen Sie neben dem Dateinamen die unter <em>Certificate Alias</em>, <em>Certificate Password</em> und <em>Keystore Password</em> angegebenen Daten.
+      </p>
+      		
+      <p>Nach der erfolgreichen Generierung des neuen Zertifikats können Sie mit dem <strong>Next</strong> Button auf die nächste Seite des Digital Signature Wizards wechseln: <a href="sign_page_algorithms.html">Algorithms and Signature Properties</a>.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/sign_page_create_keystore.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/sign_page_create_keystore.html
new file mode 100644
index 0000000..68c25da
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/sign_page_create_keystore.html
@@ -0,0 +1,40 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Create a new Certificate and Keystore</h1>
+      	
+      		
+      <p>Auf dieser zweiten Seite des <em>Digital Signature Wizard</em> können Sie einen neuen Keystore mit einem neuen Zertifikat generieren. Nach Angabe aller erforderlichen Daten wird das Zertifikat
+         unter dem von Ihnen angegebenen <em>Alias</em> im Keystore unter dem von Ihnen angegebenen <em>Common Name</em> gespeichert und zur Generierung dieser digitalen Signatur verwendet.
+      </p>
+      		
+      <div align="center"><img src="../images/dsig-2c.png" alt="Create a new Certificate and Keystore" width="275" height="392"><p><em>Create a new Certificate and Keystore</em></p>
+      </div>
+      		
+      <p>Zunächst müssen Sie die Daten für den <em>Distinguished Name</em> angeben. Dazu gehören <em>Common Name</em>, <em>Organizational Unit</em>, <em>Organization</em>, <em>Location</em>, <em>State</em> und <em>Country</em>. Lediglich der <em>Common Name</em> ist ein Pflichtfeld, die anderen fünf sind optional. Während der Eingabe der Daten zeigt das Vorschaufeld eine Übersicht
+         Ihrer getätigten Eingaben an.
+      </p>
+      		
+      <p>Anschließend sind einige Angaben zum Zertifikat (<em>Certificate</em>) erforderlich. Der <em>Alias</em> ist ein Pflichtfeld und muss zwischen 4 und 20 Zeichen lang sein. Das <em>Password</em> für das Zertifikat ist ebenfalls ein Pflichtfeld und muss mindestens 6, maximal jedoch 20 Zeichen lang sein. Mit dem <strong>Punkt</strong> Button rechts neben den Eingabefeld können Sie sich den Klartext anzeigen lassen und Ihre Eingabe kontrollieren. Aus der
+         <em>Type</em> Auswahlbox können Sie jetzt noch den Typ des Zertifikats auswählen. Möglich sind <em>Digital Signature Algorithm (DSA)</em>, <em>Elliptic Curve DSA (ECDSA)</em> und <em>Rivest, Shamir, Adleman (RSA)</em>.
+      </p>
+      		
+      <p>Jetzt müssen Sie nur noch ein Passwort für den neuen Keystore im <em>Password</em> Feld angeben. Das <em>Password</em> muss mindestens 6, maximal jedoch 20 Zeichen lang sein. Mit dem <strong>Punkt</strong> Button rechts neben den Eingabefeld können Sie sich den Klartext anzeigen lassen und Ihre Eingabe kontrollieren.
+      </p>
+      		
+      <p>Nach der korrekten Angabe aller erforderlichen Daten können Sie den Keystore und das Zertifikat über den Button <strong>Create Keystore</strong> generieren lassen.
+      </p>
+      		
+      <p>Das generierte Zertifikat können Sie in Zukunft über die Seite <a href="sign_page_open_certificate.html">Open an existing Certificate</a> direkt verwenden. Dazu benötigen Sie neben dem Dateinamen die unter <em>Certificate Alias</em>, <em>Certificate Password</em> und <em>Keystore Password</em> angegebenen Daten. Über die Seite <a href="sign_page_create_certificate.html">Create a new Certificate</a> können Sie diesen Keystore um weitere Zertifikate ergänzen. Dazu benötigen Sie neben dem Dateinamen nur das <em>Keystore Password</em>.
+      </p>
+      		
+      <p>Nach der erfolgreichen Generierung des neuen Zertifikats können Sie mit dem <strong>Next</strong> Button auf die nächste Seite des Digital Signature Wizards wechseln: <a href="sign_page_algorithms.html">Algorithms and Signature Properties</a>.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/sign_page_keys.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/sign_page_keys.html
new file mode 100644
index 0000000..8c1d8ad
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/sign_page_keys.html
@@ -0,0 +1,26 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Keys</h1>
+      	
+      		
+      <p>Bei der Verwendung von Schlüsseln (Keys) in Java Keystores haben Sie mehrere Möglichkeiten: Sie können einen vorhandenen Schlüssel
+         aus einem Java Keystore verwenden (<a href="sign_page_open_certificate.html">Open an existing certificate in an existing keystore</a>), ein neues Zertifikat in einem vorhanden Keystore generieren (<a href="sign_page_create_certificate.html">Create a new certificate in an existing keystore</a>) oder auch ein neues Zertifikat in einem neuen Keystore generieren (<a href="sign_page_create_keystore.html">Create a new certificate and a new keystore</a>). Je nachdem für welche dieser Optionen Sie sich entscheiden wird eine andere zweite Seite des Digital Signature Wizards
+         aufgerufen. Wenn Sie Ihre Zertifikat Auswahl ändern wollen können Sie jederzeit mit dem <em>Back Button</em> eine Seite zurückspringen und einen anderen Eintrag markieren.
+      </p>
+      		
+      <p>Keystores werden in dem speziellen Format <em>JKS</em> (<em>Java Keystore</em>) als Datei abgelegt. Das Format beinhaltet eine Verschlüsselung des Inhalts und die Möglichkeit, den Zugriff mit einem Passwort
+         zu schützen. Um den Zugriff auf ein bestimmtes Zertifikat zu ermöglichen muss für jedes ein beliebiger Alias Name vergeben
+         werden. Ein Keystore kann damit mehrere Zertifikate auch unterschiedlichen Typs enthalten.
+      </p>
+      		
+      <p>Beim Generieren einer <em>Basic Security Profile compliant signature</em> kann nur ein RSA Zertifikat verwendet werden. Auch die Generierung von neuen Zertifikaten ist auf RSA beschränkt.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/sign_page_open_key.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/sign_page_open_key.html
new file mode 100644
index 0000000..51afbef
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/sign_page_open_key.html
@@ -0,0 +1,34 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Open an existing Key</h1>
+      	
+      		
+      <p>Auf dieser zweiten Seite des <em>Digital Signature Wizard</em> müssen Sie zunächst den gewünschten Keystore und ein darin enthaltenes Zertifikat auswählen sowie die zugehörigen Passwörter
+         angeben.
+      </p>
+      		
+      <div align="center"><img src="../images/dsig-2a.png" alt="Open an existing Certificate" width="275" height="392"><p><em>Open an existing Certificate</em></p>
+      </div>
+      		
+      <p>Zunächst müssen Sie eine Java Keystore Datei (mit der Dateiendung <em>.jks</em>) auswählen. Über den Button <strong>Open...</strong> öffnen Sie das Standarddialogfeld zur Auswahl einer solchen Datei.
+      </p>
+      		
+      <p>Anschließend sind weitere Angaben zum Keystore und Zertifikat erforderlich. Alle angegebenen Felder sind Pflichtfelder. Mit
+         den <strong>Punkt</strong> Buttons rechts neben den Passwortfeldern können sie den Klartext in einem Passwortfeld anzeigen lassen und Ihre Eingabe kontrollieren.
+      </p>
+      		
+      <p>Mit dem <em>Keystore Password</em> kann der Keystore selbst geöffnet werden. Anschließend legen Sie mit dem <em>Certificate Alias</em> fest, welches Zertifikat aus dem Keystore geladen werden soll. Dieses Zertifikat wird zur Erzeugung des <a href="../basics/signatures_syntax_keyinfo.html">KeyInfo</a> Elements und später zur <a href="verify.html">Verification</a> der Signatur benötigt. Eine Signatur lässt sich zwar auch ohne Angabe des <em>Certificate Alias</em> erzeugen, kann dann aber nicht mit dem XML-Security Plug-In verifiziert werden. Die Angabe des Alias ist daher ebenfalls
+         erforderlich. Zum Abschluss müssen Sie noch das Passwort des Zertifikats angeben.
+      </p>
+      		
+      <p>Nach der korrekten Eingabe aller erforderlichen Daten können Sie mit dem <strong>Next</strong> Button auf die nächste Seite des Digital Signature Wizards wechseln: <a href="sign_page_algorithms.html">Algorithms and Signature Properties</a>.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/sign_page_resource.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/sign_page_resource.html
new file mode 100644
index 0000000..b40b82c
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/sign_page_resource.html
@@ -0,0 +1,54 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Resource and Signature Type</h1>
+      	
+      		
+      <p>Auf der ersten Seite des <em>Digital Signature Wizard</em> müssen Sie die zu signierende <em>Ressource</em> und die <em>Signatur-Variante</em> auswählen. Außerdem können Sie bestimmen, ob Sie ein vorhandenes Zertifikat verwenden oder im Assistenten ein neues generieren
+         möchten. Mit der Auswahl von <em>Generate a Basic Security Profile compliant signature</em> werden die Auswahlmöglichkeiten im gesamten Assistenten im Hinblick auf die <a href="../basics/bsp.html">Basic Security Profile</a> Empfehlung eingeschränkt.
+      </p>
+      		
+      <div align="center"><img src="../images/dsig-1.png" alt="Resource and Signature Type" width="275" height="392"><p><em>Resource and Signature Type</em></p>
+      </div>
+      		
+      <p>Die erste Auswahlmöglichkeit im Assistent betrifft die Wahl der zu signierenden Ressource. Der Eintrag <em>Document</em> ist immer verfügbar und signiert das vollständige Dokument. <em>Selection</em> ist nur möglich wenn Sie im Editor mindestens ein Element bzw. Elementinhalt vor dem Aufruf des Assistenten markiert haben
+         und der Assistent über das Kontextmenü eines Editors aufgerufen wurde. Die Auswahl muss wohlgeformt sein, d.h. sowohl das
+         öffnende als auch das schließende Tag müssen in der Auswahl vorhanden sein. Werden die Regeln der Wohlgeformtheit verletzt
+         kann <em>Selection</em> nicht aktiviert werden.
+      </p>
+      		
+      <p>Bei der Auswahl von <em>XPath</em> können Sie im Textfeld einen XPath-Ausdruck eingeben. Alternativ können Sie über den Button <strong>Browse...</strong> einen weiteren Dialog zur Auswahl eines XPath Ausdrucks für das aktuelle XML-Dokument öffnen.
+      </p>
+      		
+      <div align="center"><img src="../images/dsig-xpath.png" alt="XPath Selection" width="225" height="263"><p><em>XPath Selection</em></p>
+      </div>
+      		
+      <p>Damit die XPath-Ausdrücke zu jedem Element angezeigt werden können muss es sich um ein wohlgeformtes XML-Dokument handeln.
+         Insbesondere bei der Verwendung von Namensräumen muss der Namensraum auch definiert werden, d.h. ein <em>xmlns:MeinNamensraum="http://www.namensraum.de"</em> muss bei der Verwendung von <em>MeinNamensraum</em> unbedingt vorhanden sein.
+      </p>
+      		
+      <p>Anschließend müssen Sie die Signatur-Variante bestimmen. Zur Auswahl stehen <em>Enveloped</em>, <em>Enveloping</em> und <em>Detached</em> Signaturen. Nach der Auswahl von <em>Detached</em> müssen Sie im Textfeld den Pfad und Dateinamen zu der zu signierenden Datei angeben. Dies kann ein XML-Dokument oder eine
+         beliebige andere Datei sein. Über den Button <strong>Select...</strong> können Sie ein Standarddialogfeld zur Auswahl einer Datei öffnen. Die Auswahl einer <em>Detached</em> Signatur schränkt die zu signierende Ressource automatisch auf <em>Document</em> ein.
+      </p>
+      		
+      <p>In der Gruppe <em>Certificate</em> wählen Sie eine Zertifikatoption aus. Mit der Auswahl von <em>Open an existing certificate in an existing keystore</em> verwenden Sie ein vorhandenes Zertifikat aus einem Java Keystore zum Signieren. Bei <em>Create a new certificate in an existing keystore</em> erweitern Sie einen vorhandenen Keystore um ein neues Zertifikat und verwenden dieses gleich zum Signieren. Mit der Auswahl
+         von <em>Create a new certificate and a new keystore</em> legen Sie einen neuen Keystore und darin ein neues Zertifikat an. Dieses Zertifikat wird ebenfalls gleich zum Signieren verwendet.
+      </p>
+      		
+      <p>Durch das Aktivieren der <em>Basic Security Profile compliant signature</em> wird der Assistent auf zu dieser Empfehlung kompatible Einstellungen eingeschränkt. <em>Enveloping</em> Signaturen werden dadurch deaktiviert. Stattdessen wird die Verwendung von <em>Detached</em> Signaturen empfohlen. <em>Enveloped</em> Signaturen sind möglich, ihre Verwendung wird aber nicht empfohlen.
+      </p>
+      		
+      <p>Um vollständig konform zum <em>Basic Security Profile</em> zu sein muss auf der <a href="sign_page_open_certificate.html">Open an existing Certificate</a> Seite ein Zertifikat mit einem RSA Algorithmus ausgewählt oder auf der Seite <a href="sign_page_create_certificate.html">Create a new Certificate</a> bzw. <a href="sign_page_create_keystore.html">Create a new Certificate and Keystore</a> ein entsprechendes Zertifikat generiert werden. Auf der Seite <a href="sign_page_algorithms.html">Algorithms and Signature Properties</a> werden alle Algorithmen gemäß der Empfehlung eingeschränkt und nur diese zur Auswahl angezeigt.
+      </p>
+      		
+      <p>Nach der korrekten Eingabe aller erforderlichen Daten können Sie mit dem <strong>Next</strong> Button auf die nächste Seite des Digital Signature Wizards wechseln. Je nach Auswahl bei den Zertifikat Optionen unterscheidet
+         sich diese: <a href="sign_page_open_certificate.html">Open an existing Certificate</a>, <a href="sign_page_create_certificate.html">Create a new Certificate</a> oder <a href="sign_page_create_keystore.html">Create a new Certificate and Keystore</a>.
+      </p>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/verify.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/verify.html
new file mode 100644
index 0000000..523eb92
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/plugin/verify.html
@@ -0,0 +1,29 @@
+<html xmlns:sec="http://www.xml-sicherheit.de">
+   <head>
+      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+      <link rel="stylesheet" type="text/css" href="../format.css">
+   </head>
+   <body>
+      	
+      <h1>Digital Signature View</h1>
+      	
+      		
+      <p>Der Eintrag <strong>New Verification...</strong> im XML Security Kontextmenü überprüft alle im gewählten/ geöffneten XML-Dokument enthaltenen digitalen Signaturen. Das Ergebnis
+         der Überprüfung wird in der <strong>XML Digital Signatures</strong> View angezeigt. Je nach Anzahl der im XML-Dokument enthaltenen Signaturen finden Sie hier unterschiedlich viele Einträge
+         die Ihnen neben der Signatur ID den Status der Signatur (gültig, ungültig oder unbekannt) über ein Icon mitteilen. Angezeigt
+         werden auch Informationen über den verwendeten <em>Certificate Type</em> und den <em>Certificate Algorithm</em>. Ein Doppelklick auf einen Eintrag öffnet ein Popup-Fenster mit weiteren Informationen zur gewählten Signatur (alternativ
+         können Sie auch einen Eintrag markieren und den Menüeintrag <em>Properties</em> auswählen).
+      </p>
+      		
+      <div align="center"><img src="../images/view_verification.png" alt="XML Digital Signatures View" width="377" height="122"><p><em>XML Digital Signatures View</em></p>
+      </div>
+      		
+      <p>Um alle Signaturen in einem geöffneten XML-Dokument erneut zu verifizieren können Sie auf den Button <em>Refresh</em> klicken. Details zu einer Signatur können Sie nach dem Markieren des gewünschten Eintrags über den Button <em>Properties</em> erhalten.
+      </p>
+      		
+      <div align="center"><img src="../images/valid_signature.png" alt="Valid Digital Signature" width="377" height="138"><p><em>Valid Digital Signature</em></p>
+      </div>
+      	
+      
+   </body>
+</html>
\ No newline at end of file
diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/resources.html b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/resources.html
new file mode 100644
index 0000000..8735812
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/resources.html
@@ -0,0 +1,225 @@
+<?xml version="1.0" encoding="iso-8859-15"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
+ "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de">

+<head>

+  <title>Ressourcen</title>
+  <meta http-equiv="content-type" content="text/html; charset=iso-8859-15" />

+  <link rel="stylesheet" type="text/css" href="format.css" />

+</head>

+

+<body>

+  <h1>Ressourcen</h1>

+

+  <h2>Apache</h2>

+

+  <ul class="none">

+    <li><a href="http://www.apache.org/">Apache Homepage</a></li>

+

+    <li><a href="http://ws.apache.org/">Apache Web Services Project</a></li>

+

+    <li><a href="http://xml.apache.org/">Apache XML</a></li>

+

+    <li><a href="http://santuario.apache.org/">Apache XML Security (Santuario)</a></li>

+  </ul>

+

+  <h2>Cryptography</h2>

+

+  <ul class="none">

+    <li><a href="http://www.schneier.com/">Bruce Schneier</a></li>

+

+    <li><a href="http://www.cryptool.de/">CrypTool</a></li>

+

+    <li><a href="http://jcryptool.sourceforge.net/">JCrypTool</a></li>

+

+    <li><a href="http://www.rsasecurity.com/rsalabs/node.asp?id=2124">Public-Key Cryptography Standards</a></li>

+

+    <li><a href="http://www.rsasecurity.com/rsalabs/node.asp?id=2152">RSA Security Crypto FAQ</a></li>

+  </ul>

+

+  <h2>Digital Signatures</h2>

+

+  <ul class="none">

+

+    <li><a href="http://www.signaturauskunft.de/">Signaturauskunft</a></li>

+

+    <li><a href="http://www.bundesnetzagentur.de/media/archive/2247.pdf">Signaturgesetz</a></li>

+

+    <li><a href="http://www.bundesnetzagentur.de/media/archive/5264.pdf">Signaturverordnung</a></li>

+  </ul>

+

+  <h2>Eclipse</h2>

+

+  <ul class="none">

+    <li><a href="http://www.eclipse.org/">Eclipse Foundation</a></li>

+

+    <li><a href="http://www.eclipseproject.de/">Eclipse Project</a></li>

+

+    <li><a href="http://eclipse.dzone.com/">Eclipse Zone</a></li>

+  </ul>

+

+  <h2>Eclipse XML Plug-Ins</h2>

+

+  <ul class="none">

+    <li><a href="http://www.eclipseplugincentral.com/">Eclipse Plugin Central</a></li>

+

+    <li><a href="http://amateras.sourceforge.jp/cgi-bin/fswiki_en/wiki.cgi">EclipseHTMLEditor</a></li>
+
+    <li><a href="http://editorxml.sourceforge.net/">Rinzo</a></li>

+

+    <li><a href="http://www.xcarecrows.com/">Xcarecrows 4 XML</a></li>

+

+    <li><a href="http://www.xmlbuddy.com/">XMLBuddy</a></li>

+  </ul>

+

+  <h2>IT Security</h2>

+

+  <ul class="none">

+    <li><a href="https://www.a-i3.org/">A-I3 Arbeitsgruppe Identitätsschutz im Internet</a></li>

+

+    <li><a href="http://www.bsi.bund.de/">Bundesamt für Sicherheit in der Informationstechnik</a></li>

+

+    <li><a href="http://www.bsi-fuer-buerger.de/">Bundesamt für Sicherheit in der Informationstechnik für Bürger</a></li>

+

+    <li><a href="http://www.datenschutz.de/">Virtuelles Datenschutzbüro</a></li>

+  </ul>

+

+  <h2>Java</h2>

+

+  <ul class="none">

+    <li><a href="http://java.sun.com/">Java Technology</a></li>

+

+    <li><a href="http://java.sun.com/j2se/1.5.0/download.jsp">Java 2 Platform Standard Edition 5.0</a></li>

+

+    <li><a href="http://java.sun.com/javase/downloads/index.jsp">Java 2 Platform Standard Edition 6.0</a></li>

+  </ul>

+

+  <h2>Other</h2>

+

+  <ul class="none">

+    <li><a href="http://www.ietf.org/">Internet Engineering Task Force</a></li>

+

+    <li><a href="http://www.bouncycastle.org/">Legion of the Bouncy Castle</a></li>

+

+    <li><a href="http://www.ietf.org/rfc/rfc2045.txt">Multipurpose Internet Mail Extensions</a></li>

+

+    <li><a href="http://www.ietf.org/html.charters/pkix-charter.html">Public-Key Infrastructure</a></li>

+

+    <li><a href="http://docs.oasis-open.org/ubl/cd-UBL-1.0/">Universal Business Language 1.0</a></li>

+

+    <li><a href="http://www.ietf.org/rfc/rfc2396.txt">Uniform Resource Identifiers: Generic Syntax</a></li>

+  </ul>

+

+  <h2>Web Services</h2>

+

+  <ul class="none">

+    <li><a href="http://www.ws-i.org/Profiles/BasicProfile-1.0.html">Basic Profile 1.0</a></li>

+

+    <li><a href="http://www.ws-i.org/Profiles/BasicProfile-1.1.html">Basic Profile 1.1</a></li>

+

+    <li><a href="http://www.ws-i.org/Profiles/BasicSecurityProfile-1.0.html">Basic Security Profile 1.1</a></li>

+

+    <li><a href="http://www.w3.org/TR/soap12-part0/">W3C SOAP Version 1.2 Part 0: Primer</a></li>

+

+    <li><a href="http://www.w3.org/TR/soap12-part1/">W3C SOAP Version 1.2 Part 1: Messaging Framework</a></li>

+

+    <li><a href="http://www.w3.org/TR/soap12-part2/">W3C SOAP Version 1.2 Part 2: Adjuncts</a></li>

+

+    <li><a href="http://www.w3.org/2002/ws/">W3C Web Services Activity</a></li>

+

+    <li><a href="http://www.ws-i.org/">Web Services Interoperability Organization</a></li>

+  </ul>

+

+  <h2>XML</h2>

+

+  <ul class="none">

+    <li><a href="http://www.w3.org/XML/">Extensible Markup Language</a></li>

+

+    <li><a href="http://xml.coverpages.org/">The CoverPages</a></li>

+

+    <li><a href="http://www.w3.org/">W3C Homepage</a></li>

+

+    <li><a href="http://www.w3schools.com/">W3Schools</a></li>

+

+    <li><a href="http://www.xmlguru.de/">XML Guru</a></li>

+

+    <li><a href="http://www.linkwerk.com/pub/xmlidp/2000/buch.html">XML in der Praxis</a></li>

+

+    <li><a href="http://www.xml.org/">xml.org</a></li>

+

+    <li><a href="http://www.w3.org/TR/xml-id/">xml:id</a></li>

+  </ul>

+

+  <h2>XML Canonicalization</h2>

+

+  <ul class="none">

+    <li><a href="http://www.w3.org/TR/xml-c14n/">Canonical XML 1.0</a></li>

+

+    <li><a href="http://www.w3.org/TR/xml-c14n11">Canonical XML 1.1</a></li>

+

+    <li><a href="http://www.w3.org/TR/xml-exc-c14n">Exclusive XML Canonicalization 1.0</a></li>

+

+    <li><a href="http://www.w3.org/TR/2006/WD-C14N-issues-20060915/">Known Issues with Canonical XML 1.0</a></li>

+  </ul>

+

+  <h2>XML Digital Signatures</h2>

+

+  <ul class="none">

+    <li><a href="http://www.w3.org/TR/xmlenc-decrypt">Decryption Transform for XML Signature</a></li>

+

+    <li><a href="http://www.w3.org/TR/2006/WD-DSig-usage-20060915/">Using XML Digital Signatures in the 2006 XML Environment</a></li>

+

+    <li><a href="http://www.w3c.org/TR/XAdES">XML Advanced Electronic Signatures</a></li>

+

+    <li><a href="http://www.xml.com/pub/a/2001/08/08/xmldsig.html">XML Digital Signatures Introduction</a></li>

+

+    <li><a href="http://www.w3.org/Signature/">XML DSig Working Group</a></li>

+

+    <li><a href="http://www.w3.org/TR/xmldsig-requirements">XML Signature Requirements</a></li>

+

+    <li><a href="http://www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd">XML Signature Schema</a></li>

+

+    <li><a href="http://www.w3.org/TR/xmldsig-core/">XML Signature Syntax and Processing</a></li>

+

+    <li><a href="http://www.w3.org/TR/xmldsig-filter2/">XML Signature XPath Filter 2.0</a></li>

+  </ul>

+

+  <h2>XML Encryption</h2>

+

+  <ul class="none">

+    <li><a href="http://www.w3.org/TR/xml-encryption-req">XML Encryption Requirements</a></li>

+

+    <li><a href="http://www.w3.org/TR/xmlenc-core/xenc-schema.xsd">XML Encryption Schema</a></li>

+

+    <li><a href="http://www.w3.org/TR/xmlenc-core/">XML Encryption Syntax and Processing</a></li>

+

+    <li><a href="http://www.w3.org/Encryption/2001/">XML Encryption Working Group</a></li>

+  </ul>

+

+  <h2>XML Key Management</h2>

+

+  <ul class="none">

+    <li><a href="http://www.w3.org/TR/xkms2/">XML Key Management Specification</a></li>

+

+    <li><a href="http://www.w3.org/2001/XKMS/">XML Key Management Working Group</a></li>

+  </ul>
+
+  <h2>XML Security</h2>
+
+  <ul class="none">
+    <li><a href="http://www.w3.org/Security/">XML Security</a></li>
+
+    <li><a href="http://www.w3.org/2008/xmlsec/">XML Security Working Group</a></li>
+  </ul>

+

+  <h2>XML-Security Plug-In</h2>

+

+  <ul class="none">

+    <li><a href="http://sourceforge.net/projects/xml-security">Discover XML Security@SourceForge</a></li>

+

+    <li><a href="http://www.xml-sicherheit.de/">Experience XML Security @XML-Sicherheit</a></li>

+  </ul>

+</body>

+</html>

+

diff --git a/sourceediting/documentation/org.eclipse.wst.xml.security.doc/toc.xml b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/toc.xml
new file mode 100644
index 0000000..512837d
--- /dev/null
+++ b/sourceediting/documentation/org.eclipse.wst.xml.security.doc/toc.xml
@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<?NLS TYPE="org.eclipse.help.toc"?>

+

+<toc label="XML Security Tools User Guide" topic="book.html">

+    <topic label="Overview" href="overview.html"/>

+    <topic label="XML-Security Basics" href="basics/xml-security.html">

+        <topic label="Beispiel" href="basics/sample.html"/>

+        <topic label="Basic Security Profile" href="basics/bsp.html"/>

+        <topic label="Digitale Signaturen" href="basics/signatures_basics.html">

+            <topic label="Präsentationsproblem" href="basics/signatures_presentation.html"/>

+            <topic label="Kanonisierung und Transformation" href="basics/signatures_canon_transform.html">

+                <topic label="Kanonisierung" href="basics/signatures_canon.html"/>

+                <topic label="Transformation" href="basics/signatures_transform.html"/>

+            </topic>

+            <topic label="Signatur-Varianten" href="basics/signatures_types.html">

+                <topic label="Enveloped" href="basics/signatures_enveloped.html"/>

+                <topic label="Enveloping" href="basics/signatures_enveloping.html"/>

+                <topic label="Detached" href="basics/signatures_detached.html"/>

+            </topic>

+            <topic label="Syntax" href="basics/signatures_syntax.html">

+                <topic label="Das Signature Element" href="basics/signatures_syntax_signature.html"/>

+                <topic label="Das SignedInfo Element" href="basics/signatures_syntax_signedinfo.html"/>

+                <topic label="Das SignatureValue Element" href="basics/signatures_syntax_signaturevalue.html"/>

+                <topic label="Das KeyInfo Element" href="basics/signatures_syntax_keyinfo.html"/>

+                <topic label="Das Object Element" href="basics/signatures_syntax_object.html"/>

+            </topic>

+            <topic label="Beispiel - signiert" href="basics/sample_signed.html"/>

+            <topic label="Signierung" href="basics/signatures_sign.html"/>

+            <topic label="Verifizierung" href="basics/signatures_verify.html"/>

+        </topic>

+        <topic label="Verschlüsselung" href="basics/encryption_basics.html">

+            <topic label="Syntax" href="basics/encryption_syntax.html">

+                <topic label="EncryptedType" href="basics/encryption_syntax_encryptedtype.html"/>

+                <topic label="Das EncryptedData Element" href="basics/encryption_syntax_encrypteddata.html"/>

+                <topic label="Das EncryptionMethod Element" href="basics/encryption_syntax_encryptionmethod.html"/>

+                <topic label="Das KeyInfo Element" href="basics/encryption_syntax_keyinfo.html"/>

+                <topic label="Das CipherData Element" href="basics/encryption_syntax_cipherdata.html"/>

+                <topic label="Das EncryptionProperties Element" href="basics/encryption_syntax_encryptionproperties.html"/>

+            </topic>

+            <topic label="Beispiel - verschlüsselt" href="basics/sample_encrypted.html"/>

+            <topic label="Verschlüsselung" href="basics/encryption_encrypt.html"/>

+            <topic label="Entschlüsselung" href="basics/encryption_decrypt.html"/>

+        </topic>

+    </topic>

+    <topic label="XML-Security Plug-In" href="plugin/overview.html">

+        <topic label="Cheat Sheets" href="plugin/cheatsheets.html"/>

+        <topic label="Preferences" href="plugin/prefs.html">

+            <topic label="Digitale Signaturen" href="plugin/prefs_sign.html"/>

+            <topic label="Verschlüsselung" href="plugin/prefs_encrypt.html"/>

+        </topic>

+        <topic label="Quick Functions" href="plugin/quick.html"/>

+        <topic label="Digital Signature Wizard" href="plugin/sign.html">

+            <topic label="Resource and Signature Type" href="plugin/sign_page_resource.html"/>

+            <topic label="Keys" href="plugin/sign_page_keys.html">

+                <topic label="Open a Key" href="plugin/sign_page_open_key.html"/>

+                <topic label="Create a Key" href="plugin/sign_page_create_key.html"/>

+                <topic label="Create a Keystore" href="plugin/sign_page_create_keystore.html"/>

+            </topic>

+            <topic label="Algorithms" href="plugin/sign_page_algorithms.html"/>

+        </topic>

+        <topic label="Digital Signatures View" href="plugin/verify.html"/>

+        <topic label="Encryption Wizard" href="plugin/encrypt.html">

+            <topic label="Resource and Encryption Type" href="plugin/encrypt_page_resource.html"/>
+            <topic label="Keys" href="plugin/encrypt_page_keys.html">
+                <topic label="Open a Key" href="plugin/encrypt_page_open_key.html"/>
+                <topic label="Create a Key" href="plugin/encrypt_page_create_key.html"/>
+                <topic label="Create a Keystore" href="plugin/encrypt_page_create_keystore.html"/>
+            </topic>

+            <topic label="Algorithms" href="plugin/encrypt_page_algorithms.html"/>

+        </topic>

+        <topic label="Decryption Wizard" href="plugin/decrypt.html">

+            <topic label="Decryption" href="plugin/decrypt_page_decryption.html"/>

+        </topic>

+        <topic label="Canonicalization" href="plugin/canonicalize.html"/>

+    </topic>

+    <topic label="Glossary" href="glossary.html"/>

+    <topic label="Literature" href="literature.html"/>

+    <topic label="Resources" href="resources.html"/>

+    <topic label="Legal" href="notices.html"/>

+</toc>