| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260 | 
							- <?xml version="1.0" encoding="UTF-8"?>
 
- <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
 
-             targetNamespace="http://java.sun.com/xml/ns/javaee"
 
-             xmlns:javaee="http://java.sun.com/xml/ns/javaee"
 
-             xmlns:xsd="http://www.w3.org/2001/XMLSchema"
 
-             elementFormDefault="qualified"
 
-             attributeFormDefault="unqualified"
 
-             version="3.1">
 
-   <xsd:annotation>
 
-     <xsd:documentation>
 
-       $Id$
 
-       
 
-     </xsd:documentation>
 
-   </xsd:annotation>
 
-   <xsd:annotation>
 
-     <xsd:documentation>
 
-       DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
 
-       
 
-       Copyright 2003-2009 Sun Microsystems, Inc. All rights reserved.
 
-       
 
-       The contents of this file are subject to the terms of either the
 
-       GNU General Public License Version 2 only ("GPL") or the Common
 
-       Development and Distribution License("CDDL") (collectively, the
 
-       "License").  You may not use this file except in compliance with
 
-       the License. You can obtain a copy of the License at
 
-       https://glassfish.dev.java.net/public/CDDL+GPL.html or
 
-       glassfish/bootstrap/legal/LICENSE.txt.  See the License for the
 
-       specific language governing permissions and limitations under the
 
-       License.
 
-       
 
-       When distributing the software, include this License Header
 
-       Notice in each file and include the License file at
 
-       glassfish/bootstrap/legal/LICENSE.txt.  Sun designates this
 
-       particular file as subject to the "Classpath" exception as
 
-       provided by Sun in the GPL Version 2 section of the License file
 
-       that accompanied this code.  If applicable, add the following
 
-       below the License Header, with the fields enclosed by brackets []
 
-       replaced by your own identifying information:
 
-       "Portions Copyrighted [year] [name of copyright owner]"
 
-       
 
-       Contributor(s):
 
-       
 
-       If you wish your version of this file to be governed by only the
 
-       CDDL or only the GPL Version 2, indicate your decision by adding
 
-       "[Contributor] elects to include this software in this
 
-       distribution under the [CDDL or GPL Version 2] license."  If you
 
-       don't indicate a single choice of license, a recipient has the
 
-       option to distribute your version of this file under either the
 
-       CDDL, the GPL Version 2 or to extend the choice of license to its
 
-       licensees as provided above.  However, if you add GPL Version 2
 
-       code and therefore, elected the GPL Version 2 license, then the
 
-       option applies only if the new code is made subject to such
 
-       option by the copyright holder.
 
-       
 
-       
 
-       Portions Copyrighted 2009 Red Hat
 
-       
 
-       Red Hat elects to include this software in this
 
-       distribution under the GPL Version 2 license.
 
-     </xsd:documentation>
 
-   </xsd:annotation>
 
-   <xsd:annotation>
 
-     <xsd:documentation>
 
- <![CDATA[[
 
-       This is the XML Schema for the EJB 3.1 deployment descriptor.
 
-       
 
-       All EJB deployment descriptors must indicate
 
-       the schema by using the Java EE namespace:
 
-       
 
-       http://java.sun.com/xml/ns/javaee
 
-       
 
-       and by indicating the version of the schema by
 
-       using the version element as shown below:
 
-       
 
-       <ejb-jar xmlns="http://java.sun.com/xml/ns/javaee"
 
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 
-       xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
 
-       	  http://java.sun.com/xml/ns/javaee/ejb-jar_3_1.xsd"
 
-       version="3.1">
 
-       ...
 
-       </ejb-jar>
 
-       
 
-       The instance documents may indicate the published version of
 
-       the schema using the xsi:schemaLocation attribute for the
 
-       Java EE namespace with the following location:
 
-       
 
-       http://java.sun.com/xml/ns/javaee/ejb-jar_3_1.xsd
 
-       
 
- ]]>
 
-     </xsd:documentation>
 
-   </xsd:annotation>
 
-   <xsd:annotation>
 
-     <xsd:documentation>
 
-       The following conventions apply to all Java EE
 
-       deployment descriptor elements unless indicated otherwise.
 
-       
 
-       - In elements that specify a pathname to a file within the
 
-       same JAR file, relative filenames (i.e., those not
 
-       starting with "/") are considered relative to the root of
 
-       the JAR file's namespace.  Absolute filenames (i.e., those
 
-       starting with "/") also specify names in the root of the
 
-       JAR file's namespace.  In general, relative names are
 
-       preferred.  The exception is .war files where absolute
 
-       names are preferred for consistency with the Servlet API.
 
-       
 
-     </xsd:documentation>
 
-   </xsd:annotation>
 
-   <xsd:include schemaLocation="javaee_6.xsd"/>
 
- <!-- **************************************************** -->
 
-   <xsd:element name="ejb-jar"
 
-                type="javaee:ejb-jarType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         This is the root of the ejb-jar deployment descriptor.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:key name="ejb-name-key">
 
-       <xsd:annotation>
 
-         <xsd:documentation>
 
-           The ejb-name element contains the name of an enterprise
 
-           bean. The name must be unique within the ejb-jar or
 
-           .war file.
 
-           
 
-         </xsd:documentation>
 
-       </xsd:annotation>
 
-       <xsd:selector xpath="javaee:enterprise-beans/*"/>
 
-       <xsd:field xpath="javaee:ejb-name"/>
 
-     </xsd:key>
 
-     <xsd:keyref name="ejb-name-references"
 
-                 refer="javaee:ejb-name-key">
 
-       <xsd:annotation>
 
-         <xsd:documentation>
 
-           The keyref indicates the references from
 
-           relationship-role-source must be to a specific ejb-name
 
-           defined within the scope of enterprise-beans element. 
 
-           
 
-         </xsd:documentation>
 
-       </xsd:annotation>
 
-       <xsd:selector xpath=".//javaee:ejb-relationship-role/javaee:relationship-role-source"/>
 
-       <xsd:field xpath="javaee:ejb-name"/>
 
-     </xsd:keyref>
 
-     <xsd:key name="role-name-key">
 
-       <xsd:annotation>
 
-         <xsd:documentation>
 
-           A role-name-key is specified to allow the references
 
-           from the security-role-refs.
 
-           
 
-         </xsd:documentation>
 
-       </xsd:annotation>
 
-       <xsd:selector xpath="javaee:assembly-descriptor/javaee:security-role"/>
 
-       <xsd:field xpath="javaee:role-name"/>
 
-     </xsd:key>
 
-     <xsd:keyref name="role-name-references"
 
-                 refer="javaee:role-name-key">
 
-       <xsd:annotation>
 
-         <xsd:documentation>
 
-           The keyref indicates the references from
 
-           security-role-ref to a specified role-name.
 
-           
 
-         </xsd:documentation>
 
-       </xsd:annotation>
 
-       <xsd:selector xpath="javaee:enterprise-beans/*/javaee:security-role-ref"/>
 
-       <xsd:field xpath="javaee:role-link"/>
 
-     </xsd:keyref>
 
-   </xsd:element>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="access-timeoutType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The access-timeoutType represents the maximum amount of
 
-         time (in a given time unit) that the container should wait for
 
-         a concurrency lock before throwing a timeout exception to the
 
-         client.
 
-         
 
-         A timeout value of 0 means concurrent access is not permitted.
 
-         
 
-         A timeout value of -1 means wait indefinitely to acquire a lock.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="timeout"
 
-                    type="javaee:xsdIntegerType"/>
 
-       <xsd:element name="unit"
 
-                    type="javaee:time-unit-typeType"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="async-methodType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The async-methodType element specifies that a session
 
-         bean method has asynchronous invocation semantics.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="method-name"
 
-                    type="javaee:string"/>
 
-       <xsd:element name="method-params"
 
-                    type="javaee:method-paramsType"
 
-                    minOccurs="0"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="activation-configType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The activation-configType defines information about the
 
-         expected configuration properties of the message-driven bean
 
-         in its operational environment. This may include information
 
-         about message acknowledgement, message selector, expected
 
-         destination type, etc.
 
-         
 
-         The configuration information is expressed in terms of
 
-         name/value configuration properties.
 
-         
 
-         The properties that are recognized for a particular
 
-         message-driven bean are determined by the messaging type.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="description"
 
-                    type="javaee:descriptionType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="activation-config-property"
 
-                    type="javaee:activation-config-propertyType"
 
-                    maxOccurs="unbounded"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="activation-config-propertyType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The activation-config-propertyType contains a name/value
 
-         configuration property pair for a message-driven bean.
 
-         
 
-         The properties that are recognized for a particular
 
-         message-driven bean are determined by the messaging type.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="activation-config-property-name"
 
-                    type="javaee:xsdStringType">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The activation-config-property-name element contains
 
-             the name for an activation configuration property of
 
-             a message-driven bean.
 
-             
 
-             For JMS message-driven beans, the following property
 
-             names are recognized: acknowledgeMode,
 
-             messageSelector, destinationType, subscriptionDurability
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-       <xsd:element name="activation-config-property-value"
 
-                    type="javaee:xsdStringType">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The activation-config-property-value element
 
-             contains the value for an activation configuration
 
-             property of a message-driven bean.
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="around-invokeType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The around-invoke type specifies a method on a
 
-         class to be called during the around invoke portion of an 
 
-         ejb invocation.  Note that each class may have only one
 
-         around invoke method and that the method may not be
 
-         overloaded.
 
-         
 
-         If the class element is missing then
 
-         the class defining the callback is assumed to be the
 
-         interceptor class or component class in scope at the
 
-         location in the descriptor in which the around invoke
 
-         definition appears.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="class"
 
-                    type="javaee:fully-qualified-classType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="method-name"
 
-                    type="javaee:java-identifierType"/>
 
-     </xsd:sequence>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="around-timeoutType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The around-timeout type specifies a method on a
 
-         class to be called during the around-timeout portion of
 
-         a timer timeout callback.  Note that each class may have 
 
-         only one around-timeout method and that the method may not 
 
-         be overloaded.
 
-         
 
-         If the class element is missing then
 
-         the class defining the callback is assumed to be the
 
-         interceptor class or component class in scope at the
 
-         location in the descriptor in which the around-timeout
 
-         definition appears.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="class"
 
-                    type="javaee:fully-qualified-classType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="method-name"
 
-                    type="javaee:java-identifierType"/>
 
-     </xsd:sequence>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="assembly-descriptorType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The assembly-descriptorType defines
 
-         application-assembly information.
 
-         
 
