[jboss-svn-commits] JBL Code SVN: r8390 - labs/jbossesb/trunk/product/etc/schemas/xml

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Dec 18 17:10:26 EST 2006


Author: kurt.stam at jboss.com
Date: 2006-12-18 17:10:26 -0500 (Mon, 18 Dec 2006)
New Revision: 8390

Modified:
   labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.xsd
Log:
Adding comments to the xsd. Hopefully we can pull them out into the listener and gateway xmls.

Modified: labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.xsd
===================================================================
--- labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.xsd	2006-12-18 20:50:24 UTC (rev 8389)
+++ labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.xsd	2006-12-18 22:10:26 UTC (rev 8390)
@@ -10,7 +10,10 @@
 			Document root + some basic types.
 		 88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888-->
 	
-	<xsd:element name="jbossesb" >
+	<xsd:element name="jbossesb">
+	    <xsd:annotation>
+	    	<xsd:documentation xml:lang="en">The jbossesb configuration for a single instance.</xsd:documentation>
+	    </xsd:annotation>
 		<xsd:complexType>
 			<xsd:sequence>
 			    <xsd:element ref="jesb:providers" minOccurs="1" maxOccurs="1"/>
@@ -19,7 +22,10 @@
 		</xsd:complexType>
 	</xsd:element>
 
-	<xsd:element name="property">
+	<xsd:element name="property">
+	    <xsd:annotation>
+	    	<xsd:documentation xml:lang="en">A simple name-value pair.</xsd:documentation>
+	    </xsd:annotation>
 		<xsd:complexType>
 			<xsd:attribute name="name" use="required" type="xsd:string"/>
 			<xsd:attribute name="value" type="xsd:string"/>
@@ -30,14 +36,20 @@
 			Provider and Bus base types.
 		 88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888-->
 
-	<xsd:element name="providers">
+	<xsd:element name="providers">
+	    <xsd:annotation>
+	    <xsd:documentation xml:lang="en">A container for the providers referenced in the jbossesb configfile</xsd:documentation>
+	    </xsd:annotation>
 		<xsd:complexType>
 			<xsd:sequence>
 				<xsd:element ref="jesb:provider" maxOccurs="unbounded" minOccurs="1"/>
 			</xsd:sequence>
 		</xsd:complexType>
 	</xsd:element>
-	<xsd:complexType name="provider">
+	<xsd:complexType name="provider">
+	    <xsd:annotation>
+	    	<xsd:documentation xml:lang="en">A provider of a bus. So for instance you can have a jms-provider (JBossMQ) or an ftp-provider.</xsd:documentation>
+	    </xsd:annotation>
 		<xsd:sequence>
 			<xsd:element ref="jesb:property" minOccurs="0" maxOccurs="unbounded"/>
 			<xsd:element ref="jesb:bus" maxOccurs="unbounded" minOccurs="1"/>
@@ -46,10 +58,17 @@
 	<xsd:element name="provider" type="jesb:provider"/>
 	
 	<xsd:complexType name="bus">
+	    <xsd:annotation>
+	    	<xsd:documentation xml:lang="en">A bus (also called channel by others) is a how a one application communicates with another application (JMS, FTP, HTTP, etc)</xsd:documentation>
+	    </xsd:annotation>
 		<xsd:sequence>
 			<xsd:element ref="jesb:property" minOccurs="0" maxOccurs="unbounded"/>
 		</xsd:sequence>
-		<xsd:attribute name="busid" use="required" type="xsd:string" />
+		<xsd:attribute name="busid" use="required" type="xsd:string">
+			<xsd:annotation>
+				<xsd:documentation xml:lang="en">An id such that this bus can be referenced by services.</xsd:documentation><xsd:appinfo>
+			</xsd:appinfo></xsd:annotation>
+		</xsd:attribute>
 	</xsd:complexType>
 	<xsd:element name="bus" type="jesb:bus" />
 	
@@ -58,6 +77,9 @@
 		 88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888-->
 	
 	<xsd:element name="services">
