Index: wsdl/abac.wsdl
===================================================================
--- wsdl/abac.wsdl	(revision 8d8518719b948b385fcd1e8bae5d3e199d02470b)
+++ wsdl/abac.wsdl	(revision 3fee903baa9487506037d8f2f078b6f3fc887247)
@@ -28,5 +28,5 @@
     <part name="NegotiateResponseBody" type="xsd1:negotiationType"/>
   </message>
-  
+ 
   <message name="DiscoveryRequestMessage">
     <part name="DiscoveryRequestBody" type="xsd1:discoveryType"/>
@@ -49,4 +49,21 @@
   </message>
 
+  <message name="AddCertificateRequestMessage">
+    <part name="AddCertificateRequestBody" type="xsd1:addCertificateRequest"/>
+  </message>
+
+  <message name="AddCertificateResponseMessage">
+    <part name="AddCertificateResponseBody" type="xsd1:certificateAlias"/>
+  </message>
+
+  <message name="RemoveCertificateRequestMessage">
+    <part name="RemoveCertificateRequestBody" type="xsd1:certificateAlias"/>
+  </message>
+
+  <message name="RemoveCertificateResponseMessage">
+    <part name="RemoveCertificateResponseBody"
+          type="xsd1:removeCertificateResponse"/>
+  </message>
+
   <message name="AccessRequestMessage">
     <part name="AccessRequestBody" type="xsd1:negotiationRequest"/>
@@ -56,5 +73,4 @@
     <part name="AccessResponseBody" type="xsd1:negotiationResult"/>
   </message>
-A
 
   <message name="CreateContextRequestMessage">
@@ -105,4 +121,20 @@
       <input message="tns:DiscoveryRequestMessage"/>
       <output message="tns:DiscoveryResponseMessage"/>
+      <fault name="NegotiateFeddFault" message="tns:FaultMessage"/>
+    </operation>
+    <operation name="AddCertificate">
+      <documentation>
+	Publishes a new X.509 identity certificate globally
+      </documentation>
+      <input message="tns:AddCertificateRequestMessage"/>
+      <output message="tns:AddCertificateResponseMessage"/>
+      <fault name="NegotiateFeddFault" message="tns:FaultMessage"/>
+    </operation>
+    <operation name="RemoveCertificate">
+      <documentation>
+	Removes an existing X.509 identity certificate globally
+      </documentation>
+      <input message="tns:RemoveCertificateRequestMessage"/>
+      <output message="tns:RemoveCertificateResponseMessage"/>
       <fault name="NegotiateFeddFault" message="tns:FaultMessage"/>
     </operation>
@@ -154,5 +186,5 @@
       </operation>
       <operation name="Access">
-	<soap:operation soapAction="AccessReqest"/> 
+	<soap:operation soapAction="AccessRequest"/> 
 	<input>
 	  <soap:body use="literal" parts="tns:AccessRequestBody"
@@ -172,5 +204,5 @@
       </operation>
       <operation name="CredentialUpdate">
-        <soap:operation soapAction="Reqest"/>
+        <soap:operation soapAction="CredentialUpdate"/>
         <input>
           <soap:body use="literal" parts="tns:CredentialUpdateRequestBody"
@@ -180,4 +212,40 @@
         <output>
           <soap:body use="literal" parts="tns:CredentialUpdateResponseBody"
+            namespace="http://www.isi.edu/faber/fedd.wsdl"
+            encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+        </output>
+        <fault name="NegotiateFeddFault">
+          <soap:fault use="literal"  name="tns:FeddFault"
+            namespace="http://www.isi.edu/faber/fedd.wsdl"
+            encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+        </fault>
+      </operation>
+      <operation name="AddCertificate">
+        <soap:operation soapAction="AddCertificate"/>
+        <input>
+          <soap:body use="literal" parts="tns:AddCertificateRequestBody"
+            namespace="http://www.isi.edu/faber/fedd.wsdl"
+            encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+        </input>
+        <output>
+          <soap:body use="literal" parts="tns:AddCertificateResponseBody"
+            namespace="http://www.isi.edu/faber/fedd.wsdl"
+            encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+        </output>
+        <fault name="NegotiateFeddFault">
+          <soap:fault use="literal"  name="tns:FeddFault"
+            namespace="http://www.isi.edu/faber/fedd.wsdl"
+            encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+        </fault>
+      </operation>
+      <operation name="RemoveCertificate">
+        <soap:operation soapAction="RemoveCertificate"/>
+        <input>
+          <soap:body use="literal" parts="tns:RemoveCertificateRequestBody"
+            namespace="http://www.isi.edu/faber/fedd.wsdl"
+            encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+        </input>
+        <output>
+          <soap:body use="literal" parts="tns:RemoveCertificateResponseBody"
             namespace="http://www.isi.edu/faber/fedd.wsdl"
             encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
Index: wsdl/abac_types.xsd
===================================================================
--- wsdl/abac_types.xsd	(revision 8d8518719b948b385fcd1e8bae5d3e199d02470b)
+++ wsdl/abac_types.xsd	(revision 3fee903baa9487506037d8f2f078b6f3fc887247)
@@ -8,7 +8,5 @@
   <xsd:annotation>
     <xsd:documentation xml:lang="en">
-      Trust negotiation schema for the NAI Labs ABAC Project.
-      Copyright 2002 Networks Associates Technologies, Inc.
-      All rights reserved.
+      Trust negotiation schema for the ABAC Project.
     </xsd:documentation>
   </xsd:annotation> 
@@ -55,4 +53,23 @@
     </xsd:sequence>
   </xsd:complexType>
+
+  <xsd:complexType name="addCertificateRequest">
+    <xsd:sequence>
+      <xsd:element name="cert" type="xsd:string"/>
+    </xsd:sequence>
+  </xsd:complexType>
+
+  <xsd:complexType name="certificateAlias">
+    <xsd:sequence>
+      <xsd:element name="alias" type="xsd:string"/>
+    </xsd:sequence>
+  </xsd:complexType>
+
+  <xsd:complexType name="removeCertificateResponse">
+    <xsd:sequence>
+      <xsd:element name="result" type="xsd:string"/>
+    </xsd:sequence>
+  </xsd:complexType>
+
 
   <xsd:complexType name="discoveryType">
@@ -310,4 +327,9 @@
       <xsd:element name="role" type="tns:roleType"/>
       <xsd:element name="requirement" type="tns:entityType"/>
+      <xsd:choice>
+        <!-- test should not be used in production -->
+        <xsd:element name="test" type="xsd:string"/>
+        <xsd:element name="x509" type="xsd:string"/>
+      </xsd:choice>
     </xsd:sequence>
   </xsd:complexType>