-         The application-assembly information consists of the
 
-         following parts: the definition of security roles, the
 
-         definition of method permissions, the definition of
 
-         transaction attributes for enterprise beans with
 
-         container-managed transaction demarcation, the definition
 
-         of interceptor bindings, a list of
 
-         methods to be excluded from being invoked, and a list of
 
-         exception types that should be treated as application exceptions.
 
-         
 
-         All the parts are optional in the sense that they are
 
-         omitted if the lists represented by them are empty.
 
-         
 
-         Providing an assembly-descriptor in the deployment
 
-         descriptor is optional for the ejb-jar or .war file producer.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="security-role"
 
-                    type="javaee:security-roleType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="method-permission"
 
-                    type="javaee:method-permissionType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="container-transaction"
 
-                    type="javaee:container-transactionType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="interceptor-binding"
 
-                    type="javaee:interceptor-bindingType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="message-destination"
 
-                    type="javaee:message-destinationType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="exclude-list"
 
-                    type="javaee:exclude-listType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="application-exception"
 
-                    type="javaee:application-exceptionType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="cmp-fieldType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The cmp-fieldType describes a container-managed field. The
 
-         cmp-fieldType contains an optional description of the field,
 
-         and the name of the field.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="description"
 
-                    type="javaee:descriptionType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="field-name"
 
-                    type="javaee:java-identifierType">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The field-name element specifies the name of a
 
-             container managed field.
 
-             
 
-             The name of the cmp-field of an entity bean with
 
-             cmp-version 2.x must begin with a lowercase
 
-             letter. This field is accessed by methods whose
 
-             names consists of the name of the field specified by
 
-             field-name in which the first letter is uppercased,
 
-             prefixed by "get" or "set".
 
-             
 
-             The name of the cmp-field of an entity bean with
 
-             cmp-version 1.x must denote a public field of the
 
-             enterprise bean class or one of its superclasses.
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="cmp-versionType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The cmp-versionType specifies the version of an entity bean
 
-         with container-managed persistence. It is used by
 
-         cmp-version elements.
 
-         
 
-         The value must be one of the two following:
 
-         
 
-         1.x
 
-         2.x
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:simpleContent>
 
-       <xsd:restriction base="javaee:string">
 
-         <xsd:enumeration value="1.x"/>
 
-         <xsd:enumeration value="2.x"/>
 
-       </xsd:restriction>
 
-     </xsd:simpleContent>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="cmr-fieldType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The cmr-fieldType describes the bean provider's view of
 
-         a relationship. It consists of an optional description, and
 
-         the name and the class type of a field in the source of a
 
-         role of a relationship. The cmr-field-name element
 
-         corresponds to the name used for the get and set accessor
 
-         methods for the relationship. The cmr-field-type element is
 
-         used only for collection-valued cmr-fields. It specifies the
 
-         type of the collection that is used.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="description"
 
-                    type="javaee:descriptionType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="cmr-field-name"
 
-                    type="javaee:string">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The cmr-field-name element specifies the name of a
 
-             logical relationship field in the entity bean
 
-             class. The name of the cmr-field must begin with a
 
-             lowercase letter. This field is accessed by methods
 
-             whose names consist of the name of the field
 
-             specified by cmr-field-name in which the first
 
-             letter is uppercased, prefixed by "get" or "set".
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-       <xsd:element name="cmr-field-type"
 
-                    type="javaee:cmr-field-typeType"
 
-                    minOccurs="0"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="cmr-field-typeType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The cmr-field-type element specifies the class of a
 
-         collection-valued logical relationship field in the entity
 
-         bean class. The value of an element using cmr-field-typeType
 
-         must be either: java.util.Collection or java.util.Set.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:simpleContent>
 
-       <xsd:restriction base="javaee:string">
 
-         <xsd:enumeration value="java.util.Collection"/>
 
-         <xsd:enumeration value="java.util.Set"/>
 
-       </xsd:restriction>
 
-     </xsd:simpleContent>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="concurrency-management-typeType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The concurrency-management-typeType specifies the way concurrency
 
-         is managed for a singleton or stateful session bean.  
 
-         
 
-         The concurrency management type must be one of the following:
 
-         
 
-         Bean
 
-         Container
 
-         
 
-         Bean managed concurrency can only be specified for a singleton bean.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:simpleContent>
 
-       <xsd:restriction base="javaee:string">
 
-         <xsd:enumeration value="Bean"/>
 
-         <xsd:enumeration value="Container"/>
 
-       </xsd:restriction>
 
-     </xsd:simpleContent>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="concurrent-lock-typeType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The concurrent-lock-typeType specifies how the container must
 
-         manage concurrent access to a method of a Singleton bean 
 
-         with container-managed concurrency.
 
-         
 
-         The container managed concurrency lock type must be one 
 
-         of the following :
 
-         
 
-         Read
 
-         Write
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:simpleContent>
 
-       <xsd:restriction base="javaee:string">
 
-         <xsd:enumeration value="Read"/>
 
-         <xsd:enumeration value="Write"/>
 
-       </xsd:restriction>
 
-     </xsd:simpleContent>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="concurrent-methodType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The concurrent-methodType specifies information about a method
 
-         of a bean with container managed concurrency.
 
-         
 
-         The optional lock element specifies the kind of concurrency 
 
-         lock asssociated with the method.
 
-         
 
-         The optional access-timeout element specifies the amount of
 
-         time (in a given time unit) the container should wait for a
 
-         concurrency lock before throwing an exception to the client.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="method"
 
-                    type="javaee:named-methodType"/>
 
-       <xsd:element name="lock"
 
-                    type="javaee:concurrent-lock-typeType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="access-timeout"
 
-                    type="javaee:access-timeoutType"
 
-                    minOccurs="0"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="container-transactionType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The container-transactionType specifies how the container
 
-         must manage transaction scopes for the enterprise bean's
 
-         method invocations. It defines an optional description, a
 
-         list of method elements, and a transaction attribute. The
 
-         transaction attribute is to be applied to all the specified
 
-         methods.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="description"
 
-                    type="javaee:descriptionType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="method"
 
-                    type="javaee:methodType"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="trans-attribute"
 
-                    type="javaee:trans-attributeType"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="depends-onType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The depends-onType is used to express initialization 
 
-         ordering dependencies between Singleton components.
 
-         The depends-onType specifies the names of one or more
 
-         Singleton beans in the same application as the referring
 
-         Singleton, each of which must be initialized before
 
-         the referring bean.  
 
-         
 
-         Each dependent bean is expressed using ejb-link syntax.
 
-         The order in which dependent beans are initialized at 
 
-         runtime is not guaranteed to match the order in which
 
-         they are listed.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="ejb-name"
 
-                    type="javaee:ejb-linkType"
 
-                    minOccurs="1"
 