+	    <xsd:annotation>
+	    	<xsd:documentation xml:lang="en">A container for services.</xsd:documentation>
+	    </xsd:annotation>
 		<xsd:complexType>
 			<xsd:sequence>
 				<xsd:element ref="jesb:service" minOccurs="1" maxOccurs="unbounded"/>
@@ -65,32 +87,66 @@
 		</xsd:complexType>
 	</xsd:element>
 	<xsd:element name="service">
+	    <xsd:annotation>
+	    	<xsd:documentation xml:lang="en">A service has listener or gateways and a list of actions.</xsd:documentation>
+	    </xsd:annotation>
 		<xsd:complexType>
 			<xsd:sequence>
 				<xsd:element ref="jesb:listeners" minOccurs="1" maxOccurs="1"/>
 				<xsd:element ref="jesb:actions" minOccurs="1" maxOccurs="1"/>
 			</xsd:sequence>
-			<xsd:attribute name="category" use="required" type="xsd:string"/>
-			<xsd:attribute name="name" use="required" type="xsd:string"/>
-			<xsd:attribute name="description" use="required" type="xsd:string"/>
+			<xsd:attribute name="category" use="required" type="xsd:string">
+				<xsd:annotation>
+					<xsd:documentation xml:lang="en">The service category which will be used to store a reference to this service in the registry.
+				</xsd:documentation></xsd:annotation>
+			</xsd:attribute>
+			<xsd:attribute name="name" use="required" type="xsd:string">
+				<xsd:annotation>
+					<xsd:documentation xml:lang="en">The service name which will be used to store a reference to this service in the registry.</xsd:documentation>
+					</xsd:annotation>
+			</xsd:attribute>
+			<xsd:attribute name="description" use="required" type="xsd:string">
+				<xsd:annotation>
+					<xsd:documentation xml:lang="en">The service description which stored with this service in the registry, so that the purpose of this service can be understood by a human.</xsd:documentation>
+				</xsd:annotation>
+			</xsd:attribute>
 		</xsd:complexType>
 	</xsd:element>
 
-	<xsd:element name="actions">
+	<xsd:element name="actions">
+		<xsd:annotation>
+			<xsd:documentation xml:lang="en">A container for actions belonging to this service.</xsd:documentation>
+		</xsd:annotation>
 		<xsd:complexType>
 			<xsd:sequence>
 				<xsd:element ref="jesb:action" minOccurs="1" maxOccurs="unbounded"/>
 			</xsd:sequence>
 		</xsd:complexType>
 	</xsd:element>
-	<xsd:element name="action">
+	<xsd:element name="action">
+		<xsd:annotation><xsd:documentation xml:lang="en">An action which will act on the message when it is received by the service.
+		Actions can be chained. Hence you can specify a list of actions. Action are 'pluggable' and can be custom code, however
+		JBossESB comes with a list of predefined actions.</xsd:documentation>
+		</xsd:annotation>
 		<xsd:complexType>
 			<xsd:sequence>
 				<xsd:element ref="jesb:property" minOccurs="0" maxOccurs="unbounded"/>
 			</xsd:sequence>
-			<xsd:attribute name="name" use="required" type="xsd:string"/>
-			<xsd:attribute name="class" use="required" type="xsd:string"/>
-			<xsd:attribute name="process" type="xsd:string"/>
+			<xsd:attribute name="name" use="required" type="xsd:string">
+				<xsd:annotation>
+					<xsd:documentation xml:lang="en">The logical name of the action.</xsd:documentation>
+				</xsd:annotation>
+			</xsd:attribute>
+			<xsd:attribute name="class" use="required" type="xsd:string">
+				<xsd:annotation>
+				<xsd:documentation xml:lang="en">The full classname of the java class in which this action is defined.</xsd:documentation>
+				</xsd:annotation>
+			</xsd:attribute>
+			<xsd:attribute name="process" type="xsd:string">
+				<xsd:annotation>
+					<xsd:documentation xml:lang="en">The name of the method on the action that needs to be called when the message is received.</xsd:documentation>
+				</xsd:annotation>
+			</xsd:attribute>
 		</xsd:complexType>
 	</xsd:element>
 
