SCOUT-43: jaxb binding

git-svn-id: https://svn.apache.org/repos/asf/webservices/scout/branches/v1.1/scout@796122 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/pom.xml b/pom.xml
index eb6fd2a..f1a417f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,143 +1,104 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<project xmlns="http://maven.apache.org/POM/4.0.0"

-	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

-	<modelVersion>4.0.0</modelVersion>

-	<parent>

-		<groupId>org.apache.ws.scout</groupId>

-		<artifactId>scout-parent</artifactId>

-		<version>1.0.SNAPSHOT</version>

-	</parent>

-	<artifactId>scout</artifactId>

-	<name>Scout Implementation</name>

-	<version>SNAPSHOT</version>

-	<description>

-		Apache Scout is an implementation of the JSR 93 - JavaTM API for

-		XML Registries 1.0 (JAXR)

-	</description>

-	<dependencies>

-		<dependency>

-			<groupId>org.apache.ws.scout</groupId>

-			<artifactId>jaxr-api</artifactId>

-			<version>1.0.SNAPSHOT</version>

-		</dependency>

-

-		<!-- external JARs -->

-

-	</dependencies>

-	<build>

-		<plugins>

-			<plugin>

-				<artifactId>maven-compiler-plugin</artifactId>

-				<inherited>true</inherited>

-				<configuration>

-					<source>1.5</source>

-					<target>1.5</target>

-				</configuration>

-			</plugin>

-			<plugin>

-				<artifactId>maven-surefire-plugin</artifactId>

-				<version>2.4</version>

-				<configuration>

-					<skip>false</skip>

-					<excludes>

-						<exclude>**/*Abstract*.java</exclude>

-					</excludes>

-					<includes>

-						<include>**/*Test.java</include>

-					</includes>

-				</configuration>

-			</plugin>

-			<plugin>

-				<groupId>org.apache.maven.plugins</groupId>

-				<artifactId>maven-antrun-plugin</artifactId>

-				<version>1.1</version>

-				<executions>

-					<execution>

-						<id>gen-ts</id>

-						<phase>generate-sources</phase>

-						<configuration>

-							<tasks>

-								<property name="schema.output.base.dir"

-									value="target/schema" />

-								<property

-									name="schema.generated.src.dir"

-									value="${schema.output.base.dir}/src" />

-								<property name="compiled.classes.dir"

-									value="target/classes" />

-

-								<mkdir dir="${schema.output.base.dir}" />

-								<mkdir

-									dir="${schema.generated.src.dir}" />

-								<mkdir dir="${compiled.classes.dir}" />

-

-								<echo>

-									Generating xmlbeans from schema

-								</echo>

-								<taskdef name="xmlbean"

-									classname="org.apache.xmlbeans.impl.tool.XMLBean"

-									classpathref="maven.runtime.classpath" />

-								<xmlbean

-									classgendir="${compiled.classes.dir}"

-									srcgendir="${schema.generated.src.dir}"

-									classpathref="maven.runtime.classpath">

-									<fileset dir="src/main/resources"

-										includes="uddi_v2.xsd,uddi_v2.xsdconfig" />

-								</xmlbean>

-							</tasks>

-						</configuration>

-						<goals>

-							<goal>run</goal>

-						</goals>

-					</execution>

-				</executions>

-			</plugin>

-			<plugin>

-				<groupId>org.codehaus.mojo</groupId>

-				<artifactId>build-helper-maven-plugin</artifactId>

-				<executions>

-					<execution>

-						<id>add-source</id>

-						<phase>generate-sources</phase>

-						<goals>

-							<goal>add-source</goal>

-						</goals>

-						<configuration>

-							<sources>

-								<source>target/schema/src</source>

-							</sources>

-						</configuration>

-					</execution>

-				</executions>

-			</plugin>

-		</plugins>

-	</build>

-	<profiles>

-    <profile>

-      <id>release</id>

-      <activation>

-        <property>

-          <name>release</name>

-          <value></value>

-        </property>

-      </activation>

-      <build>

-        <plugins>

-          <plugin>

-            <artifactId>maven-javadoc-plugin</artifactId>

-            <executions>

-              <execution>

-                <goals>

-                  <goal>jar</goal>

-                </goals>

-              </execution>

-            </executions>

-            <configuration>

-              <attach>true</attach>

-            </configuration>

-          </plugin>

-        </plugins>

-      </build>

-    </profile>

-  </profiles>

-</project>

