Index: fedd/wsdl/abac.wsdl
===================================================================
--- fedd/wsdl/abac.wsdl	(revision b57df44f3f87ef6dc062b97970be038b2fd7c614)
+++ fedd/wsdl/abac.wsdl	(revision 67c0e157b6511d6edb22bf3f7e89a8376dec8c53)
@@ -30,4 +30,20 @@
   </message>
 
+  <message name="AccessRequestMessage">
+    <part name="NegotiationContext" type="xsd1:negotiationRequest"/>
+  </message>
+
+  <message name="AccessResponseMessage">
+    <part name="NegotiationResult" type="xsd1:negotiationResult"/>
+  </message>
+
+  <message name="CreateContextRequestMessage">
+    <part name="ContextIn" type="xsd1:contextInfo"/>
+  </message>
+
+  <message name="CreateContextResponseMessage">
+    <part name="ContextOut" type="xsd1:contextInfo"/>
+  </message>
+
   <portType name="feddABACPortType">
     <operation name="Negotiate">
@@ -37,4 +53,20 @@
       <input message="tns:NegotiateRequestMessage"/>
       <output message="tns:NegotiateResponseMessage"/>
+      <fault name="NegotiateFeddFault" message="tns:FaultMessage"/>
+    </operation>
+    <operation name="CreateContext">
+      <documentation>
+	Add a new negotiation context
+      </documentation>
+      <input message="tns:CreateContextRequestMessage"/>
+      <output message="tns:CreateContextResponseMessage"/>
+      <fault name="NegotiateFeddFault" message="tns:FaultMessage"/>
+    </operation>
+    <operation name="AccessRequest">
+      <documentation>
+	Request access to a resource on behalf of a principal
+      </documentation>
+      <input message="tns:AccessRequestMessage"/>
+      <output message="tns:AccessResponseMessage"/>
       <fault name="NegotiateFeddFault" message="tns:FaultMessage"/>
     </operation>
@@ -67,4 +99,40 @@
 	</fault>
       </operation>
+      <operation name="CreateContext">
+	<soap:operation soapAction="CreateContext"/> 
+	<input>
+	  <soap:body use="literal" parts="tns:CreateContextRequestBody"
+	    namespace="http://www.isi.edu/faber/fedd.wsdl"
+	    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+	</input>
+	<output>
+	  <soap:body use="literal" parts="tns:CreateContextResponseBody"
+	    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="AccessRequest">
+	<soap:operation soapAction="AccessReqest"/> 
+	<input>
+	  <soap:body use="literal" parts="tns:AccessRequestBody"
+	    namespace="http://www.isi.edu/faber/fedd.wsdl"
+	    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+	</input>
+	<output>
+	  <soap:body use="literal" parts="tns:AccessResponseBody"
+	    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>
     </binding>
 
Index: fedd/wsdl/abac_types.xsd
===================================================================
--- fedd/wsdl/abac_types.xsd	(revision b57df44f3f87ef6dc062b97970be038b2fd7c614)
+++ fedd/wsdl/abac_types.xsd	(revision 67c0e157b6511d6edb22bf3f7e89a8376dec8c53)
@@ -32,4 +32,34 @@
   </xsd:complexType>
   
+  <xsd:complexType name="negotiationRequest">
+    <xsd:sequence>
+      <xsd:element name="context" type="tns:contextInfo"
+	minOccurs="1" maxOccurs="1"/>
+      <xsd:element name="goal" type="xsd:string"
+	minOccurs="1" maxOccurs="1"/>
+    </xsd:sequence>
+  </xsd:complexType>
+
+  <xsd:complexType name="negotiationResult">
+    <xsd:sequence>
+      <xsd:element name="goal" type="xsd:string"
+	minOccurs="1" maxOccurs="1"/>
+      <xsd:element name="result" type="xsd:string"
+	minOccurs="1" maxOccurs="1"/>
+      <xsd:element name="provenance" type="xsd:string"
+	minOccurs="0" maxOccurs="1"/>
+    </xsd:sequence>
+  </xsd:complexType>
+
+  <!--Context info can be: the context data, a file pointing to the data, or
+        a uid handle to the data-->
+  <xsd:complexType name="contextInfo">
+    <xsd:choice>
+      <xsd:element name="context" type="tns:negotiationContext"/>
+      <xsd:element name="contextFile" type="xsd:string"/>
+      <xsd:element name="contextID" type="xsd:string"/>
+    </xsd:choice>
+  </xsd:complexType>
+
   <xsd:complexType name="negotiationContext">
     <xsd:sequence>
Index: fedd/wsdl/build.xml
===================================================================
--- fedd/wsdl/build.xml	(revision 67c0e157b6511d6edb22bf3f7e89a8376dec8c53)
+++ fedd/wsdl/build.xml	(revision 67c0e157b6511d6edb22bf3f7e89a8376dec8c53)
@@ -0,0 +1,69 @@
+<project name="axis-abac" default="compile" basedir=".">
+
+    <description>
+        Integrating attributed-based access control into DETER federations.
+    </description>
+  <!-- set global properties for this build -->
+  <property name="src" location="src"/>
+  <property name="build" location="build"/>
+  <property name="dist"  location="dist"/>
+  <property name="axis.home" location="../axis2-1.5"/>
+  <property name="java.lib"  location="/usr/share/java"/>
+
+  <!-- wsdl specific constants -->
+  <!--property name="axis.home" location="src"/-->
+  <property name="local.wsdl" location="abac.wsdl"/>
+
+  <path id="java.classpath">
+    <fileset dir="${java.lib}">
+      <include name="**/*.jar" />
+    </fileset>
+  </path>
+
+  <path id="axis.classpath">
+    <fileset dir="${axis.home}/lib">
+      <include name="**/*.jar" />
+    </fileset>
+  </path>
+
+  <target name="init">
+    <!-- Create the time stamp -->
+    <tstamp/>
+    <!-- Create the build directory structure used by compile -->
+    <mkdir dir="${build}"/>
+  </target>
+
+  <target name="compile" depends="wsdl" description="compile the source">
+    <!-- Compile the java code from ${src} into ${build} -->
+    <javac srcdir="${src}" destdir="${build}" nowarn="on">
+      <classpath refid="java.classpath"/>
+    </javac>
+  </target>
+
+
+  <target name="wsdl" depends="init" description="generate stubs">
+  <!-- generate java source from the wsdl and xsd files -->
+  <!--axis-wsdl2java output="${src}" testcase="true" verbose="true" all="true"
+    url="${local.wsdl}" -->
+    <java fork="true" classname="org.apache.axis.wsdl.WSDL2Java">
+      <classpath refid="java.classpath"/>
+      <!--classpath refid="axis.classpath"/-->
+      <arg value="--verbose"/>
+      <arg value="--testCase"/>
+      <arg value="--all"/>
+      <arg value="--server-side"/>
+      <arg value="--output"/> <arg value="${src}"/>
+      <arg value="${local.wsdl}"/>
+    </java>
+    <!--/axis-wsdl2java-->
+  </target>
+	
+ <target name="clean" description="remove built code">
+ 	<delete>
+		<fileset dir="src/edu/isi/www/faber/abac_wsdl"/>
+		<fileset dir="src/edu/isi/www/faber/fedd_types"/> 		
+		<fileset dir="src/edu/isi/www/faber/abac_types"/>
+	</delete>
+ </target>	
+
+</project>