@@ -98,20 +154,40 @@
 			Listener base types.
 		 88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888-->
 
-	<xsd:element name="listeners">
+	<xsd:element name="listeners">
+	    <xsd:annotation>
+	    	<xsd:documentation xml:lang="en">A container for all listener for a service.</xsd:documentation>
+	    </xsd:annotation>
 		<xsd:complexType>
 			<xsd:sequence>
 				<xsd:element ref="jesb:listener" maxOccurs="unbounded" minOccurs="1"/>
 			</xsd:sequence>
 		</xsd:complexType>
 	</xsd:element>
-	<xsd:complexType name="listener">
+	<xsd:complexType name="listener">
+		<xsd:annotation>
+			<xsd:documentation xml:lang="en">A listener is a listener or a gateway. The listener defines to which bus
+			the service is listening. The service can simultaneniously listen to multiple buses.</xsd:documentation>
+		</xsd:annotation>
 		<xsd:sequence>
 			<xsd:element ref="jesb:property" minOccurs="0" maxOccurs="unbounded"/>
 		</xsd:sequence>
-		<xsd:attribute name="name" use="required" type="xsd:string" />
-		<xsd:attribute name="busidref" use="required" type="xsd:string" />
-		<xsd:attribute name="is-gateway" use="required" type="xsd:boolean" />
+		<xsd:attribute name="name" use="required" type="xsd:string">
+			<xsd:annotation>
+				<xsd:documentation xml:lang="en">The logical name of the listener.</xsd:documentation>
+			</xsd:annotation>
+		</xsd:attribute>
+		<xsd:attribute name="busidref" use="required" type="xsd:string">
+			<xsd:annotation>
+				<xsd:documentation xml:lang="en">A reference to an existing bus, as defined in the 'buses' section of this jbossesb config.</xsd:documentation>
+			</xsd:annotation>
+		</xsd:attribute>
+		<xsd:attribute name="is-gateway" use="required" type="xsd:boolean">
+			<xsd:annotation>
+				<xsd:documentation xml:lang="en">true if the listener is a gateway. A gateway is an ESB-Unware listener, while a
+				listener is ESB-aware and as such expects jbossesb formatted messages.</xsd:documentation>
+			</xsd:annotation>
+		</xsd:attribute>
 	</xsd:complexType>
 	<xsd:element name="listener" type="jesb:listener" />
 
@@ -119,10 +195,16 @@
 			JMS Type Implementations.
 		 88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888-->
 
-	<xsd:element name="jms-message-filter">
+	<xsd:element name="jms-message-filter">
+	    <xsd:annotation><xsd:documentation xml:lang="en">A JMS filter can add a information to a Queue, or Topic. For example you
+	    can defined a message-selector. However, you can also push the queue name and type into this
+	    filter given you did not already specify them in the jms-bus.</xsd:documentation></xsd:annotation>
 		<xsd:complexType>
-			<xsd:attribute name="dest-name" use="required" type="xsd:string" />
-			<xsd:attribute name="dest-type" use="required">
+			<xsd:attribute name="dest-name" use="required" type="xsd:string">
+				<xsd:annotation><xsd:documentation xml:lang="en">Name of the Queue of Topic.</xsd:documentation></xsd:annotation>
+			</xsd:attribute>
+			<xsd:attribute name="dest-type" use="required">
+				<xsd:annotation><xsd:documentation xml:lang="en">A Queue delivers a message once, a topic broadcasts a message to all registered listeners.</xsd:documentation></xsd:annotation>
 				<xsd:simpleType>
 					<xsd:restriction base = "xsd:NMTOKEN">
 						<xsd:enumeration value = "QUEUE"/>
@@ -130,10 +212,14 @@
 					</xsd:restriction>
 				</xsd:simpleType>
 			</xsd:attribute>