+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>org.apache.ws.scout</groupId>
+		<artifactId>scout-parent</artifactId>
+		<version>1.1-SNAPSHOT</version>
+	</parent>
+	<artifactId>scout</artifactId>
+	<name>Scout Implementation</name>
+	<description>
+		Apache Scout is an implementation of the JSR 93 - JavaTM API for
+		XML Registries 1.0 (JAXR)
+	</description>
+	<dependencies>
+		<dependency>
+			<groupId>org.apache.ws.scout</groupId>
+			<artifactId>jaxr-api</artifactId>
+			<version>1.0.SNAPSHOT</version>
+		</dependency>
+
+		<!-- external JARs -->
+		<dependency>
+			<groupId>com.sun.xml.bind</groupId>
+			<artifactId>jaxb-impl</artifactId>
+			<version>2.1.9</version>
+		</dependency>
+                
+
+	</dependencies>
+	<build>
+		<plugins>
+			<plugin>
+				<artifactId>maven-compiler-plugin</artifactId>
+				<inherited>true</inherited>
+				<configuration>
+					<source>1.5</source>
+					<target>1.5</target>
+				</configuration>
+			</plugin>
+			<plugin>
+				<artifactId>maven-surefire-plugin</artifactId>
+				<version>2.4</version>
+				<configuration>
+					<skip>false</skip>
+					<excludes>
+						<exclude>**/*Abstract*.java</exclude>
+					</excludes>
+					<includes>
+						<include>**/*Test.java</include>
+					</includes>
+				</configuration>
+			</plugin>
+			<plugin>
+				<groupId>org.codehaus.mojo</groupId>
+				<artifactId>build-helper-maven-plugin</artifactId>
+				<executions>
+					<execution>
+						<id>add-source</id>
+						<phase>generate-sources</phase>
+						<goals>
+							<goal>add-source</goal>
+						</goals>
+						<configuration>
+							<sources>
+								<source>target/schema/src</source>
+							</sources>
+						</configuration>
+					</execution>
+				</executions>
+			</plugin>
+		</plugins>
+	</build>
+	<profiles>
+    <profile>
+      <id>release</id>
+      <activation>
+        <property>
+          <name>release</name>
+          <value></value>
+        </property>
+      </activation>
+      <build>
+        <plugins>
+          <plugin>
+            <artifactId>maven-javadoc-plugin</artifactId>
+            <executions>
+              <execution>
+                <goals>
+                  <goal>jar</goal>
+                </goals>
+              </execution>
+            </executions>
+            <configuration>
+              <attach>true</attach>
+            </configuration>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+  </profiles>
+</project>
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/AccessPoint.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/AccessPoint.java
new file mode 100644
index 0000000..ec897a1
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/AccessPoint.java
@@ -0,0 +1,94 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlValue;
+
+
+/**
+ * <p>Java class for accessPoint complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="accessPoint">
+ *   &lt;simpleContent>
+ *     &lt;extension base="&lt;http://www.w3.org/2001/XMLSchema>string">
+ *       &lt;attribute name="URLType" use="required" type="{urn:uddi-org:api_v2}URLType" />
+ *     &lt;/extension>
+ *   &lt;/simpleContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "accessPoint", propOrder = {
+    "value"
+})
+public class AccessPoint {
+
+    @XmlValue
+    protected String value;
+    @XmlAttribute(name = "URLType", required = true)
+    protected URLType urlType;
+
+    /**
+     * Gets the value of the value property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getValue() {
+        return value;
+    }
+
+    /**
+     * Sets the value of the value property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setValue(String value) {
+        this.value = value;
+    }
+
+    /**
+     * Gets the value of the urlType property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link URLType }
+     *     
+     */
+    public URLType getURLType() {
+        return urlType;
+    }
+
+    /**
+     * Sets the value of the urlType property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link URLType }
+     *     
+     */
+    public void setURLType(URLType value) {
+        this.urlType = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/AddPublisherAssertions.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/AddPublisherAssertions.java
new file mode 100644
index 0000000..31fd62b
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/AddPublisherAssertions.java
@@ -0,0 +1,132 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for add_publisherAssertions complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="add_publisherAssertions">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}authInfo"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}publisherAssertion" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "add_publisherAssertions", propOrder = {
+    "authInfo",
+    "publisherAssertion"
+})
+public class AddPublisherAssertions {
+
+    @XmlElement(required = true)
+    protected String authInfo;
+    @XmlElement(required = true)
+    protected List<PublisherAssertion> publisherAssertion;
+    @XmlAttribute(required = true)
+    protected String generic;
+
+    /**
+     * Gets the value of the authInfo property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getAuthInfo() {
+        return authInfo;
+    }
+
+    /**
+     * Sets the value of the authInfo property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setAuthInfo(String value) {
+        this.authInfo = value;
+    }
+
+    /**
+     * Gets the value of the publisherAssertion property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the publisherAssertion property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getPublisherAssertion().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link PublisherAssertion }
+     * 
+     * 
+     */
+    public List<PublisherAssertion> getPublisherAssertion() {
+        if (publisherAssertion == null) {
+            publisherAssertion = new ArrayList<PublisherAssertion>();
+        }
+        return this.publisherAssertion;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/Address.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/Address.java
new file mode 100644
index 0000000..8d32ff1
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/Address.java
@@ -0,0 +1,156 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for address complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="address">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}addressLine" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="useType" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="sortCode" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="tModelKey" type="{urn:uddi-org:api_v2}tModelKey" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "address", propOrder = {
+    "addressLine"
+})
+public class Address {
+
+    protected List<AddressLine> addressLine;
+    @XmlAttribute
+    protected String useType;
+    @XmlAttribute
+    protected String sortCode;
+    @XmlAttribute
+    protected String tModelKey;
+
+    /**
+     * Gets the value of the addressLine property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the addressLine property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getAddressLine().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link AddressLine }
+     * 
+     * 
+     */
+    public List<AddressLine> getAddressLine() {
+        if (addressLine == null) {
+            addressLine = new ArrayList<AddressLine>();
+        }
+        return this.addressLine;
+    }
+
+    /**
+     * Gets the value of the useType property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getUseType() {
+        return useType;
+    }
+
+    /**
+     * Sets the value of the useType property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setUseType(String value) {
+        this.useType = value;
+    }
+
+    /**
+     * Gets the value of the sortCode property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getSortCode() {
+        return sortCode;
+    }
+
+    /**
+     * Sets the value of the sortCode property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setSortCode(String value) {
+        this.sortCode = value;
+    }
+
+    /**
+     * Gets the value of the tModelKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getTModelKey() {
+        return tModelKey;
+    }
+
+    /**
+     * Sets the value of the tModelKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setTModelKey(String value) {
+        this.tModelKey = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/AddressLine.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/AddressLine.java
new file mode 100644
index 0000000..a2b63b8
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/AddressLine.java
@@ -0,0 +1,121 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlValue;
+
+
+/**
+ * <p>Java class for addressLine complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="addressLine">
+ *   &lt;simpleContent>
+ *     &lt;extension base="&lt;http://www.w3.org/2001/XMLSchema>string">
+ *       &lt;attribute name="keyName" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="keyValue" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/extension>
+ *   &lt;/simpleContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "addressLine", propOrder = {
+    "value"
+})
+public class AddressLine {
+
+    @XmlValue
+    protected String value;
+    @XmlAttribute
+    protected String keyName;
+    @XmlAttribute
+    protected String keyValue;
+
+    /**
+     * Gets the value of the value property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getValue() {
+        return value;
+    }
+
+    /**
+     * Sets the value of the value property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setValue(String value) {
+        this.value = value;
+    }
+
+    /**
+     * Gets the value of the keyName property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getKeyName() {
+        return keyName;
+    }
+
+    /**
+     * Sets the value of the keyName property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setKeyName(String value) {
+        this.keyName = value;
+    }
+
+    /**
+     * Gets the value of the keyValue property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getKeyValue() {
+        return keyValue;
+    }
+
+    /**
+     * Sets the value of the keyValue property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setKeyValue(String value) {
+        this.keyValue = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/AssertionStatusItem.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/AssertionStatusItem.java
new file mode 100644
index 0000000..109a23d
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/AssertionStatusItem.java
@@ -0,0 +1,181 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for assertionStatusItem complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="assertionStatusItem">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}fromKey"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}toKey"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}keyedReference"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}keysOwned"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="completionStatus" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "assertionStatusItem", propOrder = {
+    "fromKey",
+    "toKey",
+    "keyedReference",
+    "keysOwned"
+})
+public class AssertionStatusItem {
+
+    @XmlElement(required = true)
+    protected String fromKey;
+    @XmlElement(required = true)
+    protected String toKey;
+    @XmlElement(required = true)
+    protected KeyedReference keyedReference;
+    @XmlElement(required = true)
+    protected KeysOwned keysOwned;
+    @XmlAttribute(required = true)
+    protected String completionStatus;
+
+    /**
+     * Gets the value of the fromKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getFromKey() {
+        return fromKey;
+    }
+
+    /**
+     * Sets the value of the fromKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setFromKey(String value) {
+        this.fromKey = value;
+    }
+
+    /**
+     * Gets the value of the toKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getToKey() {
+        return toKey;
+    }
+
+    /**
+     * Sets the value of the toKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setToKey(String value) {
+        this.toKey = value;
+    }
+
+    /**
+     * Gets the value of the keyedReference property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link KeyedReference }
+     *     
+     */
+    public KeyedReference getKeyedReference() {
+        return keyedReference;
+    }
+
+    /**
+     * Sets the value of the keyedReference property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link KeyedReference }
+     *     
+     */
+    public void setKeyedReference(KeyedReference value) {
+        this.keyedReference = value;
+    }
+
+    /**
+     * Gets the value of the keysOwned property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link KeysOwned }
+     *     
+     */
+    public KeysOwned getKeysOwned() {
+        return keysOwned;
+    }
+
+    /**
+     * Sets the value of the keysOwned property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link KeysOwned }
+     *     
+     */
+    public void setKeysOwned(KeysOwned value) {
+        this.keysOwned = value;
+    }
+
+    /**
+     * Gets the value of the completionStatus property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getCompletionStatus() {
+        return completionStatus;
+    }
+
+    /**
+     * Sets the value of the completionStatus property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setCompletionStatus(String value) {
+        this.completionStatus = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/AssertionStatusReport.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/AssertionStatusReport.java
new file mode 100644
index 0000000..c15b40d
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/AssertionStatusReport.java
@@ -0,0 +1,129 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for assertionStatusReport complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="assertionStatusReport">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}assertionStatusItem" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="operator" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "assertionStatusReport", propOrder = {
+    "assertionStatusItem"
+})
+public class AssertionStatusReport {
+
+    protected List<AssertionStatusItem> assertionStatusItem;
+    @XmlAttribute(required = true)
+    protected String generic;
+    @XmlAttribute(required = true)
+    protected String operator;
+
+    /**
+     * Gets the value of the assertionStatusItem property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the assertionStatusItem property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getAssertionStatusItem().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link AssertionStatusItem }
+     * 
+     * 
+     */
+    public List<AssertionStatusItem> getAssertionStatusItem() {
+        if (assertionStatusItem == null) {
+            assertionStatusItem = new ArrayList<AssertionStatusItem>();
+        }
+        return this.assertionStatusItem;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+    /**
+     * Gets the value of the operator property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getOperator() {
+        return operator;
+    }
+
+    /**
+     * Sets the value of the operator property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setOperator(String value) {
+        this.operator = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/AuthToken.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/AuthToken.java
new file mode 100644
index 0000000..cd09fe9
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/AuthToken.java
@@ -0,0 +1,124 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for authToken complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="authToken">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}authInfo"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="operator" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "authToken", propOrder = {
+    "authInfo"
+})
+public class AuthToken {
+
+    @XmlElement(required = true)
+    protected String authInfo;
+    @XmlAttribute(required = true)
+    protected String generic;
+    @XmlAttribute(required = true)
+    protected String operator;
+
+    /**
+     * Gets the value of the authInfo property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getAuthInfo() {
+        return authInfo;
+    }
+
+    /**
+     * Sets the value of the authInfo property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setAuthInfo(String value) {
+        this.authInfo = value;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+    /**
+     * Gets the value of the operator property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getOperator() {
+        return operator;
+    }
+
+    /**
+     * Sets the value of the operator property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setOperator(String value) {
+        this.operator = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/BindingDetail.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/BindingDetail.java
new file mode 100644
index 0000000..1497e0e
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/BindingDetail.java
@@ -0,0 +1,156 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for bindingDetail complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="bindingDetail">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}bindingTemplate" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="operator" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="truncated" type="{urn:uddi-org:api_v2}truncated" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "bindingDetail", propOrder = {
+    "bindingTemplate"
+})
+public class BindingDetail {
+
+    protected List<BindingTemplate> bindingTemplate;
+    @XmlAttribute(required = true)
+    protected String generic;
+    @XmlAttribute(required = true)
+    protected String operator;
+    @XmlAttribute
+    protected Truncated truncated;
+
+    /**
+     * Gets the value of the bindingTemplate property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the bindingTemplate property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getBindingTemplate().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link BindingTemplate }
+     * 
+     * 
+     */
+    public List<BindingTemplate> getBindingTemplate() {
+        if (bindingTemplate == null) {
+            bindingTemplate = new ArrayList<BindingTemplate>();
+        }
+        return this.bindingTemplate;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+    /**
+     * Gets the value of the operator property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getOperator() {
+        return operator;
+    }
+
+    /**
+     * Sets the value of the operator property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setOperator(String value) {
+        this.operator = value;
+    }
+
+    /**
+     * Gets the value of the truncated property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Truncated }
+     *     
+     */
+    public Truncated getTruncated() {
+        return truncated;
+    }
+
+    /**
+     * Sets the value of the truncated property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Truncated }
+     *     
+     */
+    public void setTruncated(Truncated value) {
+        this.truncated = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/BindingTemplate.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/BindingTemplate.java
new file mode 100644
index 0000000..4da9945
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/BindingTemplate.java
@@ -0,0 +1,214 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for bindingTemplate complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="bindingTemplate">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}description" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;choice>
+ *           &lt;element ref="{urn:uddi-org:api_v2}accessPoint"/>
+ *           &lt;element ref="{urn:uddi-org:api_v2}hostingRedirector"/>
+ *         &lt;/choice>
+ *         &lt;element ref="{urn:uddi-org:api_v2}tModelInstanceDetails"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="serviceKey" type="{urn:uddi-org:api_v2}serviceKey" />
+ *       &lt;attribute name="bindingKey" use="required" type="{urn:uddi-org:api_v2}bindingKey" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "bindingTemplate", propOrder = {
+    "description",
+    "accessPoint",
+    "hostingRedirector",
+    "tModelInstanceDetails"
+})
+public class BindingTemplate {
+
+    protected List<Description> description;
+    protected AccessPoint accessPoint;
+    protected HostingRedirector hostingRedirector;
+    @XmlElement(required = true)
+    protected TModelInstanceDetails tModelInstanceDetails;
+    @XmlAttribute
+    protected String serviceKey;
+    @XmlAttribute(required = true)
+    protected String bindingKey;
+
+    /**
+     * Gets the value of the description property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the description property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getDescription().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Description }
+     * 
+     * 
+     */
+    public List<Description> getDescription() {
+        if (description == null) {
+            description = new ArrayList<Description>();
+        }
+        return this.description;
+    }
+
+    /**
+     * Gets the value of the accessPoint property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link AccessPoint }
+     *     
+     */
+    public AccessPoint getAccessPoint() {
+        return accessPoint;
+    }
+
+    /**
+     * Sets the value of the accessPoint property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link AccessPoint }
+     *     
+     */
+    public void setAccessPoint(AccessPoint value) {
+        this.accessPoint = value;
+    }
+
+    /**
+     * Gets the value of the hostingRedirector property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link HostingRedirector }
+     *     
+     */
+    public HostingRedirector getHostingRedirector() {
+        return hostingRedirector;
+    }
+
+    /**
+     * Sets the value of the hostingRedirector property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link HostingRedirector }
+     *     
+     */
+    public void setHostingRedirector(HostingRedirector value) {
+        this.hostingRedirector = value;
+    }
+
+    /**
+     * Gets the value of the tModelInstanceDetails property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link TModelInstanceDetails }
+     *     
+     */
+    public TModelInstanceDetails getTModelInstanceDetails() {
+        return tModelInstanceDetails;
+    }
+
+    /**
+     * Sets the value of the tModelInstanceDetails property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link TModelInstanceDetails }
+     *     
+     */
+    public void setTModelInstanceDetails(TModelInstanceDetails value) {
+        this.tModelInstanceDetails = value;
+    }
+
+    /**
+     * Gets the value of the serviceKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getServiceKey() {
+        return serviceKey;
+    }
+
+    /**
+     * Sets the value of the serviceKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setServiceKey(String value) {
+        this.serviceKey = value;
+    }
+
+    /**
+     * Gets the value of the bindingKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getBindingKey() {
+        return bindingKey;
+    }
+
+    /**
+     * Sets the value of the bindingKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setBindingKey(String value) {
+        this.bindingKey = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/BindingTemplates.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/BindingTemplates.java
new file mode 100644
index 0000000..3e0468f
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/BindingTemplates.java
@@ -0,0 +1,74 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for bindingTemplates complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="bindingTemplates">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}bindingTemplate" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "bindingTemplates", propOrder = {
+    "bindingTemplate"
+})
+public class BindingTemplates {
+
+    protected List<BindingTemplate> bindingTemplate;
+
+    /**
+     * Gets the value of the bindingTemplate property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the bindingTemplate property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getBindingTemplate().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link BindingTemplate }
+     * 
+     * 
+     */
+    public List<BindingTemplate> getBindingTemplate() {
+        if (bindingTemplate == null) {
+            bindingTemplate = new ArrayList<BindingTemplate>();
+        }
+        return this.bindingTemplate;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessDetail.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessDetail.java
new file mode 100644
index 0000000..1f89b48
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessDetail.java
@@ -0,0 +1,156 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for businessDetail complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="businessDetail">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}businessEntity" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="operator" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="truncated" type="{urn:uddi-org:api_v2}truncated" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "businessDetail", propOrder = {
+    "businessEntity"
+})
+public class BusinessDetail {
+
+    protected List<BusinessEntity> businessEntity;
+    @XmlAttribute(required = true)
+    protected String generic;
+    @XmlAttribute(required = true)
+    protected String operator;
+    @XmlAttribute
+    protected Truncated truncated;
+
+    /**
+     * Gets the value of the businessEntity property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the businessEntity property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getBusinessEntity().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link BusinessEntity }
+     * 
+     * 
+     */
+    public List<BusinessEntity> getBusinessEntity() {
+        if (businessEntity == null) {
+            businessEntity = new ArrayList<BusinessEntity>();
+        }
+        return this.businessEntity;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+    /**
+     * Gets the value of the operator property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getOperator() {
+        return operator;
+    }
+
+    /**
+     * Sets the value of the operator property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setOperator(String value) {
+        this.operator = value;
+    }
+
+    /**
+     * Gets the value of the truncated property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Truncated }
+     *     
+     */
+    public Truncated getTruncated() {
+        return truncated;
+    }
+
+    /**
+     * Sets the value of the truncated property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Truncated }
+     *     
+     */
+    public void setTruncated(Truncated value) {
+        this.truncated = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessDetailExt.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessDetailExt.java
new file mode 100644
index 0000000..521c9ef
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessDetailExt.java
@@ -0,0 +1,158 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for businessDetailExt complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="businessDetailExt">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}businessEntityExt" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="operator" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="truncated" type="{urn:uddi-org:api_v2}truncated" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "businessDetailExt", propOrder = {
+    "businessEntityExt"
+})
+public class BusinessDetailExt {
+
+    @XmlElement(required = true)
+    protected List<BusinessEntityExt> businessEntityExt;
+    @XmlAttribute(required = true)
+    protected String generic;
+    @XmlAttribute(required = true)
+    protected String operator;
+    @XmlAttribute
+    protected Truncated truncated;
+
+    /**
+     * Gets the value of the businessEntityExt property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the businessEntityExt property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getBusinessEntityExt().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link BusinessEntityExt }
+     * 
+     * 
+     */
+    public List<BusinessEntityExt> getBusinessEntityExt() {
+        if (businessEntityExt == null) {
+            businessEntityExt = new ArrayList<BusinessEntityExt>();
+        }
+        return this.businessEntityExt;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+    /**
+     * Gets the value of the operator property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getOperator() {
+        return operator;
+    }
+
+    /**
+     * Sets the value of the operator property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setOperator(String value) {
+        this.operator = value;
+    }
+
+    /**
+     * Gets the value of the truncated property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Truncated }
+     *     
+     */
+    public Truncated getTruncated() {
+        return truncated;
+    }
+
+    /**
+     * Sets the value of the truncated property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Truncated }
+     *     
+     */
+    public void setTruncated(Truncated value) {
+        this.truncated = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessEntity.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessEntity.java
new file mode 100644
index 0000000..03bcdef
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessEntity.java
@@ -0,0 +1,325 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for businessEntity complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="businessEntity">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}discoveryURLs" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}name" maxOccurs="unbounded"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}description" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}contacts" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}businessServices" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}identifierBag" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}categoryBag" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="businessKey" use="required" type="{urn:uddi-org:api_v2}businessKey" />
+ *       &lt;attribute name="operator" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="authorizedName" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "businessEntity", propOrder = {
+    "discoveryURLs",
+    "name",
+    "description",
+    "contacts",
+    "businessServices",
+    "identifierBag",
+    "categoryBag"
+})
+public class BusinessEntity {
+
+    protected DiscoveryURLs discoveryURLs;
+    @XmlElement(required = true)
+    protected List<Name> name;
+    protected List<Description> description;
+    protected Contacts contacts;
+    protected BusinessServices businessServices;
+    protected IdentifierBag identifierBag;
+    protected CategoryBag categoryBag;
+    @XmlAttribute(required = true)
+    protected String businessKey;
+    @XmlAttribute
+    protected String operator;
+    @XmlAttribute
+    protected String authorizedName;
+
+    /**
+     * Gets the value of the discoveryURLs property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link DiscoveryURLs }
+     *     
+     */
+    public DiscoveryURLs getDiscoveryURLs() {
+        return discoveryURLs;
+    }
+
+    /**
+     * Sets the value of the discoveryURLs property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link DiscoveryURLs }
+     *     
+     */
+    public void setDiscoveryURLs(DiscoveryURLs value) {
+        this.discoveryURLs = value;
+    }
+
+    /**
+     * Gets the value of the name property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the name property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getName().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Name }
+     * 
+     * 
+     */
+    public List<Name> getName() {
+        if (name == null) {
+            name = new ArrayList<Name>();
+        }
+        return this.name;
+    }
+
+    /**
+     * Gets the value of the description property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the description property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getDescription().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Description }
+     * 
+     * 
+     */
+    public List<Description> getDescription() {
+        if (description == null) {
+            description = new ArrayList<Description>();
+        }
+        return this.description;
+    }
+
+    /**
+     * Gets the value of the contacts property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Contacts }
+     *     
+     */
+    public Contacts getContacts() {
+        return contacts;
+    }
+
+    /**
+     * Sets the value of the contacts property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Contacts }
+     *     
+     */
+    public void setContacts(Contacts value) {
+        this.contacts = value;
+    }
+
+    /**
+     * Gets the value of the businessServices property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link BusinessServices }
+     *     
+     */
+    public BusinessServices getBusinessServices() {
+        return businessServices;
+    }
+
+    /**
+     * Sets the value of the businessServices property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link BusinessServices }
+     *     
+     */
+    public void setBusinessServices(BusinessServices value) {
+        this.businessServices = value;
+    }
+
+    /**
+     * Gets the value of the identifierBag property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link IdentifierBag }
+     *     
+     */
+    public IdentifierBag getIdentifierBag() {
+        return identifierBag;
+    }
+
+    /**
+     * Sets the value of the identifierBag property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link IdentifierBag }
+     *     
+     */
+    public void setIdentifierBag(IdentifierBag value) {
+        this.identifierBag = value;
+    }
+
+    /**
+     * Gets the value of the categoryBag property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link CategoryBag }
+     *     
+     */
+    public CategoryBag getCategoryBag() {
+        return categoryBag;
+    }
+
+    /**
+     * Sets the value of the categoryBag property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link CategoryBag }
+     *     
+     */
+    public void setCategoryBag(CategoryBag value) {
+        this.categoryBag = value;
+    }
+
+    /**
+     * Gets the value of the businessKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getBusinessKey() {
+        return businessKey;
+    }
+
+    /**
+     * Sets the value of the businessKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setBusinessKey(String value) {
+        this.businessKey = value;
+    }
+
+    /**
+     * Gets the value of the operator property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getOperator() {
+        return operator;
+    }
+
+    /**
+     * Sets the value of the operator property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setOperator(String value) {
+        this.operator = value;
+    }
+
+    /**
+     * Gets the value of the authorizedName property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getAuthorizedName() {
+        return authorizedName;
+    }
+
+    /**
+     * Sets the value of the authorizedName property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setAuthorizedName(String value) {
+        this.authorizedName = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessEntityExt.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessEntityExt.java
new file mode 100644
index 0000000..436ea2f
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessEntityExt.java
@@ -0,0 +1,105 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAnyElement;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for businessEntityExt complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="businessEntityExt">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}businessEntity"/>
+ *         &lt;any/>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "businessEntityExt", propOrder = {
+    "businessEntity",
+    "any"
+})
+public class BusinessEntityExt {
+
+    @XmlElement(required = true)
+    protected BusinessEntity businessEntity;
+    @XmlAnyElement(lax = true)
+    protected List<Object> any;
+
+    /**
+     * Gets the value of the businessEntity property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link BusinessEntity }
+     *     
+     */
+    public BusinessEntity getBusinessEntity() {
+        return businessEntity;
+    }
+
+    /**
+     * Sets the value of the businessEntity property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link BusinessEntity }
+     *     
+     */
+    public void setBusinessEntity(BusinessEntity value) {
+        this.businessEntity = value;
+    }
+
+    /**
+     * Gets the value of the any property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the any property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getAny().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Object }
+     * 
+     * 
+     */
+    public List<Object> getAny() {
+        if (any == null) {
+            any = new ArrayList<Object>();
+        }
+        return this.any;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessInfo.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessInfo.java
new file mode 100644
index 0000000..cd90422
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessInfo.java
@@ -0,0 +1,164 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for businessInfo complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="businessInfo">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}name" maxOccurs="unbounded"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}description" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}serviceInfos"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="businessKey" use="required" type="{urn:uddi-org:api_v2}businessKey" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "businessInfo", propOrder = {
+    "name",
+    "description",
+    "serviceInfos"
+})
+public class BusinessInfo {
+
+    @XmlElement(required = true)
+    protected List<Name> name;
+    protected List<Description> description;
+    @XmlElement(required = true)
+    protected ServiceInfos serviceInfos;
+    @XmlAttribute(required = true)
+    protected String businessKey;
+
+    /**
+     * Gets the value of the name property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the name property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getName().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Name }
+     * 
+     * 
+     */
+    public List<Name> getName() {
+        if (name == null) {
+            name = new ArrayList<Name>();
+        }
+        return this.name;
+    }
+
+    /**
+     * Gets the value of the description property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the description property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getDescription().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Description }
+     * 
+     * 
+     */
+    public List<Description> getDescription() {
+        if (description == null) {
+            description = new ArrayList<Description>();
+        }
+        return this.description;
+    }
+
+    /**
+     * Gets the value of the serviceInfos property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link ServiceInfos }
+     *     
+     */
+    public ServiceInfos getServiceInfos() {
+        return serviceInfos;
+    }
+
+    /**
+     * Sets the value of the serviceInfos property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link ServiceInfos }
+     *     
+     */
+    public void setServiceInfos(ServiceInfos value) {
+        this.serviceInfos = value;
+    }
+
+    /**
+     * Gets the value of the businessKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getBusinessKey() {
+        return businessKey;
+    }
+
+    /**
+     * Sets the value of the businessKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setBusinessKey(String value) {
+        this.businessKey = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessInfos.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessInfos.java
new file mode 100644
index 0000000..825f9e3
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessInfos.java
@@ -0,0 +1,74 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for businessInfos complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="businessInfos">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}businessInfo" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "businessInfos", propOrder = {
+    "businessInfo"
+})
+public class BusinessInfos {
+
+    protected List<BusinessInfo> businessInfo;
+
+    /**
+     * Gets the value of the businessInfo property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the businessInfo property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getBusinessInfo().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link BusinessInfo }
+     * 
+     * 
+     */
+    public List<BusinessInfo> getBusinessInfo() {
+        if (businessInfo == null) {
+            businessInfo = new ArrayList<BusinessInfo>();
+        }
+        return this.businessInfo;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessList.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessList.java
new file mode 100644
index 0000000..4ad41ee
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessList.java
@@ -0,0 +1,151 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for businessList complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="businessList">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}businessInfos"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="operator" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="truncated" type="{urn:uddi-org:api_v2}truncated" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "businessList", propOrder = {
+    "businessInfos"
+})
+public class BusinessList {
+
+    @XmlElement(required = true)
+    protected BusinessInfos businessInfos;
+    @XmlAttribute(required = true)
+    protected String generic;
+    @XmlAttribute(required = true)
+    protected String operator;
+    @XmlAttribute
+    protected Truncated truncated;
+
+    /**
+     * Gets the value of the businessInfos property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link BusinessInfos }
+     *     
+     */
+    public BusinessInfos getBusinessInfos() {
+        return businessInfos;
+    }
+
+    /**
+     * Sets the value of the businessInfos property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link BusinessInfos }
+     *     
+     */
+    public void setBusinessInfos(BusinessInfos value) {
+        this.businessInfos = value;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+    /**
+     * Gets the value of the operator property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getOperator() {
+        return operator;
+    }
+
+    /**
+     * Sets the value of the operator property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setOperator(String value) {
+        this.operator = value;
+    }
+
+    /**
+     * Gets the value of the truncated property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Truncated }
+     *     
+     */
+    public Truncated getTruncated() {
+        return truncated;
+    }
+
+    /**
+     * Sets the value of the truncated property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Truncated }
+     *     
+     */
+    public void setTruncated(Truncated value) {
+        this.truncated = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessService.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessService.java
new file mode 100644
index 0000000..c502589
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessService.java
@@ -0,0 +1,215 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for businessService complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="businessService">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}name" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}description" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}bindingTemplates" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}categoryBag" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="serviceKey" use="required" type="{urn:uddi-org:api_v2}serviceKey" />
+ *       &lt;attribute name="businessKey" type="{urn:uddi-org:api_v2}businessKey" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "businessService", propOrder = {
+    "name",
+    "description",
+    "bindingTemplates",
+    "categoryBag"
+})
+public class BusinessService {
+
+    protected List<Name> name;
+    protected List<Description> description;
+    protected BindingTemplates bindingTemplates;
+    protected CategoryBag categoryBag;
+    @XmlAttribute(required = true)
+    protected String serviceKey;
+    @XmlAttribute
+    protected String businessKey;
+
+    /**
+     * Gets the value of the name property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the name property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getName().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Name }
+     * 
+     * 
+     */
+    public List<Name> getName() {
+        if (name == null) {
+            name = new ArrayList<Name>();
+        }
+        return this.name;
+    }
+
+    /**
+     * Gets the value of the description property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the description property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getDescription().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Description }
+     * 
+     * 
+     */
+    public List<Description> getDescription() {
+        if (description == null) {
+            description = new ArrayList<Description>();
+        }
+        return this.description;
+    }
+
+    /**
+     * Gets the value of the bindingTemplates property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link BindingTemplates }
+     *     
+     */
+    public BindingTemplates getBindingTemplates() {
+        return bindingTemplates;
+    }
+
+    /**
+     * Sets the value of the bindingTemplates property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link BindingTemplates }
+     *     
+     */
+    public void setBindingTemplates(BindingTemplates value) {
+        this.bindingTemplates = value;
+    }
+
+    /**
+     * Gets the value of the categoryBag property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link CategoryBag }
+     *     
+     */
+    public CategoryBag getCategoryBag() {
+        return categoryBag;
+    }
+
+    /**
+     * Sets the value of the categoryBag property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link CategoryBag }
+     *     
+     */
+    public void setCategoryBag(CategoryBag value) {
+        this.categoryBag = value;
+    }
+
+    /**
+     * Gets the value of the serviceKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getServiceKey() {
+        return serviceKey;
+    }
+
+    /**
+     * Sets the value of the serviceKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setServiceKey(String value) {
+        this.serviceKey = value;
+    }
+
+    /**
+     * Gets the value of the businessKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getBusinessKey() {
+        return businessKey;
+    }
+
+    /**
+     * Sets the value of the businessKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setBusinessKey(String value) {
+        this.businessKey = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessServices.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessServices.java
new file mode 100644
index 0000000..813f4e4
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/BusinessServices.java
@@ -0,0 +1,74 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for businessServices complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="businessServices">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}businessService" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "businessServices", propOrder = {
+    "businessService"
+})
+public class BusinessServices {
+
+    protected List<BusinessService> businessService;
+
+    /**
+     * Gets the value of the businessService property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the businessService property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getBusinessService().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link BusinessService }
+     * 
+     * 
+     */
+    public List<BusinessService> getBusinessService() {
+        if (businessService == null) {
+            businessService = new ArrayList<BusinessService>();
+        }
+        return this.businessService;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/CategoryBag.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/CategoryBag.java
new file mode 100644
index 0000000..a676f0f
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/CategoryBag.java
@@ -0,0 +1,76 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for categoryBag complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="categoryBag">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}keyedReference" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "categoryBag", propOrder = {
+    "keyedReference"
+})
+public class CategoryBag {
+
+    @XmlElement(required = true)
+    protected List<KeyedReference> keyedReference;
+
+    /**
+     * Gets the value of the keyedReference property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the keyedReference property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getKeyedReference().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link KeyedReference }
+     * 
+     * 
+     */
+    public List<KeyedReference> getKeyedReference() {
+        if (keyedReference == null) {
+            keyedReference = new ArrayList<KeyedReference>();
+        }
+        return this.keyedReference;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/Contact.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/Contact.java
new file mode 100644
index 0000000..2217a57
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/Contact.java
@@ -0,0 +1,227 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for contact complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="contact">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}description" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}personName"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}phone" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}email" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}address" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="useType" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "contact", propOrder = {
+    "description",
+    "personName",
+    "phone",
+    "email",
+    "address"
+})
+public class Contact {
+
+    protected List<Description> description;
+    @XmlElement(required = true)
+    protected String personName;
+    protected List<Phone> phone;
+    protected List<Email> email;
+    protected List<Address> address;
+    @XmlAttribute
+    protected String useType;
+
+    /**
+     * Gets the value of the description property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the description property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getDescription().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Description }
+     * 
+     * 
+     */
+    public List<Description> getDescription() {
+        if (description == null) {
+            description = new ArrayList<Description>();
+        }
+        return this.description;
+    }
+
+    /**
+     * Gets the value of the personName property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getPersonName() {
+        return personName;
+    }
+
+    /**
+     * Sets the value of the personName property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setPersonName(String value) {
+        this.personName = value;
+    }
+
+    /**
+     * Gets the value of the phone property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the phone property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getPhone().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Phone }
+     * 
+     * 
+     */
+    public List<Phone> getPhone() {
+        if (phone == null) {
+            phone = new ArrayList<Phone>();
+        }
+        return this.phone;
+    }
+
+    /**
+     * Gets the value of the email property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the email property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getEmail().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Email }
+     * 
+     * 
+     */
+    public List<Email> getEmail() {
+        if (email == null) {
+            email = new ArrayList<Email>();
+        }
+        return this.email;
+    }
+
+    /**
+     * Gets the value of the address property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the address property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getAddress().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Address }
+     * 
+     * 
+     */
+    public List<Address> getAddress() {
+        if (address == null) {
+            address = new ArrayList<Address>();
+        }
+        return this.address;
+    }
+
+    /**
+     * Gets the value of the useType property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getUseType() {
+        return useType;
+    }
+
+    /**
+     * Sets the value of the useType property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setUseType(String value) {
+        this.useType = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/Contacts.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/Contacts.java
new file mode 100644
index 0000000..8c90170
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/Contacts.java
@@ -0,0 +1,76 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for contacts complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="contacts">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}contact" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "contacts", propOrder = {
+    "contact"
+})
+public class Contacts {
+
+    @XmlElement(required = true)
+    protected List<Contact> contact;
+
+    /**
+     * Gets the value of the contact property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the contact property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getContact().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Contact }
+     * 
+     * 
+     */
+    public List<Contact> getContact() {
+        if (contact == null) {
+            contact = new ArrayList<Contact>();
+        }
+        return this.contact;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/DeleteBinding.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/DeleteBinding.java
new file mode 100644
index 0000000..c38378f
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/DeleteBinding.java
@@ -0,0 +1,132 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for delete_binding complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="delete_binding">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}authInfo"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}bindingKey" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "delete_binding", propOrder = {
+    "authInfo",
+    "bindingKey"
+})
+public class DeleteBinding {
+
+    @XmlElement(required = true)
+    protected String authInfo;
+    @XmlElement(required = true)
+    protected List<String> bindingKey;
+    @XmlAttribute(required = true)
+    protected String generic;
+
+    /**
+     * Gets the value of the authInfo property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getAuthInfo() {
+        return authInfo;
+    }
+
+    /**
+     * Sets the value of the authInfo property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setAuthInfo(String value) {
+        this.authInfo = value;
+    }
+
+    /**
+     * Gets the value of the bindingKey property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the bindingKey property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getBindingKey().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link String }
+     * 
+     * 
+     */
+    public List<String> getBindingKey() {
+        if (bindingKey == null) {
+            bindingKey = new ArrayList<String>();
+        }
+        return this.bindingKey;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/DeleteBusiness.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/DeleteBusiness.java
new file mode 100644
index 0000000..04a141c
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/DeleteBusiness.java
@@ -0,0 +1,132 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for delete_business complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="delete_business">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}authInfo"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}businessKey" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "delete_business", propOrder = {
+    "authInfo",
+    "businessKey"
+})
+public class DeleteBusiness {
+
+    @XmlElement(required = true)
+    protected String authInfo;
+    @XmlElement(required = true)
+    protected List<String> businessKey;
+    @XmlAttribute(required = true)
+    protected String generic;
+
+    /**
+     * Gets the value of the authInfo property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getAuthInfo() {
+        return authInfo;
+    }
+
+    /**
+     * Sets the value of the authInfo property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setAuthInfo(String value) {
+        this.authInfo = value;
+    }
+
+    /**
+     * Gets the value of the businessKey property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the businessKey property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getBusinessKey().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link String }
+     * 
+     * 
+     */
+    public List<String> getBusinessKey() {
+        if (businessKey == null) {
+            businessKey = new ArrayList<String>();
+        }
+        return this.businessKey;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/DeletePublisherAssertions.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/DeletePublisherAssertions.java
new file mode 100644
index 0000000..76eb000
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/DeletePublisherAssertions.java
@@ -0,0 +1,132 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for delete_publisherAssertions complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="delete_publisherAssertions">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}authInfo"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}publisherAssertion" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "delete_publisherAssertions", propOrder = {
+    "authInfo",
+    "publisherAssertion"
+})
+public class DeletePublisherAssertions {
+
+    @XmlElement(required = true)
+    protected String authInfo;
+    @XmlElement(required = true)
+    protected List<PublisherAssertion> publisherAssertion;
+    @XmlAttribute(required = true)
+    protected String generic;
+
+    /**
+     * Gets the value of the authInfo property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getAuthInfo() {
+        return authInfo;
+    }
+
+    /**
+     * Sets the value of the authInfo property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setAuthInfo(String value) {
+        this.authInfo = value;
+    }
+
+    /**
+     * Gets the value of the publisherAssertion property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the publisherAssertion property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getPublisherAssertion().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link PublisherAssertion }
+     * 
+     * 
+     */
+    public List<PublisherAssertion> getPublisherAssertion() {
+        if (publisherAssertion == null) {
+            publisherAssertion = new ArrayList<PublisherAssertion>();
+        }
+        return this.publisherAssertion;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/DeleteService.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/DeleteService.java
new file mode 100644
index 0000000..85a1747
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/DeleteService.java
@@ -0,0 +1,132 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for delete_service complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="delete_service">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}authInfo"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}serviceKey" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "delete_service", propOrder = {
+    "authInfo",
+    "serviceKey"
+})
+public class DeleteService {
+
+    @XmlElement(required = true)
+    protected String authInfo;
+    @XmlElement(required = true)
+    protected List<String> serviceKey;
+    @XmlAttribute(required = true)
+    protected String generic;
+
+    /**
+     * Gets the value of the authInfo property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getAuthInfo() {
+        return authInfo;
+    }
+
+    /**
+     * Sets the value of the authInfo property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setAuthInfo(String value) {
+        this.authInfo = value;
+    }
+
+    /**
+     * Gets the value of the serviceKey property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the serviceKey property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getServiceKey().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link String }
+     * 
+     * 
+     */
+    public List<String> getServiceKey() {
+        if (serviceKey == null) {
+            serviceKey = new ArrayList<String>();
+        }
+        return this.serviceKey;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/DeleteTModel.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/DeleteTModel.java
new file mode 100644
index 0000000..3146fa4
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/DeleteTModel.java
@@ -0,0 +1,132 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for delete_tModel complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="delete_tModel">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}authInfo"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}tModelKey" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "delete_tModel", propOrder = {
+    "authInfo",
+    "tModelKey"
+})
+public class DeleteTModel {
+
+    @XmlElement(required = true)
+    protected String authInfo;
+    @XmlElement(required = true)
+    protected List<String> tModelKey;
+    @XmlAttribute(required = true)
+    protected String generic;
+
+    /**
+     * Gets the value of the authInfo property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getAuthInfo() {
+        return authInfo;
+    }
+
+    /**
+     * Sets the value of the authInfo property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setAuthInfo(String value) {
+        this.authInfo = value;
+    }
+
+    /**
+     * Gets the value of the tModelKey property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the tModelKey property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getTModelKey().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link String }
+     * 
+     * 
+     */
+    public List<String> getTModelKey() {
+        if (tModelKey == null) {
+            tModelKey = new ArrayList<String>();
+        }
+        return this.tModelKey;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/Description.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/Description.java
new file mode 100644
index 0000000..d0e4fe5
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/Description.java
@@ -0,0 +1,94 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlValue;
+
+
+/**
+ * <p>Java class for description complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="description">
+ *   &lt;simpleContent>
+ *     &lt;extension base="&lt;http://www.w3.org/2001/XMLSchema>string">
+ *       &lt;attribute ref="{http://www.w3.org/XML/1998/namespace}lang"/>
+ *     &lt;/extension>
+ *   &lt;/simpleContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "description", propOrder = {
+    "value"
+})
+public class Description {
+
+    @XmlValue
+    protected String value;
+    @XmlAttribute(namespace = "http://www.w3.org/XML/1998/namespace")
+    protected String lang;
+
+    /**
+     * Gets the value of the value property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getValue() {
+        return value;
+    }
+
+    /**
+     * Sets the value of the value property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setValue(String value) {
+        this.value = value;
+    }
+
+    /**
+     * Gets the value of the lang property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getLang() {
+        return lang;
+    }
+
+    /**
+     * Sets the value of the lang property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setLang(String value) {
+        this.lang = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/Direction.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/Direction.java
new file mode 100644
index 0000000..cb7c725
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/Direction.java
@@ -0,0 +1,58 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlEnum;
+import javax.xml.bind.annotation.XmlEnumValue;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for direction.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * <p>
+ * <pre>
+ * &lt;simpleType name="direction">
+ *   &lt;restriction base="{http://www.w3.org/2001/XMLSchema}NMTOKEN">
+ *     &lt;enumeration value="fromKey"/>
+ *     &lt;enumeration value="toKey"/>
+ *   &lt;/restriction>
+ * &lt;/simpleType>
+ * </pre>
+ * 
+ */
+@XmlType(name = "direction")
+@XmlEnum
+public enum Direction {
+
+    @XmlEnumValue("fromKey")
+    FROM_KEY("fromKey"),
+    @XmlEnumValue("toKey")
+    TO_KEY("toKey");
+    private final String value;
+
+    Direction(String v) {
+        value = v;
+    }
+
+    public String value() {
+        return value;
+    }
+
+    public static Direction fromValue(String v) {
+        for (Direction c: Direction.values()) {
+            if (c.value.equals(v)) {
+                return c;
+            }
+        }
+        throw new IllegalArgumentException(v);
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/DiscardAuthToken.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/DiscardAuthToken.java
new file mode 100644
index 0000000..dd3ee1c
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/DiscardAuthToken.java
@@ -0,0 +1,97 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for discard_authToken complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="discard_authToken">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}authInfo"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "discard_authToken", propOrder = {
+    "authInfo"
+})
+public class DiscardAuthToken {
+
+    @XmlElement(required = true)
+    protected String authInfo;
+    @XmlAttribute(required = true)
+    protected String generic;
+
+    /**
+     * Gets the value of the authInfo property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getAuthInfo() {
+        return authInfo;
+    }
+
+    /**
+     * Sets the value of the authInfo property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setAuthInfo(String value) {
+        this.authInfo = value;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/DiscoveryURL.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/DiscoveryURL.java
new file mode 100644
index 0000000..96ac409
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/DiscoveryURL.java
@@ -0,0 +1,94 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlValue;
+
+
+/**
+ * <p>Java class for discoveryURL complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="discoveryURL">
+ *   &lt;simpleContent>
+ *     &lt;extension base="&lt;http://www.w3.org/2001/XMLSchema>string">
+ *       &lt;attribute name="useType" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/extension>
+ *   &lt;/simpleContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "discoveryURL", propOrder = {
+    "value"
+})
+public class DiscoveryURL {
+
+    @XmlValue
+    protected String value;
+    @XmlAttribute(required = true)
+    protected String useType;
+
+    /**
+     * Gets the value of the value property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getValue() {
+        return value;
+    }
+
+    /**
+     * Sets the value of the value property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setValue(String value) {
+        this.value = value;
+    }
+
+    /**
+     * Gets the value of the useType property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getUseType() {
+        return useType;
+    }
+
+    /**
+     * Sets the value of the useType property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setUseType(String value) {
+        this.useType = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/DiscoveryURLs.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/DiscoveryURLs.java
new file mode 100644
index 0000000..9d267f9
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/DiscoveryURLs.java
@@ -0,0 +1,76 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for discoveryURLs complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="discoveryURLs">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}discoveryURL" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "discoveryURLs", propOrder = {
+    "discoveryURL"
+})
+public class DiscoveryURLs {
+
+    @XmlElement(required = true)
+    protected List<DiscoveryURL> discoveryURL;
+
+    /**
+     * Gets the value of the discoveryURL property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the discoveryURL property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getDiscoveryURL().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link DiscoveryURL }
+     * 
+     * 
+     */
+    public List<DiscoveryURL> getDiscoveryURL() {
+        if (discoveryURL == null) {
+            discoveryURL = new ArrayList<DiscoveryURL>();
+        }
+        return this.discoveryURL;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/DispositionReport.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/DispositionReport.java
new file mode 100644
index 0000000..8944d91
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/DispositionReport.java
@@ -0,0 +1,158 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for dispositionReport complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="dispositionReport">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}result" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="operator" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="truncated" type="{urn:uddi-org:api_v2}truncated" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "dispositionReport", propOrder = {
+    "result"
+})
+public class DispositionReport {
+
+    @XmlElement(required = true)
+    protected List<Result> result;
+    @XmlAttribute(required = true)
+    protected String generic;
+    @XmlAttribute(required = true)
+    protected String operator;
+    @XmlAttribute
+    protected Truncated truncated;
+
+    /**
+     * Gets the value of the result property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the result property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getResult().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Result }
+     * 
+     * 
+     */
+    public List<Result> getResult() {
+        if (result == null) {
+            result = new ArrayList<Result>();
+        }
+        return this.result;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+    /**
+     * Gets the value of the operator property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getOperator() {
+        return operator;
+    }
+
+    /**
+     * Sets the value of the operator property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setOperator(String value) {
+        this.operator = value;
+    }
+
+    /**
+     * Gets the value of the truncated property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Truncated }
+     *     
+     */
+    public Truncated getTruncated() {
+        return truncated;
+    }
+
+    /**
+     * Sets the value of the truncated property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Truncated }
+     *     
+     */
+    public void setTruncated(Truncated value) {
+        this.truncated = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/Email.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/Email.java
new file mode 100644
index 0000000..41971bc
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/Email.java
@@ -0,0 +1,94 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlValue;
+
+
+/**
+ * <p>Java class for email complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="email">
+ *   &lt;simpleContent>
+ *     &lt;extension base="&lt;http://www.w3.org/2001/XMLSchema>string">
+ *       &lt;attribute name="useType" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/extension>
+ *   &lt;/simpleContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "email", propOrder = {
+    "value"
+})
+public class Email {
+
+    @XmlValue
+    protected String value;
+    @XmlAttribute
+    protected String useType;
+
+    /**
+     * Gets the value of the value property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getValue() {
+        return value;
+    }
+
+    /**
+     * Sets the value of the value property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setValue(String value) {
+        this.value = value;
+    }
+
+    /**
+     * Gets the value of the useType property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getUseType() {
+        return useType;
+    }
+
+    /**
+     * Sets the value of the useType property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setUseType(String value) {
+        this.useType = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/ErrInfo.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/ErrInfo.java
new file mode 100644
index 0000000..6f0c741
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/ErrInfo.java
@@ -0,0 +1,94 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlValue;
+
+
+/**
+ * <p>Java class for errInfo complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="errInfo">
+ *   &lt;simpleContent>
+ *     &lt;extension base="&lt;http://www.w3.org/2001/XMLSchema>string">
+ *       &lt;attribute name="errCode" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/extension>
+ *   &lt;/simpleContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "errInfo", propOrder = {
+    "value"
+})
+public class ErrInfo {
+
+    @XmlValue
+    protected String value;
+    @XmlAttribute(required = true)
+    protected String errCode;
+
+    /**
+     * Gets the value of the value property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getValue() {
+        return value;
+    }
+
+    /**
+     * Sets the value of the value property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setValue(String value) {
+        this.value = value;
+    }
+
+    /**
+     * Gets the value of the errCode property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getErrCode() {
+        return errCode;
+    }
+
+    /**
+     * Sets the value of the errCode property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setErrCode(String value) {
+        this.errCode = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/FindBinding.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/FindBinding.java
new file mode 100644
index 0000000..f239e3a
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/FindBinding.java
@@ -0,0 +1,178 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for find_binding complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="find_binding">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}findQualifiers" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}tModelBag"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="maxRows" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *       &lt;attribute name="serviceKey" use="required" type="{urn:uddi-org:api_v2}serviceKey" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "find_binding", propOrder = {
+    "findQualifiers",
+    "tModelBag"
+})
+public class FindBinding {
+
+    protected FindQualifiers findQualifiers;
+    @XmlElement(required = true)
+    protected TModelBag tModelBag;
+    @XmlAttribute(required = true)
+    protected String generic;
+    @XmlAttribute
+    protected Integer maxRows;
+    @XmlAttribute(required = true)
+    protected String serviceKey;
+
+    /**
+     * Gets the value of the findQualifiers property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link FindQualifiers }
+     *     
+     */
+    public FindQualifiers getFindQualifiers() {
+        return findQualifiers;
+    }
+
+    /**
+     * Sets the value of the findQualifiers property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link FindQualifiers }
+     *     
+     */
+    public void setFindQualifiers(FindQualifiers value) {
+        this.findQualifiers = value;
+    }
+
+    /**
+     * Gets the value of the tModelBag property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link TModelBag }
+     *     
+     */
+    public TModelBag getTModelBag() {
+        return tModelBag;
+    }
+
+    /**
+     * Sets the value of the tModelBag property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link TModelBag }
+     *     
+     */
+    public void setTModelBag(TModelBag value) {
+        this.tModelBag = value;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+    /**
+     * Gets the value of the maxRows property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Integer }
+     *     
+     */
+    public Integer getMaxRows() {
+        return maxRows;
+    }
+
+    /**
+     * Sets the value of the maxRows property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Integer }
+     *     
+     */
+    public void setMaxRows(Integer value) {
+        this.maxRows = value;
+    }
+
+    /**
+     * Gets the value of the serviceKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getServiceKey() {
+        return serviceKey;
+    }
+
+    /**
+     * Sets the value of the serviceKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setServiceKey(String value) {
+        this.serviceKey = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/FindBusiness.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/FindBusiness.java
new file mode 100644
index 0000000..fae82f2
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/FindBusiness.java
@@ -0,0 +1,264 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for find_business complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="find_business">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}findQualifiers" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}name" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}identifierBag" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}categoryBag" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}tModelBag" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}discoveryURLs" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="maxRows" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "find_business", propOrder = {
+    "findQualifiers",
+    "name",
+    "identifierBag",
+    "categoryBag",
+    "tModelBag",
+    "discoveryURLs"
+})
+public class FindBusiness {
+
+    protected FindQualifiers findQualifiers;
+    protected List<Name> name;
+    protected IdentifierBag identifierBag;
+    protected CategoryBag categoryBag;
+    protected TModelBag tModelBag;
+    protected DiscoveryURLs discoveryURLs;
+    @XmlAttribute(required = true)
+    protected String generic;
+    @XmlAttribute
+    protected Integer maxRows;
+
+    /**
+     * Gets the value of the findQualifiers property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link FindQualifiers }
+     *     
+     */
+    public FindQualifiers getFindQualifiers() {
+        return findQualifiers;
+    }
+
+    /**
+     * Sets the value of the findQualifiers property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link FindQualifiers }
+     *     
+     */
+    public void setFindQualifiers(FindQualifiers value) {
+        this.findQualifiers = value;
+    }
+
+    /**
+     * Gets the value of the name property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the name property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getName().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Name }
+     * 
+     * 
+     */
+    public List<Name> getName() {
+        if (name == null) {
+            name = new ArrayList<Name>();
+        }
+        return this.name;
+    }
+
+    /**
+     * Gets the value of the identifierBag property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link IdentifierBag }
+     *     
+     */
+    public IdentifierBag getIdentifierBag() {
+        return identifierBag;
+    }
+
+    /**
+     * Sets the value of the identifierBag property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link IdentifierBag }
+     *     
+     */
+    public void setIdentifierBag(IdentifierBag value) {
+        this.identifierBag = value;
+    }
+
+    /**
+     * Gets the value of the categoryBag property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link CategoryBag }
+     *     
+     */
+    public CategoryBag getCategoryBag() {
+        return categoryBag;
+    }
+
+    /**
+     * Sets the value of the categoryBag property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link CategoryBag }
+     *     
+     */
+    public void setCategoryBag(CategoryBag value) {
+        this.categoryBag = value;
+    }
+
+    /**
+     * Gets the value of the tModelBag property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link TModelBag }
+     *     
+     */
+    public TModelBag getTModelBag() {
+        return tModelBag;
+    }
+
+    /**
+     * Sets the value of the tModelBag property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link TModelBag }
+     *     
+     */
+    public void setTModelBag(TModelBag value) {
+        this.tModelBag = value;
+    }
+
+    /**
+     * Gets the value of the discoveryURLs property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link DiscoveryURLs }
+     *     
+     */
+    public DiscoveryURLs getDiscoveryURLs() {
+        return discoveryURLs;
+    }
+
+    /**
+     * Sets the value of the discoveryURLs property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link DiscoveryURLs }
+     *     
+     */
+    public void setDiscoveryURLs(DiscoveryURLs value) {
+        this.discoveryURLs = value;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+    /**
+     * Gets the value of the maxRows property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Integer }
+     *     
+     */
+    public Integer getMaxRows() {
+        return maxRows;
+    }
+
+    /**
+     * Sets the value of the maxRows property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Integer }
+     *     
+     */
+    public void setMaxRows(Integer value) {
+        this.maxRows = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/FindQualifiers.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/FindQualifiers.java
new file mode 100644
index 0000000..81cbcd6
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/FindQualifiers.java
@@ -0,0 +1,74 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for findQualifiers complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="findQualifiers">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}findQualifier" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "findQualifiers", propOrder = {
+    "findQualifier"
+})
+public class FindQualifiers {
+
+    protected List<String> findQualifier;
+
+    /**
+     * Gets the value of the findQualifier property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the findQualifier property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getFindQualifier().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link String }
+     * 
+     * 
+     */
+    public List<String> getFindQualifier() {
+        if (findQualifier == null) {
+            findQualifier = new ArrayList<String>();
+        }
+        return this.findQualifier;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/FindRelatedBusinesses.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/FindRelatedBusinesses.java
new file mode 100644
index 0000000..daaa502
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/FindRelatedBusinesses.java
@@ -0,0 +1,178 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for find_relatedBusinesses complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="find_relatedBusinesses">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}findQualifiers" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}businessKey"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}keyedReference" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="maxRows" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "find_relatedBusinesses", propOrder = {
+    "findQualifiers",
+    "businessKey",
+    "keyedReference"
+})
+public class FindRelatedBusinesses {
+
+    protected FindQualifiers findQualifiers;
+    @XmlElement(required = true)
+    protected String businessKey;
+    protected KeyedReference keyedReference;
+    @XmlAttribute(required = true)
+    protected String generic;
+    @XmlAttribute
+    protected Integer maxRows;
+
+    /**
+     * Gets the value of the findQualifiers property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link FindQualifiers }
+     *     
+     */
+    public FindQualifiers getFindQualifiers() {
+        return findQualifiers;
+    }
+
+    /**
+     * Sets the value of the findQualifiers property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link FindQualifiers }
+     *     
+     */
+    public void setFindQualifiers(FindQualifiers value) {
+        this.findQualifiers = value;
+    }
+
+    /**
+     * Gets the value of the businessKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getBusinessKey() {
+        return businessKey;
+    }
+
+    /**
+     * Sets the value of the businessKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setBusinessKey(String value) {
+        this.businessKey = value;
+    }
+
+    /**
+     * Gets the value of the keyedReference property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link KeyedReference }
+     *     
+     */
+    public KeyedReference getKeyedReference() {
+        return keyedReference;
+    }
+
+    /**
+     * Sets the value of the keyedReference property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link KeyedReference }
+     *     
+     */
+    public void setKeyedReference(KeyedReference value) {
+        this.keyedReference = value;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+    /**
+     * Gets the value of the maxRows property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Integer }
+     *     
+     */
+    public Integer getMaxRows() {
+        return maxRows;
+    }
+
+    /**
+     * Sets the value of the maxRows property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Integer }
+     *     
+     */
+    public void setMaxRows(Integer value) {
+        this.maxRows = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/FindService.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/FindService.java
new file mode 100644
index 0000000..3848ee7
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/FindService.java
@@ -0,0 +1,237 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for find_service complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="find_service">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}findQualifiers" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}name" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}categoryBag" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}tModelBag" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="maxRows" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *       &lt;attribute name="businessKey" type="{urn:uddi-org:api_v2}businessKey" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "find_service", propOrder = {
+    "findQualifiers",
+    "name",
+    "categoryBag",
+    "tModelBag"
+})
+public class FindService {
+
+    protected FindQualifiers findQualifiers;
+    protected List<Name> name;
+    protected CategoryBag categoryBag;
+    protected TModelBag tModelBag;
+    @XmlAttribute(required = true)
+    protected String generic;
+    @XmlAttribute
+    protected Integer maxRows;
+    @XmlAttribute
+    protected String businessKey;
+
+    /**
+     * Gets the value of the findQualifiers property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link FindQualifiers }
+     *     
+     */
+    public FindQualifiers getFindQualifiers() {
+        return findQualifiers;
+    }
+
+    /**
+     * Sets the value of the findQualifiers property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link FindQualifiers }
+     *     
+     */
+    public void setFindQualifiers(FindQualifiers value) {
+        this.findQualifiers = value;
+    }
+
+    /**
+     * Gets the value of the name property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the name property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getName().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Name }
+     * 
+     * 
+     */
+    public List<Name> getName() {
+        if (name == null) {
+            name = new ArrayList<Name>();
+        }
+        return this.name;
+    }
+
+    /**
+     * Gets the value of the categoryBag property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link CategoryBag }
+     *     
+     */
+    public CategoryBag getCategoryBag() {
+        return categoryBag;
+    }
+
+    /**
+     * Sets the value of the categoryBag property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link CategoryBag }
+     *     
+     */
+    public void setCategoryBag(CategoryBag value) {
+        this.categoryBag = value;
+    }
+
+    /**
+     * Gets the value of the tModelBag property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link TModelBag }
+     *     
+     */
+    public TModelBag getTModelBag() {
+        return tModelBag;
+    }
+
+    /**
+     * Sets the value of the tModelBag property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link TModelBag }
+     *     
+     */
+    public void setTModelBag(TModelBag value) {
+        this.tModelBag = value;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+    /**
+     * Gets the value of the maxRows property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Integer }
+     *     
+     */
+    public Integer getMaxRows() {
+        return maxRows;
+    }
+
+    /**
+     * Sets the value of the maxRows property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Integer }
+     *     
+     */
+    public void setMaxRows(Integer value) {
+        this.maxRows = value;
+    }
+
+    /**
+     * Gets the value of the businessKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getBusinessKey() {
+        return businessKey;
+    }
+
+    /**
+     * Sets the value of the businessKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setBusinessKey(String value) {
+        this.businessKey = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/FindTModel.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/FindTModel.java
new file mode 100644
index 0000000..917c291
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/FindTModel.java
@@ -0,0 +1,203 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for find_tModel complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="find_tModel">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}findQualifiers" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}name" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}identifierBag" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}categoryBag" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="maxRows" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "find_tModel", propOrder = {
+    "findQualifiers",
+    "name",
+    "identifierBag",
+    "categoryBag"
+})
+public class FindTModel {
+
+    protected FindQualifiers findQualifiers;
+    protected Name name;
+    protected IdentifierBag identifierBag;
+    protected CategoryBag categoryBag;
+    @XmlAttribute(required = true)
+    protected String generic;
+    @XmlAttribute
+    protected Integer maxRows;
+
+    /**
+     * Gets the value of the findQualifiers property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link FindQualifiers }
+     *     
+     */
+    public FindQualifiers getFindQualifiers() {
+        return findQualifiers;
+    }
+
+    /**
+     * Sets the value of the findQualifiers property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link FindQualifiers }
+     *     
+     */
+    public void setFindQualifiers(FindQualifiers value) {
+        this.findQualifiers = value;
+    }
+
+    /**
+     * Gets the value of the name property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Name }
+     *     
+     */
+    public Name getName() {
+        return name;
+    }
+
+    /**
+     * Sets the value of the name property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Name }
+     *     
+     */
+    public void setName(Name value) {
+        this.name = value;
+    }
+
+    /**
+     * Gets the value of the identifierBag property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link IdentifierBag }
+     *     
+     */
+    public IdentifierBag getIdentifierBag() {
+        return identifierBag;
+    }
+
+    /**
+     * Sets the value of the identifierBag property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link IdentifierBag }
+     *     
+     */
+    public void setIdentifierBag(IdentifierBag value) {
+        this.identifierBag = value;
+    }
+
+    /**
+     * Gets the value of the categoryBag property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link CategoryBag }
+     *     
+     */
+    public CategoryBag getCategoryBag() {
+        return categoryBag;
+    }
+
+    /**
+     * Sets the value of the categoryBag property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link CategoryBag }
+     *     
+     */
+    public void setCategoryBag(CategoryBag value) {
+        this.categoryBag = value;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+    /**
+     * Gets the value of the maxRows property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Integer }
+     *     
+     */
+    public Integer getMaxRows() {
+        return maxRows;
+    }
+
+    /**
+     * Sets the value of the maxRows property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Integer }
+     *     
+     */
+    public void setMaxRows(Integer value) {
+        this.maxRows = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/GetAssertionStatusReport.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/GetAssertionStatusReport.java
new file mode 100644
index 0000000..613a7f7
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/GetAssertionStatusReport.java
@@ -0,0 +1,124 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for get_assertionStatusReport complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="get_assertionStatusReport">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}authInfo"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}completionStatus" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "get_assertionStatusReport", propOrder = {
+    "authInfo",
+    "completionStatus"
+})
+public class GetAssertionStatusReport {
+
+    @XmlElement(required = true)
+    protected String authInfo;
+    protected String completionStatus;
+    @XmlAttribute(required = true)
+    protected String generic;
+
+    /**
+     * Gets the value of the authInfo property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getAuthInfo() {
+        return authInfo;
+    }
+
+    /**
+     * Sets the value of the authInfo property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setAuthInfo(String value) {
+        this.authInfo = value;
+    }
+
+    /**
+     * Gets the value of the completionStatus property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getCompletionStatus() {
+        return completionStatus;
+    }
+
+    /**
+     * Sets the value of the completionStatus property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setCompletionStatus(String value) {
+        this.completionStatus = value;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/GetAuthToken.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/GetAuthToken.java
new file mode 100644
index 0000000..f8ba35f
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/GetAuthToken.java
@@ -0,0 +1,119 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for get_authToken complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="get_authToken">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="userID" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="cred" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "get_authToken")
+public class GetAuthToken {
+
+    @XmlAttribute(required = true)
+    protected String generic;
+    @XmlAttribute(required = true)
+    protected String userID;
+    @XmlAttribute(required = true)
+    protected String cred;
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+    /**
+     * Gets the value of the userID property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getUserID() {
+        return userID;
+    }
+
+    /**
+     * Sets the value of the userID property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setUserID(String value) {
+        this.userID = value;
+    }
+
+    /**
+     * Gets the value of the cred property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getCred() {
+        return cred;
+    }
+
+    /**
+     * Sets the value of the cred property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setCred(String value) {
+        this.cred = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/GetBindingDetail.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/GetBindingDetail.java
new file mode 100644
index 0000000..5713248
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/GetBindingDetail.java
@@ -0,0 +1,104 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for get_bindingDetail complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="get_bindingDetail">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}bindingKey" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "get_bindingDetail", propOrder = {
+    "bindingKey"
+})
+public class GetBindingDetail {
+
+    @XmlElement(required = true)
+    protected List<String> bindingKey;
+    @XmlAttribute(required = true)
+    protected String generic;
+
+    /**
+     * Gets the value of the bindingKey property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the bindingKey property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getBindingKey().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link String }
+     * 
+     * 
+     */
+    public List<String> getBindingKey() {
+        if (bindingKey == null) {
+            bindingKey = new ArrayList<String>();
+        }
+        return this.bindingKey;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/GetBusinessDetail.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/GetBusinessDetail.java
new file mode 100644
index 0000000..25fe2ba
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/GetBusinessDetail.java
@@ -0,0 +1,104 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for get_businessDetail complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="get_businessDetail">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}businessKey" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "get_businessDetail", propOrder = {
+    "businessKey"
+})
+public class GetBusinessDetail {
+
+    @XmlElement(required = true)
+    protected List<String> businessKey;
+    @XmlAttribute(required = true)
+    protected String generic;
+
+    /**
+     * Gets the value of the businessKey property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the businessKey property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getBusinessKey().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link String }
+     * 
+     * 
+     */
+    public List<String> getBusinessKey() {
+        if (businessKey == null) {
+            businessKey = new ArrayList<String>();
+        }
+        return this.businessKey;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/GetBusinessDetailExt.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/GetBusinessDetailExt.java
new file mode 100644
index 0000000..e1f2dcd
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/GetBusinessDetailExt.java
@@ -0,0 +1,104 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for get_businessDetailExt complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="get_businessDetailExt">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}businessKey" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "get_businessDetailExt", propOrder = {
+    "businessKey"
+})
+public class GetBusinessDetailExt {
+
+    @XmlElement(required = true)
+    protected List<String> businessKey;
+    @XmlAttribute(required = true)
+    protected String generic;
+
+    /**
+     * Gets the value of the businessKey property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the businessKey property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getBusinessKey().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link String }
+     * 
+     * 
+     */
+    public List<String> getBusinessKey() {
+        if (businessKey == null) {
+            businessKey = new ArrayList<String>();
+        }
+        return this.businessKey;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/GetPublisherAssertions.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/GetPublisherAssertions.java
new file mode 100644
index 0000000..dc47f76
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/GetPublisherAssertions.java
@@ -0,0 +1,97 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for get_publisherAssertions complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="get_publisherAssertions">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}authInfo"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "get_publisherAssertions", propOrder = {
+    "authInfo"
+})
+public class GetPublisherAssertions {
+
+    @XmlElement(required = true)
+    protected String authInfo;
+    @XmlAttribute(required = true)
+    protected String generic;
+
+    /**
+     * Gets the value of the authInfo property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getAuthInfo() {
+        return authInfo;
+    }
+
+    /**
+     * Sets the value of the authInfo property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setAuthInfo(String value) {
+        this.authInfo = value;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/GetRegisteredInfo.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/GetRegisteredInfo.java
new file mode 100644
index 0000000..cb92929
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/GetRegisteredInfo.java
@@ -0,0 +1,97 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for get_registeredInfo complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="get_registeredInfo">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}authInfo"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "get_registeredInfo", propOrder = {
+    "authInfo"
+})
+public class GetRegisteredInfo {
+
+    @XmlElement(required = true)
+    protected String authInfo;
+    @XmlAttribute(required = true)
+    protected String generic;
+
+    /**
+     * Gets the value of the authInfo property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getAuthInfo() {
+        return authInfo;
+    }
+
+    /**
+     * Sets the value of the authInfo property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setAuthInfo(String value) {
+        this.authInfo = value;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/GetServiceDetail.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/GetServiceDetail.java
new file mode 100644
index 0000000..b9fd377
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/GetServiceDetail.java
@@ -0,0 +1,104 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for get_serviceDetail complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="get_serviceDetail">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}serviceKey" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "get_serviceDetail", propOrder = {
+    "serviceKey"
+})
+public class GetServiceDetail {
+
+    @XmlElement(required = true)
+    protected List<String> serviceKey;
+    @XmlAttribute(required = true)
+    protected String generic;
+
+    /**
+     * Gets the value of the serviceKey property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the serviceKey property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getServiceKey().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link String }
+     * 
+     * 
+     */
+    public List<String> getServiceKey() {
+        if (serviceKey == null) {
+            serviceKey = new ArrayList<String>();
+        }
+        return this.serviceKey;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/GetTModelDetail.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/GetTModelDetail.java
new file mode 100644
index 0000000..b3589c5
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/GetTModelDetail.java
@@ -0,0 +1,104 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for get_tModelDetail complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="get_tModelDetail">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}tModelKey" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "get_tModelDetail", propOrder = {
+    "tModelKey"
+})
+public class GetTModelDetail {
+
+    @XmlElement(required = true)
+    protected List<String> tModelKey;
+    @XmlAttribute(required = true)
+    protected String generic;
+
+    /**
+     * Gets the value of the tModelKey property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the tModelKey property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getTModelKey().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link String }
+     * 
+     * 
+     */
+    public List<String> getTModelKey() {
+        if (tModelKey == null) {
+            tModelKey = new ArrayList<String>();
+        }
+        return this.tModelKey;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/HostingRedirector.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/HostingRedirector.java
new file mode 100644
index 0000000..6ba08ad
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/HostingRedirector.java
@@ -0,0 +1,65 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for hostingRedirector complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="hostingRedirector">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;attribute name="bindingKey" use="required" type="{urn:uddi-org:api_v2}bindingKey" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "hostingRedirector")
+public class HostingRedirector {
+
+    @XmlAttribute(required = true)
+    protected String bindingKey;
+
+    /**
+     * Gets the value of the bindingKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getBindingKey() {
+        return bindingKey;
+    }
+
+    /**
+     * Sets the value of the bindingKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setBindingKey(String value) {
+        this.bindingKey = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/IdentifierBag.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/IdentifierBag.java
new file mode 100644
index 0000000..262975c
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/IdentifierBag.java
@@ -0,0 +1,76 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for identifierBag complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="identifierBag">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}keyedReference" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "identifierBag", propOrder = {
+    "keyedReference"
+})
+public class IdentifierBag {
+
+    @XmlElement(required = true)
+    protected List<KeyedReference> keyedReference;
+
+    /**
+     * Gets the value of the keyedReference property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the keyedReference property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getKeyedReference().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link KeyedReference }
+     * 
+     * 
+     */
+    public List<KeyedReference> getKeyedReference() {
+        if (keyedReference == null) {
+            keyedReference = new ArrayList<KeyedReference>();
+        }
+        return this.keyedReference;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/InstanceDetails.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/InstanceDetails.java
new file mode 100644
index 0000000..b28cd92
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/InstanceDetails.java
@@ -0,0 +1,128 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for instanceDetails complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="instanceDetails">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}description" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}overviewDoc" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}instanceParms" minOccurs="0"/>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "instanceDetails", propOrder = {
+    "description",
+    "overviewDoc",
+    "instanceParms"
+})
+public class InstanceDetails {
+
+    protected List<Description> description;
+    protected OverviewDoc overviewDoc;
+    protected String instanceParms;
+
+    /**
+     * Gets the value of the description property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the description property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getDescription().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Description }
+     * 
+     * 
+     */
+    public List<Description> getDescription() {
+        if (description == null) {
+            description = new ArrayList<Description>();
+        }
+        return this.description;
+    }
+
+    /**
+     * Gets the value of the overviewDoc property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link OverviewDoc }
+     *     
+     */
+    public OverviewDoc getOverviewDoc() {
+        return overviewDoc;
+    }
+
+    /**
+     * Sets the value of the overviewDoc property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link OverviewDoc }
+     *     
+     */
+    public void setOverviewDoc(OverviewDoc value) {
+        this.overviewDoc = value;
+    }
+
+    /**
+     * Gets the value of the instanceParms property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getInstanceParms() {
+        return instanceParms;
+    }
+
+    /**
+     * Sets the value of the instanceParms property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setInstanceParms(String value) {
+        this.instanceParms = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/KeyType.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/KeyType.java
new file mode 100644
index 0000000..f007e9b
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/KeyType.java
@@ -0,0 +1,64 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlEnum;
+import javax.xml.bind.annotation.XmlEnumValue;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for keyType.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * <p>
+ * <pre>
+ * &lt;simpleType name="keyType">
+ *   &lt;restriction base="{http://www.w3.org/2001/XMLSchema}NMTOKEN">
+ *     &lt;enumeration value="businessKey"/>
+ *     &lt;enumeration value="tModelKey"/>
+ *     &lt;enumeration value="serviceKey"/>
+ *     &lt;enumeration value="bindingKey"/>
+ *   &lt;/restriction>
+ * &lt;/simpleType>
+ * </pre>
+ * 
+ */
+@XmlType(name = "keyType")
+@XmlEnum
+public enum KeyType {
+
+    @XmlEnumValue("businessKey")
+    BUSINESS_KEY("businessKey"),
+    @XmlEnumValue("tModelKey")
+    T_MODEL_KEY("tModelKey"),
+    @XmlEnumValue("serviceKey")
+    SERVICE_KEY("serviceKey"),
+    @XmlEnumValue("bindingKey")
+    BINDING_KEY("bindingKey");
+    private final String value;
+
+    KeyType(String v) {
+        value = v;
+    }
+
+    public String value() {
+        return value;
+    }
+
+    public static KeyType fromValue(String v) {
+        for (KeyType c: KeyType.values()) {
+            if (c.value.equals(v)) {
+                return c;
+            }
+        }
+        throw new IllegalArgumentException(v);
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/KeyedReference.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/KeyedReference.java
new file mode 100644
index 0000000..a45a7dc
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/KeyedReference.java
@@ -0,0 +1,119 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for keyedReference complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="keyedReference">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;attribute name="tModelKey" type="{urn:uddi-org:api_v2}tModelKey" />
+ *       &lt;attribute name="keyName" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="keyValue" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "keyedReference")
+public class KeyedReference {
+
+    @XmlAttribute
+    protected String tModelKey;
+    @XmlAttribute
+    protected String keyName;
+    @XmlAttribute(required = true)
+    protected String keyValue;
+
+    /**
+     * Gets the value of the tModelKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getTModelKey() {
+        return tModelKey;
+    }
+
+    /**
+     * Sets the value of the tModelKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setTModelKey(String value) {
+        this.tModelKey = value;
+    }
+
+    /**
+     * Gets the value of the keyName property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getKeyName() {
+        return keyName;
+    }
+
+    /**
+     * Sets the value of the keyName property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setKeyName(String value) {
+        this.keyName = value;
+    }
+
+    /**
+     * Gets the value of the keyValue property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getKeyValue() {
+        return keyValue;
+    }
+
+    /**
+     * Sets the value of the keyValue property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setKeyValue(String value) {
+        this.keyValue = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/KeysOwned.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/KeysOwned.java
new file mode 100644
index 0000000..3bca169
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/KeysOwned.java
@@ -0,0 +1,94 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for keysOwned complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="keysOwned">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}fromKey" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}toKey" minOccurs="0"/>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "keysOwned", propOrder = {
+    "fromKey",
+    "toKey"
+})
+public class KeysOwned {
+
+    protected String fromKey;
+    protected String toKey;
+
+    /**
+     * Gets the value of the fromKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getFromKey() {
+        return fromKey;
+    }
+
+    /**
+     * Sets the value of the fromKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setFromKey(String value) {
+        this.fromKey = value;
+    }
+
+    /**
+     * Gets the value of the toKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getToKey() {
+        return toKey;
+    }
+
+    /**
+     * Sets the value of the toKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setToKey(String value) {
+        this.toKey = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/Name.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/Name.java
new file mode 100644
index 0000000..221ae10
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/Name.java
@@ -0,0 +1,94 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlValue;
+
+
+/**
+ * <p>Java class for name complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="name">
+ *   &lt;simpleContent>
+ *     &lt;extension base="&lt;http://www.w3.org/2001/XMLSchema>string">
+ *       &lt;attribute ref="{http://www.w3.org/XML/1998/namespace}lang"/>
+ *     &lt;/extension>
+ *   &lt;/simpleContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "name", propOrder = {
+    "value"
+})
+public class Name {
+
+    @XmlValue
+    protected String value;
+    @XmlAttribute(namespace = "http://www.w3.org/XML/1998/namespace")
+    protected String lang;
+
+    /**
+     * Gets the value of the value property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getValue() {
+        return value;
+    }
+
+    /**
+     * Sets the value of the value property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setValue(String value) {
+        this.value = value;
+    }
+
+    /**
+     * Gets the value of the lang property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getLang() {
+        return lang;
+    }
+
+    /**
+     * Sets the value of the lang property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setLang(String value) {
+        this.lang = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/ObjectFactory.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/ObjectFactory.java
new file mode 100644
index 0000000..b9ea134
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/ObjectFactory.java
@@ -0,0 +1,1666 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.JAXBElement;
+import javax.xml.bind.annotation.XmlElementDecl;
+import javax.xml.bind.annotation.XmlRegistry;
+import javax.xml.namespace.QName;
+
+
+/**
+ * This object contains factory methods for each 
+ * Java content interface and Java element interface 
+ * generated in the org.apache.ws.scout.model.uddi.v2 package. 
+ * <p>An ObjectFactory allows you to programatically 
+ * construct new instances of the Java representation 
+ * for XML content. The Java representation of XML 
+ * content can consist of schema derived interfaces 
+ * and classes representing the binding of schema 
+ * type definitions, element declarations and model 
+ * groups.  Factory methods for each of these are 
+ * provided in this class.
+ * 
+ */
+@XmlRegistry
+public class ObjectFactory {
+
+    private final static QName _RelatedBusinessesList_QNAME = new QName("urn:uddi-org:api_v2", "relatedBusinessesList");
+    private final static QName _TModelKey_QNAME = new QName("urn:uddi-org:api_v2", "tModelKey");
+    private final static QName _GetServiceDetail_QNAME = new QName("urn:uddi-org:api_v2", "get_serviceDetail");
+    private final static QName _FindQualifier_QNAME = new QName("urn:uddi-org:api_v2", "findQualifier");
+    private final static QName _ToKey_QNAME = new QName("urn:uddi-org:api_v2", "toKey");
+    private final static QName _BindingTemplate_QNAME = new QName("urn:uddi-org:api_v2", "bindingTemplate");
+    private final static QName _FindService_QNAME = new QName("urn:uddi-org:api_v2", "find_service");
+    private final static QName _CategoryBag_QNAME = new QName("urn:uddi-org:api_v2", "categoryBag");
+    private final static QName _SaveBusiness_QNAME = new QName("urn:uddi-org:api_v2", "save_business");
+    private final static QName _IdentifierBag_QNAME = new QName("urn:uddi-org:api_v2", "identifierBag");
+    private final static QName _SaveService_QNAME = new QName("urn:uddi-org:api_v2", "save_service");
+    private final static QName _ValidateValues_QNAME = new QName("urn:uddi-org:api_v2", "validate_values");
+    private final static QName _Contacts_QNAME = new QName("urn:uddi-org:api_v2", "contacts");
+    private final static QName _Phone_QNAME = new QName("urn:uddi-org:api_v2", "phone");
+    private final static QName _BusinessEntityExt_QNAME = new QName("urn:uddi-org:api_v2", "businessEntityExt");
+    private final static QName _Contact_QNAME = new QName("urn:uddi-org:api_v2", "contact");
+    private final static QName _GetAssertionStatusReport_QNAME = new QName("urn:uddi-org:api_v2", "get_assertionStatusReport");
+    private final static QName _GetBusinessDetailExt_QNAME = new QName("urn:uddi-org:api_v2", "get_businessDetailExt");
+    private final static QName _BindingDetail_QNAME = new QName("urn:uddi-org:api_v2", "bindingDetail");
+    private final static QName _TModelDetail_QNAME = new QName("urn:uddi-org:api_v2", "tModelDetail");
+    private final static QName _AccessPoint_QNAME = new QName("urn:uddi-org:api_v2", "accessPoint");
+    private final static QName _SetPublisherAssertions_QNAME = new QName("urn:uddi-org:api_v2", "set_publisherAssertions");
+    private final static QName _SharedRelationships_QNAME = new QName("urn:uddi-org:api_v2", "sharedRelationships");
+    private final static QName _GetAuthToken_QNAME = new QName("urn:uddi-org:api_v2", "get_authToken");
+    private final static QName _HostingRedirector_QNAME = new QName("urn:uddi-org:api_v2", "hostingRedirector");
+    private final static QName _Address_QNAME = new QName("urn:uddi-org:api_v2", "address");
+    private final static QName _FindBusiness_QNAME = new QName("urn:uddi-org:api_v2", "find_business");
+    private final static QName _BusinessList_QNAME = new QName("urn:uddi-org:api_v2", "businessList");
+    private final static QName _FindTModel_QNAME = new QName("urn:uddi-org:api_v2", "find_tModel");
+    private final static QName _ServiceInfos_QNAME = new QName("urn:uddi-org:api_v2", "serviceInfos");
+    private final static QName _ServiceKey_QNAME = new QName("urn:uddi-org:api_v2", "serviceKey");
+    private final static QName _BusinessDetailExt_QNAME = new QName("urn:uddi-org:api_v2", "businessDetailExt");
+    private final static QName _RelatedBusinessInfo_QNAME = new QName("urn:uddi-org:api_v2", "relatedBusinessInfo");
+    private final static QName _DispositionReport_QNAME = new QName("urn:uddi-org:api_v2", "dispositionReport");
+    private final static QName _FindBinding_QNAME = new QName("urn:uddi-org:api_v2", "find_binding");
+    private final static QName _ServiceList_QNAME = new QName("urn:uddi-org:api_v2", "serviceList");
+    private final static QName _PublisherAssertion_QNAME = new QName("urn:uddi-org:api_v2", "publisherAssertion");
+    private final static QName _AuthToken_QNAME = new QName("urn:uddi-org:api_v2", "authToken");
+    private final static QName _OverviewURL_QNAME = new QName("urn:uddi-org:api_v2", "overviewURL");
+    private final static QName _DeleteService_QNAME = new QName("urn:uddi-org:api_v2", "delete_service");
+    private final static QName _FindQualifiers_QNAME = new QName("urn:uddi-org:api_v2", "findQualifiers");
+    private final static QName _DiscoveryURLs_QNAME = new QName("urn:uddi-org:api_v2", "discoveryURLs");
+    private final static QName _BusinessService_QNAME = new QName("urn:uddi-org:api_v2", "businessService");
+    private final static QName _DiscardAuthToken_QNAME = new QName("urn:uddi-org:api_v2", "discard_authToken");
+    private final static QName _DeleteBinding_QNAME = new QName("urn:uddi-org:api_v2", "delete_binding");
+    private final static QName _TModel_QNAME = new QName("urn:uddi-org:api_v2", "tModel");
+    private final static QName _BusinessServices_QNAME = new QName("urn:uddi-org:api_v2", "businessServices");
+    private final static QName _TModelInfos_QNAME = new QName("urn:uddi-org:api_v2", "tModelInfos");
+    private final static QName _Result_QNAME = new QName("urn:uddi-org:api_v2", "result");
+    private final static QName _UploadRegister_QNAME = new QName("urn:uddi-org:api_v2", "uploadRegister");
+    private final static QName _GetBusinessDetail_QNAME = new QName("urn:uddi-org:api_v2", "get_businessDetail");
+    private final static QName _AddPublisherAssertions_QNAME = new QName("urn:uddi-org:api_v2", "add_publisherAssertions");
+    private final static QName _CompletionStatus_QNAME = new QName("urn:uddi-org:api_v2", "completionStatus");
+    private final static QName _GetBindingDetail_QNAME = new QName("urn:uddi-org:api_v2", "get_bindingDetail");
+    private final static QName _TModelInstanceDetails_QNAME = new QName("urn:uddi-org:api_v2", "tModelInstanceDetails");
+    private final static QName _TModelBag_QNAME = new QName("urn:uddi-org:api_v2", "tModelBag");
+    private final static QName _TModelList_QNAME = new QName("urn:uddi-org:api_v2", "tModelList");
+    private final static QName _KeysOwned_QNAME = new QName("urn:uddi-org:api_v2", "keysOwned");
+    private final static QName _DeleteBusiness_QNAME = new QName("urn:uddi-org:api_v2", "delete_business");
+    private final static QName _AssertionStatusReport_QNAME = new QName("urn:uddi-org:api_v2", "assertionStatusReport");
+    private final static QName _KeyedReference_QNAME = new QName("urn:uddi-org:api_v2", "keyedReference");
+    private final static QName _BindingTemplates_QNAME = new QName("urn:uddi-org:api_v2", "bindingTemplates");
+    private final static QName _DeleteTModel_QNAME = new QName("urn:uddi-org:api_v2", "delete_tModel");
+    private final static QName _Email_QNAME = new QName("urn:uddi-org:api_v2", "email");
+    private final static QName _TModelInstanceInfo_QNAME = new QName("urn:uddi-org:api_v2", "tModelInstanceInfo");
+    private final static QName _BusinessEntity_QNAME = new QName("urn:uddi-org:api_v2", "businessEntity");
+    private final static QName _PublisherAssertions_QNAME = new QName("urn:uddi-org:api_v2", "publisherAssertions");
+    private final static QName _GetPublisherAssertions_QNAME = new QName("urn:uddi-org:api_v2", "get_publisherAssertions");
+    private final static QName _Description_QNAME = new QName("urn:uddi-org:api_v2", "description");
+    private final static QName _FindRelatedBusinesses_QNAME = new QName("urn:uddi-org:api_v2", "find_relatedBusinesses");
+    private final static QName _ServiceInfo_QNAME = new QName("urn:uddi-org:api_v2", "serviceInfo");
+    private final static QName _FromKey_QNAME = new QName("urn:uddi-org:api_v2", "fromKey");
+    private final static QName _BusinessDetail_QNAME = new QName("urn:uddi-org:api_v2", "businessDetail");
+    private final static QName _AddressLine_QNAME = new QName("urn:uddi-org:api_v2", "addressLine");
+    private final static QName _PersonName_QNAME = new QName("urn:uddi-org:api_v2", "personName");
+    private final static QName _AuthInfo_QNAME = new QName("urn:uddi-org:api_v2", "authInfo");
+    private final static QName _SaveTModel_QNAME = new QName("urn:uddi-org:api_v2", "save_tModel");
+    private final static QName _GetRegisteredInfo_QNAME = new QName("urn:uddi-org:api_v2", "get_registeredInfo");
+    private final static QName _GetTModelDetail_QNAME = new QName("urn:uddi-org:api_v2", "get_tModelDetail");
+    private final static QName _Name_QNAME = new QName("urn:uddi-org:api_v2", "name");
+    private final static QName _BusinessInfo_QNAME = new QName("urn:uddi-org:api_v2", "businessInfo");
+    private final static QName _BindingKey_QNAME = new QName("urn:uddi-org:api_v2", "bindingKey");
+    private final static QName _DiscoveryURL_QNAME = new QName("urn:uddi-org:api_v2", "discoveryURL");
+    private final static QName _BusinessInfos_QNAME = new QName("urn:uddi-org:api_v2", "businessInfos");
+    private final static QName _DeletePublisherAssertions_QNAME = new QName("urn:uddi-org:api_v2", "delete_publisherAssertions");
+    private final static QName _InstanceParms_QNAME = new QName("urn:uddi-org:api_v2", "instanceParms");
+    private final static QName _TModelInfo_QNAME = new QName("urn:uddi-org:api_v2", "tModelInfo");
+    private final static QName _RelatedBusinessInfos_QNAME = new QName("urn:uddi-org:api_v2", "relatedBusinessInfos");
+    private final static QName _ServiceDetail_QNAME = new QName("urn:uddi-org:api_v2", "serviceDetail");
+    private final static QName _InstanceDetails_QNAME = new QName("urn:uddi-org:api_v2", "instanceDetails");
+    private final static QName _OverviewDoc_QNAME = new QName("urn:uddi-org:api_v2", "overviewDoc");
+    private final static QName _SaveBinding_QNAME = new QName("urn:uddi-org:api_v2", "save_binding");
+    private final static QName _BusinessKey_QNAME = new QName("urn:uddi-org:api_v2", "businessKey");
+    private final static QName _RegisteredInfo_QNAME = new QName("urn:uddi-org:api_v2", "registeredInfo");
+    private final static QName _AssertionStatusItem_QNAME = new QName("urn:uddi-org:api_v2", "assertionStatusItem");
+    private final static QName _ErrInfo_QNAME = new QName("urn:uddi-org:api_v2", "errInfo");
+
+    /**
+     * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: org.apache.ws.scout.model.uddi.v2
+     * 
+     */
+    public ObjectFactory() {
+    }
+
+    /**
+     * Create an instance of {@link PublisherAssertion }
+     * 
+     */
+    public PublisherAssertion createPublisherAssertion() {
+        return new PublisherAssertion();
+    }
+
+    /**
+     * Create an instance of {@link Name }
+     * 
+     */
+    public Name createName() {
+        return new Name();
+    }
+
+    /**
+     * Create an instance of {@link Contacts }
+     * 
+     */
+    public Contacts createContacts() {
+        return new Contacts();
+    }
+
+    /**
+     * Create an instance of {@link OverviewDoc }
+     * 
+     */
+    public OverviewDoc createOverviewDoc() {
+        return new OverviewDoc();
+    }
+
+    /**
+     * Create an instance of {@link DeletePublisherAssertions }
+     * 
+     */
+    public DeletePublisherAssertions createDeletePublisherAssertions() {
+        return new DeletePublisherAssertions();
+    }
+
+    /**
+     * Create an instance of {@link DeleteBusiness }
+     * 
+     */
+    public DeleteBusiness createDeleteBusiness() {
+        return new DeleteBusiness();
+    }
+
+    /**
+     * Create an instance of {@link GetAuthToken }
+     * 
+     */
+    public GetAuthToken createGetAuthToken() {
+        return new GetAuthToken();
+    }
+
+    /**
+     * Create an instance of {@link PublisherAssertions }
+     * 
+     */
+    public PublisherAssertions createPublisherAssertions() {
+        return new PublisherAssertions();
+    }
+
+    /**
+     * Create an instance of {@link DeleteBinding }
+     * 
+     */
+    public DeleteBinding createDeleteBinding() {
+        return new DeleteBinding();
+    }
+
+    /**
+     * Create an instance of {@link ErrInfo }
+     * 
+     */
+    public ErrInfo createErrInfo() {
+        return new ErrInfo();
+    }
+
+    /**
+     * Create an instance of {@link ServiceDetail }
+     * 
+     */
+    public ServiceDetail createServiceDetail() {
+        return new ServiceDetail();
+    }
+
+    /**
+     * Create an instance of {@link SetPublisherAssertions }
+     * 
+     */
+    public SetPublisherAssertions createSetPublisherAssertions() {
+        return new SetPublisherAssertions();
+    }
+
+    /**
+     * Create an instance of {@link Address }
+     * 
+     */
+    public Address createAddress() {
+        return new Address();
+    }
+
+    /**
+     * Create an instance of {@link TModelInfo }
+     * 
+     */
+    public TModelInfo createTModelInfo() {
+        return new TModelInfo();
+    }
+
+    /**
+     * Create an instance of {@link BusinessService }
+     * 
+     */
+    public BusinessService createBusinessService() {
+        return new BusinessService();
+    }
+
+    /**
+     * Create an instance of {@link AddressLine }
+     * 
+     */
+    public AddressLine createAddressLine() {
+        return new AddressLine();
+    }
+
+    /**
+     * Create an instance of {@link FindService }
+     * 
+     */
+    public FindService createFindService() {
+        return new FindService();
+    }
+
+    /**
+     * Create an instance of {@link SharedRelationships }
+     * 
+     */
+    public SharedRelationships createSharedRelationships() {
+        return new SharedRelationships();
+    }
+
+    /**
+     * Create an instance of {@link TModelInstanceDetails }
+     * 
+     */
+    public TModelInstanceDetails createTModelInstanceDetails() {
+        return new TModelInstanceDetails();
+    }
+
+    /**
+     * Create an instance of {@link TModelDetail }
+     * 
+     */
+    public TModelDetail createTModelDetail() {
+        return new TModelDetail();
+    }
+
+    /**
+     * Create an instance of {@link AuthToken }
+     * 
+     */
+    public AuthToken createAuthToken() {
+        return new AuthToken();
+    }
+
+    /**
+     * Create an instance of {@link ValidateValues }
+     * 
+     */
+    public ValidateValues createValidateValues() {
+        return new ValidateValues();
+    }
+
+    /**
+     * Create an instance of {@link TModelList }
+     * 
+     */
+    public TModelList createTModelList() {
+        return new TModelList();
+    }
+
+    /**
+     * Create an instance of {@link DeleteTModel }
+     * 
+     */
+    public DeleteTModel createDeleteTModel() {
+        return new DeleteTModel();
+    }
+
+    /**
+     * Create an instance of {@link Contact }
+     * 
+     */
+    public Contact createContact() {
+        return new Contact();
+    }
+
+    /**
+     * Create an instance of {@link BusinessInfo }
+     * 
+     */
+    public BusinessInfo createBusinessInfo() {
+        return new BusinessInfo();
+    }
+
+    /**
+     * Create an instance of {@link KeysOwned }
+     * 
+     */
+    public KeysOwned createKeysOwned() {
+        return new KeysOwned();
+    }
+
+    /**
+     * Create an instance of {@link GetPublisherAssertions }
+     * 
+     */
+    public GetPublisherAssertions createGetPublisherAssertions() {
+        return new GetPublisherAssertions();
+    }
+
+    /**
+     * Create an instance of {@link DiscoveryURL }
+     * 
+     */
+    public DiscoveryURL createDiscoveryURL() {
+        return new DiscoveryURL();
+    }
+
+    /**
+     * Create an instance of {@link RelatedBusinessInfo }
+     * 
+     */
+    public RelatedBusinessInfo createRelatedBusinessInfo() {
+        return new RelatedBusinessInfo();
+    }
+
+    /**
+     * Create an instance of {@link BindingTemplate }
+     * 
+     */
+    public BindingTemplate createBindingTemplate() {
+        return new BindingTemplate();
+    }
+
+    /**
+     * Create an instance of {@link RelatedBusinessInfos }
+     * 
+     */
+    public RelatedBusinessInfos createRelatedBusinessInfos() {
+        return new RelatedBusinessInfos();
+    }
+
+    /**
+     * Create an instance of {@link BindingDetail }
+     * 
+     */
+    public BindingDetail createBindingDetail() {
+        return new BindingDetail();
+    }
+
+    /**
+     * Create an instance of {@link Email }
+     * 
+     */
+    public Email createEmail() {
+        return new Email();
+    }
+
+    /**
+     * Create an instance of {@link BusinessDetailExt }
+     * 
+     */
+    public BusinessDetailExt createBusinessDetailExt() {
+        return new BusinessDetailExt();
+    }
+
+    /**
+     * Create an instance of {@link DeleteService }
+     * 
+     */
+    public DeleteService createDeleteService() {
+        return new DeleteService();
+    }
+
+    /**
+     * Create an instance of {@link CategoryBag }
+     * 
+     */
+    public CategoryBag createCategoryBag() {
+        return new CategoryBag();
+    }
+
+    /**
+     * Create an instance of {@link BusinessDetail }
+     * 
+     */
+    public BusinessDetail createBusinessDetail() {
+        return new BusinessDetail();
+    }
+
+    /**
+     * Create an instance of {@link FindQualifiers }
+     * 
+     */
+    public FindQualifiers createFindQualifiers() {
+        return new FindQualifiers();
+    }
+
+    /**
+     * Create an instance of {@link AddPublisherAssertions }
+     * 
+     */
+    public AddPublisherAssertions createAddPublisherAssertions() {
+        return new AddPublisherAssertions();
+    }
+
+    /**
+     * Create an instance of {@link Description }
+     * 
+     */
+    public Description createDescription() {
+        return new Description();
+    }
+
+    /**
+     * Create an instance of {@link AssertionStatusItem }
+     * 
+     */
+    public AssertionStatusItem createAssertionStatusItem() {
+        return new AssertionStatusItem();
+    }
+
+    /**
+     * Create an instance of {@link FindTModel }
+     * 
+     */
+    public FindTModel createFindTModel() {
+        return new FindTModel();
+    }
+
+    /**
+     * Create an instance of {@link AssertionStatusReport }
+     * 
+     */
+    public AssertionStatusReport createAssertionStatusReport() {
+        return new AssertionStatusReport();
+    }
+
+    /**
+     * Create an instance of {@link SaveBinding }
+     * 
+     */
+    public SaveBinding createSaveBinding() {
+        return new SaveBinding();
+    }
+
+    /**
+     * Create an instance of {@link IdentifierBag }
+     * 
+     */
+    public IdentifierBag createIdentifierBag() {
+        return new IdentifierBag();
+    }
+
+    /**
+     * Create an instance of {@link GetBusinessDetail }
+     * 
+     */
+    public GetBusinessDetail createGetBusinessDetail() {
+        return new GetBusinessDetail();
+    }
+
+    /**
+     * Create an instance of {@link Phone }
+     * 
+     */
+    public Phone createPhone() {
+        return new Phone();
+    }
+
+    /**
+     * Create an instance of {@link TModel }
+     * 
+     */
+    public TModel createTModel() {
+        return new TModel();
+    }
+
+    /**
+     * Create an instance of {@link BusinessEntity }
+     * 
+     */
+    public BusinessEntity createBusinessEntity() {
+        return new BusinessEntity();
+    }
+
+    /**
+     * Create an instance of {@link RelatedBusinessesList }
+     * 
+     */
+    public RelatedBusinessesList createRelatedBusinessesList() {
+        return new RelatedBusinessesList();
+    }
+
+    /**
+     * Create an instance of {@link DiscardAuthToken }
+     * 
+     */
+    public DiscardAuthToken createDiscardAuthToken() {
+        return new DiscardAuthToken();
+    }
+
+    /**
+     * Create an instance of {@link BusinessList }
+     * 
+     */
+    public BusinessList createBusinessList() {
+        return new BusinessList();
+    }
+
+    /**
+     * Create an instance of {@link BusinessEntityExt }
+     * 
+     */
+    public BusinessEntityExt createBusinessEntityExt() {
+        return new BusinessEntityExt();
+    }
+
+    /**
+     * Create an instance of {@link SaveBusiness }
+     * 
+     */
+    public SaveBusiness createSaveBusiness() {
+        return new SaveBusiness();
+    }
+
+    /**
+     * Create an instance of {@link ServiceInfos }
+     * 
+     */
+    public ServiceInfos createServiceInfos() {
+        return new ServiceInfos();
+    }
+
+    /**
+     * Create an instance of {@link SaveTModel }
+     * 
+     */
+    public SaveTModel createSaveTModel() {
+        return new SaveTModel();
+    }
+
+    /**
+     * Create an instance of {@link ServiceList }
+     * 
+     */
+    public ServiceList createServiceList() {
+        return new ServiceList();
+    }
+
+    /**
+     * Create an instance of {@link SaveService }
+     * 
+     */
+    public SaveService createSaveService() {
+        return new SaveService();
+    }
+
+    /**
+     * Create an instance of {@link BusinessInfos }
+     * 
+     */
+    public BusinessInfos createBusinessInfos() {
+        return new BusinessInfos();
+    }
+
+    /**
+     * Create an instance of {@link TModelInfos }
+     * 
+     */
+    public TModelInfos createTModelInfos() {
+        return new TModelInfos();
+    }
+
+    /**
+     * Create an instance of {@link GetBindingDetail }
+     * 
+     */
+    public GetBindingDetail createGetBindingDetail() {
+        return new GetBindingDetail();
+    }
+
+    /**
+     * Create an instance of {@link GetBusinessDetailExt }
+     * 
+     */
+    public GetBusinessDetailExt createGetBusinessDetailExt() {
+        return new GetBusinessDetailExt();
+    }
+
+    /**
+     * Create an instance of {@link GetRegisteredInfo }
+     * 
+     */
+    public GetRegisteredInfo createGetRegisteredInfo() {
+        return new GetRegisteredInfo();
+    }
+
+    /**
+     * Create an instance of {@link HostingRedirector }
+     * 
+     */
+    public HostingRedirector createHostingRedirector() {
+        return new HostingRedirector();
+    }
+
+    /**
+     * Create an instance of {@link FindRelatedBusinesses }
+     * 
+     */
+    public FindRelatedBusinesses createFindRelatedBusinesses() {
+        return new FindRelatedBusinesses();
+    }
+
+    /**
+     * Create an instance of {@link BindingTemplates }
+     * 
+     */
+    public BindingTemplates createBindingTemplates() {
+        return new BindingTemplates();
+    }
+
+    /**
+     * Create an instance of {@link InstanceDetails }
+     * 
+     */
+    public InstanceDetails createInstanceDetails() {
+        return new InstanceDetails();
+    }
+
+    /**
+     * Create an instance of {@link TModelBag }
+     * 
+     */
+    public TModelBag createTModelBag() {
+        return new TModelBag();
+    }
+
+    /**
+     * Create an instance of {@link FindBinding }
+     * 
+     */
+    public FindBinding createFindBinding() {
+        return new FindBinding();
+    }
+
+    /**
+     * Create an instance of {@link DiscoveryURLs }
+     * 
+     */
+    public DiscoveryURLs createDiscoveryURLs() {
+        return new DiscoveryURLs();
+    }
+
+    /**
+     * Create an instance of {@link GetTModelDetail }
+     * 
+     */
+    public GetTModelDetail createGetTModelDetail() {
+        return new GetTModelDetail();
+    }
+
+    /**
+     * Create an instance of {@link GetServiceDetail }
+     * 
+     */
+    public GetServiceDetail createGetServiceDetail() {
+        return new GetServiceDetail();
+    }
+
+    /**
+     * Create an instance of {@link KeyedReference }
+     * 
+     */
+    public KeyedReference createKeyedReference() {
+        return new KeyedReference();
+    }
+
+    /**
+     * Create an instance of {@link Result }
+     * 
+     */
+    public Result createResult() {
+        return new Result();
+    }
+
+    /**
+     * Create an instance of {@link ServiceInfo }
+     * 
+     */
+    public ServiceInfo createServiceInfo() {
+        return new ServiceInfo();
+    }
+
+    /**
+     * Create an instance of {@link FindBusiness }
+     * 
+     */
+    public FindBusiness createFindBusiness() {
+        return new FindBusiness();
+    }
+
+    /**
+     * Create an instance of {@link GetAssertionStatusReport }
+     * 
+     */
+    public GetAssertionStatusReport createGetAssertionStatusReport() {
+        return new GetAssertionStatusReport();
+    }
+
+    /**
+     * Create an instance of {@link TModelInstanceInfo }
+     * 
+     */
+    public TModelInstanceInfo createTModelInstanceInfo() {
+        return new TModelInstanceInfo();
+    }
+
+    /**
+     * Create an instance of {@link BusinessServices }
+     * 
+     */
+    public BusinessServices createBusinessServices() {
+        return new BusinessServices();
+    }
+
+    /**
+     * Create an instance of {@link AccessPoint }
+     * 
+     */
+    public AccessPoint createAccessPoint() {
+        return new AccessPoint();
+    }
+
+    /**
+     * Create an instance of {@link RegisteredInfo }
+     * 
+     */
+    public RegisteredInfo createRegisteredInfo() {
+        return new RegisteredInfo();
+    }
+
+    /**
+     * Create an instance of {@link DispositionReport }
+     * 
+     */
+    public DispositionReport createDispositionReport() {
+        return new DispositionReport();
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link RelatedBusinessesList }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "relatedBusinessesList")
+    public JAXBElement<RelatedBusinessesList> createRelatedBusinessesList(RelatedBusinessesList value) {
+        return new JAXBElement<RelatedBusinessesList>(_RelatedBusinessesList_QNAME, RelatedBusinessesList.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "tModelKey")
+    public JAXBElement<String> createTModelKey(String value) {
+        return new JAXBElement<String>(_TModelKey_QNAME, String.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link GetServiceDetail }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "get_serviceDetail")
+    public JAXBElement<GetServiceDetail> createGetServiceDetail(GetServiceDetail value) {
+        return new JAXBElement<GetServiceDetail>(_GetServiceDetail_QNAME, GetServiceDetail.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "findQualifier")
+    public JAXBElement<String> createFindQualifier(String value) {
+        return new JAXBElement<String>(_FindQualifier_QNAME, String.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "toKey")
+    public JAXBElement<String> createToKey(String value) {
+        return new JAXBElement<String>(_ToKey_QNAME, String.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link BindingTemplate }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "bindingTemplate")
+    public JAXBElement<BindingTemplate> createBindingTemplate(BindingTemplate value) {
+        return new JAXBElement<BindingTemplate>(_BindingTemplate_QNAME, BindingTemplate.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link FindService }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "find_service")
+    public JAXBElement<FindService> createFindService(FindService value) {
+        return new JAXBElement<FindService>(_FindService_QNAME, FindService.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link CategoryBag }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "categoryBag")
+    public JAXBElement<CategoryBag> createCategoryBag(CategoryBag value) {
+        return new JAXBElement<CategoryBag>(_CategoryBag_QNAME, CategoryBag.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link SaveBusiness }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "save_business")
+    public JAXBElement<SaveBusiness> createSaveBusiness(SaveBusiness value) {
+        return new JAXBElement<SaveBusiness>(_SaveBusiness_QNAME, SaveBusiness.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link IdentifierBag }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "identifierBag")
+    public JAXBElement<IdentifierBag> createIdentifierBag(IdentifierBag value) {
+        return new JAXBElement<IdentifierBag>(_IdentifierBag_QNAME, IdentifierBag.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link SaveService }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "save_service")
+    public JAXBElement<SaveService> createSaveService(SaveService value) {
+        return new JAXBElement<SaveService>(_SaveService_QNAME, SaveService.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link ValidateValues }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "validate_values")
+    public JAXBElement<ValidateValues> createValidateValues(ValidateValues value) {
+        return new JAXBElement<ValidateValues>(_ValidateValues_QNAME, ValidateValues.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link Contacts }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "contacts")
+    public JAXBElement<Contacts> createContacts(Contacts value) {
+        return new JAXBElement<Contacts>(_Contacts_QNAME, Contacts.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link Phone }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "phone")
+    public JAXBElement<Phone> createPhone(Phone value) {
+        return new JAXBElement<Phone>(_Phone_QNAME, Phone.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link BusinessEntityExt }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "businessEntityExt")
+    public JAXBElement<BusinessEntityExt> createBusinessEntityExt(BusinessEntityExt value) {
+        return new JAXBElement<BusinessEntityExt>(_BusinessEntityExt_QNAME, BusinessEntityExt.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link Contact }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "contact")
+    public JAXBElement<Contact> createContact(Contact value) {
+        return new JAXBElement<Contact>(_Contact_QNAME, Contact.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link GetAssertionStatusReport }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "get_assertionStatusReport")
+    public JAXBElement<GetAssertionStatusReport> createGetAssertionStatusReport(GetAssertionStatusReport value) {
+        return new JAXBElement<GetAssertionStatusReport>(_GetAssertionStatusReport_QNAME, GetAssertionStatusReport.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link GetBusinessDetailExt }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "get_businessDetailExt")
+    public JAXBElement<GetBusinessDetailExt> createGetBusinessDetailExt(GetBusinessDetailExt value) {
+        return new JAXBElement<GetBusinessDetailExt>(_GetBusinessDetailExt_QNAME, GetBusinessDetailExt.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link BindingDetail }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "bindingDetail")
+    public JAXBElement<BindingDetail> createBindingDetail(BindingDetail value) {
+        return new JAXBElement<BindingDetail>(_BindingDetail_QNAME, BindingDetail.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link TModelDetail }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "tModelDetail")
+    public JAXBElement<TModelDetail> createTModelDetail(TModelDetail value) {
+        return new JAXBElement<TModelDetail>(_TModelDetail_QNAME, TModelDetail.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link AccessPoint }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "accessPoint")
+    public JAXBElement<AccessPoint> createAccessPoint(AccessPoint value) {
+        return new JAXBElement<AccessPoint>(_AccessPoint_QNAME, AccessPoint.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link SetPublisherAssertions }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "set_publisherAssertions")
+    public JAXBElement<SetPublisherAssertions> createSetPublisherAssertions(SetPublisherAssertions value) {
+        return new JAXBElement<SetPublisherAssertions>(_SetPublisherAssertions_QNAME, SetPublisherAssertions.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link SharedRelationships }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "sharedRelationships")
+    public JAXBElement<SharedRelationships> createSharedRelationships(SharedRelationships value) {
+        return new JAXBElement<SharedRelationships>(_SharedRelationships_QNAME, SharedRelationships.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link GetAuthToken }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "get_authToken")
+    public JAXBElement<GetAuthToken> createGetAuthToken(GetAuthToken value) {
+        return new JAXBElement<GetAuthToken>(_GetAuthToken_QNAME, GetAuthToken.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link HostingRedirector }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "hostingRedirector")
+    public JAXBElement<HostingRedirector> createHostingRedirector(HostingRedirector value) {
+        return new JAXBElement<HostingRedirector>(_HostingRedirector_QNAME, HostingRedirector.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link Address }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "address")
+    public JAXBElement<Address> createAddress(Address value) {
+        return new JAXBElement<Address>(_Address_QNAME, Address.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link FindBusiness }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "find_business")
+    public JAXBElement<FindBusiness> createFindBusiness(FindBusiness value) {
+        return new JAXBElement<FindBusiness>(_FindBusiness_QNAME, FindBusiness.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link BusinessList }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "businessList")
+    public JAXBElement<BusinessList> createBusinessList(BusinessList value) {
+        return new JAXBElement<BusinessList>(_BusinessList_QNAME, BusinessList.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link FindTModel }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "find_tModel")
+    public JAXBElement<FindTModel> createFindTModel(FindTModel value) {
+        return new JAXBElement<FindTModel>(_FindTModel_QNAME, FindTModel.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link ServiceInfos }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "serviceInfos")
+    public JAXBElement<ServiceInfos> createServiceInfos(ServiceInfos value) {
+        return new JAXBElement<ServiceInfos>(_ServiceInfos_QNAME, ServiceInfos.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "serviceKey")
+    public JAXBElement<String> createServiceKey(String value) {
+        return new JAXBElement<String>(_ServiceKey_QNAME, String.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link BusinessDetailExt }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "businessDetailExt")
+    public JAXBElement<BusinessDetailExt> createBusinessDetailExt(BusinessDetailExt value) {
+        return new JAXBElement<BusinessDetailExt>(_BusinessDetailExt_QNAME, BusinessDetailExt.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link RelatedBusinessInfo }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "relatedBusinessInfo")
+    public JAXBElement<RelatedBusinessInfo> createRelatedBusinessInfo(RelatedBusinessInfo value) {
+        return new JAXBElement<RelatedBusinessInfo>(_RelatedBusinessInfo_QNAME, RelatedBusinessInfo.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link DispositionReport }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "dispositionReport")
+    public JAXBElement<DispositionReport> createDispositionReport(DispositionReport value) {
+        return new JAXBElement<DispositionReport>(_DispositionReport_QNAME, DispositionReport.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link FindBinding }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "find_binding")
+    public JAXBElement<FindBinding> createFindBinding(FindBinding value) {
+        return new JAXBElement<FindBinding>(_FindBinding_QNAME, FindBinding.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link ServiceList }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "serviceList")
+    public JAXBElement<ServiceList> createServiceList(ServiceList value) {
+        return new JAXBElement<ServiceList>(_ServiceList_QNAME, ServiceList.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link PublisherAssertion }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "publisherAssertion")
+    public JAXBElement<PublisherAssertion> createPublisherAssertion(PublisherAssertion value) {
+        return new JAXBElement<PublisherAssertion>(_PublisherAssertion_QNAME, PublisherAssertion.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link AuthToken }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "authToken")
+    public JAXBElement<AuthToken> createAuthToken(AuthToken value) {
+        return new JAXBElement<AuthToken>(_AuthToken_QNAME, AuthToken.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "overviewURL")
+    public JAXBElement<String> createOverviewURL(String value) {
+        return new JAXBElement<String>(_OverviewURL_QNAME, String.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link DeleteService }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "delete_service")
+    public JAXBElement<DeleteService> createDeleteService(DeleteService value) {
+        return new JAXBElement<DeleteService>(_DeleteService_QNAME, DeleteService.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link FindQualifiers }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "findQualifiers")
+    public JAXBElement<FindQualifiers> createFindQualifiers(FindQualifiers value) {
+        return new JAXBElement<FindQualifiers>(_FindQualifiers_QNAME, FindQualifiers.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link DiscoveryURLs }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "discoveryURLs")
+    public JAXBElement<DiscoveryURLs> createDiscoveryURLs(DiscoveryURLs value) {
+        return new JAXBElement<DiscoveryURLs>(_DiscoveryURLs_QNAME, DiscoveryURLs.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link BusinessService }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "businessService")
+    public JAXBElement<BusinessService> createBusinessService(BusinessService value) {
+        return new JAXBElement<BusinessService>(_BusinessService_QNAME, BusinessService.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link DiscardAuthToken }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "discard_authToken")
+    public JAXBElement<DiscardAuthToken> createDiscardAuthToken(DiscardAuthToken value) {
+        return new JAXBElement<DiscardAuthToken>(_DiscardAuthToken_QNAME, DiscardAuthToken.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link DeleteBinding }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "delete_binding")
+    public JAXBElement<DeleteBinding> createDeleteBinding(DeleteBinding value) {
+        return new JAXBElement<DeleteBinding>(_DeleteBinding_QNAME, DeleteBinding.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link TModel }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "tModel")
+    public JAXBElement<TModel> createTModel(TModel value) {
+        return new JAXBElement<TModel>(_TModel_QNAME, TModel.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link BusinessServices }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "businessServices")
+    public JAXBElement<BusinessServices> createBusinessServices(BusinessServices value) {
+        return new JAXBElement<BusinessServices>(_BusinessServices_QNAME, BusinessServices.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link TModelInfos }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "tModelInfos")
+    public JAXBElement<TModelInfos> createTModelInfos(TModelInfos value) {
+        return new JAXBElement<TModelInfos>(_TModelInfos_QNAME, TModelInfos.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link Result }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "result")
+    public JAXBElement<Result> createResult(Result value) {
+        return new JAXBElement<Result>(_Result_QNAME, Result.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "uploadRegister")
+    public JAXBElement<String> createUploadRegister(String value) {
+        return new JAXBElement<String>(_UploadRegister_QNAME, String.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link GetBusinessDetail }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "get_businessDetail")
+    public JAXBElement<GetBusinessDetail> createGetBusinessDetail(GetBusinessDetail value) {
+        return new JAXBElement<GetBusinessDetail>(_GetBusinessDetail_QNAME, GetBusinessDetail.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link AddPublisherAssertions }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "add_publisherAssertions")
+    public JAXBElement<AddPublisherAssertions> createAddPublisherAssertions(AddPublisherAssertions value) {
+        return new JAXBElement<AddPublisherAssertions>(_AddPublisherAssertions_QNAME, AddPublisherAssertions.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "completionStatus")
+    public JAXBElement<String> createCompletionStatus(String value) {
+        return new JAXBElement<String>(_CompletionStatus_QNAME, String.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link GetBindingDetail }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "get_bindingDetail")
+    public JAXBElement<GetBindingDetail> createGetBindingDetail(GetBindingDetail value) {
+        return new JAXBElement<GetBindingDetail>(_GetBindingDetail_QNAME, GetBindingDetail.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link TModelInstanceDetails }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "tModelInstanceDetails")
+    public JAXBElement<TModelInstanceDetails> createTModelInstanceDetails(TModelInstanceDetails value) {
+        return new JAXBElement<TModelInstanceDetails>(_TModelInstanceDetails_QNAME, TModelInstanceDetails.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link TModelBag }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "tModelBag")
+    public JAXBElement<TModelBag> createTModelBag(TModelBag value) {
+        return new JAXBElement<TModelBag>(_TModelBag_QNAME, TModelBag.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link TModelList }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "tModelList")
+    public JAXBElement<TModelList> createTModelList(TModelList value) {
+        return new JAXBElement<TModelList>(_TModelList_QNAME, TModelList.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link KeysOwned }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "keysOwned")
+    public JAXBElement<KeysOwned> createKeysOwned(KeysOwned value) {
+        return new JAXBElement<KeysOwned>(_KeysOwned_QNAME, KeysOwned.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link DeleteBusiness }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "delete_business")
+    public JAXBElement<DeleteBusiness> createDeleteBusiness(DeleteBusiness value) {
+        return new JAXBElement<DeleteBusiness>(_DeleteBusiness_QNAME, DeleteBusiness.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link AssertionStatusReport }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "assertionStatusReport")
+    public JAXBElement<AssertionStatusReport> createAssertionStatusReport(AssertionStatusReport value) {
+        return new JAXBElement<AssertionStatusReport>(_AssertionStatusReport_QNAME, AssertionStatusReport.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link KeyedReference }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "keyedReference")
+    public JAXBElement<KeyedReference> createKeyedReference(KeyedReference value) {
+        return new JAXBElement<KeyedReference>(_KeyedReference_QNAME, KeyedReference.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link BindingTemplates }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "bindingTemplates")
+    public JAXBElement<BindingTemplates> createBindingTemplates(BindingTemplates value) {
+        return new JAXBElement<BindingTemplates>(_BindingTemplates_QNAME, BindingTemplates.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link DeleteTModel }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "delete_tModel")
+    public JAXBElement<DeleteTModel> createDeleteTModel(DeleteTModel value) {
+        return new JAXBElement<DeleteTModel>(_DeleteTModel_QNAME, DeleteTModel.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link Email }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "email")
+    public JAXBElement<Email> createEmail(Email value) {
+        return new JAXBElement<Email>(_Email_QNAME, Email.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link TModelInstanceInfo }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "tModelInstanceInfo")
+    public JAXBElement<TModelInstanceInfo> createTModelInstanceInfo(TModelInstanceInfo value) {
+        return new JAXBElement<TModelInstanceInfo>(_TModelInstanceInfo_QNAME, TModelInstanceInfo.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link BusinessEntity }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "businessEntity")
+    public JAXBElement<BusinessEntity> createBusinessEntity(BusinessEntity value) {
+        return new JAXBElement<BusinessEntity>(_BusinessEntity_QNAME, BusinessEntity.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link PublisherAssertions }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "publisherAssertions")
+    public JAXBElement<PublisherAssertions> createPublisherAssertions(PublisherAssertions value) {
+        return new JAXBElement<PublisherAssertions>(_PublisherAssertions_QNAME, PublisherAssertions.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link GetPublisherAssertions }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "get_publisherAssertions")
+    public JAXBElement<GetPublisherAssertions> createGetPublisherAssertions(GetPublisherAssertions value) {
+        return new JAXBElement<GetPublisherAssertions>(_GetPublisherAssertions_QNAME, GetPublisherAssertions.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link Description }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "description")
+    public JAXBElement<Description> createDescription(Description value) {
+        return new JAXBElement<Description>(_Description_QNAME, Description.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link FindRelatedBusinesses }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "find_relatedBusinesses")
+    public JAXBElement<FindRelatedBusinesses> createFindRelatedBusinesses(FindRelatedBusinesses value) {
+        return new JAXBElement<FindRelatedBusinesses>(_FindRelatedBusinesses_QNAME, FindRelatedBusinesses.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link ServiceInfo }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "serviceInfo")
+    public JAXBElement<ServiceInfo> createServiceInfo(ServiceInfo value) {
+        return new JAXBElement<ServiceInfo>(_ServiceInfo_QNAME, ServiceInfo.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "fromKey")
+    public JAXBElement<String> createFromKey(String value) {
+        return new JAXBElement<String>(_FromKey_QNAME, String.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link BusinessDetail }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "businessDetail")
+    public JAXBElement<BusinessDetail> createBusinessDetail(BusinessDetail value) {
+        return new JAXBElement<BusinessDetail>(_BusinessDetail_QNAME, BusinessDetail.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link AddressLine }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "addressLine")
+    public JAXBElement<AddressLine> createAddressLine(AddressLine value) {
+        return new JAXBElement<AddressLine>(_AddressLine_QNAME, AddressLine.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "personName")
+    public JAXBElement<String> createPersonName(String value) {
+        return new JAXBElement<String>(_PersonName_QNAME, String.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "authInfo")
+    public JAXBElement<String> createAuthInfo(String value) {
+        return new JAXBElement<String>(_AuthInfo_QNAME, String.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link SaveTModel }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "save_tModel")
+    public JAXBElement<SaveTModel> createSaveTModel(SaveTModel value) {
+        return new JAXBElement<SaveTModel>(_SaveTModel_QNAME, SaveTModel.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link GetRegisteredInfo }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "get_registeredInfo")
+    public JAXBElement<GetRegisteredInfo> createGetRegisteredInfo(GetRegisteredInfo value) {
+        return new JAXBElement<GetRegisteredInfo>(_GetRegisteredInfo_QNAME, GetRegisteredInfo.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link GetTModelDetail }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "get_tModelDetail")
+    public JAXBElement<GetTModelDetail> createGetTModelDetail(GetTModelDetail value) {
+        return new JAXBElement<GetTModelDetail>(_GetTModelDetail_QNAME, GetTModelDetail.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link Name }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "name")
+    public JAXBElement<Name> createName(Name value) {
+        return new JAXBElement<Name>(_Name_QNAME, Name.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link BusinessInfo }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "businessInfo")
+    public JAXBElement<BusinessInfo> createBusinessInfo(BusinessInfo value) {
+        return new JAXBElement<BusinessInfo>(_BusinessInfo_QNAME, BusinessInfo.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "bindingKey")
+    public JAXBElement<String> createBindingKey(String value) {
+        return new JAXBElement<String>(_BindingKey_QNAME, String.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link DiscoveryURL }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "discoveryURL")
+    public JAXBElement<DiscoveryURL> createDiscoveryURL(DiscoveryURL value) {
+        return new JAXBElement<DiscoveryURL>(_DiscoveryURL_QNAME, DiscoveryURL.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link BusinessInfos }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "businessInfos")
+    public JAXBElement<BusinessInfos> createBusinessInfos(BusinessInfos value) {
+        return new JAXBElement<BusinessInfos>(_BusinessInfos_QNAME, BusinessInfos.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link DeletePublisherAssertions }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "delete_publisherAssertions")
+    public JAXBElement<DeletePublisherAssertions> createDeletePublisherAssertions(DeletePublisherAssertions value) {
+        return new JAXBElement<DeletePublisherAssertions>(_DeletePublisherAssertions_QNAME, DeletePublisherAssertions.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "instanceParms")
+    public JAXBElement<String> createInstanceParms(String value) {
+        return new JAXBElement<String>(_InstanceParms_QNAME, String.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link TModelInfo }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "tModelInfo")
+    public JAXBElement<TModelInfo> createTModelInfo(TModelInfo value) {
+        return new JAXBElement<TModelInfo>(_TModelInfo_QNAME, TModelInfo.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link RelatedBusinessInfos }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "relatedBusinessInfos")
+    public JAXBElement<RelatedBusinessInfos> createRelatedBusinessInfos(RelatedBusinessInfos value) {
+        return new JAXBElement<RelatedBusinessInfos>(_RelatedBusinessInfos_QNAME, RelatedBusinessInfos.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link ServiceDetail }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "serviceDetail")
+    public JAXBElement<ServiceDetail> createServiceDetail(ServiceDetail value) {
+        return new JAXBElement<ServiceDetail>(_ServiceDetail_QNAME, ServiceDetail.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link InstanceDetails }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "instanceDetails")
+    public JAXBElement<InstanceDetails> createInstanceDetails(InstanceDetails value) {
+        return new JAXBElement<InstanceDetails>(_InstanceDetails_QNAME, InstanceDetails.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link OverviewDoc }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "overviewDoc")
+    public JAXBElement<OverviewDoc> createOverviewDoc(OverviewDoc value) {
+        return new JAXBElement<OverviewDoc>(_OverviewDoc_QNAME, OverviewDoc.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link SaveBinding }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "save_binding")
+    public JAXBElement<SaveBinding> createSaveBinding(SaveBinding value) {
+        return new JAXBElement<SaveBinding>(_SaveBinding_QNAME, SaveBinding.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "businessKey")
+    public JAXBElement<String> createBusinessKey(String value) {
+        return new JAXBElement<String>(_BusinessKey_QNAME, String.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link RegisteredInfo }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "registeredInfo")
+    public JAXBElement<RegisteredInfo> createRegisteredInfo(RegisteredInfo value) {
+        return new JAXBElement<RegisteredInfo>(_RegisteredInfo_QNAME, RegisteredInfo.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link AssertionStatusItem }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "assertionStatusItem")
+    public JAXBElement<AssertionStatusItem> createAssertionStatusItem(AssertionStatusItem value) {
+        return new JAXBElement<AssertionStatusItem>(_AssertionStatusItem_QNAME, AssertionStatusItem.class, null, value);
+    }
+
+    /**
+     * Create an instance of {@link JAXBElement }{@code <}{@link ErrInfo }{@code >}}
+     * 
+     */
+    @XmlElementDecl(namespace = "urn:uddi-org:api_v2", name = "errInfo")
+    public JAXBElement<ErrInfo> createErrInfo(ErrInfo value) {
+        return new JAXBElement<ErrInfo>(_ErrInfo_QNAME, ErrInfo.class, null, value);
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/OverviewDoc.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/OverviewDoc.java
new file mode 100644
index 0000000..ee20f94
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/OverviewDoc.java
@@ -0,0 +1,101 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for overviewDoc complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="overviewDoc">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}description" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}overviewURL" minOccurs="0"/>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "overviewDoc", propOrder = {
+    "description",
+    "overviewURL"
+})
+public class OverviewDoc {
+
+    protected List<Description> description;
+    protected String overviewURL;
+
+    /**
+     * Gets the value of the description property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the description property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getDescription().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Description }
+     * 
+     * 
+     */
+    public List<Description> getDescription() {
+        if (description == null) {
+            description = new ArrayList<Description>();
+        }
+        return this.description;
+    }
+
+    /**
+     * Gets the value of the overviewURL property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getOverviewURL() {
+        return overviewURL;
+    }
+
+    /**
+     * Sets the value of the overviewURL property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setOverviewURL(String value) {
+        this.overviewURL = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/Phone.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/Phone.java
new file mode 100644
index 0000000..861b9cc
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/Phone.java
@@ -0,0 +1,94 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlValue;
+
+
+/**
+ * <p>Java class for phone complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="phone">
+ *   &lt;simpleContent>
+ *     &lt;extension base="&lt;http://www.w3.org/2001/XMLSchema>string">
+ *       &lt;attribute name="useType" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/extension>
+ *   &lt;/simpleContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "phone", propOrder = {
+    "value"
+})
+public class Phone {
+
+    @XmlValue
+    protected String value;
+    @XmlAttribute
+    protected String useType;
+
+    /**
+     * Gets the value of the value property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getValue() {
+        return value;
+    }
+
+    /**
+     * Sets the value of the value property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setValue(String value) {
+        this.value = value;
+    }
+
+    /**
+     * Gets the value of the useType property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getUseType() {
+        return useType;
+    }
+
+    /**
+     * Sets the value of the useType property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setUseType(String value) {
+        this.useType = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/PublisherAssertion.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/PublisherAssertion.java
new file mode 100644
index 0000000..67cb5f6
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/PublisherAssertion.java
@@ -0,0 +1,125 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for publisherAssertion complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="publisherAssertion">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}fromKey"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}toKey"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}keyedReference"/>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "publisherAssertion", propOrder = {
+    "fromKey",
+    "toKey",
+    "keyedReference"
+})
+public class PublisherAssertion {
+
+    @XmlElement(required = true)
+    protected String fromKey;
+    @XmlElement(required = true)
+    protected String toKey;
+    @XmlElement(required = true)
+    protected KeyedReference keyedReference;
+
+    /**
+     * Gets the value of the fromKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getFromKey() {
+        return fromKey;
+    }
+
+    /**
+     * Sets the value of the fromKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setFromKey(String value) {
+        this.fromKey = value;
+    }
+
+    /**
+     * Gets the value of the toKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getToKey() {
+        return toKey;
+    }
+
+    /**
+     * Sets the value of the toKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setToKey(String value) {
+        this.toKey = value;
+    }
+
+    /**
+     * Gets the value of the keyedReference property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link KeyedReference }
+     *     
+     */
+    public KeyedReference getKeyedReference() {
+        return keyedReference;
+    }
+
+    /**
+     * Sets the value of the keyedReference property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link KeyedReference }
+     *     
+     */
+    public void setKeyedReference(KeyedReference value) {
+        this.keyedReference = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/PublisherAssertions.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/PublisherAssertions.java
new file mode 100644
index 0000000..3565f80
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/PublisherAssertions.java
@@ -0,0 +1,156 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for publisherAssertions complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="publisherAssertions">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}publisherAssertion" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="operator" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="authorizedName" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "publisherAssertions", propOrder = {
+    "publisherAssertion"
+})
+public class PublisherAssertions {
+
+    protected List<PublisherAssertion> publisherAssertion;
+    @XmlAttribute(required = true)
+    protected String generic;
+    @XmlAttribute(required = true)
+    protected String operator;
+    @XmlAttribute(required = true)
+    protected String authorizedName;
+
+    /**
+     * Gets the value of the publisherAssertion property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the publisherAssertion property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getPublisherAssertion().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link PublisherAssertion }
+     * 
+     * 
+     */
+    public List<PublisherAssertion> getPublisherAssertion() {
+        if (publisherAssertion == null) {
+            publisherAssertion = new ArrayList<PublisherAssertion>();
+        }
+        return this.publisherAssertion;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+    /**
+     * Gets the value of the operator property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getOperator() {
+        return operator;
+    }
+
+    /**
+     * Sets the value of the operator property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setOperator(String value) {
+        this.operator = value;
+    }
+
+    /**
+     * Gets the value of the authorizedName property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getAuthorizedName() {
+        return authorizedName;
+    }
+
+    /**
+     * Sets the value of the authorizedName property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setAuthorizedName(String value) {
+        this.authorizedName = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/RegisteredInfo.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/RegisteredInfo.java
new file mode 100644
index 0000000..f9609c2
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/RegisteredInfo.java
@@ -0,0 +1,179 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for registeredInfo complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="registeredInfo">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}businessInfos"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}tModelInfos"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="operator" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="truncated" type="{urn:uddi-org:api_v2}truncated" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "registeredInfo", propOrder = {
+    "businessInfos",
+    "tModelInfos"
+})
+public class RegisteredInfo {
+
+    @XmlElement(required = true)
+    protected BusinessInfos businessInfos;
+    @XmlElement(required = true)
+    protected TModelInfos tModelInfos;
+    @XmlAttribute(required = true)
+    protected String generic;
+    @XmlAttribute(required = true)
+    protected String operator;
+    @XmlAttribute
+    protected Truncated truncated;
+
+    /**
+     * Gets the value of the businessInfos property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link BusinessInfos }
+     *     
+     */
+    public BusinessInfos getBusinessInfos() {
+        return businessInfos;
+    }
+
+    /**
+     * Sets the value of the businessInfos property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link BusinessInfos }
+     *     
+     */
+    public void setBusinessInfos(BusinessInfos value) {
+        this.businessInfos = value;
+    }
+
+    /**
+     * Gets the value of the tModelInfos property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link TModelInfos }
+     *     
+     */
+    public TModelInfos getTModelInfos() {
+        return tModelInfos;
+    }
+
+    /**
+     * Sets the value of the tModelInfos property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link TModelInfos }
+     *     
+     */
+    public void setTModelInfos(TModelInfos value) {
+        this.tModelInfos = value;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+    /**
+     * Gets the value of the operator property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getOperator() {
+        return operator;
+    }
+
+    /**
+     * Sets the value of the operator property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setOperator(String value) {
+        this.operator = value;
+    }
+
+    /**
+     * Gets the value of the truncated property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Truncated }
+     *     
+     */
+    public Truncated getTruncated() {
+        return truncated;
+    }
+
+    /**
+     * Sets the value of the truncated property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Truncated }
+     *     
+     */
+    public void setTruncated(Truncated value) {
+        this.truncated = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/RelatedBusinessInfo.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/RelatedBusinessInfo.java
new file mode 100644
index 0000000..82ee009
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/RelatedBusinessInfo.java
@@ -0,0 +1,169 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for relatedBusinessInfo complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="relatedBusinessInfo">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}businessKey"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}name" maxOccurs="unbounded"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}description" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}sharedRelationships" maxOccurs="2"/>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "relatedBusinessInfo", propOrder = {
+    "businessKey",
+    "name",
+    "description",
+    "sharedRelationships"
+})
+public class RelatedBusinessInfo {
+
+    @XmlElement(required = true)
+    protected String businessKey;
+    @XmlElement(required = true)
+    protected List<Name> name;
+    protected List<Description> description;
+    @XmlElement(required = true)
+    protected List<SharedRelationships> sharedRelationships;
+
+    /**
+     * Gets the value of the businessKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getBusinessKey() {
+        return businessKey;
+    }
+
+    /**
+     * Sets the value of the businessKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setBusinessKey(String value) {
+        this.businessKey = value;
+    }
+
+    /**
+     * Gets the value of the name property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the name property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getName().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Name }
+     * 
+     * 
+     */
+    public List<Name> getName() {
+        if (name == null) {
+            name = new ArrayList<Name>();
+        }
+        return this.name;
+    }
+
+    /**
+     * Gets the value of the description property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the description property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getDescription().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Description }
+     * 
+     * 
+     */
+    public List<Description> getDescription() {
+        if (description == null) {
+            description = new ArrayList<Description>();
+        }
+        return this.description;
+    }
+
+    /**
+     * Gets the value of the sharedRelationships property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the sharedRelationships property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getSharedRelationships().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link SharedRelationships }
+     * 
+     * 
+     */
+    public List<SharedRelationships> getSharedRelationships() {
+        if (sharedRelationships == null) {
+            sharedRelationships = new ArrayList<SharedRelationships>();
+        }
+        return this.sharedRelationships;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/RelatedBusinessInfos.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/RelatedBusinessInfos.java
new file mode 100644
index 0000000..235d65a
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/RelatedBusinessInfos.java
@@ -0,0 +1,74 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for relatedBusinessInfos complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="relatedBusinessInfos">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}relatedBusinessInfo" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "relatedBusinessInfos", propOrder = {
+    "relatedBusinessInfo"
+})
+public class RelatedBusinessInfos {
+
+    protected List<RelatedBusinessInfo> relatedBusinessInfo;
+
+    /**
+     * Gets the value of the relatedBusinessInfo property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the relatedBusinessInfo property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getRelatedBusinessInfo().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link RelatedBusinessInfo }
+     * 
+     * 
+     */
+    public List<RelatedBusinessInfo> getRelatedBusinessInfo() {
+        if (relatedBusinessInfo == null) {
+            relatedBusinessInfo = new ArrayList<RelatedBusinessInfo>();
+        }
+        return this.relatedBusinessInfo;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/RelatedBusinessesList.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/RelatedBusinessesList.java
new file mode 100644
index 0000000..ae6f9ef
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/RelatedBusinessesList.java
@@ -0,0 +1,179 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for relatedBusinessesList complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="relatedBusinessesList">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}businessKey"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}relatedBusinessInfos"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="operator" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="truncated" type="{urn:uddi-org:api_v2}truncated" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "relatedBusinessesList", propOrder = {
+    "businessKey",
+    "relatedBusinessInfos"
+})
+public class RelatedBusinessesList {
+
+    @XmlElement(required = true)
+    protected String businessKey;
+    @XmlElement(required = true)
+    protected RelatedBusinessInfos relatedBusinessInfos;
+    @XmlAttribute(required = true)
+    protected String generic;
+    @XmlAttribute(required = true)
+    protected String operator;
+    @XmlAttribute
+    protected Truncated truncated;
+
+    /**
+     * Gets the value of the businessKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getBusinessKey() {
+        return businessKey;
+    }
+
+    /**
+     * Sets the value of the businessKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setBusinessKey(String value) {
+        this.businessKey = value;
+    }
+
+    /**
+     * Gets the value of the relatedBusinessInfos property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link RelatedBusinessInfos }
+     *     
+     */
+    public RelatedBusinessInfos getRelatedBusinessInfos() {
+        return relatedBusinessInfos;
+    }
+
+    /**
+     * Sets the value of the relatedBusinessInfos property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link RelatedBusinessInfos }
+     *     
+     */
+    public void setRelatedBusinessInfos(RelatedBusinessInfos value) {
+        this.relatedBusinessInfos = value;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+    /**
+     * Gets the value of the operator property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getOperator() {
+        return operator;
+    }
+
+    /**
+     * Sets the value of the operator property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setOperator(String value) {
+        this.operator = value;
+    }
+
+    /**
+     * Gets the value of the truncated property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Truncated }
+     *     
+     */
+    public Truncated getTruncated() {
+        return truncated;
+    }
+
+    /**
+     * Sets the value of the truncated property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Truncated }
+     *     
+     */
+    public void setTruncated(Truncated value) {
+        this.truncated = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/Result.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/Result.java
new file mode 100644
index 0000000..99118a8
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/Result.java
@@ -0,0 +1,114 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for result complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="result">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}errInfo" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="keyType" type="{urn:uddi-org:api_v2}keyType" />
+ *       &lt;attribute name="errno" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "result", propOrder = {
+    "errInfo"
+})
+public class Result {
+
+    protected ErrInfo errInfo;
+    @XmlAttribute
+    protected KeyType keyType;
+    @XmlAttribute(required = true)
+    protected int errno;
+
+    /**
+     * Gets the value of the errInfo property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link ErrInfo }
+     *     
+     */
+    public ErrInfo getErrInfo() {
+        return errInfo;
+    }
+
+    /**
+     * Sets the value of the errInfo property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link ErrInfo }
+     *     
+     */
+    public void setErrInfo(ErrInfo value) {
+        this.errInfo = value;
+    }
+
+    /**
+     * Gets the value of the keyType property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link KeyType }
+     *     
+     */
+    public KeyType getKeyType() {
+        return keyType;
+    }
+
+    /**
+     * Sets the value of the keyType property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link KeyType }
+     *     
+     */
+    public void setKeyType(KeyType value) {
+        this.keyType = value;
+    }
+
+    /**
+     * Gets the value of the errno property.
+     * 
+     */
+    public int getErrno() {
+        return errno;
+    }
+
+    /**
+     * Sets the value of the errno property.
+     * 
+     */
+    public void setErrno(int value) {
+        this.errno = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/SaveBinding.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/SaveBinding.java
new file mode 100644
index 0000000..21c228e
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/SaveBinding.java
@@ -0,0 +1,132 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for save_binding complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="save_binding">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}authInfo"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}bindingTemplate" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "save_binding", propOrder = {
+    "authInfo",
+    "bindingTemplate"
+})
+public class SaveBinding {
+
+    @XmlElement(required = true)
+    protected String authInfo;
+    @XmlElement(required = true)
+    protected List<BindingTemplate> bindingTemplate;
+    @XmlAttribute(required = true)
+    protected String generic;
+
+    /**
+     * Gets the value of the authInfo property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getAuthInfo() {
+        return authInfo;
+    }
+
+    /**
+     * Sets the value of the authInfo property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setAuthInfo(String value) {
+        this.authInfo = value;
+    }
+
+    /**
+     * Gets the value of the bindingTemplate property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the bindingTemplate property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getBindingTemplate().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link BindingTemplate }
+     * 
+     * 
+     */
+    public List<BindingTemplate> getBindingTemplate() {
+        if (bindingTemplate == null) {
+            bindingTemplate = new ArrayList<BindingTemplate>();
+        }
+        return this.bindingTemplate;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/SaveBusiness.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/SaveBusiness.java
new file mode 100644
index 0000000..922ea86
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/SaveBusiness.java
@@ -0,0 +1,163 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for save_business complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="save_business">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}authInfo"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}businessEntity" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}uploadRegister" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "save_business", propOrder = {
+    "authInfo",
+    "businessEntity",
+    "uploadRegister"
+})
+public class SaveBusiness {
+
+    @XmlElement(required = true)
+    protected String authInfo;
+    protected List<BusinessEntity> businessEntity;
+    protected List<String> uploadRegister;
+    @XmlAttribute(required = true)
+    protected String generic;
+
+    /**
+     * Gets the value of the authInfo property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getAuthInfo() {
+        return authInfo;
+    }
+
+    /**
+     * Sets the value of the authInfo property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setAuthInfo(String value) {
+        this.authInfo = value;
+    }
+
+    /**
+     * Gets the value of the businessEntity property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the businessEntity property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getBusinessEntity().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link BusinessEntity }
+     * 
+     * 
+     */
+    public List<BusinessEntity> getBusinessEntity() {
+        if (businessEntity == null) {
+            businessEntity = new ArrayList<BusinessEntity>();
+        }
+        return this.businessEntity;
+    }
+
+    /**
+     * Gets the value of the uploadRegister property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the uploadRegister property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getUploadRegister().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link String }
+     * 
+     * 
+     */
+    public List<String> getUploadRegister() {
+        if (uploadRegister == null) {
+            uploadRegister = new ArrayList<String>();
+        }
+        return this.uploadRegister;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/SaveService.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/SaveService.java
new file mode 100644
index 0000000..fce7271
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/SaveService.java
@@ -0,0 +1,132 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for save_service complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="save_service">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}authInfo"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}businessService" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "save_service", propOrder = {
+    "authInfo",
+    "businessService"
+})
+public class SaveService {
+
+    @XmlElement(required = true)
+    protected String authInfo;
+    @XmlElement(required = true)
+    protected List<BusinessService> businessService;
+    @XmlAttribute(required = true)
+    protected String generic;
+
+    /**
+     * Gets the value of the authInfo property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getAuthInfo() {
+        return authInfo;
+    }
+
+    /**
+     * Sets the value of the authInfo property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setAuthInfo(String value) {
+        this.authInfo = value;
+    }
+
+    /**
+     * Gets the value of the businessService property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the businessService property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getBusinessService().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link BusinessService }
+     * 
+     * 
+     */
+    public List<BusinessService> getBusinessService() {
+        if (businessService == null) {
+            businessService = new ArrayList<BusinessService>();
+        }
+        return this.businessService;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/SaveTModel.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/SaveTModel.java
new file mode 100644
index 0000000..43b244b
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/SaveTModel.java
@@ -0,0 +1,163 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for save_tModel complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="save_tModel">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}authInfo"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}tModel" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}uploadRegister" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "save_tModel", propOrder = {
+    "authInfo",
+    "tModel",
+    "uploadRegister"
+})
+public class SaveTModel {
+
+    @XmlElement(required = true)
+    protected String authInfo;
+    protected List<TModel> tModel;
+    protected List<String> uploadRegister;
+    @XmlAttribute(required = true)
+    protected String generic;
+
+    /**
+     * Gets the value of the authInfo property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getAuthInfo() {
+        return authInfo;
+    }
+
+    /**
+     * Sets the value of the authInfo property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setAuthInfo(String value) {
+        this.authInfo = value;
+    }
+
+    /**
+     * Gets the value of the tModel property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the tModel property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getTModel().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link TModel }
+     * 
+     * 
+     */
+    public List<TModel> getTModel() {
+        if (tModel == null) {
+            tModel = new ArrayList<TModel>();
+        }
+        return this.tModel;
+    }
+
+    /**
+     * Gets the value of the uploadRegister property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the uploadRegister property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getUploadRegister().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link String }
+     * 
+     * 
+     */
+    public List<String> getUploadRegister() {
+        if (uploadRegister == null) {
+            uploadRegister = new ArrayList<String>();
+        }
+        return this.uploadRegister;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/ServiceDetail.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/ServiceDetail.java
new file mode 100644
index 0000000..68b4c72
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/ServiceDetail.java
@@ -0,0 +1,156 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for serviceDetail complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="serviceDetail">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}businessService" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="operator" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="truncated" type="{urn:uddi-org:api_v2}truncated" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "serviceDetail", propOrder = {
+    "businessService"
+})
+public class ServiceDetail {
+
+    protected List<BusinessService> businessService;
+    @XmlAttribute(required = true)
+    protected String generic;
+    @XmlAttribute(required = true)
+    protected String operator;
+    @XmlAttribute
+    protected Truncated truncated;
+
+    /**
+     * Gets the value of the businessService property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the businessService property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getBusinessService().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link BusinessService }
+     * 
+     * 
+     */
+    public List<BusinessService> getBusinessService() {
+        if (businessService == null) {
+            businessService = new ArrayList<BusinessService>();
+        }
+        return this.businessService;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+    /**
+     * Gets the value of the operator property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getOperator() {
+        return operator;
+    }
+
+    /**
+     * Sets the value of the operator property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setOperator(String value) {
+        this.operator = value;
+    }
+
+    /**
+     * Gets the value of the truncated property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Truncated }
+     *     
+     */
+    public Truncated getTruncated() {
+        return truncated;
+    }
+
+    /**
+     * Sets the value of the truncated property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Truncated }
+     *     
+     */
+    public void setTruncated(Truncated value) {
+        this.truncated = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/ServiceInfo.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/ServiceInfo.java
new file mode 100644
index 0000000..ce91d32
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/ServiceInfo.java
@@ -0,0 +1,129 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for serviceInfo complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="serviceInfo">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}name" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="serviceKey" use="required" type="{urn:uddi-org:api_v2}serviceKey" />
+ *       &lt;attribute name="businessKey" use="required" type="{urn:uddi-org:api_v2}businessKey" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "serviceInfo", propOrder = {
+    "name"
+})
+public class ServiceInfo {
+
+    protected List<Name> name;
+    @XmlAttribute(required = true)
+    protected String serviceKey;
+    @XmlAttribute(required = true)
+    protected String businessKey;
+
+    /**
+     * Gets the value of the name property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the name property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getName().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Name }
+     * 
+     * 
+     */
+    public List<Name> getName() {
+        if (name == null) {
+            name = new ArrayList<Name>();
+        }
+        return this.name;
+    }
+
+    /**
+     * Gets the value of the serviceKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getServiceKey() {
+        return serviceKey;
+    }
+
+    /**
+     * Sets the value of the serviceKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setServiceKey(String value) {
+        this.serviceKey = value;
+    }
+
+    /**
+     * Gets the value of the businessKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getBusinessKey() {
+        return businessKey;
+    }
+
+    /**
+     * Sets the value of the businessKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setBusinessKey(String value) {
+        this.businessKey = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/ServiceInfos.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/ServiceInfos.java
new file mode 100644
index 0000000..2e85800
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/ServiceInfos.java
@@ -0,0 +1,74 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for serviceInfos complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="serviceInfos">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}serviceInfo" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "serviceInfos", propOrder = {
+    "serviceInfo"
+})
+public class ServiceInfos {
+
+    protected List<ServiceInfo> serviceInfo;
+
+    /**
+     * Gets the value of the serviceInfo property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the serviceInfo property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getServiceInfo().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link ServiceInfo }
+     * 
+     * 
+     */
+    public List<ServiceInfo> getServiceInfo() {
+        if (serviceInfo == null) {
+            serviceInfo = new ArrayList<ServiceInfo>();
+        }
+        return this.serviceInfo;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/ServiceList.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/ServiceList.java
new file mode 100644
index 0000000..37c75a0
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/ServiceList.java
@@ -0,0 +1,151 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for serviceList complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="serviceList">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}serviceInfos"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="operator" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="truncated" type="{urn:uddi-org:api_v2}truncated" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "serviceList", propOrder = {
+    "serviceInfos"
+})
+public class ServiceList {
+
+    @XmlElement(required = true)
+    protected ServiceInfos serviceInfos;
+    @XmlAttribute(required = true)
+    protected String generic;
+    @XmlAttribute(required = true)
+    protected String operator;
+    @XmlAttribute
+    protected Truncated truncated;
+
+    /**
+     * Gets the value of the serviceInfos property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link ServiceInfos }
+     *     
+     */
+    public ServiceInfos getServiceInfos() {
+        return serviceInfos;
+    }
+
+    /**
+     * Sets the value of the serviceInfos property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link ServiceInfos }
+     *     
+     */
+    public void setServiceInfos(ServiceInfos value) {
+        this.serviceInfos = value;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+    /**
+     * Gets the value of the operator property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getOperator() {
+        return operator;
+    }
+
+    /**
+     * Sets the value of the operator property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setOperator(String value) {
+        this.operator = value;
+    }
+
+    /**
+     * Gets the value of the truncated property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Truncated }
+     *     
+     */
+    public Truncated getTruncated() {
+        return truncated;
+    }
+
+    /**
+     * Sets the value of the truncated property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Truncated }
+     *     
+     */
+    public void setTruncated(Truncated value) {
+        this.truncated = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/SetPublisherAssertions.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/SetPublisherAssertions.java
new file mode 100644
index 0000000..d33532e
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/SetPublisherAssertions.java
@@ -0,0 +1,131 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for set_publisherAssertions complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="set_publisherAssertions">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}authInfo"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}publisherAssertion" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "set_publisherAssertions", propOrder = {
+    "authInfo",
+    "publisherAssertion"
+})
+public class SetPublisherAssertions {
+
+    @XmlElement(required = true)
+    protected String authInfo;
+    protected List<PublisherAssertion> publisherAssertion;
+    @XmlAttribute(required = true)
+    protected String generic;
+
+    /**
+     * Gets the value of the authInfo property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getAuthInfo() {
+        return authInfo;
+    }
+
+    /**
+     * Sets the value of the authInfo property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setAuthInfo(String value) {
+        this.authInfo = value;
+    }
+
+    /**
+     * Gets the value of the publisherAssertion property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the publisherAssertion property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getPublisherAssertion().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link PublisherAssertion }
+     * 
+     * 
+     */
+    public List<PublisherAssertion> getPublisherAssertion() {
+        if (publisherAssertion == null) {
+            publisherAssertion = new ArrayList<PublisherAssertion>();
+        }
+        return this.publisherAssertion;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/SharedRelationships.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/SharedRelationships.java
new file mode 100644
index 0000000..e56ea83
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/SharedRelationships.java
@@ -0,0 +1,104 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for sharedRelationships complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="sharedRelationships">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}keyedReference" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="direction" use="required" type="{urn:uddi-org:api_v2}direction" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "sharedRelationships", propOrder = {
+    "keyedReference"
+})
+public class SharedRelationships {
+
+    @XmlElement(required = true)
+    protected List<KeyedReference> keyedReference;
+    @XmlAttribute(required = true)
+    protected Direction direction;
+
+    /**
+     * Gets the value of the keyedReference property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the keyedReference property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getKeyedReference().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link KeyedReference }
+     * 
+     * 
+     */
+    public List<KeyedReference> getKeyedReference() {
+        if (keyedReference == null) {
+            keyedReference = new ArrayList<KeyedReference>();
+        }
+        return this.keyedReference;
+    }
+
+    /**
+     * Gets the value of the direction property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Direction }
+     *     
+     */
+    public Direction getDirection() {
+        return direction;
+    }
+
+    /**
+     * Sets the value of the direction property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Direction }
+     *     
+     */
+    public void setDirection(Direction value) {
+        this.direction = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/TModel.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/TModel.java
new file mode 100644
index 0000000..3e80060
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/TModel.java
@@ -0,0 +1,266 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for tModel complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="tModel">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}name"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}description" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}overviewDoc" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}identifierBag" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}categoryBag" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="tModelKey" use="required" type="{urn:uddi-org:api_v2}tModelKey" />
+ *       &lt;attribute name="operator" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="authorizedName" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "tModel", propOrder = {
+    "name",
+    "description",
+    "overviewDoc",
+    "identifierBag",
+    "categoryBag"
+})
+public class TModel {
+
+    @XmlElement(required = true)
+    protected Name name;
+    protected List<Description> description;
+    protected OverviewDoc overviewDoc;
+    protected IdentifierBag identifierBag;
+    protected CategoryBag categoryBag;
+    @XmlAttribute(required = true)
+    protected String tModelKey;
+    @XmlAttribute
+    protected String operator;
+    @XmlAttribute
+    protected String authorizedName;
+
+    /**
+     * Gets the value of the name property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Name }
+     *     
+     */
+    public Name getName() {
+        return name;
+    }
+
+    /**
+     * Sets the value of the name property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Name }
+     *     
+     */
+    public void setName(Name value) {
+        this.name = value;
+    }
+
+    /**
+     * Gets the value of the description property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the description property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getDescription().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Description }
+     * 
+     * 
+     */
+    public List<Description> getDescription() {
+        if (description == null) {
+            description = new ArrayList<Description>();
+        }
+        return this.description;
+    }
+
+    /**
+     * Gets the value of the overviewDoc property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link OverviewDoc }
+     *     
+     */
+    public OverviewDoc getOverviewDoc() {
+        return overviewDoc;
+    }
+
+    /**
+     * Sets the value of the overviewDoc property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link OverviewDoc }
+     *     
+     */
+    public void setOverviewDoc(OverviewDoc value) {
+        this.overviewDoc = value;
+    }
+
+    /**
+     * Gets the value of the identifierBag property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link IdentifierBag }
+     *     
+     */
+    public IdentifierBag getIdentifierBag() {
+        return identifierBag;
+    }
+
+    /**
+     * Sets the value of the identifierBag property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link IdentifierBag }
+     *     
+     */
+    public void setIdentifierBag(IdentifierBag value) {
+        this.identifierBag = value;
+    }
+
+    /**
+     * Gets the value of the categoryBag property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link CategoryBag }
+     *     
+     */
+    public CategoryBag getCategoryBag() {
+        return categoryBag;
+    }
+
+    /**
+     * Sets the value of the categoryBag property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link CategoryBag }
+     *     
+     */
+    public void setCategoryBag(CategoryBag value) {
+        this.categoryBag = value;
+    }
+
+    /**
+     * Gets the value of the tModelKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getTModelKey() {
+        return tModelKey;
+    }
+
+    /**
+     * Sets the value of the tModelKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setTModelKey(String value) {
+        this.tModelKey = value;
+    }
+
+    /**
+     * Gets the value of the operator property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getOperator() {
+        return operator;
+    }
+
+    /**
+     * Sets the value of the operator property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setOperator(String value) {
+        this.operator = value;
+    }
+
+    /**
+     * Gets the value of the authorizedName property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getAuthorizedName() {
+        return authorizedName;
+    }
+
+    /**
+     * Sets the value of the authorizedName property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setAuthorizedName(String value) {
+        this.authorizedName = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/TModelBag.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/TModelBag.java
new file mode 100644
index 0000000..3b510cb
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/TModelBag.java
@@ -0,0 +1,76 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for tModelBag complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="tModelBag">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}tModelKey" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "tModelBag", propOrder = {
+    "tModelKey"
+})
+public class TModelBag {
+
+    @XmlElement(required = true)
+    protected List<String> tModelKey;
+
+    /**
+     * Gets the value of the tModelKey property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the tModelKey property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getTModelKey().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link String }
+     * 
+     * 
+     */
+    public List<String> getTModelKey() {
+        if (tModelKey == null) {
+            tModelKey = new ArrayList<String>();
+        }
+        return this.tModelKey;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/TModelDetail.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/TModelDetail.java
new file mode 100644
index 0000000..6e178ca
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/TModelDetail.java
@@ -0,0 +1,158 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for tModelDetail complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="tModelDetail">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}tModel" maxOccurs="unbounded"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="operator" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="truncated" type="{urn:uddi-org:api_v2}truncated" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "tModelDetail", propOrder = {
+    "tModel"
+})
+public class TModelDetail {
+
+    @XmlElement(required = true)
+    protected List<TModel> tModel;
+    @XmlAttribute(required = true)
+    protected String generic;
+    @XmlAttribute(required = true)
+    protected String operator;
+    @XmlAttribute
+    protected Truncated truncated;
+
+    /**
+     * Gets the value of the tModel property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the tModel property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getTModel().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link TModel }
+     * 
+     * 
+     */
+    public List<TModel> getTModel() {
+        if (tModel == null) {
+            tModel = new ArrayList<TModel>();
+        }
+        return this.tModel;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+    /**
+     * Gets the value of the operator property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getOperator() {
+        return operator;
+    }
+
+    /**
+     * Sets the value of the operator property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setOperator(String value) {
+        this.operator = value;
+    }
+
+    /**
+     * Gets the value of the truncated property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Truncated }
+     *     
+     */
+    public Truncated getTruncated() {
+        return truncated;
+    }
+
+    /**
+     * Sets the value of the truncated property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Truncated }
+     *     
+     */
+    public void setTruncated(Truncated value) {
+        this.truncated = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/TModelInfo.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/TModelInfo.java
new file mode 100644
index 0000000..8416142
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/TModelInfo.java
@@ -0,0 +1,97 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for tModelInfo complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="tModelInfo">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}name"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="tModelKey" use="required" type="{urn:uddi-org:api_v2}tModelKey" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "tModelInfo", propOrder = {
+    "name"
+})
+public class TModelInfo {
+
+    @XmlElement(required = true)
+    protected Name name;
+    @XmlAttribute(required = true)
+    protected String tModelKey;
+
+    /**
+     * Gets the value of the name property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Name }
+     *     
+     */
+    public Name getName() {
+        return name;
+    }
+
+    /**
+     * Sets the value of the name property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Name }
+     *     
+     */
+    public void setName(Name value) {
+        this.name = value;
+    }
+
+    /**
+     * Gets the value of the tModelKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getTModelKey() {
+        return tModelKey;
+    }
+
+    /**
+     * Sets the value of the tModelKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setTModelKey(String value) {
+        this.tModelKey = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/TModelInfos.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/TModelInfos.java
new file mode 100644
index 0000000..fdd3276
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/TModelInfos.java
@@ -0,0 +1,74 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for tModelInfos complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="tModelInfos">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}tModelInfo" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "tModelInfos", propOrder = {
+    "tModelInfo"
+})
+public class TModelInfos {
+
+    protected List<TModelInfo> tModelInfo;
+
+    /**
+     * Gets the value of the tModelInfo property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the tModelInfo property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getTModelInfo().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link TModelInfo }
+     * 
+     * 
+     */
+    public List<TModelInfo> getTModelInfo() {
+        if (tModelInfo == null) {
+            tModelInfo = new ArrayList<TModelInfo>();
+        }
+        return this.tModelInfo;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/TModelInstanceDetails.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/TModelInstanceDetails.java
new file mode 100644
index 0000000..9c4aae8
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/TModelInstanceDetails.java
@@ -0,0 +1,74 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for tModelInstanceDetails complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="tModelInstanceDetails">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}tModelInstanceInfo" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/sequence>
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "tModelInstanceDetails", propOrder = {
+    "tModelInstanceInfo"
+})
+public class TModelInstanceDetails {
+
+    protected List<TModelInstanceInfo> tModelInstanceInfo;
+
+    /**
+     * Gets the value of the tModelInstanceInfo property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the tModelInstanceInfo property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getTModelInstanceInfo().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link TModelInstanceInfo }
+     * 
+     * 
+     */
+    public List<TModelInstanceInfo> getTModelInstanceInfo() {
+        if (tModelInstanceInfo == null) {
+            tModelInstanceInfo = new ArrayList<TModelInstanceInfo>();
+        }
+        return this.tModelInstanceInfo;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/TModelInstanceInfo.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/TModelInstanceInfo.java
new file mode 100644
index 0000000..95cc9d7
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/TModelInstanceInfo.java
@@ -0,0 +1,129 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for tModelInstanceInfo complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="tModelInstanceInfo">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}description" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}instanceDetails" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="tModelKey" use="required" type="{urn:uddi-org:api_v2}tModelKey" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "tModelInstanceInfo", propOrder = {
+    "description",
+    "instanceDetails"
+})
+public class TModelInstanceInfo {
+
+    protected List<Description> description;
+    protected InstanceDetails instanceDetails;
+    @XmlAttribute(required = true)
+    protected String tModelKey;
+
+    /**
+     * Gets the value of the description property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the description property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getDescription().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link Description }
+     * 
+     * 
+     */
+    public List<Description> getDescription() {
+        if (description == null) {
+            description = new ArrayList<Description>();
+        }
+        return this.description;
+    }
+
+    /**
+     * Gets the value of the instanceDetails property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link InstanceDetails }
+     *     
+     */
+    public InstanceDetails getInstanceDetails() {
+        return instanceDetails;
+    }
+
+    /**
+     * Sets the value of the instanceDetails property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link InstanceDetails }
+     *     
+     */
+    public void setInstanceDetails(InstanceDetails value) {
+        this.instanceDetails = value;
+    }
+
+    /**
+     * Gets the value of the tModelKey property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getTModelKey() {
+        return tModelKey;
+    }
+
+    /**
+     * Sets the value of the tModelKey property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setTModelKey(String value) {
+        this.tModelKey = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/TModelList.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/TModelList.java
new file mode 100644
index 0000000..0bd41b0
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/TModelList.java
@@ -0,0 +1,151 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for tModelList complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="tModelList">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element ref="{urn:uddi-org:api_v2}tModelInfos"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="operator" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       &lt;attribute name="truncated" type="{urn:uddi-org:api_v2}truncated" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "tModelList", propOrder = {
+    "tModelInfos"
+})
+public class TModelList {
+
+    @XmlElement(required = true)
+    protected TModelInfos tModelInfos;
+    @XmlAttribute(required = true)
+    protected String generic;
+    @XmlAttribute(required = true)
+    protected String operator;
+    @XmlAttribute
+    protected Truncated truncated;
+
+    /**
+     * Gets the value of the tModelInfos property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link TModelInfos }
+     *     
+     */
+    public TModelInfos getTModelInfos() {
+        return tModelInfos;
+    }
+
+    /**
+     * Sets the value of the tModelInfos property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link TModelInfos }
+     *     
+     */
+    public void setTModelInfos(TModelInfos value) {
+        this.tModelInfos = value;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+    /**
+     * Gets the value of the operator property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getOperator() {
+        return operator;
+    }
+
+    /**
+     * Sets the value of the operator property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setOperator(String value) {
+        this.operator = value;
+    }
+
+    /**
+     * Gets the value of the truncated property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link Truncated }
+     *     
+     */
+    public Truncated getTruncated() {
+        return truncated;
+    }
+
+    /**
+     * Sets the value of the truncated property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link Truncated }
+     *     
+     */
+    public void setTruncated(Truncated value) {
+        this.truncated = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/Truncated.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/Truncated.java
new file mode 100644
index 0000000..712bda0
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/Truncated.java
@@ -0,0 +1,58 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlEnum;
+import javax.xml.bind.annotation.XmlEnumValue;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for truncated.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * <p>
+ * <pre>
+ * &lt;simpleType name="truncated">
+ *   &lt;restriction base="{http://www.w3.org/2001/XMLSchema}NMTOKEN">
+ *     &lt;enumeration value="true"/>
+ *     &lt;enumeration value="false"/>
+ *   &lt;/restriction>
+ * &lt;/simpleType>
+ * </pre>
+ * 
+ */
+@XmlType(name = "truncated")
+@XmlEnum
+public enum Truncated {
+
+    @XmlEnumValue("true")
+    TRUE("true"),
+    @XmlEnumValue("false")
+    FALSE("false");
+    private final String value;
+
+    Truncated(String v) {
+        value = v;
+    }
+
+    public String value() {
+        return value;
+    }
+
+    public static Truncated fromValue(String v) {
+        for (Truncated c: Truncated.values()) {
+            if (c.value.equals(v)) {
+                return c;
+            }
+        }
+        throw new IllegalArgumentException(v);
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/URLType.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/URLType.java
new file mode 100644
index 0000000..7e66eaf
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/URLType.java
@@ -0,0 +1,73 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import javax.xml.bind.annotation.XmlEnum;
+import javax.xml.bind.annotation.XmlEnumValue;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for URLType.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * <p>
+ * <pre>
+ * &lt;simpleType name="URLType">
+ *   &lt;restriction base="{http://www.w3.org/2001/XMLSchema}NMTOKEN">
+ *     &lt;enumeration value="mailto"/>
+ *     &lt;enumeration value="http"/>
+ *     &lt;enumeration value="https"/>
+ *     &lt;enumeration value="ftp"/>
+ *     &lt;enumeration value="fax"/>
+ *     &lt;enumeration value="phone"/>
+ *     &lt;enumeration value="other"/>
+ *   &lt;/restriction>
+ * &lt;/simpleType>
+ * </pre>
+ * 
+ */
+@XmlType(name = "URLType")
+@XmlEnum
+public enum URLType {
+
+    @XmlEnumValue("mailto")
+    MAILTO("mailto"),
+    @XmlEnumValue("http")
+    HTTP("http"),
+    @XmlEnumValue("https")
+    HTTPS("https"),
+    @XmlEnumValue("ftp")
+    FTP("ftp"),
+    @XmlEnumValue("fax")
+    FAX("fax"),
+    @XmlEnumValue("phone")
+    PHONE("phone"),
+    @XmlEnumValue("other")
+    OTHER("other");
+    private final String value;
+
+    URLType(String v) {
+        value = v;
+    }
+
+    public String value() {
+        return value;
+    }
+
+    public static URLType fromValue(String v) {
+        for (URLType c: URLType.values()) {
+            if (c.value.equals(v)) {
+                return c;
+            }
+        }
+        throw new IllegalArgumentException(v);
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/ValidateValues.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/ValidateValues.java
new file mode 100644
index 0000000..6025d5a
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/ValidateValues.java
@@ -0,0 +1,166 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+
+package org.apache.ws.scout.model.uddi.v2;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for validate_values complex type.
+ * 
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ * 
+ * <pre>
+ * &lt;complexType name="validate_values">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;choice>
+ *         &lt;element ref="{urn:uddi-org:api_v2}businessEntity" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}businessService" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element ref="{urn:uddi-org:api_v2}tModel" maxOccurs="unbounded" minOccurs="0"/>
+ *       &lt;/choice>
+ *       &lt;attribute name="generic" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ * 
+ * 
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "validate_values", propOrder = {
+    "businessEntity",
+    "businessService",
+    "tModel"
+})
+public class ValidateValues {
+
+    protected List<BusinessEntity> businessEntity;
+    protected List<BusinessService> businessService;
+    protected List<TModel> tModel;
+    @XmlAttribute(required = true)
+    protected String generic;
+
+    /**
+     * Gets the value of the businessEntity property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the businessEntity property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getBusinessEntity().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link BusinessEntity }
+     * 
+     * 
+     */
+    public List<BusinessEntity> getBusinessEntity() {
+        if (businessEntity == null) {
+            businessEntity = new ArrayList<BusinessEntity>();
+        }
+        return this.businessEntity;
+    }
+
+    /**
+     * Gets the value of the businessService property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the businessService property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getBusinessService().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link BusinessService }
+     * 
+     * 
+     */
+    public List<BusinessService> getBusinessService() {
+        if (businessService == null) {
+            businessService = new ArrayList<BusinessService>();
+        }
+        return this.businessService;
+    }
+
+    /**
+     * Gets the value of the tModel property.
+     * 
+     * <p>
+     * This accessor method returns a reference to the live list,
+     * not a snapshot. Therefore any modification you make to the
+     * returned list will be present inside the JAXB object.
+     * This is why there is not a <CODE>set</CODE> method for the tModel property.
+     * 
+     * <p>
+     * For example, to add a new item, do as follows:
+     * <pre>
+     *    getTModel().add(newItem);
+     * </pre>
+     * 
+     * 
+     * <p>
+     * Objects of the following type(s) are allowed in the list
+     * {@link TModel }
+     * 
+     * 
+     */
+    public List<TModel> getTModel() {
+        if (tModel == null) {
+            tModel = new ArrayList<TModel>();
+        }
+        return this.tModel;
+    }
+
+    /**
+     * Gets the value of the generic property.
+     * 
+     * @return
+     *     possible object is
+     *     {@link String }
+     *     
+     */
+    public String getGeneric() {
+        return generic;
+    }
+
+    /**
+     * Sets the value of the generic property.
+     * 
+     * @param value
+     *     allowed object is
+     *     {@link String }
+     *     
+     */
+    public void setGeneric(String value) {
+        this.generic = value;
+    }
+
+}
diff --git a/src/main/java/org/apache/ws/scout/model/uddi/v2/package-info.java b/src/main/java/org/apache/ws/scout/model/uddi/v2/package-info.java
new file mode 100644
index 0000000..6251ed4
--- /dev/null
+++ b/src/main/java/org/apache/ws/scout/model/uddi/v2/package-info.java
@@ -0,0 +1,9 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-661 
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
+// Any modifications to this file will be lost upon recompilation of the source schema. 
+// Generated on: 2009.07.19 at 09:49:41 PM CDT 
+//
+
+@javax.xml.bind.annotation.XmlSchema(namespace = "urn:uddi-org:api_v2", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED)
+package org.apache.ws.scout.model.uddi.v2;
diff --git a/src/main/java/org/apache/ws/scout/registry/BusinessLifeCycleManagerImpl.java b/src/main/java/org/apache/ws/scout/registry/BusinessLifeCycleManagerImpl.java
index a3827c3..ffef998 100644
--- a/src/main/java/org/apache/ws/scout/registry/BusinessLifeCycleManagerImpl.java
+++ b/src/main/java/org/apache/ws/scout/registry/BusinessLifeCycleManagerImpl.java
@@ -23,6 +23,7 @@
 import java.util.HashSet;

 import java.util.Iterator;

 import java.util.LinkedHashSet;

+import java.util.List;

 import java.util.Set;

 import java.util.Vector;

 

@@ -47,28 +48,28 @@
 

 import org.apache.commons.logging.Log;

 import org.apache.commons.logging.LogFactory;

+import org.apache.ws.scout.model.uddi.v2.AssertionStatusItem;

+import org.apache.ws.scout.model.uddi.v2.AssertionStatusReport;

+import org.apache.ws.scout.model.uddi.v2.AuthToken;

+import org.apache.ws.scout.model.uddi.v2.BindingDetail;

+import org.apache.ws.scout.model.uddi.v2.BindingTemplate;

+import org.apache.ws.scout.model.uddi.v2.BusinessDetail;

+import org.apache.ws.scout.model.uddi.v2.BusinessEntity;

+import org.apache.ws.scout.model.uddi.v2.BusinessService;

+import org.apache.ws.scout.model.uddi.v2.DispositionReport;

+import org.apache.ws.scout.model.uddi.v2.ErrInfo;

+import org.apache.ws.scout.model.uddi.v2.KeyedReference;

+import org.apache.ws.scout.model.uddi.v2.ObjectFactory;

+import org.apache.ws.scout.model.uddi.v2.PublisherAssertion;

+import org.apache.ws.scout.model.uddi.v2.PublisherAssertions;

+import org.apache.ws.scout.model.uddi.v2.Result;

+import org.apache.ws.scout.model.uddi.v2.ServiceDetail;

+import org.apache.ws.scout.model.uddi.v2.TModel;

+import org.apache.ws.scout.model.uddi.v2.TModelDetail;

 import org.apache.ws.scout.registry.infomodel.ConceptImpl;

 import org.apache.ws.scout.registry.infomodel.InternationalStringImpl;

 import org.apache.ws.scout.registry.infomodel.KeyImpl;

-import org.apache.ws.scout.uddi.AssertionStatusItem;

-import org.apache.ws.scout.uddi.AssertionStatusReport;

-import org.apache.ws.scout.uddi.AuthToken;

-import org.apache.ws.scout.uddi.BindingDetail;

-import org.apache.ws.scout.uddi.BindingTemplate;

-import org.apache.ws.scout.uddi.BusinessDetail;

-import org.apache.ws.scout.uddi.BusinessEntity;

-import org.apache.ws.scout.uddi.BusinessService;

-import org.apache.ws.scout.uddi.DispositionReport;

-import org.apache.ws.scout.uddi.ErrInfo;

-import org.apache.ws.scout.uddi.KeyedReference;

-import org.apache.ws.scout.uddi.PublisherAssertion;

-import org.apache.ws.scout.uddi.PublisherAssertions;

-import org.apache.ws.scout.uddi.Result;

-import org.apache.ws.scout.uddi.ServiceDetail;

-import org.apache.ws.scout.uddi.TModel;

-import org.apache.ws.scout.uddi.TModelDetail;

 import org.apache.ws.scout.util.ScoutJaxrUddiHelper;

-import org.apache.xmlbeans.XmlObject;

 

 /**

  * Implements JAXR BusinessLifeCycleManager Interface.

@@ -83,9 +84,13 @@
 	

     private static final long serialVersionUID = 1L;

     private Log log = LogFactory.getLog(this.getClass());

+    

+    private transient ObjectFactory objectFactory = new ObjectFactory();

 	

     public BusinessLifeCycleManagerImpl(RegistryService registry) {

         super(registry);

+        if(objectFactory == null)

+        	objectFactory = new ObjectFactory();

     }

 

     /**

@@ -260,7 +265,10 @@
                 }

                 if(bd != null)

                 {

-                	PublisherAssertion[] keyarr = bd.getPublisherAssertionArray();

+                	List<PublisherAssertion> publisherAssertionList = bd.getPublisherAssertion();

+                	PublisherAssertion[] keyarr = new PublisherAssertion[publisherAssertionList.size()];

+                	publisherAssertionList.toArray(keyarr);

+                	

                 	for (int i = 0; keyarr != null && i < keyarr.length; i++) {

                 		PublisherAssertion result = (PublisherAssertion) keyarr[i];

                         KeyedReference keyr = result.getKeyedReference();

@@ -312,7 +320,9 @@
             return bulk;

         }

 

-        entityarr = td.getTModelArray();

+        List<TModel> tmodelList = td.getTModel();

+        entityarr = new TModel[tmodelList.size()];

+        tmodelList.toArray(entityarr); 

         log.debug("After Saving TModel. Obtained vector size:" + entityarr != null ? entityarr.length : 0);

         for (int i = 0; entityarr != null && i < entityarr.length; i++) {

             TModel tm = (TModel) entityarr[i];

@@ -358,7 +368,10 @@
             return bulk;

         }

 

-        entityarr = td.getTModelArray();

+        List<TModel> tmodelList = td.getTModel();

+        entityarr = new TModel[tmodelList.size()];

+        tmodelList.toArray(entityarr);

+        

         log.debug("After Saving TModel. Obtained vector size:" + entityarr != null ? entityarr.length : 0);

         for (int i = 0; entityarr != null && i < entityarr.length; i++) {

             TModel tm = (TModel) entityarr[i];

@@ -404,7 +417,11 @@
             return bulk;

         }

 

-        entityarr = bd.getBusinessEntityArray();

+        List<BusinessEntity> bizEntityList = bd.getBusinessEntity();

+        

+        entityarr = new BusinessEntity[bizEntityList.size()];

+        bizEntityList.toArray(entityarr);

+        

         log.debug("After Saving Business. Obtained vector size:" + entityarr != null ? entityarr.length : 0);

         for (int i = 0; entityarr != null && i < entityarr.length; i++) {

             BusinessEntity entity = (BusinessEntity) entityarr[i];

@@ -447,7 +464,10 @@
             return bulk;

         }

 

-        sbarr = bd.getBindingTemplateArray();

+        List<BindingTemplate> bindingTemplateList = bd.getBindingTemplate();

+        sbarr = new BindingTemplate[bindingTemplateList.size()];

+        bindingTemplateList.toArray(sbarr);

+        

         for (int i = 0; sbarr != null && i < sbarr.length; i++) {

             BindingTemplate bt = (BindingTemplate) sbarr[i];

             coll.add(new KeyImpl(bt.getBindingKey()));

@@ -491,7 +511,10 @@
             return bulk;

         }

 

-        sarr = sd.getBusinessServiceArray();

+        List<BusinessService> bizServiceList = sd.getBusinessService();

+        sarr = new BusinessService[bizServiceList.size()];

+        bizServiceList.toArray(sarr);

+        

         for (int i = 0; sarr != null && i < sarr.length; i++) {

             BusinessService entity = (BusinessService) sarr[i];

             coll.add(new KeyImpl(entity.getServiceKey()));

@@ -522,7 +545,7 @@
     }

 

     //Protected Methods

-    protected XmlObject executeOperation(Object dataarray, String op)

+    protected Object executeOperation(Object dataarray, String op)

             throws RegistryException, JAXRException {

         if (registry == null) {

             throw new IllegalStateException("No registry");

@@ -536,7 +559,7 @@
             throw new IllegalStateException("No auth token returned");

         }

 

-        XmlObject regobj;

+        Object regobj;

         if(op.equalsIgnoreCase("SAVE_ASSOCIATION"))

         {

             regobj = ireg.setPublisherAssertions(token.getAuthInfo(), (PublisherAssertion[]) dataarray);

@@ -593,12 +616,14 @@
        try

        {

           AssertionStatusReport report = ireg.getAssertionStatusReport(authinfo,"status:complete");

-          AssertionStatusItem[] a = report.getAssertionStatusItemArray();

+          List<AssertionStatusItem> assertionStatusItemList = report.getAssertionStatusItem();

+          AssertionStatusItem[] assertionStatusItemArr = 

+        	  new AssertionStatusItem[assertionStatusItemList.size()];

 

-          int len = a != null? a.length : 0;

+          int len = assertionStatusItemArr != null? assertionStatusItemArr.length : 0;

           for (int i = 0; i < len; i++)

           {

-                AssertionStatusItem asi = a[i];

+                AssertionStatusItem asi = assertionStatusItemArr[i];

                /* String sourceKey = asi.getFromKey();

                 String targetKey = asi.getToKey();

                 PublisherAssertion pa = new PublisherAssertion();

@@ -615,23 +640,23 @@
                 pasvect.add(this.getPublisherAssertion(asi));

            }

           report = ireg.getAssertionStatusReport(authinfo,"status:toKey_incomplete");

-          a = report.getAssertionStatusItemArray();

+          assertionStatusItemArr = report.getAssertionStatusItem().toArray(assertionStatusItemArr);

 

-          len = a != null? a.length : 0;

+          len = assertionStatusItemArr != null? assertionStatusItemArr.length : 0;

           for (int i = 0; i < len; i++)

           {

-                AssertionStatusItem asi = (AssertionStatusItem) a[i];

+                AssertionStatusItem asi = (AssertionStatusItem) assertionStatusItemArr[i];

                 if(pasvect == null) pasvect = new Vector<PublisherAssertion>(len);

                 pasvect.add(this.getPublisherAssertion(asi));

           }

 

           report = ireg.getAssertionStatusReport(authinfo,"status:fromKey_incomplete");

-          a = report.getAssertionStatusItemArray();

+          assertionStatusItemArr = report.getAssertionStatusItem().toArray(assertionStatusItemArr);

 

-          len = a != null? a.length : 0;

+          len = assertionStatusItemArr != null? assertionStatusItemArr.length : 0;

           for (int i = 0; i < len; i++)

           {

-                AssertionStatusItem asi = (AssertionStatusItem) a[i];

+                AssertionStatusItem asi = (AssertionStatusItem) assertionStatusItemArr[i];

                 if(pasvect == null) pasvect = new Vector<PublisherAssertion>(len);

                 pasvect.add(this.getPublisherAssertion(asi));

           }

@@ -648,7 +673,7 @@
        }

        catch (RegistryException e)

        {

-          e.printStackTrace();

+          throw new RuntimeException(e);

        }

 

           if(pasarr != null && pasarr.length > 0)

@@ -657,8 +682,7 @@
                 ireg.deletePublisherAssertions(authinfo, pasarr);

              }

              catch (RegistryException e)

-             {

-                e.printStackTrace();

+             { 

                 //IGNORE

              }

        }

@@ -688,8 +712,10 @@
             }

             // Save business

             DispositionReport bd = (DispositionReport) executeOperation(keyarr, op);

-

-            keyResultArr = bd.getResultArray();

+            List<Result> resultList = bd.getResult();

+            keyResultArr = new Result[resultList.size()];

+            resultList.toArray(keyResultArr); 

+            

             log.debug("After deleting Business. Obtained vector size:" + keyResultArr != null ? keyResultArr.length : 0);

             for (int i = 0; keyResultArr != null && i < keyResultArr.length; i++) {

                 Result result = (Result) keyResultArr[i];

@@ -699,7 +725,7 @@
                 }

                 else {

                     ErrInfo errinfo = result.getErrInfo();

-                    DeleteException de = new DeleteException(errinfo.getErrCode() + ":" + errinfo.getStringValue());

+                    DeleteException de = new DeleteException(errinfo.getErrCode() + ":" + errinfo.getValue());

                     bulk.setStatus(JAXRResponse.STATUS_FAILURE);

                     exceptions.add(de);

                 }

@@ -744,11 +770,11 @@
         String username = "", pwd = "";

         if (creds != null) {

         	Iterator it = creds.iterator();

-        while (it.hasNext()) {

-            PasswordAuthentication pass = (PasswordAuthentication) it.next();

-            username = pass.getUserName();

-            pwd = new String(pass.getPassword());

-        }

+        	while (it.hasNext()) {

+        		PasswordAuthentication pass = (PasswordAuthentication) it.next();

+        		username = pass.getUserName();

+        		pwd = new String(pass.getPassword());

+        	}

         }

 

         AuthToken token = null;

@@ -756,8 +782,7 @@
             token = ireg.getAuthToken(username, pwd);

         }

         catch (Exception e)

-        {

-            e.printStackTrace();

+        { 

             throw new JAXRException(e);

         }

         return token;

@@ -765,27 +790,31 @@
 

     private PublisherAssertion getPublisherAssertion(AssertionStatusItem asi)

     {

-        String sourceKey = asi.getFromKey();

-        String targetKey = asi.getToKey();

-        PublisherAssertion pa = PublisherAssertion.Factory.newInstance();

+    	PublisherAssertion pa = this.objectFactory.createPublisherAssertion();

         

-        if (sourceKey != null) {

-        pa.setFromKey(sourceKey);

-        }

+    	if(asi != null)

+    	{

+            String sourceKey = asi.getFromKey();

+            String targetKey = asi.getToKey();

         

-        if (targetKey != null) {

-        pa.setToKey(targetKey);

-        }

-        

-        KeyedReference keyr = asi.getKeyedReference();

-        

-        if (keyr != null) {

-        pa.setKeyedReference(keyr);

-        }

-        //pa.setTModelKey(keyr.getTModelKey());

-        //pa.setKeyName(keyr.getKeyName());

-        //pa.setKeyValue(keyr.getKeyValue()); // -CBC- These are redundant?

-        return pa;

+            if (sourceKey != null) {

+            pa.setFromKey(sourceKey);

+            }

+            

+            if (targetKey != null) {

+            pa.setToKey(targetKey);

+            }

+            

+            KeyedReference keyr = asi.getKeyedReference();

+            

+            if (keyr != null) {

+            pa.setKeyedReference(keyr);

+            }

+            //pa.setTModelKey(keyr.getTModelKey());

+            //pa.setKeyName(keyr.getKeyName());

+            //pa.setKeyValue(keyr.getKeyValue()); // -CBC- These are redundant?

+    		

+    	}return pa;

     }

 

 }

diff --git a/src/main/java/org/apache/ws/scout/registry/BusinessQueryManagerImpl.java b/src/main/java/org/apache/ws/scout/registry/BusinessQueryManagerImpl.java
index fe85091..498aeae 100644
--- a/src/main/java/org/apache/ws/scout/registry/BusinessQueryManagerImpl.java
+++ b/src/main/java/org/apache/ws/scout/registry/BusinessQueryManagerImpl.java
@@ -42,36 +42,39 @@
 import javax.xml.registry.infomodel.Service;

 import javax.xml.registry.infomodel.ServiceBinding;

 

+import org.apache.ws.scout.model.uddi.v2.AssertionStatusItem;

+import org.apache.ws.scout.model.uddi.v2.AssertionStatusReport;

+import org.apache.ws.scout.model.uddi.v2.AuthToken;

+import org.apache.ws.scout.model.uddi.v2.BindingDetail;

+import org.apache.ws.scout.model.uddi.v2.BindingTemplate;

+import org.apache.ws.scout.model.uddi.v2.BusinessDetail;

+import org.apache.ws.scout.model.uddi.v2.BusinessInfo;

+import org.apache.ws.scout.model.uddi.v2.BusinessInfos;

+import org.apache.ws.scout.model.uddi.v2.BusinessList;

+import org.apache.ws.scout.model.uddi.v2.BusinessService;

+import org.apache.ws.scout.model.uddi.v2.FindQualifiers;

+import org.apache.ws.scout.model.uddi.v2.KeyedReference;

+import org.apache.ws.scout.model.uddi.v2.Name;

+import org.apache.ws.scout.model.uddi.v2.ObjectFactory;

+import org.apache.ws.scout.model.uddi.v2.PublisherAssertion;

+import org.apache.ws.scout.model.uddi.v2.PublisherAssertions;

+import org.apache.ws.scout.model.uddi.v2.RegisteredInfo;

+import org.apache.ws.scout.model.uddi.v2.ServiceDetail;

+import org.apache.ws.scout.model.uddi.v2.ServiceInfo;

+import org.apache.ws.scout.model.uddi.v2.ServiceInfos;

+import org.apache.ws.scout.model.uddi.v2.ServiceList;

+import org.apache.ws.scout.model.uddi.v2.TModel;

+import org.apache.ws.scout.model.uddi.v2.TModelDetail;

+import org.apache.ws.scout.model.uddi.v2.TModelInfo;

+import org.apache.ws.scout.model.uddi.v2.TModelInfos;

+import org.apache.ws.scout.model.uddi.v2.TModelList;

 import org.apache.ws.scout.registry.infomodel.AssociationImpl;

 import org.apache.ws.scout.registry.infomodel.ClassificationSchemeImpl;

 import org.apache.ws.scout.registry.infomodel.ConceptImpl;

 import org.apache.ws.scout.registry.infomodel.InternationalStringImpl;

 import org.apache.ws.scout.registry.infomodel.KeyImpl;

 import org.apache.ws.scout.registry.infomodel.ServiceBindingImpl;

-import org.apache.ws.scout.uddi.AssertionStatusItem;

-import org.apache.ws.scout.uddi.AssertionStatusReport;

-import org.apache.ws.scout.uddi.AuthToken;

-import org.apache.ws.scout.uddi.BindingDetail;

-import org.apache.ws.scout.uddi.BindingTemplate;

-import org.apache.ws.scout.uddi.BusinessDetail;

-import org.apache.ws.scout.uddi.BusinessEntity;

-import org.apache.ws.scout.uddi.BusinessInfo;

-import org.apache.ws.scout.uddi.BusinessList;

-import org.apache.ws.scout.uddi.BusinessService;

-import org.apache.ws.scout.uddi.FindQualifiers;

-import org.apache.ws.scout.uddi.KeyedReference;

-import org.apache.ws.scout.uddi.Name;

-import org.apache.ws.scout.uddi.PublisherAssertion;

-import org.apache.ws.scout.uddi.PublisherAssertions;

-import org.apache.ws.scout.uddi.ServiceDetail;

-import org.apache.ws.scout.uddi.ServiceInfo;

-import org.apache.ws.scout.uddi.ServiceInfos;

-import org.apache.ws.scout.uddi.ServiceList;

-import org.apache.ws.scout.uddi.TModel;

-import org.apache.ws.scout.uddi.TModelDetail;

-import org.apache.ws.scout.uddi.TModelInfo;

-import org.apache.ws.scout.uddi.TModelInfos;

-import org.apache.ws.scout.uddi.TModelList;

+import org.apache.ws.scout.registry.infomodel.ServiceImpl;

 import org.apache.ws.scout.util.EnumerationHelper;

 import org.apache.ws.scout.util.ScoutJaxrUddiHelper;

 import org.apache.ws.scout.util.ScoutUddiJaxrHelper;

@@ -88,6 +91,7 @@
 {

     private final RegistryServiceImpl registryService;

 

+    private static ObjectFactory objectFactory = new ObjectFactory();

 

     public BusinessQueryManagerImpl(RegistryServiceImpl registry)

     {

@@ -130,18 +134,26 @@
                     null,

                     juddiFindQualifiers,

                     registryService.getMaxRows());

-            BusinessInfo[] a = result.getBusinessInfos() != null ? result.getBusinessInfos().getBusinessInfoArray() : null;

-

+            

+            BusinessInfo[] bizInfoArr =null;

+            BusinessInfos bizInfos = result.getBusinessInfos();

+            if(bizInfos != null)

+            {

+            	List<BusinessInfo> bizInfoList = bizInfos.getBusinessInfo();

+            	bizInfoArr = new BusinessInfo[bizInfoList.size()];

+            	bizInfoList.toArray(bizInfoArr);

+            }

+            

             LinkedHashSet<Organization> orgs = null;

             int len = 0;

-            if (a != null)

+            if (bizInfoArr != null)

             {

-                len = a.length;

+                len = bizInfoArr.length;

                 orgs = new LinkedHashSet<Organization>();

             }

             for (int i = 0; i < len; i++)

             {

-                BusinessInfo info = a[i];

+                BusinessInfo info = bizInfoArr[i];

                 //Now get the details on the individual biz

                 BusinessDetail detail = registry.getBusinessDetail(info.getBusinessKey());

 

@@ -167,18 +179,20 @@
             AuthToken auth = this.getAuthToken(con,registry);

             PublisherAssertions result =

                     registry.getPublisherAssertions(auth.getAuthInfo());

-            PublisherAssertion[] a = result.getPublisherAssertionArray();

-

+            List<PublisherAssertion> publisherAssertionList = result.getPublisherAssertion();

+            PublisherAssertion[] publisherAssertionArr = new PublisherAssertion[publisherAssertionList.size()];

+            publisherAssertionList.toArray(publisherAssertionArr);

+            

             LinkedHashSet<Association> col = null;

             int len = 0;

-            if (a != null)

+            if (publisherAssertionArr != null)

             {

-                len = a.length;

+                len = publisherAssertionArr.length;

                 col = new LinkedHashSet<Association>();

             }

             for (int i = 0; i < len; i++)

             {

-                PublisherAssertion pas = a[i];

+                PublisherAssertion pas = publisherAssertionArr[i];

                 String sourceKey = pas.getFromKey();

                 String targetKey = pas.getToKey();

                 Collection<Key> orgcol = new ArrayList<Key>();

@@ -229,17 +243,22 @@
                         confirm = Constants.COMPLETION_STATUS_TOKEY_INCOMPLETE;

 

             report = registry.getAssertionStatusReport(auth.getAuthInfo(),confirm);

-            AssertionStatusItem[] a = report.getAssertionStatusItemArray();

+            

+            

+            List<AssertionStatusItem> assertionStatusItemList = report.getAssertionStatusItem();

+            AssertionStatusItem[] assertionStatusItemArr = new AssertionStatusItem[assertionStatusItemList.size()];

+            assertionStatusItemList.toArray(assertionStatusItemArr);

+            

             LinkedHashSet<Association> col = null;

             int len = 0;

-            if (a != null)

+            if (assertionStatusItemArr != null)

             {

-                len = a.length;

+                len = assertionStatusItemArr.length;

                 col = new LinkedHashSet<Association>();

             }

             for (int i = 0; i < len; i++)

             {

-                AssertionStatusItem asi = a[i];

+                AssertionStatusItem asi = assertionStatusItemArr[i];

                 String sourceKey = asi.getFromKey();

                 String targetKey = asi.getToKey();

                 Collection<Key> orgcol = new ArrayList<Key>();

@@ -441,21 +460,27 @@
                     TModelInfos infos = null;

                     TModelInfo[] tmarr = null;

                     if (list != null) infos = list.getTModelInfos();

-                    if (infos != null) tmarr = infos.getTModelInfoArray();

+                    if (infos != null) 

+                    {

+                    	List<TModelInfo> tmodelInfoList = infos.getTModelInfo();

+                    	tmarr = new TModelInfo[tmodelInfoList.size()];

+                    	tmodelInfoList.toArray(tmarr);

+                    }

+                    	

+                    	

                     if (tmarr != null && tmarr.length > 0)

                     {

-                        if (tmarr.length > 1)

-                            throw new InvalidRequestException("Multiple matches found");

-

+                        /*if (tmarr.length > 1)

+                            throw new InvalidRequestException("Multiple matches found:" + tmarr.length);

+*/

                         TModelInfo info = tmarr[0];

                         scheme = new ClassificationSchemeImpl(registryService.getLifeCycleManagerImpl());

-                        scheme.setName(new InternationalStringImpl(info.getName().getStringValue()));

+                        scheme.setName(new InternationalStringImpl(info.getName().getValue()));

                         scheme.setKey(new KeyImpl(info.getTModelKey()));

                     }

 

                 } catch (RegistryException e)

-                {

-                    e.printStackTrace();

+                { 

                     throw new JAXRException(e.getLocalizedMessage());

                 }

             }

@@ -538,7 +563,13 @@
                 TModelInfos infos = null;

                 TModelInfo[] tmarr = null;

                 if (list != null) infos = list.getTModelInfos();

-                if (infos != null) tmarr = infos.getTModelInfoArray();

+                if (infos != null)

+                {

+                	List<TModelInfo> tmodelInfoList = infos.getTModelInfo();

+                	tmarr = new TModelInfo[tmodelInfoList.size()];

+                	tmodelInfoList.toArray(tmarr);

+                }

+                	

                 for (int i = 0; tmarr != null && i < tmarr.length; i++)

                 {

                     TModelInfo info = tmarr[i];

@@ -546,8 +577,7 @@
                 }

 

             } catch (RegistryException e)

-            {

-                e.printStackTrace();

+            { 

                 throw new JAXRException(e.getLocalizedMessage());

             }

         }

@@ -576,7 +606,7 @@
         try

         {

  

-            BindingDetail l = iRegistry.findBinding(serviceKey.getId(),

+            BindingDetail bindingDetail = iRegistry.findBinding(serviceKey.getId(),

                     ScoutJaxrUddiHelper.getCategoryBagFromClassifications(classifications), 

             		ScoutJaxrUddiHelper.getTModelBagFromSpecifications(specifications),

             		juddiFindQualifiers,registryService.getMaxRows());

@@ -584,9 +614,12 @@
             /*

              * now convert  from jUDDI ServiceInfo objects to JAXR Services

              */

-            if (l != null) {

+            if (bindingDetail != null) {

 

-                BindingTemplate[] bindarr= l.getBindingTemplateArray();

+            	List<BindingTemplate> bindingTemplateList = bindingDetail.getBindingTemplate();

+                BindingTemplate[] bindarr = new BindingTemplate[bindingTemplateList.size()];

+                bindingTemplateList.toArray(bindarr);

+                

                 LinkedHashSet<ServiceBinding> col = new LinkedHashSet<ServiceBinding>();

 

                 for (int i=0; bindarr != null && i < bindarr.length; i++) {

@@ -603,7 +636,6 @@
             }

         }

         catch (RegistryException e) {

-            e.printStackTrace();

             throw new JAXRException(e.getLocalizedMessage());

         }

 

@@ -649,7 +681,7 @@
                 id = orgKey.getId();

             }

 

-            ServiceList l = iRegistry.findService(id, 

+            ServiceList serviceList = iRegistry.findService(id, 

             		juddiNames,

                     ScoutJaxrUddiHelper.getCategoryBagFromClassifications(classifications), 

                     null, 

@@ -658,16 +690,22 @@
             /*

              * now convert  from jUDDI ServiceInfo objects to JAXR Services

              */

-            if (l != null) {

+            if (serviceList != null) {

 

-                ServiceInfos serviceInfos = l.getServiceInfos();

-

-                ServiceInfo[] a = (serviceInfos != null ? serviceInfos.getServiceInfoArray() : null);

+                ServiceInfos serviceInfos = serviceList.getServiceInfos();

+                ServiceInfo[] serviceInfoArr = null;

+                

+                if(serviceInfos != null)

+                {

+                	List<ServiceInfo> serviceInfoList = serviceInfos.getServiceInfo();

+                	serviceInfoArr = new ServiceInfo[serviceInfoList.size()];

+                	serviceInfoList.toArray(serviceInfoArr);

+                }

 

                 LinkedHashSet<Service> col = new LinkedHashSet<Service>();

 

-                for (int i=0; a != null && i < a.length; i++) {

-                    ServiceInfo si = (ServiceInfo) a[i];

+                for (int i=0; serviceInfoArr != null && i < serviceInfoArr.length; i++) {

+                    ServiceInfo si = (ServiceInfo) serviceInfoArr[i];

 					Service srv = (Service) getRegistryObject(si.getServiceKey(), LifeCycleManager.SERVICE);

                     col.add(srv);

                 }

@@ -676,7 +714,6 @@
             }

         }

         catch (RegistryException e) {

-            e.printStackTrace();

             throw new JAXRException(e.getLocalizedMessage());

         }

 

@@ -713,21 +750,19 @@
                 return scheme;

             }

             catch (RegistryException e) {

-                e.printStackTrace();

                 throw new JAXRException(e.getLocalizedMessage());

             }

         }

-        else if (LifeCycleManager.ORGANIZATION.equalsIgnoreCase(objectType)) {

-

+        else if (LifeCycleManager.ORGANIZATION.equalsIgnoreCase(objectType)) {        	

             try

             {

                 BusinessDetail orgdetail = registry.getBusinessDetail(id);

                 return ScoutUddiJaxrHelper.getOrganization(orgdetail, lcm);

             }

             catch (RegistryException e) {

-                e.printStackTrace();

                 throw new JAXRException(e.getLocalizedMessage());

             }

+

         }

         else if (LifeCycleManager.CONCEPT.equalsIgnoreCase(objectType)) {

 

@@ -736,8 +771,7 @@
                 TModelDetail tmodeldetail = registry.getTModelDetail(id);

                 return ScoutUddiJaxrHelper.getConcept(tmodeldetail, lcm);

             }

-            catch (RegistryException e) {

-                e.printStackTrace();

+            catch (RegistryException e) { 

                 throw new JAXRException(e.getLocalizedMessage());

             }

         }

@@ -750,17 +784,19 @@
 

                 if (sd != null) {

 

-                    BusinessService[] a = sd.getBusinessServiceArray();

+                	List<BusinessService> businessServiceList = sd.getBusinessService();

+                    BusinessService[] businessServiceArr = new BusinessService[businessServiceList.size()];

+                    businessServiceList.toArray(businessServiceArr);

 

-                    if (a != null && a.length != 0) {

-                        Service service = getServiceFromBusinessService(a[0], lcm);

+                    if (businessServiceArr != null && businessServiceArr.length != 0) {

+                        Service service = getServiceFromBusinessService(businessServiceArr[0], lcm);

 

                         return service;

                     }

                 }

             }

             catch (RegistryException e) {

-                e.printStackTrace();

+                throw new RuntimeException(e);

             }

         }

 

@@ -780,19 +816,8 @@
     protected Service getServiceFromBusinessService(BusinessService bs, LifeCycleManager lcm)

         throws JAXRException {

 

-        Service service  = ScoutUddiJaxrHelper.getService(bs, lcm);

-

-        /*

-         * now get the Organization if we can

-         */

-

-        String busKey = bs.getBusinessKey();

-

-        if (busKey != null) {

-            Organization o = (Organization) getRegistryObject(busKey,

-                    LifeCycleManager.ORGANIZATION);

-            service.setProvidingOrganization(o);

-        }

+        ServiceImpl service  = (ServiceImpl) ScoutUddiJaxrHelper.getService(bs, lcm);

+        service.setSubmittingOrganizationKey(bs.getBusinessKey());

 

         return service;

     }

@@ -857,7 +882,10 @@
             try

             {

                 TModelDetail tmodeldetail = registry.getTModelDetail(keys);

-                TModel[] tmarray = tmodeldetail.getTModelArray();

+                List<TModel> tmodelList = tmodeldetail.getTModel();

+                TModel[] tmarray = new TModel[tmodelList.size()];

+                tmodelList.toArray(tmarray);

+                

                 for (int i = 0; tmarray != null && i < tmarray.length; i++)

                 {

                     col.add(ScoutUddiJaxrHelper.getConcept(tmarray[i], lcm));

@@ -871,25 +899,40 @@
         }

         else if (LifeCycleManager.ORGANIZATION.equalsIgnoreCase(objectType))

         {

-            //Get the Organization from the uddi registry

+        	ConnectionImpl con = ((RegistryServiceImpl)getRegistryService()).getConnection();

+            AuthToken auth = this.getAuthToken(con,registry);

+        	

             try

             {

-                BusinessDetail orgdetail = registry.getBusinessDetail(keys);

-                BusinessEntity[] bizarr = orgdetail.getBusinessEntityArray();

-                for (int i = 0; bizarr != null && i < bizarr.length; i++)

+            	RegisteredInfo ri = registry.getRegisteredInfo(auth.getAuthInfo());

+            	BusinessInfos infos = null;

+            	BusinessInfo[] biarr = null;

+            	

+            	if (ri != null) infos = ri.getBusinessInfos();

+            	if (infos != null) 

                 {

-                    col.add(ScoutUddiJaxrHelper.getOrganization(bizarr[i], lcm));

-                }

-            } catch (RegistryException e)

-            {

-                throw new JAXRException(e.getLocalizedMessage());

+            		List<BusinessInfo> bizInfoList = infos.getBusinessInfo();

+            		biarr = new BusinessInfo[bizInfoList.size()];

+            		bizInfoList.toArray(biarr);

+            	}

+            	            	

+            	for (int i = 0; i < biarr.length; i++) {

+            		BusinessInfo info = biarr[i];

+            		BusinessDetail detail = registry.getBusinessDetail(info.getBusinessKey());

+

+                    col.add(registryService.getLifeCycleManagerImpl().createOrganization(detail));

+            	}

+            } catch (RegistryException e) { 

+                    throw new JAXRException(e.getLocalizedMessage());

             }

         }

         else if (LifeCycleManager.CONCEPT.equalsIgnoreCase(objectType))

         {

             try {

                 TModelDetail tmodeldetail = registry.getTModelDetail(keys);

-                TModel[] tmarr = tmodeldetail.getTModelArray();

+                List<TModel> tmodelList = tmodeldetail.getTModel();

+                TModel[] tmarr = new TModel[tmodelList.size()];

+                

                 for (int i = 0; tmarr != null && i < tmarr.length; i++)

                 {

                     col.add(ScoutUddiJaxrHelper.getConcept(tmarr[i], lcm));

@@ -897,8 +940,7 @@
 

             }

             catch (RegistryException e)

-            {

-                e.printStackTrace();

+            { 

                 throw new JAXRException(e.getLocalizedMessage());

             }

         }

@@ -908,13 +950,14 @@
                 ServiceDetail serviceDetail = registry.getServiceDetail(keys);

 

                 if (serviceDetail != null) {

+                    List<BusinessService> bizServiceList = serviceDetail.getBusinessService();

+                    BusinessService[] bizServiceArr = new BusinessService[bizServiceList.size()];

+                    bizServiceList.toArray(bizServiceArr);

 

-                    BusinessService[] a = serviceDetail.getBusinessServiceArray();

+                    for (int i=0; bizServiceArr != null && i < bizServiceArr.length; i++) {

 

-                    for (int i=0; a != null && i < a.length; i++) {

-

-                        Service service = getServiceFromBusinessService(a[i], lcm);

-

+                        Service service = getServiceFromBusinessService(bizServiceArr[i], lcm);

+                        

                         col.add(service);

                     }

                 }

@@ -935,12 +978,42 @@
     public BulkResponse getRegistryObjects(String id) throws JAXRException

     {

         if (LifeCycleManager.ORGANIZATION.equalsIgnoreCase(id)) {

-            List<String> a = new ArrayList<String>();

-            a.add("%");

+            IRegistry registry = registryService.getRegistry();

 

-            BulkResponse br = findOrganizations(null, a, null, null, null, null);

+        	ConnectionImpl con = ((RegistryServiceImpl)getRegistryService()).getConnection();

+            AuthToken auth = this.getAuthToken(con,registry);

 

-            return br;

+            BulkResponse br = null;

+    		LinkedHashSet<Organization> orgs = null;

+            

+            try

+            {

+            	RegisteredInfo ri = registry.getRegisteredInfo(auth.getAuthInfo());

+            	BusinessInfos infos = null;

+            	BusinessInfo[] biarr = null;

+            	

+            	if (ri != null) infos = ri.getBusinessInfos();

+            	if (infos != null)

+                {

+            		List<BusinessInfo> bizInfoList = infos.getBusinessInfo();

+            		biarr = new BusinessInfo[bizInfoList.size()];

+            		bizInfoList.toArray(biarr);

+            	}

+            	

+            	if (biarr != null) {

+                    orgs = new LinkedHashSet<Organization>();

+            	}

+            	

+            	for (int i = 0; i < biarr.length; i++) {

+            		BusinessInfo info = biarr[i];

+            		BusinessDetail detail = registry.getBusinessDetail(info.getBusinessKey());

+

+                    orgs.add(registryService.getLifeCycleManagerImpl().createOrganization(detail));

+            	}

+            } catch (RegistryException re) {

+            	throw new JAXRException(re);

+            }

+            return new BulkResponseImpl(orgs);

         }

         else if (LifeCycleManager.SERVICE.equalsIgnoreCase(id)) {

             List<String> a = new ArrayList<String>();

@@ -963,7 +1036,7 @@
         {

             return null;

         }

-        FindQualifiers result = FindQualifiers.Factory.newInstance();

+        FindQualifiers result = objectFactory.createFindQualifiers();

         for (Iterator i = jaxrQualifiers.iterator(); i.hasNext();)

         {

             String jaxrQualifier = (String) i.next();

@@ -972,7 +1045,7 @@
             {

                 throw new UnsupportedCapabilityException("jUDDI does not support FindQualifer: " + jaxrQualifier);

             }

-            result.addFindQualifier(juddiQualifier);

+            result.getFindQualifier().add(juddiQualifier);

         }

         return result;

     }

@@ -987,15 +1060,15 @@
         for (Iterator i = namePatterns.iterator(); i.hasNext();)

         {

             Object obj = i.next();

-            Name n = Name.Factory.newInstance();

+            Name name = objectFactory.createName();

             if (obj instanceof String) {

-                n.setStringValue((String)obj);

+                name.setValue((String)obj);

             } else if (obj instanceof LocalizedString) {

                 LocalizedString ls = (LocalizedString)obj;

-                n.setStringValue(ls.getValue());

-                n.setLang(ls.getLocale().getLanguage());

+                name.setValue(ls.getValue());

+                name.setLang(ls.getLocale().getLanguage());

             }

-            result[currLoc] = n;

+            result[currLoc] = name;

             currLoc++;

         }

         return result;

diff --git a/src/main/java/org/apache/ws/scout/registry/IRegistry.java b/src/main/java/org/apache/ws/scout/registry/IRegistry.java
index b6040a5..360afc4 100644
--- a/src/main/java/org/apache/ws/scout/registry/IRegistry.java
+++ b/src/main/java/org/apache/ws/scout/registry/IRegistry.java
@@ -17,29 +17,8 @@
 
 import java.net.URI;
 
-import org.apache.ws.scout.transport.Transport;
-import org.apache.ws.scout.uddi.AssertionStatusReport;
-import org.apache.ws.scout.uddi.AuthToken;
-import org.apache.ws.scout.uddi.BindingDetail;
-import org.apache.ws.scout.uddi.BindingTemplate;
-import org.apache.ws.scout.uddi.BusinessDetail;
-import org.apache.ws.scout.uddi.BusinessEntity;
-import org.apache.ws.scout.uddi.BusinessList;
-import org.apache.ws.scout.uddi.BusinessService;
-import org.apache.ws.scout.uddi.CategoryBag;
-import org.apache.ws.scout.uddi.DiscoveryURLs;
-import org.apache.ws.scout.uddi.DispositionReport;
-import org.apache.ws.scout.uddi.FindQualifiers;
-import org.apache.ws.scout.uddi.IdentifierBag;
-import org.apache.ws.scout.uddi.Name;
-import org.apache.ws.scout.uddi.PublisherAssertion;
-import org.apache.ws.scout.uddi.PublisherAssertions;
-import org.apache.ws.scout.uddi.ServiceDetail;
-import org.apache.ws.scout.uddi.ServiceList;
-import org.apache.ws.scout.uddi.TModel;
-import org.apache.ws.scout.uddi.TModelBag;
-import org.apache.ws.scout.uddi.TModelDetail;
-import org.apache.ws.scout.uddi.TModelList;
+import org.apache.ws.scout.model.uddi.v2.*;
+import org.apache.ws.scout.transport.Transport; 
 
 /**
  * 
@@ -68,7 +47,7 @@
 	/**
 	 * @return Returns the publishURL.
 	 */
-	URI getPublishURI();
+	URI getPublishURI();	
 	
 	/**
 	 * @param publishURL The publishURL to set.
@@ -223,6 +202,12 @@
 	    throws RegistryException;
 	  
 	  /**
+	   * @exception RegistryException;
+	   */
+	  RegisteredInfo getRegisteredInfo(String authInfo)
+	  	throws RegistryException;
+	  
+	  /**
 	   * "Used to locate one or more tModel information structures. Returns a
 	   *  tModelList structure."
 	   *
diff --git a/src/main/java/org/apache/ws/scout/registry/LifeCycleManagerImpl.java b/src/main/java/org/apache/ws/scout/registry/LifeCycleManagerImpl.java
index f2f3940..bc9268d 100644
--- a/src/main/java/org/apache/ws/scout/registry/LifeCycleManagerImpl.java
+++ b/src/main/java/org/apache/ws/scout/registry/LifeCycleManagerImpl.java
@@ -51,6 +51,11 @@
 import javax.xml.registry.infomodel.TelephoneNumber;

 import javax.xml.registry.infomodel.User;

 

+import org.apache.ws.scout.model.uddi.v2.BusinessDetail;

+import org.apache.ws.scout.model.uddi.v2.BusinessInfo;

+import org.apache.ws.scout.model.uddi.v2.Description;

+import org.apache.ws.scout.model.uddi.v2.Name;

+import org.apache.ws.scout.model.uddi.v2.ServiceInfo;

 import org.apache.ws.scout.registry.infomodel.AssociationImpl;

 import org.apache.ws.scout.registry.infomodel.ClassificationImpl;

 import org.apache.ws.scout.registry.infomodel.ClassificationSchemeImpl;

@@ -70,11 +75,6 @@
 import org.apache.ws.scout.registry.infomodel.SpecificationLinkImpl;

 import org.apache.ws.scout.registry.infomodel.TelephoneNumberImpl;

 import org.apache.ws.scout.registry.infomodel.UserImpl;

-import org.apache.ws.scout.uddi.BusinessDetail;

-import org.apache.ws.scout.uddi.BusinessInfo;

-import org.apache.ws.scout.uddi.Description;

-import org.apache.ws.scout.uddi.Name;

-import org.apache.ws.scout.uddi.ServiceInfo;

 import org.apache.ws.scout.util.ScoutUddiJaxrHelper;

 

 /**

@@ -449,23 +449,25 @@
         throw new UnsupportedCapabilityException();

     }

 

-    Organization createOrganization(BusinessInfo info) throws JAXRException {

-        String key = info.getBusinessKey();

-        Name[] names = info.getNameArray();

-        Description[] descriptions = info.getDescriptionArray();

-        ServiceInfo[] serviceInfos = info.getServiceInfos().getServiceInfoArray();

+    Organization createOrganization(BusinessInfo bizInfo) throws JAXRException {

+        String key = bizInfo.getBusinessKey();

+        List<Name> names = bizInfo.getName(); 

+        

+        List<Description> descriptions = bizInfo.getDescription();

+        List<ServiceInfo> serviceInfos = bizInfo.getServiceInfos().getServiceInfo();

+        

         OrganizationImpl org = new OrganizationImpl(this);

         org.setKey(createKey(key));

-        if (names != null && names.length > 0) {

-            org.setName(createInternationalString(((Name) names[0]).getStringValue()));

+        if (names != null && names.size() > 0) {

+            org.setName(createInternationalString(names.get(0).getValue()));

         }

-        if (descriptions != null && descriptions.length > 0) {

-            org.setDescription(createInternationalString(((Description) descriptions[0]).getStringValue()));

+        if (descriptions != null && descriptions.size() > 0) {

+            org.setDescription(createInternationalString(descriptions.get(0).getValue()));

         }

-        if (serviceInfos != null && serviceInfos.length > 0) {

-            List<Service> services = new ArrayList<Service>(serviceInfos.length);

-            for (int i = 0; i < serviceInfos.length; i++) {

-                ServiceInfo serviceInfo = (ServiceInfo) serviceInfos[i];

+        if (serviceInfos != null && serviceInfos.size() > 0) {

+            List<Service> services = new ArrayList<Service>(serviceInfos.size());

+            for (int i = 0; i < serviceInfos.size(); i++) {

+                ServiceInfo serviceInfo = serviceInfos.get(i);

                 services.add(createService(serviceInfo));

             }

             org.addServices(services);

@@ -474,17 +476,17 @@
         return org;

     }

 

-    Organization createOrganization(BusinessDetail detail) throws JAXRException {

-        return ScoutUddiJaxrHelper.getOrganization(detail, this);

+    Organization createOrganization(BusinessDetail bizDetail) throws JAXRException {

+        return ScoutUddiJaxrHelper.getOrganization(bizDetail, this);

     }

 

-    Service createService(ServiceInfo info) throws JAXRException {

-        String key = info.getServiceKey();

-        Name[] names = info.getNameArray();

+    Service createService(ServiceInfo serviceInfo) throws JAXRException {

+        String key = serviceInfo.getServiceKey();

+        List<Name> names = serviceInfo.getName();

         ServiceImpl service = new ServiceImpl(this);

         service.setKey(createKey(key));

-        if (names != null && names.length > 0) {

-            service.setName(createInternationalString(names[0].getStringValue()));

+        if (names != null && names.size() > 0) {

+            service.setName(createInternationalString(names.get(0).getValue()));

         }

         return service;

     }

diff --git a/src/main/java/org/apache/ws/scout/registry/RegistryException.java b/src/main/java/org/apache/ws/scout/registry/RegistryException.java
index cd70e3d..b182361 100644
--- a/src/main/java/org/apache/ws/scout/registry/RegistryException.java
+++ b/src/main/java/org/apache/ws/scout/registry/RegistryException.java
@@ -15,10 +15,11 @@
  */
 package org.apache.ws.scout.registry;
 
-import org.apache.ws.scout.uddi.DispositionReport;
-import org.apache.ws.scout.uddi.DispositionReportDocument;
-import org.apache.ws.scout.uddi.ErrInfo;
-import org.apache.ws.scout.uddi.Result;
+import org.apache.ws.scout.model.uddi.v2.DispositionReport;
+import org.apache.ws.scout.model.uddi.v2.ErrInfo;
+import org.apache.ws.scout.model.uddi.v2.ObjectFactory;
+import org.apache.ws.scout.model.uddi.v2.Result;
+ 
 
 /**
  * Thrown to indicate that a UDDI Exception was encountered.
@@ -75,6 +76,8 @@
 
   // UDDI DispositionReport
   private DispositionReport dispReport;
+  
+  private ObjectFactory objectFactory = new ObjectFactory();
 
   /**
    * Constructs a RegistryException instance.
@@ -149,14 +152,14 @@
     
     setFaultString(getMessage());
     
-    Result r = Result.Factory.newInstance();
-    ErrInfo ei = ErrInfo.Factory.newInstance();
+    Result r = this.objectFactory.createResult();
+    ErrInfo ei = this.objectFactory.createErrInfo();
 
     if (errCode != null) {
     	ei.setErrCode(errCode);
     }
 
-    ei.setStringValue(getMessage());
+    ei.setValue(getMessage());
 
    	r.setErrno(errno);
 
@@ -250,15 +253,15 @@
   public void addResult(Result result)
   {
     if (this.dispReport==null) {
-  	  DispositionReportDocument doc = DispositionReportDocument.Factory.newInstance();
-      this.dispReport = doc.addNewDispositionReport();
+      this.dispReport = this.objectFactory.createDispositionReport();
     }
 
-    Result r = this.dispReport.addNewResult();
+    Result jaxbResult = this.objectFactory.createResult();
+    this.dispReport.getResult().add(jaxbResult);
     
-    if (result.getErrInfo() != null) r.setErrInfo(result.getErrInfo());
-    if (result.getKeyType() != null) r.setKeyType(result.getKeyType());
-    r.setErrno(result.getErrno());
+    if (result.getErrInfo() != null) jaxbResult.setErrInfo(result.getErrInfo());
+    if (result.getKeyType() != null) jaxbResult.setKeyType(result.getKeyType());
+    jaxbResult.setErrno(result.getErrno());
   }
 
   /**
diff --git a/src/main/java/org/apache/ws/scout/registry/RegistryImpl.java b/src/main/java/org/apache/ws/scout/registry/RegistryImpl.java
index 730dff9..c554978 100644
--- a/src/main/java/org/apache/ws/scout/registry/RegistryImpl.java
+++ b/src/main/java/org/apache/ws/scout/registry/RegistryImpl.java
@@ -15,93 +15,69 @@
  */
 package org.apache.ws.scout.registry;
 
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.net.URI;
 import java.net.URISyntaxException;
+import java.util.Arrays;
 import java.util.Properties;
 
-import javax.xml.namespace.QName;
+import javax.xml.bind.JAXBContext;
+import javax.xml.bind.JAXBElement;
+import javax.xml.bind.JAXBException;
+import javax.xml.bind.Marshaller;
+import javax.xml.bind.Unmarshaller;
 import javax.xml.parsers.DocumentBuilder;
 import javax.xml.parsers.DocumentBuilderFactory;
 import javax.xml.parsers.ParserConfigurationException;
 
+import org.apache.ws.scout.model.uddi.v2.AssertionStatusReport;
+import org.apache.ws.scout.model.uddi.v2.AuthToken;
+import org.apache.ws.scout.model.uddi.v2.BindingDetail;
+import org.apache.ws.scout.model.uddi.v2.BindingTemplate;
+import org.apache.ws.scout.model.uddi.v2.BusinessDetail;
+import org.apache.ws.scout.model.uddi.v2.BusinessEntity;
+import org.apache.ws.scout.model.uddi.v2.BusinessList;
+import org.apache.ws.scout.model.uddi.v2.BusinessService;
+import org.apache.ws.scout.model.uddi.v2.CategoryBag;
+import org.apache.ws.scout.model.uddi.v2.DeleteBinding;
+import org.apache.ws.scout.model.uddi.v2.DeleteBusiness;
+import org.apache.ws.scout.model.uddi.v2.DeletePublisherAssertions;
+import org.apache.ws.scout.model.uddi.v2.DeleteService;
+import org.apache.ws.scout.model.uddi.v2.DeleteTModel;
+import org.apache.ws.scout.model.uddi.v2.DiscoveryURLs;
+import org.apache.ws.scout.model.uddi.v2.DispositionReport;
+import org.apache.ws.scout.model.uddi.v2.FindBinding;
+import org.apache.ws.scout.model.uddi.v2.FindBusiness;
+import org.apache.ws.scout.model.uddi.v2.FindQualifiers;
+import org.apache.ws.scout.model.uddi.v2.FindService;
+import org.apache.ws.scout.model.uddi.v2.FindTModel;
+import org.apache.ws.scout.model.uddi.v2.GetAssertionStatusReport;
+import org.apache.ws.scout.model.uddi.v2.GetAuthToken;
+import org.apache.ws.scout.model.uddi.v2.GetBusinessDetail;
+import org.apache.ws.scout.model.uddi.v2.GetPublisherAssertions;
+import org.apache.ws.scout.model.uddi.v2.GetRegisteredInfo;
+import org.apache.ws.scout.model.uddi.v2.GetServiceDetail;
+import org.apache.ws.scout.model.uddi.v2.GetTModelDetail;
+import org.apache.ws.scout.model.uddi.v2.IdentifierBag;
+import org.apache.ws.scout.model.uddi.v2.Name;
+import org.apache.ws.scout.model.uddi.v2.ObjectFactory;
+import org.apache.ws.scout.model.uddi.v2.PublisherAssertion;
+import org.apache.ws.scout.model.uddi.v2.PublisherAssertions;
+import org.apache.ws.scout.model.uddi.v2.RegisteredInfo;
+import org.apache.ws.scout.model.uddi.v2.SaveBinding;
+import org.apache.ws.scout.model.uddi.v2.SaveBusiness;
+import org.apache.ws.scout.model.uddi.v2.SaveService;
+import org.apache.ws.scout.model.uddi.v2.SaveTModel;
+import org.apache.ws.scout.model.uddi.v2.ServiceDetail;
+import org.apache.ws.scout.model.uddi.v2.ServiceList;
+import org.apache.ws.scout.model.uddi.v2.SetPublisherAssertions;
+import org.apache.ws.scout.model.uddi.v2.TModel;
+import org.apache.ws.scout.model.uddi.v2.TModelBag;
+import org.apache.ws.scout.model.uddi.v2.TModelDetail;
+import org.apache.ws.scout.model.uddi.v2.TModelList;
 import org.apache.ws.scout.transport.Transport;
-import org.apache.ws.scout.uddi.AssertionStatusReport;
-import org.apache.ws.scout.uddi.AssertionStatusReportDocument;
-import org.apache.ws.scout.uddi.AuthToken;
-import org.apache.ws.scout.uddi.AuthTokenDocument;
-import org.apache.ws.scout.uddi.BindingDetail;
-import org.apache.ws.scout.uddi.BindingDetailDocument;
-import org.apache.ws.scout.uddi.BindingTemplate;
-import org.apache.ws.scout.uddi.BusinessDetail;
-import org.apache.ws.scout.uddi.BusinessDetailDocument;
-import org.apache.ws.scout.uddi.BusinessEntity;
-import org.apache.ws.scout.uddi.BusinessList;
-import org.apache.ws.scout.uddi.BusinessListDocument;
-import org.apache.ws.scout.uddi.BusinessService;
-import org.apache.ws.scout.uddi.CategoryBag;
-import org.apache.ws.scout.uddi.DeleteBinding;
-import org.apache.ws.scout.uddi.DeleteBindingDocument;
-import org.apache.ws.scout.uddi.DeleteBusiness;
-import org.apache.ws.scout.uddi.DeleteBusinessDocument;
-import org.apache.ws.scout.uddi.DeletePublisherAssertions;
-import org.apache.ws.scout.uddi.DeletePublisherAssertionsDocument;
-import org.apache.ws.scout.uddi.DeleteService;
-import org.apache.ws.scout.uddi.DeleteServiceDocument;
-import org.apache.ws.scout.uddi.DeleteTModel;
-import org.apache.ws.scout.uddi.DeleteTModelDocument;
-import org.apache.ws.scout.uddi.DiscoveryURLs;
-import org.apache.ws.scout.uddi.DispositionReport;
-import org.apache.ws.scout.uddi.DispositionReportDocument;
-import org.apache.ws.scout.uddi.FindBinding;
-import org.apache.ws.scout.uddi.FindBindingDocument;
-import org.apache.ws.scout.uddi.FindBusiness;
-import org.apache.ws.scout.uddi.FindBusinessDocument;
-import org.apache.ws.scout.uddi.FindQualifiers;
-import org.apache.ws.scout.uddi.FindService;
-import org.apache.ws.scout.uddi.FindServiceDocument;
-import org.apache.ws.scout.uddi.FindTModel;
-import org.apache.ws.scout.uddi.FindTModelDocument;
-import org.apache.ws.scout.uddi.GetAssertionStatusReport;
-import org.apache.ws.scout.uddi.GetAssertionStatusReportDocument;
-import org.apache.ws.scout.uddi.GetAuthToken;
-import org.apache.ws.scout.uddi.GetAuthTokenDocument;
-import org.apache.ws.scout.uddi.GetBusinessDetail;
-import org.apache.ws.scout.uddi.GetBusinessDetailDocument;
-import org.apache.ws.scout.uddi.GetPublisherAssertions;
-import org.apache.ws.scout.uddi.GetPublisherAssertionsDocument;
-import org.apache.ws.scout.uddi.GetServiceDetail;
-import org.apache.ws.scout.uddi.GetServiceDetailDocument;
-import org.apache.ws.scout.uddi.GetTModelDetail;
-import org.apache.ws.scout.uddi.GetTModelDetailDocument;
-import org.apache.ws.scout.uddi.IdentifierBag;
-import org.apache.ws.scout.uddi.Name;
-import org.apache.ws.scout.uddi.PublisherAssertion;
-import org.apache.ws.scout.uddi.PublisherAssertions;
-import org.apache.ws.scout.uddi.PublisherAssertionsDocument;
-import org.apache.ws.scout.uddi.SaveBinding;
-import org.apache.ws.scout.uddi.SaveBindingDocument;
-import org.apache.ws.scout.uddi.SaveBusiness;
-import org.apache.ws.scout.uddi.SaveBusinessDocument;
-import org.apache.ws.scout.uddi.SaveService;
-import org.apache.ws.scout.uddi.SaveServiceDocument;
-import org.apache.ws.scout.uddi.SaveTModel;
-import org.apache.ws.scout.uddi.SaveTModelDocument;
-import org.apache.ws.scout.uddi.ServiceDetail;
-import org.apache.ws.scout.uddi.ServiceDetailDocument;
-import org.apache.ws.scout.uddi.ServiceList;
-import org.apache.ws.scout.uddi.ServiceListDocument;
-import org.apache.ws.scout.uddi.SetPublisherAssertions;
-import org.apache.ws.scout.uddi.SetPublisherAssertionsDocument;
-import org.apache.ws.scout.uddi.TModel;
-import org.apache.ws.scout.uddi.TModelBag;
-import org.apache.ws.scout.uddi.TModelDetail;
-import org.apache.ws.scout.uddi.TModelDetailDocument;
-import org.apache.ws.scout.uddi.TModelList;
-import org.apache.ws.scout.uddi.TModelListDocument;
-import org.apache.xmlbeans.XmlCursor;
-import org.apache.xmlbeans.XmlException;
-import org.apache.xmlbeans.XmlObject;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 import org.w3c.dom.NodeList;
@@ -149,6 +125,11 @@
 	private String protocolHandler;
 	private String uddiVersion;
 	private String uddiNamespace;
+	
+	private ObjectFactory objectFactory = new ObjectFactory();
+	
+	private Marshaller marshaller = null;
+	private Unmarshaller unmarshaller = null;
 
 	/**
 	 * Creates a new instance of RegistryImpl.
@@ -220,6 +201,17 @@
 			this.setTransport(this.getTransport(transClass));
 		else
 			this.setTransport(this.getTransport(DEFAULT_TRANSPORT_CLASS));
+		
+		try
+		{
+			JAXBContext context = JAXBContext.newInstance(new Class[] {ObjectFactory.class});
+			this.marshaller = context.createMarshaller();
+			this.unmarshaller = context.createUnmarshaller(); 
+		}
+		catch(JAXBException e)
+		{
+			throw new RuntimeException(e);
+		}
 	}
 
 	/**
@@ -245,21 +237,26 @@
 	/**
 	 * 
 	 */
-	public XmlObject execute(XmlObject uddiRequest, URI endPointURI)
+	public JAXBElement<?> execute(JAXBElement<?> uddiRequest, URI endPointURI)
 			throws RegistryException {
 
+		ByteArrayOutputStream baos = new ByteArrayOutputStream();
+		
         Document doc;
         try {
             DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory.newInstance();
             docBuilderFactory.setNamespaceAware(true);
             DocumentBuilder docBuilder= docBuilderFactory.newDocumentBuilder();
-            doc = docBuilder.parse(uddiRequest.newInputStream());
+            this.marshaller.marshal(uddiRequest, baos);
+            doc = docBuilder.parse(new ByteArrayInputStream(baos.toByteArray()));
         } catch (SAXException saxe) {
             throw (new RegistryException(saxe));
         } catch (ParserConfigurationException pce) {
             throw (new RegistryException(pce));
         } catch (IOException ioe) {
             throw (new RegistryException(ioe));
+        } catch (JAXBException ioe) {
+            throw (new RegistryException(ioe));
         }
 		Element request = doc.getDocumentElement();
 
@@ -292,27 +289,10 @@
         // Fault. If it is a SOAP Fault then throw it
         // immediately.
 
-        XmlObject uddiResponse = null;
+        JAXBElement<?> uddiResponse = null;
 	    try {
-	        uddiResponse = XmlObject.Factory.parse(response);
-            XmlCursor cursor = uddiResponse.newCursor();
-            cursor.toNextToken();
-            //set the namespace if it is empty here.  This is needed for the find_element_user to work.
-            if ("".equals(cursor.getName().getNamespaceURI())) {
-                cursor.setName(new QName(this.getUddiNamespace(), cursor.getName().getLocalPart()));
-                //there seems to have a bug in setName and it will set the next Start with xmlns="".
-                //The workaround is to set it to uddiNamespace when it is empty.
-                while (cursor.hasNextToken()) {
-                    cursor.toNextToken();
-                    if (cursor.isStart()) {
-                        if ("".equals(cursor.getName().getNamespaceURI())) {
-                            cursor.setName(new QName(this.getUddiNamespace(), cursor.getName().getLocalPart()));
-                        }
-                    }
-                }
-                cursor.dispose();
-            }
-	    } catch (XmlException xmle) {
+	        uddiResponse = (JAXBElement<?>) unmarshaller.unmarshal(response);
+	    } catch (JAXBException xmle) {
 	        throw (new RegistryException(xmle));
 	    }
 
@@ -342,24 +322,19 @@
 				nodeList = ((Element) nodeList.item(0))
 						.getElementsByTagName("dispositionReport");
 				if (nodeList.getLength() > 0) {
-					XmlObject dispRptObj = null;
+					JAXBElement<DispositionReport> dispRptObj = null;
 					try {
-						dispRptObj = XmlObject.Factory.parse((Element) nodeList
+						dispRptObj = (JAXBElement<DispositionReport>) unmarshaller.unmarshal((Element) nodeList
 								.item(0));
-					} catch (XmlException xmle) {
+					} catch (JAXBException xmle) {
 						throw (new RegistryException(xmle));
 					}
-                    XmlObject o = dispRptObj.changeType(DispositionReportDocument.type);
-                    dispRpt = ((DispositionReportDocument) o).getDispositionReport();
+                    dispRpt = dispRptObj.getValue();
                 }
 			}
 
 			RegistryException e = new RegistryException(fCode, fString, fActor, dispRpt);
-			
-			// FIXME: This should be removed after testing!
-			System.err.println("SOAP message:");
-			System.err.println(uddiResponse.xmlText());
-			
+		
 			// Create RegistryException instance and return
 			throw e;
 		}
@@ -495,21 +470,19 @@
 	 */
 	public DispositionReport deleteBinding(String authInfo,
 			String[] bindingKeyArray) throws RegistryException {
-		DeleteBindingDocument doc = DeleteBindingDocument.Factory.newInstance();
-		DeleteBinding request = doc.addNewDeleteBinding();
+		DeleteBinding request = this.objectFactory.createDeleteBinding();
 
 		if (authInfo != null) {
 			request.setAuthInfo(authInfo);
 		}
 
 		if (bindingKeyArray != null) {
-			request.setBindingKeyArray(bindingKeyArray);
+			request.getBindingKey().addAll(Arrays.asList(bindingKeyArray));
 		}
 
         DispositionReport dr;
-        XmlObject o = execute(doc, this.getPublishURI()).changeType(
-                DispositionReportDocument.type);
-        dr = ((DispositionReportDocument) o).getDispositionReport();
+        JAXBElement<?> o = execute(this.objectFactory.createDeleteBinding(request), this.getPublishURI());
+        dr = (DispositionReport) o.getValue();;
 
         return dr;
 	}
@@ -521,22 +494,19 @@
 	 */
 	public DispositionReport deleteBusiness(String authInfo,
 			String[] businessKeyArray) throws RegistryException {
-		DeleteBusinessDocument doc = DeleteBusinessDocument.Factory
-				.newInstance();
-		DeleteBusiness request = doc.addNewDeleteBusiness();
-
+		DeleteBusiness request = this.objectFactory.createDeleteBusiness();
+		
 		if (authInfo != null) {
 			request.setAuthInfo(authInfo);
 		}
 
 		if (businessKeyArray != null) {
-			request.setBusinessKeyArray(businessKeyArray);
+			request.getBusinessKey().addAll(Arrays.asList(businessKeyArray));
 		}
 
         DispositionReport dr;
-        XmlObject o = execute(doc, this.getPublishURI()).changeType(
-                DispositionReportDocument.type);
-        dr = ((DispositionReportDocument) o).getDispositionReport();
+        JAXBElement<?> o = execute(this.objectFactory.createDeleteBusiness(request), this.getPublishURI());
+        dr = (DispositionReport) o.getValue();
 
         return dr;
 	}
@@ -546,23 +516,20 @@
 	 */
 	public DispositionReport deletePublisherAssertions(String authInfo,
 			PublisherAssertion[] assertionArray) throws RegistryException {
-		DeletePublisherAssertionsDocument doc = DeletePublisherAssertionsDocument.Factory
-				.newInstance();
-		DeletePublisherAssertions request = doc
-				.addNewDeletePublisherAssertions();
+		DeletePublisherAssertions request = this.objectFactory.createDeletePublisherAssertions();
 
 		if (authInfo != null) {
 			request.setAuthInfo(authInfo);
 		}
 
 		if (assertionArray != null) {
-			request.setPublisherAssertionArray(assertionArray);
+			request.getPublisherAssertion().addAll(Arrays.asList(assertionArray));
 		}
 
         DispositionReport dr;
-        XmlObject o = execute(doc, this.getPublishURI()).changeType(
-                DispositionReportDocument.type);
-        dr = ((DispositionReportDocument) o).getDispositionReport();
+        JAXBElement<?> o = execute(this.objectFactory.createDeletePublisherAssertions(request), 
+        		this.getPublishURI());
+        dr = (DispositionReport) o.getValue();
 
         return dr;
 	}
@@ -575,21 +542,20 @@
 	 */
 	public DispositionReport deleteService(String authInfo,
 			String[] serviceKeyArray) throws RegistryException {
-		DeleteServiceDocument doc = DeleteServiceDocument.Factory.newInstance();
-		DeleteService request = doc.addNewDeleteService();
-
+		DeleteService request = this.objectFactory.createDeleteService();
+		
 		if (authInfo != null) {
 			request.setAuthInfo(authInfo);
 		}
 
 		if (serviceKeyArray != null) {
-			request.setServiceKeyArray(serviceKeyArray);
+			request.getServiceKey().addAll(Arrays.asList(serviceKeyArray));
 		}
 
         DispositionReport dr;
-        XmlObject o = execute(doc, this.getPublishURI()).changeType(
-                DispositionReportDocument.type);
-        dr = ((DispositionReportDocument) o).getDispositionReport();
+        JAXBElement<?> o = execute(this.objectFactory.createDeleteService(request), 
+        		this.getPublishURI());
+        dr = (DispositionReport) o.getValue();
 
         return dr;
 	}
@@ -603,21 +569,20 @@
 	 */
 	public DispositionReport deleteTModel(String authInfo,
 			String[] tModelKeyArray) throws RegistryException {
-		DeleteTModelDocument doc = DeleteTModelDocument.Factory.newInstance();
-		DeleteTModel request = doc.addNewDeleteTModel();
+		DeleteTModel request = this.objectFactory.createDeleteTModel();
 
 		if (authInfo != null) {
 			request.setAuthInfo(authInfo);
 		}
 
 		if (tModelKeyArray != null) {
-			request.setTModelKeyArray(tModelKeyArray);
+			request.getTModelKey().addAll(Arrays.asList(tModelKeyArray));
 		}
 
         DispositionReport dr;
-        XmlObject o = execute(doc, this.getPublishURI()).changeType(
-                DispositionReportDocument.type);
-        dr = ((DispositionReportDocument) o).getDispositionReport();
+        JAXBElement<?> o = execute(this.objectFactory.createDeleteTModel(request), 
+        		this.getPublishURI());
+        dr = (DispositionReport) o.getValue();
 
         return dr;
 	}
@@ -633,11 +598,10 @@
 			CategoryBag categoryBag, TModelBag tModelBag,
 			FindQualifiers findQualifiers, int maxRows)
 			throws RegistryException {
-		FindBusinessDocument doc = FindBusinessDocument.Factory.newInstance();
-		FindBusiness request = doc.addNewFindBusiness();
+		FindBusiness request = this.objectFactory.createFindBusiness();
 
 		if (nameArray != null) {
-			request.setNameArray(nameArray);
+			request.getName().addAll(Arrays.asList(nameArray));
 		}
 
 		if (discoveryURLs != null) {
@@ -655,7 +619,7 @@
 		if (tModelBag != null) {
 			request.setTModelBag(tModelBag);
 		} else {
-			request.setTModelBag(TModelBag.Factory.newInstance());
+			request.setTModelBag(this.objectFactory.createTModelBag());
  		}
 
 		if (findQualifiers != null) {
@@ -665,9 +629,9 @@
 		request.setMaxRows(maxRows);
 
         BusinessList bl;
-        XmlObject o = execute(doc, this.getInquiryURI()).changeType(
-                BusinessListDocument.type);
-        bl = ((BusinessListDocument) o).getBusinessList();
+        JAXBElement<?> o = execute(this.objectFactory.createFindBusiness(request),
+        		this.getInquiryURI());
+        bl = (BusinessList) o.getValue();
 
         return bl;
 	}
@@ -688,8 +652,7 @@
 		// parameter value is always null anyways -- but this may change
 		// in the future.
 
-		FindBindingDocument doc = FindBindingDocument.Factory.newInstance();
-		FindBinding request = doc.addNewFindBinding();
+		FindBinding request = this.objectFactory.createFindBinding();
 
 		if (serviceKey != null) {
 			request.setServiceKey(serviceKey);
@@ -698,10 +661,9 @@
 		if (tModelBag != null) {
 			request.setTModelBag(tModelBag);
 		} else {
-			TModelBag tmb = TModelBag.Factory.newInstance();
-			tmb.setTModelKeyArray(new String[1]);
+			TModelBag tmb = this.objectFactory.createTModelBag(); 
 			request.setTModelBag(tmb);
- 		}
+		}
 
 		if (findQualifiers != null) {
 			request.setFindQualifiers(findQualifiers);
@@ -709,9 +671,9 @@
 		request.setMaxRows(maxRows);
 
         BindingDetail bd;
-        XmlObject o = execute(doc, this.getInquiryURI()).changeType(
-                BindingDetailDocument.type);
-        bd = ((BindingDetailDocument) o).getBindingDetail();
+        JAXBElement<?> o = execute(this.objectFactory.createFindBinding(request), 
+        		this.getInquiryURI());
+        bd = (BindingDetail) o.getValue();
 
         return bd;
 	}
@@ -728,15 +690,14 @@
 			CategoryBag categoryBag, TModelBag tModelBag,
 			FindQualifiers findQualifiers, int maxRows)
 			throws RegistryException {
-		FindServiceDocument doc = FindServiceDocument.Factory.newInstance();
-		FindService request = doc.addNewFindService();
+		FindService request = this.objectFactory.createFindService();
 
 		if (businessKey != null) {
 			request.setBusinessKey(businessKey);
 		}
 
 		if (nameArray != null) {
-			request.setNameArray(nameArray);
+			request.getName().addAll(Arrays.asList(nameArray));
 		}
 
 		if (categoryBag != null) {
@@ -754,9 +715,9 @@
 		request.setMaxRows(maxRows);
 
         ServiceList sl;
-        XmlObject o = execute(doc, this.getInquiryURI()).changeType(
-                ServiceListDocument.type);
-        sl = ((ServiceListDocument) o).getServiceList();
+        JAXBElement<?> o = execute(this.objectFactory.createFindService(request), 
+        		this.getInquiryURI());
+        sl = (ServiceList) o.getValue();
 
         return sl;
 	}
@@ -770,16 +731,15 @@
 	public TModelList findTModel(String name, CategoryBag categoryBag,
 			IdentifierBag identifierBag, FindQualifiers findQualifiers,
 			int maxRows) throws RegistryException {
-		FindTModelDocument doc = FindTModelDocument.Factory.newInstance();
-		FindTModel request = doc.addNewFindTModel();
+		FindTModel request = this.objectFactory.createFindTModel();
 
-		Name n = Name.Factory.newInstance();
+		Name jaxbName = this.objectFactory.createName();
 
 		if (name != null) {
-			n.setStringValue(name);
+			jaxbName.setValue(name);
 		}
 
-		request.setName(n);
+		request.setName(jaxbName);
 
 		if (categoryBag != null) {
 			request.setCategoryBag(categoryBag);
@@ -796,9 +756,9 @@
 		request.setMaxRows(maxRows);
 
         TModelList tml;
-        XmlObject o = execute(doc, this.getInquiryURI()).changeType(
-                TModelListDocument.type);
-        tml = ((TModelListDocument) o).getTModelList();
+        JAXBElement<?> o = execute(this.objectFactory.createFindTModel(request), 
+        		this.getInquiryURI());
+        tml = (TModelList) o.getValue();
 
         return tml;
 	}
@@ -808,9 +768,7 @@
 	 */
 	public AssertionStatusReport getAssertionStatusReport(String authInfo,
 			String completionStatus) throws RegistryException {
-		GetAssertionStatusReportDocument doc = GetAssertionStatusReportDocument.Factory
-				.newInstance();
-		GetAssertionStatusReport request = doc.addNewGetAssertionStatusReport();
+		GetAssertionStatusReport request = this.objectFactory.createGetAssertionStatusReport();
 
 		if (authInfo != null) {
 			request.setAuthInfo(authInfo);
@@ -821,9 +779,9 @@
 		}
 
         AssertionStatusReport asr;
-        XmlObject o = execute(doc, this.getPublishURI()).changeType(
-                AssertionStatusReportDocument.type);
-        asr = ((AssertionStatusReportDocument) o).getAssertionStatusReport();
+        JAXBElement<?> o = execute(this.objectFactory.createGetAssertionStatusReport(request), 
+        		this.getPublishURI());
+        asr = (AssertionStatusReport) o.getValue();
 
         return asr;
 	}
@@ -838,8 +796,7 @@
 	 */
 	public AuthToken getAuthToken(String userID, String cred)
 			throws RegistryException {
-		GetAuthTokenDocument doc = GetAuthTokenDocument.Factory.newInstance();
-		GetAuthToken request = doc.addNewGetAuthToken();
+		GetAuthToken request = this.objectFactory.createGetAuthToken();
 
 		if (userID != null) {
 			request.setUserID(userID);
@@ -850,9 +807,9 @@
 		}
 
         AuthToken at;
-        XmlObject o = execute(doc, this.getPublishURI()).changeType(
-                AuthTokenDocument.type);
-        at = ((AuthTokenDocument) o).getAuthToken();
+        JAXBElement<?> o = execute(this.objectFactory.createGetAuthToken(request), 
+        		this.getPublishURI());
+        at = (AuthToken) o.getValue();
 
         return at;
 	}
@@ -879,19 +836,16 @@
 	 */
 	public BusinessDetail getBusinessDetail(String[] businessKeyArray)
 			throws RegistryException {
-		GetBusinessDetailDocument doc = GetBusinessDetailDocument.Factory
-				.newInstance();
-		GetBusinessDetail request = doc.addNewGetBusinessDetail();
+		GetBusinessDetail request = this.objectFactory.createGetBusinessDetail();
 
 		if (businessKeyArray != null) {
-			request.setBusinessKeyArray(businessKeyArray);
+			request.getBusinessKey().addAll(Arrays.asList(businessKeyArray));
 		}
 
         BusinessDetail bd;
-        XmlObject o = execute(doc, this.getInquiryURI()).changeType(
-                BusinessDetailDocument.type);
-        bd = ((BusinessDetailDocument) o).getBusinessDetail();
-
+        JAXBElement<?> o = execute(this.objectFactory.createGetBusinessDetail(request), 
+        		this.getInquiryURI());
+        bd = (BusinessDetail) o.getValue(); 
         return bd;
 	}
 
@@ -900,23 +854,40 @@
 	 */
 	public PublisherAssertions getPublisherAssertions(String authInfo)
 			throws RegistryException {
-		GetPublisherAssertionsDocument doc = GetPublisherAssertionsDocument.Factory
-				.newInstance();
-		GetPublisherAssertions request = doc.addNewGetPublisherAssertions();
+		GetPublisherAssertions request = this.objectFactory.createGetPublisherAssertions();
 
 		if (authInfo != null) {
 			request.setAuthInfo(authInfo);
 		}
 
         PublisherAssertions pa;
-        XmlObject o = execute(doc, this.getPublishURI()).changeType(
-                PublisherAssertionsDocument.type);
-        pa = ((PublisherAssertionsDocument) o).getPublisherAssertions();
+        JAXBElement<?> o = execute(this.objectFactory.createGetPublisherAssertions(request),
+        		this.getPublishURI());
+        pa = (PublisherAssertions) o.getValue();
 
         return pa;
 	}
 
 	/**
+	 * @exception RegistryException;
+	 */
+	public RegisteredInfo getRegisteredInfo(String authInfo)
+			throws RegistryException {
+		GetRegisteredInfo request = this.objectFactory.createGetRegisteredInfo();
+
+		if (authInfo != null) {
+			request.setAuthInfo(authInfo);
+		}
+
+        RegisteredInfo ri;
+        JAXBElement<?> o = execute(this.objectFactory.createGetRegisteredInfo(request), 
+        		this.getPublishURI());
+        ri = (RegisteredInfo) o.getValue();
+
+        return ri;
+	}
+	
+	/**
 	 * "Used to get full details for a particular registered businessService.
 	 * Returns a serviceDetail message."
 	 * 
@@ -938,18 +909,16 @@
 	 */
 	public ServiceDetail getServiceDetail(String[] serviceKeyArray)
 			throws RegistryException {
-		GetServiceDetailDocument doc = GetServiceDetailDocument.Factory
-				.newInstance();
-		GetServiceDetail request = doc.addNewGetServiceDetail();
+		GetServiceDetail request = this.objectFactory.createGetServiceDetail();
 
 		if (serviceKeyArray != null) {
-			request.setServiceKeyArray(serviceKeyArray);
+			request.getServiceKey().addAll(Arrays.asList(serviceKeyArray));
 		}
 
         ServiceDetail sd;
-        XmlObject o = execute(doc, this.getInquiryURI()).changeType(
-                ServiceDetailDocument.type);
-        sd = ((ServiceDetailDocument) o).getServiceDetail();
+        JAXBElement<?> o = execute(this.objectFactory.createGetServiceDetail(request), 
+        		this.getInquiryURI());
+        sd = (ServiceDetail) o.getValue();
 
         return sd;
 	}
@@ -976,18 +945,16 @@
 	 */
 	public TModelDetail getTModelDetail(String[] tModelKeyArray)
 			throws RegistryException {
-		GetTModelDetailDocument doc = GetTModelDetailDocument.Factory
-				.newInstance();
-		GetTModelDetail request = doc.addNewGetTModelDetail();
+		GetTModelDetail request = this.objectFactory.createGetTModelDetail();
 
 		if (tModelKeyArray != null) {
-			request.setTModelKeyArray(tModelKeyArray);
+			request.getTModelKey().addAll(Arrays.asList(tModelKeyArray));
 		}
 
         TModelDetail tmd;
-        XmlObject o = execute(doc, this.getInquiryURI()).changeType(
-                TModelDetailDocument.type);
-        tmd = ((TModelDetailDocument) o).getTModelDetail();
+        JAXBElement<?> o = execute(this.objectFactory.createGetTModelDetail(request), 
+        		this.getInquiryURI());
+        tmd = (TModelDetail) o.getValue();
 
         return tmd;
 	}
@@ -997,22 +964,20 @@
 	 */
 	public PublisherAssertions setPublisherAssertions(String authInfo,
 			PublisherAssertion[] assertionArray) throws RegistryException {
-		SetPublisherAssertionsDocument doc = SetPublisherAssertionsDocument.Factory
-				.newInstance();
-		SetPublisherAssertions request = doc.addNewSetPublisherAssertions();
+		SetPublisherAssertions request = this.objectFactory.createSetPublisherAssertions();
 
 		if (authInfo != null) {
 			request.setAuthInfo(authInfo);
 		}
 
 		if (assertionArray != null) {
-			request.setPublisherAssertionArray(assertionArray);
+			request.getPublisherAssertion().addAll(Arrays.asList(assertionArray));
 		}
 
         PublisherAssertions pa;
-        XmlObject o = execute(doc, this.getPublishURI()).changeType(
-                PublisherAssertionsDocument.type);
-        pa = ((PublisherAssertionsDocument) o).getPublisherAssertions();
+        JAXBElement<?> o = execute(this.objectFactory.createSetPublisherAssertions(request), 
+        		this.getPublishURI());
+        pa = (PublisherAssertions) o.getValue();
 
         return pa;
 	}
@@ -1026,21 +991,20 @@
 	 */
 	public BindingDetail saveBinding(String authInfo,
 			BindingTemplate[] bindingArray) throws RegistryException {
-		SaveBindingDocument doc = SaveBindingDocument.Factory.newInstance();
-		SaveBinding request = doc.addNewSaveBinding();
+		SaveBinding request = this.objectFactory.createSaveBinding();
 
 		if (authInfo != null) {
 			request.setAuthInfo(authInfo);
 		}
 
 		if (bindingArray != null) {
-			request.setBindingTemplateArray(bindingArray);
+			request.getBindingTemplate().addAll(Arrays.asList(bindingArray));
 		}
 		
         BindingDetail bd;
-        XmlObject o = execute(doc, this.getPublishURI()).changeType(
-                BindingDetailDocument.type);
-        bd = ((BindingDetailDocument) o).getBindingDetail();
+        JAXBElement<?> o = execute(this.objectFactory.createSaveBinding(request), 
+        		this.getPublishURI());
+        bd = (BindingDetail) o.getValue();
 
         return bd;
 	}
@@ -1055,21 +1019,20 @@
 	 */
 	public BusinessDetail saveBusiness(String authInfo,
 			BusinessEntity[] businessArray) throws RegistryException {
-		SaveBusinessDocument doc = SaveBusinessDocument.Factory.newInstance();
-		SaveBusiness request = doc.addNewSaveBusiness();
+		SaveBusiness request = this.objectFactory.createSaveBusiness();
 
 		if (authInfo != null) {
 			request.setAuthInfo(authInfo);
 		}
 
 		if (businessArray != null) {
-			request.setBusinessEntityArray(businessArray);
+			request.getBusinessEntity().addAll(Arrays.asList(businessArray));
 		}
 
         BusinessDetail bd;
-        XmlObject o = execute(doc, this.getPublishURI()).changeType(
-                BusinessDetailDocument.type);
-        bd = ((BusinessDetailDocument) o).getBusinessDetail();
+        JAXBElement<?> o = execute(this.objectFactory.createSaveBusiness(request), 
+        		this.getPublishURI());
+        bd = (BusinessDetail) o.getValue();
 
         return bd;
 	}
@@ -1082,21 +1045,20 @@
 	 */
 	public ServiceDetail saveService(String authInfo,
 			BusinessService[] serviceArray) throws RegistryException {
-		SaveServiceDocument doc = SaveServiceDocument.Factory.newInstance();
-		SaveService request = doc.addNewSaveService();
+		SaveService request = this.objectFactory.createSaveService();
 
 		if (authInfo != null) {
 			request.setAuthInfo(authInfo);
 		}
 
 		if (serviceArray != null) {
-			request.setBusinessServiceArray(serviceArray);
+			request.getBusinessService().addAll(Arrays.asList(serviceArray));
 		}
 
         ServiceDetail sd;
-        XmlObject o = execute(doc, this.getPublishURI()).changeType(
-                ServiceDetailDocument.type);
-        sd = ((ServiceDetailDocument) o).getServiceDetail();
+        JAXBElement<?> o = execute(this.objectFactory.createSaveService(request), 
+        		this.getPublishURI());
+        sd = (ServiceDetail) o.getValue();
 
         return sd;
 	}
@@ -1108,22 +1070,20 @@
 	 */
 	public TModelDetail saveTModel(String authInfo, TModel[] tModelArray)
 			throws RegistryException {
-		SaveTModelDocument doc = SaveTModelDocument.Factory.newInstance();
-		SaveTModel request = doc.addNewSaveTModel();
+		SaveTModel request = this.objectFactory.createSaveTModel();
 
 		if (authInfo != null) {
 			request.setAuthInfo(authInfo);
 		}
 
 		if (tModelArray != null) {
-			request.setTModelArray(tModelArray);
+			request.getTModel().addAll(Arrays.asList(tModelArray));
 		}
 
         TModelDetail tmd;
-        XmlObject o = execute(doc, this.getPublishURI()).changeType(
-                TModelDetailDocument.type);
-        tmd = ((TModelDetailDocument) o).getTModelDetail();
-
+        JAXBElement<?> o = execute(this.objectFactory.createSaveTModel(request), 
+        		this.getPublishURI());
+        tmd = (TModelDetail) o.getValue();
         return tmd;
 	}
 
@@ -1186,7 +1146,7 @@
 			try {
 				clazz = Class.forName(name, true, scl);
 			} catch (Exception e) {
-				e.printStackTrace();
+		          throw new RuntimeException(e);
 			}
 		}
 
diff --git a/src/main/java/org/apache/ws/scout/registry/infomodel/AssociationImpl.java b/src/main/java/org/apache/ws/scout/registry/infomodel/AssociationImpl.java
index d6cb212..0ab4c16 100644
--- a/src/main/java/org/apache/ws/scout/registry/infomodel/AssociationImpl.java
+++ b/src/main/java/org/apache/ws/scout/registry/infomodel/AssociationImpl.java
@@ -125,7 +125,7 @@
       }
       catch (JAXRException e)
       {
-         e.printStackTrace();
+        throw new RuntimeException(e);
       }
 
       if(id != null) key = new KeyImpl(id);
diff --git a/src/main/java/org/apache/ws/scout/registry/infomodel/ServiceImpl.java b/src/main/java/org/apache/ws/scout/registry/infomodel/ServiceImpl.java
index 5ad1619..1da8b1d 100644
--- a/src/main/java/org/apache/ws/scout/registry/infomodel/ServiceImpl.java
+++ b/src/main/java/org/apache/ws/scout/registry/infomodel/ServiceImpl.java
@@ -20,9 +20,12 @@
 import java.util.Collection;

 import java.util.Iterator;

 

+import javax.xml.registry.BusinessQueryManager;

 import javax.xml.registry.JAXRException;

 import javax.xml.registry.LifeCycleManager;

+import javax.xml.registry.RegistryService;

 import javax.xml.registry.UnexpectedObjectException;
<