-                    maxOccurs="unbounded"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="ejb-classType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
- <![CDATA[[
 
-         The ejb-classType contains the fully-qualified name of the
 
-         enterprise bean's class. It is used by ejb-class elements. 
 
-         
 
-         Example:
 
-         
 
-         <ejb-class>com.wombat.empl.EmployeeServiceBean</ejb-class>
 
-         
 
- ]]>
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:simpleContent>
 
-       <xsd:restriction base="javaee:fully-qualified-classType"/>
 
-     </xsd:simpleContent>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="ejb-jarType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The ejb-jarType defines the root element of the EJB
 
-         deployment descriptor. It contains
 
-         
 
-         - an optional description of the ejb-jar file
 
-         - an optional display name
 
-         - an optional icon that contains a small and a large
 
-         icon file name
 
-         - an optional module name. Only applicable to
 
-         stand-alone ejb-jars or ejb-jars packaged in an ear.
 
-         Ignored if specified for an ejb-jar.xml within a .war.
 
-         In that case, standard .war module-name rules apply.
 
-         - structural information about all included
 
-         enterprise beans that is not specified through
 
-         annotations
 
-         - structural information about interceptor classes
 
-         - a descriptor for container managed relationships, 
 
-         if any. 
 
-         - an optional application-assembly descriptor
 
-         - an optional name of an ejb-client-jar file for the 
 
-         ejb-jar.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="module-name"
 
-                    type="javaee:string"
 
-                    minOccurs="0"/>
 
-       <xsd:group ref="javaee:descriptionGroup"/>
 
-       <xsd:element name="enterprise-beans"
 
-                    type="javaee:enterprise-beansType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="interceptors"
 
-                    type="javaee:interceptorsType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="relationships"
 
-                    type="javaee:relationshipsType"
 
-                    minOccurs="0">
 
-         <xsd:unique name="relationship-name-uniqueness">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The ejb-relation-name contains the name of a
 
-               relation. The name must be unique within
 
-               relationships.
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-           <xsd:selector xpath="javaee:ejb-relation"/>
 
-           <xsd:field xpath="javaee:ejb-relation-name"/>
 
-         </xsd:unique>
 
-       </xsd:element>
 
-       <xsd:element name="assembly-descriptor"
 
-                    type="javaee:assembly-descriptorType"
 
-                    minOccurs="0">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             Providing an assembly-descriptor in the deployment
 
-             descriptor is optional for the ejb-jar or .war file
 
-             producer.
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-       <xsd:element name="ejb-client-jar"
 
-                    type="javaee:pathType"
 
-                    minOccurs="0">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
- <![CDATA[[
 
-             The optional ejb-client-jar element specifies a JAR
 
-             file that contains the class files necessary for a
 
-             client program to access the
 
-             enterprise beans in the ejb-jar file.
 
-             
 
-             Example:
 
-             
 
-             	  <ejb-client-jar>employee_service_client.jar
 
-             	  </ejb-client-jar>
 
-             
 
- ]]>
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="version"
 
-                    type="javaee:dewey-versionType"
 
-                    fixed="3.1"
 
-                    use="required">
 
-       <xsd:annotation>
 
-         <xsd:documentation>
 
-           The version specifies the version of the
 
-           EJB specification that the instance document must 
 
-           comply with. This information enables deployment tools
 
-           to validate a particular EJB Deployment
 
-           Descriptor with respect to a specific version of the EJB
 
-           schema. 
 
-           
 
-         </xsd:documentation>
 
-       </xsd:annotation>
 
-     </xsd:attribute>
 
-     <xsd:attribute name="metadata-complete"
 
-                    type="xsd:boolean">
 
-       <xsd:annotation>
 
-         <xsd:documentation>
 
-           The metadata-complete attribute defines whether this
 
-           deployment descriptor and other related deployment
 
-           descriptors for this module (e.g., web service
 
-           descriptors) are complete, or whether the class
 
-           files available to this module and packaged with
 
-           this application should be examined for annotations
 
-           that specify deployment information.
 
-           
 
-           If metadata-complete is set to "true", the deployment
 
-           tool must ignore any annotations that specify deployment
 
-           information, which might be present in the class files
 
-           of the application.
 
-           
 
-           If metadata-complete is not specified or is set to
 
-           "false", the deployment tool must examine the class
 
-           files of the application for annotations, as
 
-           specified by the specifications.
 
-           
 
-         </xsd:documentation>
 
-       </xsd:annotation>
 
-     </xsd:attribute>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="ejb-nameType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
- <![CDATA[[
 
-         The ejb-nameType specifies an enterprise bean's name. It is
 
-         used by ejb-name elements. This name is assigned by the
 
-         file producer to name the enterprise bean in the
 
-         ejb-jar or .war file's deployment descriptor. The name must be
 
-         unique among the names of the enterprise beans in the same
 
-         ejb-jar or .war file.
 
-         
 
-         There is no architected relationship between the used
 
-         ejb-name in the deployment descriptor and the JNDI name that
 
-         the Deployer will assign to the enterprise bean's home.
 
-         
 
-         The name for an entity bean must conform to the lexical
 
-         rules for an NMTOKEN.
 
-         
 
-         Example:
 
-         
 
-         <ejb-name>EmployeeService</ejb-name>
 
-         
 
- ]]>
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:simpleContent>
 
-       <xsd:restriction base="javaee:xsdNMTOKENType"/>
 
-     </xsd:simpleContent>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="ejb-relationType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The ejb-relationType describes a relationship between two
 
-         entity beans with container-managed persistence.  It is used
 
-         by ejb-relation elements. It contains a description; an
 
-         optional ejb-relation-name element; and exactly two
 
-         relationship role declarations, defined by the
 
-         ejb-relationship-role elements. The name of the
 
-         relationship, if specified, is unique within the ejb-jar
 
-         file.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="description"
 
-                    type="javaee:descriptionType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="ejb-relation-name"
 
-                    type="javaee:string"
 
-                    minOccurs="0">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The ejb-relation-name element provides a unique name
 
-             within the ejb-jar file for a relationship.
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-       <xsd:element name="ejb-relationship-role"
 
-                    type="javaee:ejb-relationship-roleType"/>
 
-       <xsd:element name="ejb-relationship-role"
 
-                    type="javaee:ejb-relationship-roleType"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="ejb-relationship-roleType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
- <![CDATA[[
 
-         The ejb-relationship-roleType describes a role within a
 
-         relationship. There are two roles in each relationship.
 
-         
 
-         The ejb-relationship-roleType contains an optional
 
-         description; an optional name for the relationship role; a
 
-         specification of the multiplicity of the role; an optional
 
-         specification of cascade-delete functionality for the role;
 
-         the role source; and a declaration of the cmr-field, if any,
 
-         by means of which the other side of the relationship is
 
-         accessed from the perspective of the role source.
 
-         
 
-         The multiplicity and role-source element are mandatory.
 
-         
 
-         The relationship-role-source element designates an entity
 
-         bean by means of an ejb-name element. For bidirectional
 
-         relationships, both roles of a relationship must declare a
 
-         relationship-role-source element that specifies a cmr-field
 
-         in terms of which the relationship is accessed. The lack of
 
-         a cmr-field element in an ejb-relationship-role specifies
 
-         that the relationship is unidirectional in navigability and
 
-         the entity bean that participates in the relationship is
 
-         "not aware" of the relationship.
 
-         
 
-         Example:
 
-         
 
-         <ejb-relation>
 
-         <ejb-relation-name>Product-LineItem</ejb-relation-name>
 
-         <ejb-relationship-role>
 
-         	  <ejb-relationship-role-name>product-has-lineitems
 
-         	  </ejb-relationship-role-name>
 
-         	  <multiplicity>One</multiplicity>
 
-         	  <relationship-role-source>
 
-         	  <ejb-name>ProductEJB</ejb-name>
 
-         	  </relationship-role-source>
 
-         </ejb-relationship-role>
 
-         </ejb-relation>
 
-         
 
- ]]>
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="description"
 
-                    type="javaee:descriptionType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="ejb-relationship-role-name"
 
-                    type="javaee:string"
 
-                    minOccurs="0">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The ejb-relationship-role-name element defines a
 
-             name for a role that is unique within an
 
-             ejb-relation. Different relationships can use the
 
-             same name for a role.
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-       <xsd:element name="multiplicity"
 
-                    type="javaee:multiplicityType"/>
 
-       <xsd:element name="cascade-delete"
 
-                    type="javaee:emptyType"
 
-                    minOccurs="0">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The cascade-delete element specifies that, within a
 
-             particular relationship, the lifetime of one or more
 
-             entity beans is dependent upon the lifetime of
 
-             another entity bean. The cascade-delete element can
 
-             only be specified for an ejb-relationship-role
 
-             element contained in an ejb-relation element in
 
-             which the other ejb-relationship-role
 
-             element specifies a multiplicity of One.
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-       <xsd:element name="relationship-role-source"
 
-                    type="javaee:relationship-role-sourceType"/>
 
-       <xsd:element name="cmr-field"
 
-                    type="javaee:cmr-fieldType"
 
-                    minOccurs="0"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="enterprise-beansType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The enterprise-beansType declares one or more enterprise
 
-         beans. Each bean can be a session, entity or message-driven
 
-         bean.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:choice maxOccurs="unbounded">
 
-       <xsd:element name="session"
 
-                    type="javaee:session-beanType">
 
-         <xsd:unique name="session-ejb-local-ref-name-uniqueness">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The ejb-ref-name element contains the name of
 
-               an EJB reference. The EJB reference is an entry in
 
-               the component's environment and is relative to the
 
-               java:comp/env context.  The name must be unique within
 
-               the component.
 
-               
 
-               It is recommended that name be prefixed with "ejb/".
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-           <xsd:selector xpath="javaee:ejb-local-ref"/>
 
-           <xsd:field xpath="javaee:ejb-ref-name"/>
 
-         </xsd:unique>
 
-         <xsd:unique name="session-ejb-ref-name-uniqueness">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The ejb-ref-name element contains the name of an EJB
 
-               reference. The EJB reference is an entry in the
 
-               component's environment and is relative to the
 
-               java:comp/env context. The name must be unique
 
-               within the component.
 
-               
 
-               It is recommended that name is prefixed with "ejb/".
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-           <xsd:selector xpath="javaee:ejb-ref"/>
 
-           <xsd:field xpath="javaee:ejb-ref-name"/>
 
-         </xsd:unique>
 
-         <xsd:unique name="session-resource-env-ref-uniqueness">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The resource-env-ref-name element specifies the name
 
-               of a resource environment reference; its value is
 
-               the environment entry name used in the component
 
-               code. The name is a JNDI name relative to the
 
-               java:comp/env context and must be unique within an
 
-               component.
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-           <xsd:selector xpath="javaee:resource-env-ref"/>
 
-           <xsd:field xpath="javaee:resource-env-ref-name"/>
 
-         </xsd:unique>
 
-         <xsd:unique name="session-message-destination-ref-uniqueness">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The message-destination-ref-name element specifies the name
 
-               of a message destination reference; its value is
 
-               the message destination reference name used in the component
 
-               code. The name is a JNDI name relative to the
 
-               java:comp/env context and must be unique within an
 
-               component.
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-           <xsd:selector xpath="javaee:message-destination-ref"/>
 
-           <xsd:field xpath="javaee:message-destination-ref-name"/>
 
-         </xsd:unique>
 
-         <xsd:unique name="session-res-ref-name-uniqueness">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The res-ref-name element specifies the name of a
 
-               resource manager connection factory reference.  The name
 
-               is a JNDI name relative to the java:comp/env context.
 
-               The name must be unique within an component.
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-           <xsd:selector xpath="javaee:resource-ref"/>
 
-           <xsd:field xpath="javaee:res-ref-name"/>
 
-         </xsd:unique>
 
-         <xsd:unique name="session-env-entry-name-uniqueness">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The env-entry-name element contains the name of a
 
-               component's environment entry.  The name is a JNDI
 
-               name relative to the java:comp/env context.  The
 
-               name must be unique within an component.
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-           <xsd:selector xpath="javaee:env-entry"/>
 
-           <xsd:field xpath="javaee:env-entry-name"/>
 
-         </xsd:unique>
 
-       </xsd:element>
 
-       <xsd:element name="entity"
 
-                    type="javaee:entity-beanType">
 
-         <xsd:unique name="entity-ejb-local-ref-name-uniqueness">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The ejb-ref-name element contains the name of
 
-               an EJB reference. The EJB reference is an entry in
 
-               the component's environment and is relative to the
 
-               java:comp/env context.  The name must be unique within
 
-               the component.
 
-               
 
-               It is recommended that name be prefixed with "ejb/".
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-           <xsd:selector xpath="javaee:ejb-local-ref"/>
 
-           <xsd:field xpath="javaee:ejb-ref-name"/>
 
-         </xsd:unique>
 
-         <xsd:unique name="entity-ejb-ref-name-uniqueness">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The ejb-ref-name element contains the name of an EJB
 
-               reference. The EJB reference is an entry in the
 
-               component's environment and is relative to the
 
-               java:comp/env context. The name must be unique
 
-               within the component.
 
-               
 
-               It is recommended that name is prefixed with "ejb/".
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-           <xsd:selector xpath="javaee:ejb-ref"/>
 
-           <xsd:field xpath="javaee:ejb-ref-name"/>
 
-         </xsd:unique>
 
-         <xsd:unique name="entity-resource-env-ref-uniqueness">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The resource-env-ref-name element specifies the name
 
-               of a resource environment reference; its value is
 
-               the environment entry name used in the component
 
-               code. The name is a JNDI name relative to the
 
-               java:comp/env context and must be unique within an
 
-               component.
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-           <xsd:selector xpath="javaee:resource-env-ref"/>
 
-           <xsd:field xpath="javaee:resource-env-ref-name"/>
 
-         </xsd:unique>
 
-         <xsd:unique name="entity-message-destination-ref-uniqueness">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The message-destination-ref-name element specifies the name
 
-               of a message destination reference; its value is
 
-               the message destination reference name used in the component
 
-               code. The name is a JNDI name relative to the
 
-               java:comp/env context and must be unique within an
 
-               component.
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-           <xsd:selector xpath="javaee:message-destination-ref"/>
 
-           <xsd:field xpath="javaee:message-destination-ref-name"/>
 
-         </xsd:unique>
 
-         <xsd:unique name="entity-res-ref-name-uniqueness">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The res-ref-name element specifies the name of a
 
-               resource manager connection factory reference.  The name
 
-               is a JNDI name relative to the java:comp/env context.
 
-               The name must be unique within an component.
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-           <xsd:selector xpath="javaee:resource-ref"/>
 
-           <xsd:field xpath="javaee:res-ref-name"/>
 
-         </xsd:unique>
 
-         <xsd:unique name="entity-env-entry-name-uniqueness">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The env-entry-name element contains the name of a
 
-               component's environment entry.  The name is a JNDI
 
-               name relative to the java:comp/env context.  The
 
-               name must be unique within an component.
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-           <xsd:selector xpath="javaee:env-entry"/>
 
-           <xsd:field xpath="javaee:env-entry-name"/>
 
-         </xsd:unique>
 
-       </xsd:element>
 
-       <xsd:element name="message-driven"
 
-                    type="javaee:message-driven-beanType">
 
-         <xsd:unique name="messaged-ejb-local-ref-name-uniqueness">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The ejb-ref-name element contains the name of
 
-               an EJB reference. The EJB reference is an entry in
 
-               the component's environment and is relative to the
 
-               java:comp/env context.  The name must be unique within
 
-               the component.
 
-               
 
-               It is recommended that name be prefixed with "ejb/".
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-           <xsd:selector xpath="javaee:ejb-local-ref"/>
 
-           <xsd:field xpath="javaee:ejb-ref-name"/>
 
-         </xsd:unique>
 
-         <xsd:unique name="messaged-ejb-ref-name-uniqueness">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The ejb-ref-name element contains the name of an EJB
 
-               reference. The EJB reference is an entry in the
 
-               component's environment and is relative to the
 
-               java:comp/env context. The name must be unique
 
-               within the component.
 
-               
 
-               It is recommended that name is prefixed with "ejb/".
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-           <xsd:selector xpath="javaee:ejb-ref"/>
 
-           <xsd:field xpath="javaee:ejb-ref-name"/>
 
-         </xsd:unique>
 
-         <xsd:unique name="messaged-resource-env-ref-uniqueness">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The resource-env-ref-name element specifies the name
 
-               of a resource environment reference; its value is
 
-               the environment entry name used in the component
 
-               code. The name is a JNDI name relative to the
 
-               java:comp/env context and must be unique within an
 
-               component.
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-           <xsd:selector xpath="javaee:resource-env-ref"/>
 
-           <xsd:field xpath="javaee:resource-env-ref-name"/>
 
-         </xsd:unique>
 
-         <xsd:unique name="messaged-message-destination-ref-uniqueness">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The message-destination-ref-name element specifies the name
 
-               of a message destination reference; its value is
 
-               the message destination reference name used in the component
 
-               code. The name is a JNDI name relative to the
 
-               java:comp/env context and must be unique within an
 
-               component.
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-           <xsd:selector xpath="javaee:message-destination-ref"/>
 
-           <xsd:field xpath="javaee:message-destination-ref-name"/>
 
-         </xsd:unique>
 
-         <xsd:unique name="messaged-res-ref-name-uniqueness">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The res-ref-name element specifies the name of a
 
-               resource manager connection factory reference.  The name
 
-               is a JNDI name relative to the java:comp/env context.
 
-               The name must be unique within an component.
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-           <xsd:selector xpath="javaee:resource-ref"/>
 
-           <xsd:field xpath="javaee:res-ref-name"/>
 
-         </xsd:unique>
 
-         <xsd:unique name="messaged-env-entry-name-uniqueness">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The env-entry-name element contains the name of a
 
-               component's environment entry.  The name is a JNDI
 
-               name relative to the java:comp/env context.  The
 
-               name must be unique within an component.
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-           <xsd:selector xpath="javaee:env-entry"/>
 
-           <xsd:field xpath="javaee:env-entry-name"/>
 
-         </xsd:unique>
 
-       </xsd:element>
 
-     </xsd:choice>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="entity-beanType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The entity-beanType declares an entity bean. The declaration
 
-         consists of:
 
-         
 
-         - an optional description
 
-         - an optional display name
 
-         - an optional icon element that contains a small and a large 
 
-         icon file name
 
-         - a unique name assigned to the enterprise bean
 
-         in the deployment descriptor
 
-         - an optional mapped-name element that can be used to provide
 
-         vendor-specific deployment information such as the physical
 
-         jndi-name of the entity bean's remote home interface. This 
 
-         element is not required to be supported by all implementations.
 
-         Any use of this element is non-portable.
 
-         - the names of the entity bean's remote home 
 
-         and remote interfaces, if any
 
-         - the names of the entity bean's local home and local
 
-         interfaces, if any
 
-         - the entity bean's implementation class
 
-         - the optional entity bean's persistence management type. If 
 
-         this element is not specified it is defaulted to Container.
 
-         - the entity bean's primary key class name
 
-         - an indication of the entity bean's reentrancy
 
-         - an optional specification of the 
 
-         entity bean's cmp-version
 
-         - an optional specification of the entity bean's
 
-         abstract schema name
 
-         - an optional list of container-managed fields
 
-         - an optional specification of the primary key 
 
-         field
 
-         - an optional declaration of the bean's environment 
 
-         entries
 
-         - an optional declaration of the bean's EJB 
 
-         references
 
-         - an optional declaration of the bean's local 
 
-         EJB references
 
-         - an optional declaration of the bean's web 
 
-         service references
 
-         - an optional declaration of the security role 
 
-         references
 
-         - an optional declaration of the security identity
 
-         to be used for the execution of the bean's methods
 
-         - an optional declaration of the bean's 
 
-         resource manager connection factory references
 
-         - an optional declaration of the bean's
 
-         resource environment references
 
-         - an optional declaration of the bean's message 
 
-         destination references
 
-         - an optional set of query declarations
 
-         for finder and select methods for an entity
 
-         bean with cmp-version 2.x.
 
-         
 
-         The optional abstract-schema-name element must be specified
 
-         for an entity bean with container-managed persistence and
 
-         cmp-version 2.x.
 
-         
 
-         The optional primkey-field may be present in the descriptor
 
-         if the entity's persistence-type is Container.
 
-         
 
-         The optional cmp-version element may be present in the
 
-         descriptor if the entity's persistence-type is Container. If
 
-         the persistence-type is Container and the cmp-version
 
-         element is not specified, its value defaults to 2.x.
 
-         
 
-         The optional home and remote elements must be specified if
 
-         the entity bean cmp-version is 1.x.
 
-         
 
-         The optional home and remote elements must be specified if
 
-         the entity bean has a remote home and remote interface.
 
-         
 
-         The optional local-home and local elements must be specified
 
-         if the entity bean has a local home and local interface.
 
-         
 
-         Either both the local-home and the local elements or both
 
-         the home and the remote elements must be specified.
 
-         
 
-         The optional query elements must be present if the
 
-         persistence-type is Container and the cmp-version is 2.x and
 
-         query methods other than findByPrimaryKey have been defined
 
-         for the entity bean.
 
-         
 
-         The other elements that are optional are "optional" in the
 
-         sense that they are omitted if the lists represented by them
 
-         are empty.
 
-         
 
-         At least one cmp-field element must be present in the
 
-         descriptor if the entity's persistence-type is Container and
 
-         the cmp-version is 1.x, and none must not be present if the
 
-         entity's persistence-type is Bean.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:group ref="javaee:descriptionGroup"/>
 
-       <xsd:element name="ejb-name"
 
-                    type="javaee:ejb-nameType"/>
 
-       <xsd:element name="mapped-name"
 
-                    type="javaee:xsdStringType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="home"
 
-                    type="javaee:homeType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="remote"
 
-                    type="javaee:remoteType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="local-home"
 
-                    type="javaee:local-homeType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="local"
 
-                    type="javaee:localType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="ejb-class"
 
-                    type="javaee:ejb-classType"/>
 
-       <xsd:element name="persistence-type"
 
-                    type="javaee:persistence-typeType"/>
 
-       <xsd:element name="prim-key-class"
 
-                    type="javaee:fully-qualified-classType">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The prim-key-class element contains the
 
-             fully-qualified name of an
 
-             entity bean's primary key class.
 
-             
 
-             If the definition of the primary key class is
 
-             deferred to deployment time, the prim-key-class 
 
-             element should specify java.lang.Object.
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-       <xsd:element name="reentrant"
 
-                    type="javaee:true-falseType">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The reentrant element specifies whether an entity
 
-             bean is reentrant or not.
 
-             
 
-             The reentrant element must be one of the two
 
-             following: true or false
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-       <xsd:element name="cmp-version"
 
-                    type="javaee:cmp-versionType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="abstract-schema-name"
 
-                    type="javaee:java-identifierType"
 
-                    minOccurs="0">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The abstract-schema-name element specifies the name
 
-             of the abstract schema type of an entity bean with 
 
-             cmp-version 2.x. It is used in EJB QL queries. 
 
-             
 
-             For example, the abstract-schema-name for an entity 
 
-             bean whose local interface is 
 
-             com.acme.commerce.Order might be Order. 
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-       <xsd:element name="cmp-field"
 
-                    type="javaee:cmp-fieldType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="primkey-field"
 
-                    type="javaee:string"
 
-                    minOccurs="0">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The primkey-field element is used to specify the
 
-             name of the primary key field for an entity with
 
-             container-managed persistence.
 
-             
 
-             The primkey-field must be one of the fields declared
 
-             in the cmp-field element, and the type of the field
 
-             must be the same as the primary key type.
 
-             
 
-             The primkey-field element is not used if the primary
 
-             key maps to multiple container-managed fields
 
-             (i.e. the key is a compound key). In this case, the
 
-             fields of the primary key class must be public, and
 
-             their names must correspond to the field names of
 
-             the entity bean class that comprise the key.
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-       <xsd:group ref="javaee:jndiEnvironmentRefsGroup"/>
 
-       <xsd:element name="security-role-ref"
 
-                    type="javaee:security-role-refType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="security-identity"
 
-                    type="javaee:security-identityType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="query"
 
-                    type="javaee:queryType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="exclude-listType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The exclude-listType specifies one or more methods which
 
-         the Assembler marks to be uncallable.
 
-         
 
-         If the method permission relation contains methods that are
 
-         in the exclude list, the Deployer should consider those
 
-         methods to be uncallable.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="description"
 
-                    type="javaee:descriptionType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="method"
 
-                    type="javaee:methodType"
 
-                    maxOccurs="unbounded"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="application-exceptionType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The application-exceptionType declares an application
 
-         exception. The declaration consists of:
 
-         
 
-         - the exception class. When the container receives
 
-         an exception of this type, it is required to 
 
-         forward this exception as an applcation exception 
 
-         to the client regardless of whether it is a checked
 
-         or unchecked exception.
 
-         - an optional rollback element. If this element is 
 
-         set to true, the container must rollback the current 
 
-         transaction before forwarding the exception to the
 
-         client.  If not specified, it defaults to false.
 
-         - an optional inherited element. If this element is 
 
-         set to true, subclasses of the exception class type
 
-         are also automatically considered application 
 
-         exceptions (unless overriden at a lower level).
 
-         If set to false, only the exception class type is
 
-         considered an application-exception, not its
 
-         exception subclasses. If not specified, this
 
-         value defaults to true.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="exception-class"
 
-                    type="javaee:fully-qualified-classType"/>
 
-       <xsd:element name="rollback"
 
-                    type="javaee:true-falseType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="inherited"
 
-                    type="javaee:true-falseType"
 
-                    minOccurs="0"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="interceptorsType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The interceptorsType element declares one or more interceptor
 
-         classes used by components within this ejb-jar or .war.  The declaration
 
-         consists of :
 
-         
 
-         - An optional description.
 
-         - One or more interceptor elements.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="description"
 
-                    type="javaee:descriptionType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="interceptor"
 
-                    type="javaee:interceptorType"
 
-                    maxOccurs="unbounded"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="interceptorType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The interceptorType element declares information about a single
 
-         interceptor class.  It consists of :
 
-         
 
-         - An optional description.
 
-         - The fully-qualified name of the interceptor class.
 
-         - An optional list of around invoke methods declared on the
 
-         interceptor class and/or its super-classes.
 
-         - An optional list of around timeout methods declared on the
 
-         interceptor class and/or its super-classes.
 
-         - An optional list environment dependencies for the interceptor
 
-         class and/or its super-classes.
 
-         - An optional list of post-activate methods declared on the
 
-         interceptor class and/or its super-classes.
 
-         - An optional list of pre-passivate methods declared on the
 
-         interceptor class and/or its super-classes.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="description"
 
-                    type="javaee:descriptionType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="interceptor-class"
 
-                    type="javaee:fully-qualified-classType"/>
 
-       <xsd:element name="around-invoke"
 
-                    type="javaee:around-invokeType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="around-timeout"
 
-                    type="javaee:around-timeoutType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:group ref="javaee:jndiEnvironmentRefsGroup"/>
 
-       <xsd:element name="post-activate"
 
-                    type="javaee:lifecycle-callbackType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="pre-passivate"
 
-                    type="javaee:lifecycle-callbackType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="interceptor-bindingType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
- <![CDATA[[
 
-         The interceptor-bindingType element describes the binding of
 
-         interceptor classes to beans within the ejb-jar or .war.
 
-         It consists of :
 
-         
 
-         - An optional description.
 
-         - The name of an ejb within the module or the wildcard value "*",
 
-         which is used to define interceptors that are bound to all
 
-         beans in the ejb-jar or .war.
 
-         - A list of interceptor classes that are bound to the contents of
 
-         the ejb-name element or a specification of the total ordering
 
-         over the interceptors defined for the given level and above.
 
-         - An optional exclude-default-interceptors element.  If set to true,
 
-         specifies that default interceptors are not to be applied to 
 
-         a bean-class and/or business method.
 
-         - An optional exclude-class-interceptors element.  If set to true,
 
-         specifies that class interceptors are not to be applied to 
 
-         a business method.
 
-         - An optional set of method elements for describing the name/params
 
-         of a method-level interceptor.
 
-         
 
-         Interceptors bound to all classes using the wildcard syntax
 
-         "*" are default interceptors for the components in the ejb-jar or .war. 
 
-         In addition, interceptors may be bound at the level of the bean
 
-         class (class-level interceptors) or business methods (method-level
 
-         interceptors ).
 
-         
 
-         The binding of interceptors to classes is additive.  If interceptors
 
-         are bound at the class-level and/or default-level as well as the
 
-         method-level, both class-level and/or default-level as well as
 
-         method-level will apply. 
 
-         
 
-         There are four possible styles of the interceptor element syntax :
 
-         
 
-         1.
 
-         <interceptor-binding>
 
-         <ejb-name>*</ejb-name>
 
-         <interceptor-class>INTERCEPTOR</interceptor-class>
 
-         </interceptor-binding>
 
-         
 
-         Specifying the ejb-name as the wildcard value "*" designates
 
-         default interceptors (interceptors that apply to all session and
 
-         message-driven beans contained in the ejb-jar or .war).
 
-         
 
-         2. 
 
-         <interceptor-binding>
 
-         <ejb-name>EJBNAME</ejb-name>
 
-         <interceptor-class>INTERCEPTOR</interceptor-class>
 
-         </interceptor-binding>
 
-         
 
-         This style is used to refer to interceptors associated with the
 
-         specified enterprise bean(class-level interceptors).
 
-         
 
-         3. 
 
-         <interceptor-binding>
 
-         <ejb-name>EJBNAME</ejb-name>
 
-         <interceptor-class>INTERCEPTOR</interceptor-class>
 
-         <method>
 
-         <method-name>METHOD</method-name>
 
-         </method>
 
-         </interceptor-binding>
 
-         
 
-         This style is used to associate a method-level interceptor with 
 
-         the specified enterprise bean.  If there are multiple methods
 
-         with the same overloaded name, the element of this style refers
 
-         to all the methods with the overloaded name.  Method-level
 
-         interceptors can only be associated with business methods of the
 
-         bean class.   Note that the wildcard value "*" cannot be used
 
-         to specify method-level interceptors.
 
-         
 
-         4. 
 
-         <interceptor-binding>
 
-         <ejb-name>EJBNAME</ejb-name>
 
-         <interceptor-class>INTERCEPTOR</interceptor-class>
 
-         <method>
 
-         <method-name>METHOD</method-name>
 
-         <method-params>
 
-         <method-param>PARAM-1</method-param>
 
-         <method-param>PARAM-2</method-param>
 
-         ...
 
-         <method-param>PARAM-N</method-param>
 
-         </method-params>
 
-         </method>
 
-         </interceptor-binding>
 
-         
 
-         This style is used to associate a method-level interceptor with 
 
-         the specified method of the specified enterprise bean.  This 
 
-         style is used to refer to a single method within a set of methods
 
-         with an overloaded name.  The values PARAM-1 through PARAM-N
 
-         are the fully-qualified Java types of the method's input parameters
 
-         (if the method has no input arguments, the method-params element
 
-         contains no method-param elements). Arrays are specified by the
 
-         array element's type, followed by one or more pair of square 
 
-         brackets (e.g. int[][]).
 
-         
 
- ]]>
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="description"
 
-                    type="javaee:descriptionType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="ejb-name"
 
-                    type="javaee:string"/>
 
-       <xsd:choice>
 
-         <xsd:element name="interceptor-class"
 
-                      type="javaee:fully-qualified-classType"
 
-                      minOccurs="0"
 
-                      maxOccurs="unbounded"/>
 
-         <xsd:element name="interceptor-order"
 
-                      type="javaee:interceptor-orderType"
 
-                      minOccurs="1"/>
 
-       </xsd:choice>
 
-       <xsd:element name="exclude-default-interceptors"
 
-                    type="javaee:true-falseType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="exclude-class-interceptors"
 
-                    type="javaee:true-falseType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="method"
 
-                    type="javaee:named-methodType"
 
-                    minOccurs="0"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="interceptor-orderType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The interceptor-orderType element describes a total ordering
 
-         of interceptor classes.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="interceptor-class"
 
-                    type="javaee:fully-qualified-classType"
 
-                    minOccurs="1"
 
-                    maxOccurs="unbounded"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="named-methodType">
 
-     <xsd:sequence>
 
-       <xsd:element name="method-name"
 
-                    type="javaee:string"/>
 
-       <xsd:element name="method-params"
 
-                    type="javaee:method-paramsType"
 
-                    minOccurs="0"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="init-methodType">
 
-     <xsd:sequence>
 
-       <xsd:element name="create-method"
 
-                    type="javaee:named-methodType"/>
 
-       <xsd:element name="bean-method"
 
-                    type="javaee:named-methodType"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="remove-methodType">
 
-     <xsd:sequence>
 
-       <xsd:element name="bean-method"
 
-                    type="javaee:named-methodType"/>
 
-       <xsd:element name="retain-if-exception"
 
-                    type="javaee:true-falseType"
 
-                    minOccurs="0"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="message-driven-beanType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The message-driven element declares a message-driven
 
-         bean. The declaration consists of:
 
-         
 
-         - an optional description
 
-         - an optional display name
 
-         - an optional icon element that contains a small and a large 
 
-         icon file name. 
 
-         - a name assigned to the enterprise bean in
 
-         the deployment descriptor
 
-         - an optional mapped-name element that can be used to provide
 
-         vendor-specific deployment information such as the physical
 
-         jndi-name of destination from which this message-driven bean
 
-         should consume.  This element is not required to be supported 
 
-         by all implementations.  Any use of this element is non-portable.
 
-         - the message-driven bean's implementation class
 
-         - an optional declaration of the bean's messaging 
 
-         type 
 
-         - an optional declaration of the bean's timeout method for
 
-         handling programmatically created timers
 
-         - an optional declaration of timers to be automatically created at
 
-         deployment time
 
-         - the optional message-driven bean's transaction management 
 
-         type. If it is not defined, it is defaulted to Container.
 
-         - an optional declaration of the bean's 
 
-         message-destination-type
 
-         - an optional declaration of the bean's 
 
-         message-destination-link
 
-         - an optional declaration of the message-driven bean's
 
-         activation configuration properties
 
-         - an optional list of the message-driven bean class and/or
 
-         superclass around-invoke methods.
 
-         - an optional list of the message-driven bean class and/or
 
-         superclass around-timeout methods.
 
-         - an optional declaration of the bean's environment
 
-         entries
 
-         - an optional declaration of the bean's EJB references
 
-         - an optional declaration of the bean's local EJB
 
-         references
 
-         - an optional declaration of the bean's web service
 
-         references
 
-         - an optional declaration of the security role 
 
-         references
 
-         - an optional declaration of the security
 
-         identity to be used for the execution of the bean's
 
-         methods
 
-         - an optional declaration of the bean's 
 
-         resource manager connection factory 
 
-         references
 
-         - an optional declaration of the bean's resource
 
-         environment references.
 
-         - an optional declaration of the bean's message 
 
-         destination references
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:group ref="javaee:descriptionGroup"/>
 
-       <xsd:element name="ejb-name"
 
-                    type="javaee:ejb-nameType"/>
 
-       <xsd:element name="mapped-name"
 
-                    type="javaee:xsdStringType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="ejb-class"
 
-                    type="javaee:ejb-classType"
 
-                    minOccurs="0">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The ejb-class element specifies the fully qualified name
 
-             of the bean class for this ejb.  It is required unless
 
-             there is a component-defining annotation for the same
 
-             ejb-name.
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-       <xsd:element name="messaging-type"
 
-                    type="javaee:fully-qualified-classType"
 
-                    minOccurs="0">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The messaging-type element specifies the message
 
-             listener interface of the message-driven bean. 
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-       <xsd:element name="timeout-method"
 
-                    type="javaee:named-methodType"
 
-                    minOccurs="0">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The timeout-method element specifies the method that
 
-             will receive callbacks for programmatically
 
-             created timers.
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-       <xsd:element name="timer"
 
-                    type="javaee:timerType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="transaction-type"
 
-                    type="javaee:transaction-typeType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="message-destination-type"
 
-                    type="javaee:message-destination-typeType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="message-destination-link"
 
-                    type="javaee:message-destination-linkType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="activation-config"
 
-                    type="javaee:activation-configType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="around-invoke"
 
-                    type="javaee:around-invokeType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="around-timeout"
 
-                    type="javaee:around-timeoutType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:group ref="javaee:jndiEnvironmentRefsGroup"/>
 
-       <xsd:element name="security-role-ref"
 
-                    type="javaee:security-role-refType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded">
 
-       </xsd:element>
 
-       <xsd:element name="security-identity"
 
-                    type="javaee:security-identityType"
 
-                    minOccurs="0"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="methodType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
- <![CDATA[[
 
-         The methodType is used to denote a method of an enterprise
 
-         bean's business, home, component, and/or web service endpoint
 
-         interface, or, in the case of a message-driven bean, the
 
-         bean's message listener method, or a set of such
 
-         methods. The ejb-name element must be the name of one of the
 
-         enterprise beans declared in the deployment descriptor; the
 
-         optional method-intf element allows to distinguish between a
 
-         method with the same signature that is multiply defined
 
-         across the business, home, component, and/or web service 
 
-         endpoint nterfaces; the method-name element specifies the 
 
-         method name; and the optional method-params elements identify 
 
-         a single method among multiple methods with an overloaded
 
-         method name.
 
-         
 
-         There are three possible styles of using methodType element
 
-         within a method element:
 
-         
 
-         1.
 
-         <method>
 
-         <ejb-name>EJBNAME</ejb-name>
 
-         <method-name>*</method-name>
 
-         </method>
 
-         
 
-         This style is used to refer to all the methods of the
 
-         specified enterprise bean's business, home, component, 
 
-         and/or web service endpoint interfaces.
 
-         
 
-         2.
 
-         <method>
 
-         <ejb-name>EJBNAME</ejb-name>
 
-         <method-name>METHOD</method-name>
 
-         </method>
 
-         
 
-         This style is used to refer to the specified method of
 
-         the specified enterprise bean. If there are multiple
 
-         methods with the same overloaded name, the element of
 
-         this style refers to all the methods with the overloaded
 
-         name.
 
-         
 
-         3.
 
-         <method>
 
-         <ejb-name>EJBNAME</ejb-name>
 
-         <method-name>METHOD</method-name>
 
-         <method-params>
 
-         	  <method-param>PARAM-1</method-param>
 
-         	  <method-param>PARAM-2</method-param>
 
-         	  ...
 
-         	  <method-param>PARAM-n</method-param>
 
-         </method-params>
 
-         </method>
 
-         
 
-         This style is used to refer to a single method within a
 
-         set of methods with an overloaded name. PARAM-1 through
 
-         PARAM-n are the fully-qualified Java types of the
 
-         method's input parameters (if the method has no input
 
-         arguments, the method-params element contains no
 
-         method-param elements). Arrays are specified by the
 
-         array element's type, followed by one or more pair of
 
-         square brackets (e.g. int[][]). If there are multiple
 
-         methods with the same overloaded name, this style refers
 
-         to all of the overloaded methods. 
 
-         
 
-         Examples:
 
-         
 
-         Style 1: The following method element refers to all the
 
-         methods of the EmployeeService bean's business, home, 
 
-         component, and/or web service endpoint interfaces:
 
-         
 
-         <method>
 
-         <ejb-name>EmployeeService</ejb-name>
 
-         <method-name>*</method-name>
 
-         </method>
 
-         
 
-         Style 2: The following method element refers to all the
 
-         create methods of the EmployeeService bean's home
 
-         interface(s).
 
-         
 
-         <method>
 
-         <ejb-name>EmployeeService</ejb-name>
 
-         <method-name>create</method-name>
 
-         </method>
 
-         
 
-         Style 3: The following method element refers to the
 
-         create(String firstName, String LastName) method of the
 
-         EmployeeService bean's home interface(s).
 
-         
 
-         <method>
 
-         <ejb-name>EmployeeService</ejb-name>
 
-         <method-name>create</method-name>
 
-         <method-params>
 
-         	  <method-param>java.lang.String</method-param>
 
-         	  <method-param>java.lang.String</method-param>
 
-         </method-params>
 
-         </method>
 
-         
 
-         The following example illustrates a Style 3 element with
 
-         more complex parameter types. The method 
 
-         foobar(char s, int i, int[] iar, mypackage.MyClass mycl, 
 
-         mypackage.MyClass[][] myclaar) would be specified as:
 
-         
 
-         <method>
 
-         <ejb-name>EmployeeService</ejb-name>
 
-         <method-name>foobar</method-name>
 
-         <method-params>
 
-         	  <method-param>char</method-param>
 
-         	  <method-param>int</method-param>
 
-         	  <method-param>int[]</method-param>
 
-         	  <method-param>mypackage.MyClass</method-param>
 
-         	  <method-param>mypackage.MyClass[][]</method-param>
 
-         </method-params>
 
-         </method>
 
-         
 
-         The optional method-intf element can be used when it becomes
 
-         necessary to differentiate between a method that is multiply
 
-         defined across the enterprise bean's business, home, component,
 
-         and/or web service endpoint interfaces with the same name and
 
-         signature. However, if the same method is a method of both the
 
-         local business interface, and the local component interface, 
 
-         the same attribute applies to the method for both interfaces.
 
-         Likewise, if the same method is a method of both the remote 
 
-         business interface and the remote component interface, the same
 
-         attribute applies to the method for both interfaces.
 
-         
 
-         For example, the method element
 
-         
 
-         <method>
 
-         <ejb-name>EmployeeService</ejb-name>
 
-         <method-intf>Remote</method-intf>
 
-         <method-name>create</method-name>
 
-         <method-params>
 
-         	  <method-param>java.lang.String</method-param>
 
-         	  <method-param>java.lang.String</method-param>
 
-         </method-params>
 
-         </method>
 
-         
 
-         can be used to differentiate the create(String, String)
 
-         method defined in the remote interface from the
 
-         create(String, String) method defined in the remote home
 
-         interface, which would be defined as
 
-         
 
-         <method>
 
-         <ejb-name>EmployeeService</ejb-name>
 
-         <method-intf>Home</method-intf>
 
-         <method-name>create</method-name>
 
-         <method-params>
 
-         	  <method-param>java.lang.String</method-param>
 
-         	  <method-param>java.lang.String</method-param>
 
-         </method-params>
 
-         </method>
 
-         
 
-         and the create method that is defined in the local home
 
-         interface which would be defined as
 
-         
 
-         <method>
 
-         <ejb-name>EmployeeService</ejb-name>
 
-         <method-intf>LocalHome</method-intf>
 
-         <method-name>create</method-name>
 
-         <method-params>
 
-         	  <method-param>java.lang.String</method-param>
 
-         	  <method-param>java.lang.String</method-param>
 
-         </method-params>
 
-         </method>
 
-         
 
-         The method-intf element can be used with all three Styles
 
-         of the method element usage. For example, the following
 
-         method element example could be used to refer to all the
 
-         methods of the EmployeeService bean's remote home interface
 
-         and the remote business interface.
 
-         
 
-         <method>
 
-         <ejb-name>EmployeeService</ejb-name>
 
-         <method-intf>Home</method-intf>
 
-         <method-name>*</method-name>
 
-         </method>
 
-         
 
- ]]>
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="description"
 
-                    type="javaee:descriptionType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="ejb-name"
 
-                    type="javaee:ejb-nameType"/>
 
-       <xsd:element name="method-intf"
 
-                    type="javaee:method-intfType"
 
-                    minOccurs="0">
 
-       </xsd:element>
 
-       <xsd:element name="method-name"
 
-                    type="javaee:method-nameType"/>
 
-       <xsd:element name="method-params"
 
-                    type="javaee:method-paramsType"
 
-                    minOccurs="0"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="method-intfType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The method-intf element allows a method element to
 
-         differentiate between the methods with the same name and
 
-         signature that are multiply defined across the home and
 
-         component interfaces (e.g, in both an enterprise bean's
 
-         remote and local interfaces or in both an enterprise bean's
 
-         home and remote interfaces, etc.); the component and web
 
-         service endpoint interfaces, and so on. 
 
-         
 
-         Local applies to the local component interface, local business 
 
-         interfaces, and the no-interface view. 
 
-         
 
-         Remote applies to both remote component interface and the remote 
 
-         business interfaces.  
 
-         
 
-         ServiceEndpoint refers to methods exposed through a web service
 
-         endpoint.
 
-         
 
-         Timer refers to the bean's timeout callback methods.
 
-         
 
-         MessageEndpoint refers to the methods of a message-driven bean's
 
-         message-listener interface.
 
-         
 
-         The method-intf element must be one of the following:
 
-         
 
-         Home
 
-         Remote
 
-         LocalHome
 
-         Local
 
-         ServiceEndpoint
 
-         Timer
 
-         MessageEndpoint
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:simpleContent>
 
-       <xsd:restriction base="javaee:string">
 
-         <xsd:enumeration value="Home"/>
 
-         <xsd:enumeration value="Remote"/>
 
-         <xsd:enumeration value="LocalHome"/>
 
-         <xsd:enumeration value="Local"/>
 
-         <xsd:enumeration value="ServiceEndpoint"/>
 
-         <xsd:enumeration value="Timer"/>
 
-         <xsd:enumeration value="MessageEndpoint"/>
 
-       </xsd:restriction>
 
-     </xsd:simpleContent>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="method-nameType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The method-nameType contains a name of an enterprise
 
-         bean method or the asterisk (*) character. The asterisk is
 
-         used when the element denotes all the methods of an
 
-         enterprise bean's client view interfaces.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:simpleContent>
 
-       <xsd:restriction base="javaee:string"/>
 
-     </xsd:simpleContent>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="method-paramsType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The method-paramsType defines a list of the
 
-         fully-qualified Java type names of the method parameters.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="method-param"
 
-                    type="javaee:java-typeType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The method-param element contains a primitive
 
-             or a fully-qualified Java type name of a method
 
-             parameter.
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="method-permissionType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The method-permissionType specifies that one or more
 
-         security roles are allowed to invoke one or more enterprise
 
-         bean methods. The method-permissionType consists of an
 
-         optional description, a list of security role names or an
 
-         indicator to state that the method is unchecked for
 
-         authorization, and a list of method elements.
 
-         
 
-         The security roles used in the method-permissionType
 
-         must be defined in the security-role elements of the
 
-         deployment descriptor, and the methods must be methods
 
-         defined in the enterprise bean's business, home, component 
 
-         and/or web service endpoint interfaces.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="description"
 
-                    type="javaee:descriptionType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:choice>
 
-         <xsd:element name="role-name"
 
-                      type="javaee:role-nameType"
 
-                      maxOccurs="unbounded"/>
 
-         <xsd:element name="unchecked"
 
-                      type="javaee:emptyType">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The unchecked element specifies that a method is
 
-               not checked for authorization by the container
 
-               prior to invocation of the method.
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-         </xsd:element>
 
-       </xsd:choice>
 
-       <xsd:element name="method"
 
-                    type="javaee:methodType"
 
-                    maxOccurs="unbounded"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="multiplicityType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The multiplicityType describes the multiplicity of the
 
-         role that participates in a relation.
 
-         
 
-         The value must be one of the two following:
 
-         
 
-         One
 
-         Many
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:simpleContent>
 
-       <xsd:restriction base="javaee:string">
 
-         <xsd:enumeration value="One"/>
 
-         <xsd:enumeration value="Many"/>
 
-       </xsd:restriction>
 
-     </xsd:simpleContent>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="persistence-typeType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The persistence-typeType specifies an entity bean's persistence
 
-         management type.
 
-         
 
-         The persistence-type element must be one of the two following:
 
-         
 
-         Bean
 
-         Container
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:simpleContent>
 
-       <xsd:restriction base="javaee:string">
 
-         <xsd:enumeration value="Bean"/>
 
-         <xsd:enumeration value="Container"/>
 
-       </xsd:restriction>
 
-     </xsd:simpleContent>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="queryType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The queryType defines a finder or select
 
-         query. It contains
 
-         - an optional description of the query
 
-         - the specification of the finder or select
 
-         method it is used by
 
-         	- an optional specification of the result type 
 
-         	  mapping, if the query is for a select method 
 
-         	  and entity objects are returned.
 
-         	- the EJB QL query string that defines the query.
 
-         
 
-         Queries that are expressible in EJB QL must use the ejb-ql
 
-         element to specify the query. If a query is not expressible
 
-         in EJB QL, the description element should be used to
 
-         describe the semantics of the query and the ejb-ql element
 
-         should be empty.
 
-         
 
-         The result-type-mapping is an optional element. It can only
 
-         be present if the query-method specifies a select method
 
-         that returns entity objects.  The default value for the
 
-         result-type-mapping element is "Local".
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="description"
 
-                    type="javaee:descriptionType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="query-method"
 
-                    type="javaee:query-methodType"/>
 
-       <xsd:element name="result-type-mapping"
 
-                    type="javaee:result-type-mappingType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="ejb-ql"
 
-                    type="javaee:xsdStringType"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="query-methodType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
- <![CDATA[[
 
-         The query-method specifies the method for a finder or select
 
-         query.
 
-         
 
-         The method-name element specifies the name of a finder or select
 
-         method in the entity bean's implementation class.
 
-         
 
-         Each method-param must be defined for a query-method using the
 
-         method-params element.
 
-         
 
-         It is used by the query-method element. 
 
-         
 
-         Example:
 
-         
 
-         <query>
 
-         <description>Method finds large orders</description>
 
-         <query-method>
 
-         	  <method-name>findLargeOrders</method-name>
 
-         	  <method-params></method-params>
 
-         </query-method>
 
-         <ejb-ql>
 
-         	SELECT OBJECT(o) FROM Order o
 
-         	  WHERE o.amount > 1000
 
-         </ejb-ql>
 
-         </query>
 
-         
 
- ]]>
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="method-name"
 
-                    type="javaee:method-nameType"/>
 
-       <xsd:element name="method-params"
 
-                    type="javaee:method-paramsType"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="relationship-role-sourceType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The relationship-role-sourceType designates the source of a
 
-         role that participates in a relationship. A
 
-         relationship-role-sourceType is used by
 
-         relationship-role-source elements to uniquely identify an
 
-         entity bean.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="description"
 
-                    type="javaee:descriptionType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="ejb-name"
 
-                    type="javaee:ejb-nameType"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="relationshipsType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The relationshipsType describes the relationships in
 
-         which entity beans with container-managed persistence
 
-         participate. The relationshipsType contains an optional
 
-         description; and a list of ejb-relation elements, which
 
-         specify the container managed relationships.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="description"
 
-                    type="javaee:descriptionType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="ejb-relation"
 
-                    type="javaee:ejb-relationType"
 
-                    maxOccurs="unbounded">
 
-         <xsd:unique name="role-name-uniqueness">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The ejb-relationship-role-name contains the name of a
 
-               relationship role. The name must be unique within 
 
-               a relationship, but can be reused in different
 
-               relationships.
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-           <xsd:selector xpath=".//javaee:ejb-relationship-role-name"/>
 
-           <xsd:field xpath="."/>
 
-         </xsd:unique>
 
-       </xsd:element>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="result-type-mappingType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The result-type-mappingType is used in the query element to
 
-         specify whether an abstract schema type returned by a query
 
-         for a select method is to be mapped to an EJBLocalObject or
 
-         EJBObject type.
 
-         
 
-         The value must be one of the following:
 
-         
 
-         Local
 
-         Remote
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:simpleContent>
 
-       <xsd:restriction base="javaee:string">
 
-         <xsd:enumeration value="Local"/>
 
-         <xsd:enumeration value="Remote"/>
 
-       </xsd:restriction>
 
-     </xsd:simpleContent>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="security-identityType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The security-identityType specifies whether the caller's
 
-         security identity is to be used for the execution of the
 
-         methods of the enterprise bean or whether a specific run-as
 
-         identity is to be used. It contains an optional description
 
-         and a specification of the security identity to be used.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="description"
 
-                    type="javaee:descriptionType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:choice>
 
-         <xsd:element name="use-caller-identity"
 
-                      type="javaee:emptyType">
 
-           <xsd:annotation>
 
-             <xsd:documentation>
 
-               The use-caller-identity element specifies that
 
-               the caller's security identity be used as the
 
-               security identity for the execution of the
 
-               enterprise bean's methods.
 
-               
 
-             </xsd:documentation>
 
-           </xsd:annotation>
 
-         </xsd:element>
 
-         <xsd:element name="run-as"
 
-                      type="javaee:run-asType"/>
 
-       </xsd:choice>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="session-beanType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The session-beanType declares an session bean. The
 
-         declaration consists of:
 
-         
 
-         - an optional description
 
-         - an optional display name
 
-         - an optional icon element that contains a small and a large 
 
-         icon file name
 
-         - a name assigned to the enterprise bean
 
-         in the deployment description
 
-         - an optional mapped-name element that can be used to provide
 
-         vendor-specific deployment information such as the physical
 
-         jndi-name of the session bean's remote home/business interface. 
 
-         This element is not required to be supported by all 
 
-         implementations. Any use of this element is non-portable.
 
-         - the names of all the remote or local business interfaces, 
 
-         if any
 
-         - the names of the session bean's remote home and
 
-         remote interfaces, if any
 
-         - the names of the session bean's local home and
 
-         local interfaces, if any
 
-         - an optional declaration that this bean exposes a
 
-         no-interface view
 
-         - the name of the session bean's web service endpoint
 
-         interface, if any
 
-         - the session bean's implementation class
 
-         - the session bean's state management type
 
-         - an optional declaration of a stateful session bean's timeout value
 
-         - an optional declaration of the session bean's timeout method for
 
-         handling programmatically created timers
 
-         - an optional declaration of timers to be automatically created at
 
-         deployment time
 
-         - an optional declaration that a Singleton bean has eager
 
-         initialization
 
-         - an optional declaration of a Singleton/Stateful bean's concurrency 
 
-         management type
 
-         - an optional declaration of the method locking metadata
 
-         for a Singleton with container managed concurrency
 
-         - an optional declaration of the other Singleton beans in the
 
-         application that must be initialized before this bean
 
-         - an optional declaration of the session bean's asynchronous 
 
-         methods
 
-         - the optional session bean's transaction management type. 
 
-         If it is not present, it is defaulted to Container.
 
-         - an optional declaration of a stateful session bean's 
 
-         afterBegin, beforeCompletion, and/or afterCompletion methods
 
-         - an optional list of the session bean class and/or
 
-         superclass around-invoke methods.
 
-         - an optional list of the session bean class and/or
 
-         superclass around-timeout methods.
 
-         - an optional declaration of the bean's 
 
-         environment entries
 
-         - an optional declaration of the bean's EJB references
 
-         - an optional declaration of the bean's local 
 
-         EJB references
 
-         - an optional declaration of the bean's web 
 
-         service references
 
-         - an optional declaration of the security role 
 
-         references
 
-         - an optional declaration of the security identity 
 
-         to be used for the execution of the bean's methods
 
-         - an optional declaration of the bean's resource 
 
-         manager connection factory references
 
-         - an optional declaration of the bean's resource 
 
-         environment references.
 
-         - an optional declaration of the bean's message 
 
-         destination references
 
-         
 
-         The elements that are optional are "optional" in the sense
 
-         that they are omitted when if lists represented by them are
 
-         empty.
 
-         
 
-         The service-endpoint element may only be specified if the
 
-         bean is a stateless session bean.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:group ref="javaee:descriptionGroup"/>
 
-       <xsd:element name="ejb-name"
 
-                    type="javaee:ejb-nameType"/>
 
-       <xsd:element name="mapped-name"
 
-                    type="javaee:xsdStringType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="home"
 
-                    type="javaee:homeType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="remote"
 
-                    type="javaee:remoteType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="local-home"
 
-                    type="javaee:local-homeType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="local"
 
-                    type="javaee:localType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="business-local"
 
-                    type="javaee:fully-qualified-classType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="business-remote"
 
-                    type="javaee:fully-qualified-classType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="local-bean"
 
-                    type="javaee:emptyType"
 
-                    minOccurs="0">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The local-bean element declares that this
 
-             session bean exposes a no-interface Local client view.
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-       <xsd:element name="service-endpoint"
 
-                    type="javaee:fully-qualified-classType"
 
-                    minOccurs="0">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The service-endpoint element contains the
 
-             fully-qualified name of the enterprise bean's web
 
-             service endpoint interface. The service-endpoint
 
-             element may only be specified for a stateless
 
-             session bean. The specified interface must be a
 
-             valid JAX-RPC service endpoint interface.
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-       <xsd:element name="ejb-class"
 
-                    type="javaee:ejb-classType"
 
-                    minOccurs="0">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The ejb-class element specifies the fully qualified name
 
-             of the bean class for this ejb.  It is required unless
 
-             there is a component-defining annotation for the same
 
-             ejb-name.
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-       <xsd:element name="session-type"
 
-                    type="javaee:session-typeType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="stateful-timeout"
 
-                    type="javaee:stateful-timeoutType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="timeout-method"
 
-                    type="javaee:named-methodType"
 
-                    minOccurs="0">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The timeout-method element specifies the method that
 
-             will receive callbacks for programmatically
 
-             created timers.
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-       <xsd:element name="timer"
 
-                    type="javaee:timerType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="init-on-startup"
 
-                    type="javaee:true-falseType"
 
-                    minOccurs="0">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The init-on-startup element specifies that a Singleton
 
-             bean has eager initialization.
 
-             This element can only be specified for singleton session
 
-             beans.
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-       <xsd:element name="concurrency-management-type"
 
-                    type="javaee:concurrency-management-typeType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="concurrent-method"
 
-                    type="javaee:concurrent-methodType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="depends-on"
 
-                    type="javaee:depends-onType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="init-method"
 
-                    type="javaee:init-methodType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The init-method element specifies the mappings for
 
-             EJB 2.x style create methods for an EJB 3.x bean.
 
-             This element can only be specified for stateful 
 
-             session beans. 
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-       <xsd:element name="remove-method"
 
-                    type="javaee:remove-methodType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded">
 
-         <xsd:annotation>
 
-           <xsd:documentation>
 
-             The remove-method element specifies the mappings for
 
-             EJB 2.x style remove methods for an EJB 3.x bean.
 
-             This element can only be specified for stateful 
 
-             session beans. 
 
-             
 
-           </xsd:documentation>
 
-         </xsd:annotation>
 
-       </xsd:element>
 
-       <xsd:element name="async-method"
 
-                    type="javaee:async-methodType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="transaction-type"
 
-                    type="javaee:transaction-typeType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="after-begin-method"
 
-                    type="javaee:named-methodType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="before-completion-method"
 
-                    type="javaee:named-methodType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="after-completion-method"
 
-                    type="javaee:named-methodType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="around-invoke"
 
-                    type="javaee:around-invokeType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="around-timeout"
 
-                    type="javaee:around-timeoutType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:group ref="javaee:jndiEnvironmentRefsGroup"/>
 
-       <xsd:element name="post-activate"
 
-                    type="javaee:lifecycle-callbackType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="pre-passivate"
 
-                    type="javaee:lifecycle-callbackType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="security-role-ref"
 
-                    type="javaee:security-role-refType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded">
 
-       </xsd:element>
 
-       <xsd:element name="security-identity"
 
-                    type="javaee:security-identityType"
 
-                    minOccurs="0">
 
-       </xsd:element>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="session-typeType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The session-typeType describes whether the session bean is a
 
-         singleton, stateful or stateless session. It is used by
 
-         session-type elements.
 
-         
 
-         The value must be one of the three following:
 
-         
 
-         Singleton
 
-         Stateful
 
-         Stateless
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:simpleContent>
 
-       <xsd:restriction base="javaee:string">
 
-         <xsd:enumeration value="Singleton"/>
 
-         <xsd:enumeration value="Stateful"/>
 
-         <xsd:enumeration value="Stateless"/>
 
-       </xsd:restriction>
 
-     </xsd:simpleContent>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="stateful-timeoutType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The stateful-timeoutType represents the amount of time
 
-         a stateful session bean can be idle(not receive any client
 
-         invocations) before it is eligible for removal by the container.
 
-         
 
-         A timeout value of 0 means the bean is immediately eligible for removal.
 
-         
 
-         A timeout value of -1 means the bean will never be removed due to timeout.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="timeout"
 
-                    type="javaee:xsdIntegerType"/>
 
-       <xsd:element name="unit"
 
-                    type="javaee:time-unit-typeType"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="time-unit-typeType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The time-unit-typeType represents a time duration at a given
 
-         unit of granularity.  
 
-         
 
-         The time unit type must be one of the following :
 
-         
 
-         Days
 
-         Hours
 
-         Minutes
 
-         Seconds
 
-         Milliseconds
 
-         Microseconds
 
-         Nanoseconds
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:simpleContent>
 
-       <xsd:restriction base="javaee:string">
 
-         <xsd:enumeration value="Days"/>
 
-         <xsd:enumeration value="Hours"/>
 
-         <xsd:enumeration value="Minutes"/>
 
-         <xsd:enumeration value="Seconds"/>
 
-         <xsd:enumeration value="Milliseconds"/>
 
-         <xsd:enumeration value="Microseconds"/>
 
-         <xsd:enumeration value="Nanoseconds"/>
 
-       </xsd:restriction>
 
-     </xsd:simpleContent>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="timer-scheduleType">
 
-     <xsd:sequence>
 
-       <xsd:element name="second"
 
-                    type="javaee:string"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="minute"
 
-                    type="javaee:string"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="hour"
 
-                    type="javaee:string"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="day-of-month"
 
-                    type="javaee:string"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="month"
 
-                    type="javaee:string"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="day-of-week"
 
-                    type="javaee:string"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="year"
 
-                    type="javaee:string"
 
-                    minOccurs="0"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="timerType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The timerType specifies an enterprise bean timer.  Each
 
-         timer is automatically created by the container upon
 
-         deployment.  Timer callbacks occur based on the 
 
-         schedule attributes.  All callbacks are made to the
 
-         timeout-method associated with the timer.  
 
-         
 
-         A timer can have an optional start and/or end date. If
 
-         a start date is specified, it takes precedence over the
 
-         associated timer schedule such that any matching
 
-         expirations prior to the start time will not occur.
 
-         Likewise, no matching expirations will occur after any
 
-         end date.   Start/End dates are specified using the
 
-         XML Schema dateTime type, which follows the ISO-8601
 
-         standard for date(and optional time-within-the-day) 
 
-         representation.
 
-         
 
-         An optional flag can be used to control whether
 
-         this timer has persistent(true) delivery semantics or
 
-         non-persistent(false) delivery semantics.  If not specified,
 
-         the value defaults to persistent(true).
 
-         
 
-         A time zone can optionally be associated with a timer.
 
-         If specified, the timer's schedule is evaluated in the context
 
-         of that time zone, regardless of the default time zone in which
 
-         the container is executing.   Time zones are specified as an
 
-         ID string.  The set of required time zone IDs is defined by
 
-         the Zone Name(TZ) column of the public domain zoneinfo database.
 
-         
 
-         An optional info string can be assigned to the timer and 
 
-         retrieved at runtime through the Timer.getInfo() method.
 
-         
 
-         The timerType can only be specified on stateless session
 
-         beans, singleton session beans, and message-driven beans.
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:sequence>
 
-       <xsd:element name="description"
 
-                    type="javaee:descriptionType"
 
-                    minOccurs="0"
 
-                    maxOccurs="unbounded"/>
 
-       <xsd:element name="schedule"
 
-                    type="javaee:timer-scheduleType"/>
 
-       <xsd:element name="start"
 
-                    type="xsd:dateTime"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="end"
 
-                    type="xsd:dateTime"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="timeout-method"
 
-                    type="javaee:named-methodType"/>
 
-       <xsd:element name="persistent"
 
-                    type="javaee:true-falseType"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="timezone"
 
-                    type="javaee:string"
 
-                    minOccurs="0"/>
 
-       <xsd:element name="info"
 
-                    type="javaee:string"
 
-                    minOccurs="0"/>
 
-     </xsd:sequence>
 
-     <xsd:attribute name="id"
 
-                    type="xsd:ID"/>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="trans-attributeType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The trans-attributeType specifies how the container must
 
-         manage the transaction boundaries when delegating a method 
 
-         invocation to an enterprise bean's business method. 
 
-         
 
-         The value must be one of the following: 
 
-         
 
-         NotSupported 
 
-         Supports 
 
-         Required  
 
-         RequiresNew 
 
-         Mandatory 
 
-         Never 
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:simpleContent>
 
-       <xsd:restriction base="javaee:string">
 
-         <xsd:enumeration value="NotSupported"/>
 
-         <xsd:enumeration value="Supports"/>
 
-         <xsd:enumeration value="Required"/>
 
-         <xsd:enumeration value="RequiresNew"/>
 
-         <xsd:enumeration value="Mandatory"/>
 
-         <xsd:enumeration value="Never"/>
 
-       </xsd:restriction>
 
-     </xsd:simpleContent>
 
-   </xsd:complexType>
 
- <!-- **************************************************** -->
 
-   <xsd:complexType name="transaction-typeType">
 
-     <xsd:annotation>
 
-       <xsd:documentation>
 
-         The transaction-typeType specifies an enterprise bean's
 
-         transaction management type.
 
-         
 
-         The transaction-type must be one of the two following:
 
-         
 
-         Bean
 
-         Container
 
-         
 
-       </xsd:documentation>
 
-     </xsd:annotation>
 
-     <xsd:simpleContent>
 
-       <xsd:restriction base="javaee:string">
 
-         <xsd:enumeration value="Bean"/>
 
-         <xsd:enumeration value="Container"/>
 
-       </xsd:restriction>
 
-     </xsd:simpleContent>
 
-   </xsd:complexType>
 
- </xsd:schema>
 
 
  |