-			<xsd:attribute name="selector" type="xsd:string" />
+			<xsd:attribute name="selector" type="xsd:string">
+				<xsd:annotation><xsd:documentation xml:lang="en">A message-selector allows multiple listeners to register with the same queue/topic, but
+				they will filter on this message-selector.</xsd:documentation></xsd:annotation>
+			</xsd:attribute>
 		</xsd:complexType>
 	</xsd:element>
-	<xsd:element name="jms-bus" substitutionGroup="jesb:bus">
+	<xsd:element name="jms-bus" substitutionGroup="jesb:bus">
+		<xsd:annotation><xsd:documentation xml:lang="en">A JMS-Bus is a specific instance of a bus using the JMS protocol.</xsd:documentation></xsd:annotation>
 		<xsd:complexType>
 			<xsd:complexContent>
 				<xsd:extension base="jesb:bus">
@@ -144,26 +230,38 @@
 			</xsd:complexContent>
 		</xsd:complexType>
 	</xsd:element>
-	<xsd:element name="jms-provider" substitutionGroup="jesb:provider">
+	<xsd:element name="jms-provider" substitutionGroup="jesb:provider">
+		<xsd:annotation><xsd:documentation xml:lang="en">A specific instance of a provider, providing JMS.</xsd:documentation></xsd:annotation>
 		<xsd:complexType>
 			<xsd:complexContent>
 				<xsd:extension base="jesb:provider">
-					<xsd:attribute name="connection-factory" use="required" type="xsd:string" />
-					<xsd:attribute name="jndi-context-factory" type="xsd:string" />
-					<xsd:attribute name="jndi-pkg-prefix" type="xsd:string" />
-					<xsd:attribute name="jndi-URL" use="required" type="xsd:anyURI" />
+					<xsd:attribute name="connection-factory" use="required" type="xsd:string">
+						<xsd:annotation><xsd:documentation xml:lang="en">The connection-factory used to lookup queues/topics in a naming directory (JNDI)</xsd:documentation></xsd:annotation>
+					</xsd:attribute>
+					<xsd:attribute name="jndi-context-factory" type="xsd:string">
+						<xsd:annotation><xsd:documentation xml:lang="en">The context factory class the JBossESB will use to do naming lookups.</xsd:documentation></xsd:annotation>
+					</xsd:attribute>
+					<xsd:attribute name="jndi-pkg-prefix" type="xsd:string">
+						<xsd:annotation><xsd:documentation xml:lang="en">The pkg-prefix which will be used to do naming lookups. It is left empty by default.</xsd:documentation></xsd:annotation>
+					</xsd:attribute>
+					<xsd:attribute name="jndi-URL" use="required" type="xsd:anyURI">
+						<xsd:annotation><xsd:documentation xml:lang="en">The URL used to do naming lookups.</xsd:documentation></xsd:annotation>
+					</xsd:attribute>
 				</xsd:extension>
 			</xsd:complexContent>
 		</xsd:complexType>
 	</xsd:element>
-	<xsd:element name="jms-listener" substitutionGroup="jesb:listener">
+	<xsd:element name="jms-listener" substitutionGroup="jesb:listener">
+		<xsd:annotation><xsd:documentation xml:lang="en">A specific listener using the jms protocol.</xsd:documentation></xsd:annotation>
 		<xsd:complexType>
 			<xsd:complexContent>
 				<xsd:extension base="jesb:listener">
 					<xsd:sequence>
 						<xsd:element ref="jesb:jms-message-filter" maxOccurs="1" minOccurs="0"/>
 					</xsd:sequence>
-					<xsd:attribute name="maxThreads" use="required" type="xsd:int" />
+					<xsd:attribute name="maxThreads" use="required" type="xsd:int">
+						<xsd:annotation><xsd:documentation xml:lang="en">The number of threads which will be started for this listener.</xsd:documentation></xsd:annotation>
+					</xsd:attribute>
 				</xsd:extension>
 			</xsd:complexContent>
 		</xsd:complexType>




More information about the jboss-svn-commits mailing list