You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@netbeans.apache.org by GitBox <gi...@apache.org> on 2018/11/05 11:05:14 UTC

[GitHub] matthiasblaesing closed pull request #967: [NETBEANS-1074] : module review j2ee.dd.webservice

matthiasblaesing closed pull request #967: [NETBEANS-1074] : module review j2ee.dd.webservice
URL: https://github.com/apache/incubator-netbeans/pull/967
 
 
   

This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:

As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):

diff --git a/enterprise/j2ee.dd.webservice/build.xml b/enterprise/j2ee.dd.webservice/build.xml
index 7fc2427f8a..202170ed03 100644
--- a/enterprise/j2ee.dd.webservice/build.xml
+++ b/enterprise/j2ee.dd.webservice/build.xml
@@ -21,10 +21,4 @@
 -->
 <project basedir="." default="build" name="enterprise/j2ee.dd.webservice">
   <import file="../../nbbuild/templates/projectized.xml"/>
-
-    <property name="resourcesdir" value="./src/org/netbeans/modules/j2ee/dd/impl/resources"/>
-    <target name="build-init" depends="projectized.build-init">
-        <unzip src="external/j2ee.dd.webservice-glassfish-resources.zip" dest="${resourcesdir}"/>
-        <unzip src="external/j2ee.dd.webservice-w3c-resources.zip" dest="${resourcesdir}"/>
-    </target>
 </project>
diff --git a/enterprise/j2ee.dd.webservice/external/binaries-list b/enterprise/j2ee.dd.webservice/external/binaries-list
deleted file mode 100644
index fadb7cdfc6..0000000000
--- a/enterprise/j2ee.dd.webservice/external/binaries-list
+++ /dev/null
@@ -1,2 +0,0 @@
-4A1C7F9EA2230C0821B251C77595400CBC412461 j2ee.dd.webservice-glassfish-resources.zip
-60212D37251B6A783F7888F73E8C09B950F2902C j2ee.dd.webservice-w3c-resources.zip
diff --git a/enterprise/j2ee.dd.webservice/external/glassfish-license.txt b/enterprise/j2ee.dd.webservice/external/glassfish-license.txt
deleted file mode 100644
index 833a843cfe..0000000000
--- a/enterprise/j2ee.dd.webservice/external/glassfish-license.txt
+++ /dev/null
@@ -1,274 +0,0 @@
-COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL)Version 1.1
-
-1. Definitions.
-
-     1.1. "Contributor" means each individual or entity that creates or contributes to the creation of Modifications.
-
-     1.2. "Contributor Version" means the combination of the Original Software, prior Modifications used by a Contributor (if any), and the Modifications made by that particular Contributor.
-
-     1.3. "Covered Software" means (a) the Original Software, or (b) Modifications, or (c) the combination of files containing Original Software with files containing Modifications, in each case including portions thereof.
-
-     1.4. "Executable" means the Covered Software in any form other than Source Code.
-
-     1.5. "Initial Developer" means the individual or entity that first makes Original Software available under this License.
-
-     1.6. "Larger Work" means a work which combines Covered Software or portions thereof with code not governed by the terms of this License.
-
-     1.7. "License" means this document.
-
-     1.8. "Licensable" means having the right to grant, to the maximum extent possible, whether at the time of the initial grant or subsequently acquired, any and all of the rights conveyed herein.
-
-     1.9. "Modifications" means the Source Code and Executable form of any of the following:
-
-     A. Any file that results from an addition to, deletion from or modification of the contents of a file containing Original Software or previous Modifications;
-
-     B. Any new file that contains any part of the Original Software or previous Modification; or
-
-     C. Any new file that is contributed or otherwise made available under the terms of this License.
-
-     1.10. "Original Software" means the Source Code and Executable form of computer software code that is originally released under this License.
-
-     1.11. "Patent Claims" means any patent claim(s), now owned or hereafter acquired, including without limitation, method, process, and apparatus claims, in any patent Licensable by grantor.
-
-     1.12. "Source Code" means (a) the common form of computer software code in which modifications are made and (b) associated documentation included in or with such code.
-
-     1.13. "You" (or "Your") means an individual or a legal entity exercising rights under, and complying with all of the terms of, this License. For legal entities, "You" includes any entity which controls, is controlled by, or is under common control with You. For purposes of this definition, "control" means (a) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (b) ownership of more than fifty percent (50%) of the outstanding shares or beneficial ownership of such entity.
-
-2. License Grants.
-
-     2.1. The Initial Developer Grant.
-
-     Conditioned upon Your compliance with Section 3.1 below and subject to third party intellectual property claims, the Initial Developer hereby grants You a world-wide, royalty-free, non-exclusive license:
-
-     (a) under intellectual property rights (other than patent or trademark) Licensable by Initial Developer, to use, reproduce, modify, display, perform, sublicense and distribute the Original Software (or portions thereof), with or without Modifications, and/or as part of a Larger Work; and
-
-     (b) under Patent Claims infringed by the making, using or selling of Original Software, to make, have made, use, practice, sell, and offer for sale, and/or otherwise dispose of the Original Software (or portions thereof).
-
-     (c) The licenses granted in Sections 2.1(a) and (b) are effective on the date Initial Developer first distributes or otherwise makes the Original Software available to a third party under the terms of this License.
-
-     (d) Notwithstanding Section 2.1(b) above, no patent license is granted: (1) for code that You delete from the Original Software, or (2) for infringements caused by: (i) the modification of the Original Software, or (ii) the combination of the Original Software with other software or devices.
-
-     2.2. Contributor Grant.
-
-     Conditioned upon Your compliance with Section 3.1 below and subject to third party intellectual property claims, each Contributor hereby grants You a world-wide, royalty-free, non-exclusive license:
-
-     (a) under intellectual property rights (other than patent or trademark) Licensable by Contributor to use, reproduce, modify, display, perform, sublicense and distribute the Modifications created by such Contributor (or portions thereof), either on an unmodified basis, with other Modifications, as Covered Software and/or as part of a Larger Work; and
-
-     (b) under Patent Claims infringed by the making, using, or selling of Modifications made by that Contributor either alone and/or in combination with its Contributor Version (or portions of such combination), to make, use, sell, offer for sale, have made, and/or otherwise dispose of: (1) Modifications made by that Contributor (or portions thereof); and (2) the combination of Modifications made by that Contributor with its Contributor Version (or portions of such combination).
-
-     (c) The licenses granted in Sections 2.2(a) and 2.2(b) are effective on the date Contributor first distributes or otherwise makes the Modifications available to a third party.
-
-     (d) Notwithstanding Section 2.2(b) above, no patent license is granted: (1) for any code that Contributor has deleted from the Contributor Version; (2) for infringements caused by: (i) third party modifications of Contributor Version, or (ii) the combination of Modifications made by that Contributor with other software (except as part of the Contributor Version) or other devices; or (3) under Patent Claims infringed by Covered Software in the absence of Modifications made by that Contributor.
-
-3. Distribution Obligations.
-
-     3.1. Availability of Source Code.
-
-     Any Covered Software that You distribute or otherwise make available in Executable form must also be made available in Source Code form and that Source Code form must be distributed only under the terms of this License. You must include a copy of this License with every copy of the Source Code form of the Covered Software You distribute or otherwise make available. You must inform recipients of any such Covered Software in Executable form as to how they can obtain such Covered Software in Source Code form in a reasonable manner on or through a medium customarily used for software exchange.
-
-     3.2. Modifications.
-
-     The Modifications that You create or to which You contribute are governed by the terms of this License. You represent that You believe Your Modifications are Your original creation(s) and/or You have sufficient rights to grant the rights conveyed by this License.
-
-     3.3. Required Notices.
-
-     You must include a notice in each of Your Modifications that identifies You as the Contributor of the Modification. You may not remove or alter any copyright, patent or trademark notices contained within the Covered Software, or any notices of licensing or any descriptive text giving attribution to any Contributor or the Initial Developer.
-
-     3.4. Application of Additional Terms.
-
-     You may not offer or impose any terms on any Covered Software in Source Code form that alters or restricts the applicable version of this License or the recipients' rights hereunder. You may choose to offer, and to charge a fee for, warranty, support, indemnity or liability obligations to one or more recipients of Covered Software. However, you may do so only on Your own behalf, and not on behalf of the Initial Developer or any Contributor. You must make it absolutely clear that any such warranty, support, indemnity or liability obligation is offered by You alone, and You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of warranty, support, indemnity or liability terms You offer.
-
-     3.5. Distribution of Executable Versions.
-
-     You may distribute the Executable form of the Covered Software under the terms of this License or under the terms of a license of Your choice, which may contain terms different from this License, provided that You are in compliance with the terms of this License and that the license for the Executable form does not attempt to limit or alter the recipient's rights in the Source Code form from the rights set forth in this License. If You distribute the Covered Software in Executable form under a different license, You must make it absolutely clear that any terms which differ from this License are offered by You alone, not by the Initial Developer or Contributor. You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of any such terms You offer.
-
-     3.6. Larger Works.
-
-     You may create a Larger Work by combining Covered Software with other code not governed by the terms of this License and distribute the Larger Work as a single product. In such a case, You must make sure the requirements of this License are fulfilled for the Covered Software.
-
-4. Versions of the License.
-
-     4.1. New Versions.
-
-     Oracle is the initial license steward and may publish revised and/or new versions of this License from time to time. Each version will be given a distinguishing version number. Except as provided in Section 4.3, no one other than the license steward has the right to modify this License.
-
-     4.2. Effect of New Versions.
-
-     You may always continue to use, distribute or otherwise make the Covered Software available under the terms of the version of the License under which You originally received the Covered Software. If the Initial Developer includes a notice in the Original Software prohibiting it from being distributed or otherwise made available under any subsequent version of the License, You must distribute and make the Covered Software available under the terms of the version of the License under which You originally received the Covered Software. Otherwise, You may also choose to use, distribute or otherwise make the Covered Software available under the terms of any subsequent version of the License published by the license steward.
-
-     4.3. Modified Versions.
-
-     When You are an Initial Developer and You want to create a new license for Your Original Software, You may create and use a modified version of this License if You: (a) rename the license and remove any references to the name of the license steward (except to note that the license differs from this License); and (b) otherwise make it clear that the license contains terms which differ from this License.
-
-5. DISCLAIMER OF WARRANTY.
-
-     COVERED SOFTWARE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED SOFTWARE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED SOFTWARE IS WITH YOU. SHOULD ANY COVERED SOFTWARE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY COVERED SOFTWARE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.
-
-6. TERMINATION.
-
-     6.1. This License and the rights granted hereunder will terminate automatically if You fail to comply with terms herein and fail to cure such breach within 30 days of becoming aware of the breach. Provisions which, by their nature, must remain in effect beyond the termination of this License shall survive.
-
-     6.2. If You assert a patent infringement claim (excluding declaratory judgment actions) against Initial Developer or a Contributor (the Initial Developer or Contributor against whom You assert such claim is referred to as "Participant") alleging that the Participant Software (meaning the Contributor Version where the Participant is a Contributor or the Original Software where the Participant is the Initial Developer) directly or indirectly infringes any patent, then any and all rights granted directly or indirectly to You by such Participant, the Initial Developer (if the Initial Developer is not the Participant) and all Contributors under Sections 2.1 and/or 2.2 of this License shall, upon 60 days notice from Participant terminate prospectively and automatically at the expiration of such 60 day notice period, unless if within such 60 day period You withdraw Your claim with respect to the Participant Software against such Participant either unilaterally or pursuant to a written agreement with Participant.
-
-     6.3. If You assert a patent infringement claim against Participant alleging that the Participant Software directly or indirectly infringes any patent where such claim is resolved (such as by license or settlement) prior to the initiation of patent infringement litigation, then the reasonable value of the licenses granted by such Participant under Sections 2.1 or 2.2 shall be taken into account in determining the amount or value of any payment or license.
-
-     6.4. In the event of termination under Sections 6.1 or 6.2 above, all end user licenses that have been validly granted by You or any distributor hereunder prior to termination (excluding licenses granted to You by any distributor) shall survive termination.
-
-7. LIMITATION OF LIABILITY.
-
-     UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED SOFTWARE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU.
-
-8. U.S. GOVERNMENT END USERS.
-
-     The Covered Software is a "commercial item," as that term is defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer software" (as that term is defined at 48 C.F.R. ? 252.227-7014(a)(1)) and "commercial computer software documentation" as such terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995), all U.S. Government End Users acquire Covered Software with only those rights set forth herein. This U.S. Government Rights clause is in lieu of, and supersedes, any other FAR, DFAR, or other clause or provision that addresses Government rights in computer software under this License.
-
-9. MISCELLANEOUS.
-
-     This License represents the complete agreement concerning subject matter hereof. If any provision of this License is held to be unenforceable, such provision shall be reformed only to the extent necessary to make it enforceable. This License shall be governed by the law of the jurisdiction specified in a notice contained within the Original Software (except to the extent applicable law, if any, provides otherwise), excluding such jurisdiction's conflict-of-law provisions. Any litigation relating to this License shall be subject to the jurisdiction of the courts located in the jurisdiction and venue specified in a notice contained within the Original Software, with the losing party responsible for costs, including, without limitation, court costs and reasonable attorneys' fees and expenses. The application of the United Nations Convention on Contracts for the International Sale of Goods is expressly excluded. Any law or regulation which provides that the language of a contract shall be construed against the drafter shall not apply to this License. You agree that You alone are responsible for compliance with the United States export administration regulations (and the export control laws and regulation of any other countries) when You use, distribute or otherwise make available any Covered Software.
-
-10. RESPONSIBILITY FOR CLAIMS.
-
-     As between Initial Developer and the Contributors, each party is responsible for claims and damages arising, directly or indirectly, out of its utilization of rights under this License and You agree to work with Initial Developer and Contributors to distribute such responsibility on an equitable basis. Nothing herein is intended or shall be deemed to constitute any admission of liability.
-
-----------
-NOTICE PURSUANT TO SECTION 9 OF THE COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL)
-The code released under the CDDL shall be governed by the laws of the State of California (excluding conflict-of-law provisions). Any litigation relating to this License shall be subject to the jurisdiction of the Federal Courts of the Northern District of California and the state courts of the State of California, with venue lying in Santa Clara County, California.
-
-
-
-
-The GNU General Public License (GPL) Version 2, June 1991
-
-
-Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.
-
-Preamble
-
-The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too.
-
-When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.
-
-To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.
-
-For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.
-
-We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.
-
-Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.
-
-Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.
-
-The precise terms and conditions for copying, distribution and modification follow.
-
-
-TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.
-
-1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.
-
-2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:
-
-   a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
-
-   b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
-
-   c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.
-
-3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
-
-   a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
-
-   b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
-
-   c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.
-
-If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.
-
-4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
-
-5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.
-
-6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.
-
-7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.
-
-It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.
-
-This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.
-
-8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.
-
-9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.
-
-10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.
-
-NO WARRANTY
-
-11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
-12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
-
-END OF TERMS AND CONDITIONS
-
-
-How to Apply These Terms to Your New Programs
-
-If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms.
-
-To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.
-
-   One line to give the program's name and a brief idea of what it does.
-
-   Copyright (C)
-
-   This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
-
-   This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this when it starts in an interactive mode:
-
-   Gnomovision version 69, Copyright (C) year name of author
-   Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names:
-
-   Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
-   signature of Ty Coon, 1 April 1989
-   Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License.
-
-
-"CLASSPATH" EXCEPTION TO THE GPL VERSION 2
-
-Certain source files distributed by Oracle are subject to the following clarification and special exception to the GPL Version 2, but only where Oracle has expressly included in the particular source file's header the words "Oracle designates this particular file as subject to the "Classpath" exception as provided by Oracle in the License file that accompanied this code."
-
-Linking this library statically or dynamically with other modules is making a combined work based on this library.  Thus, the terms and conditions of the GNU General Public License Version 2 cover the whole combination.
-
-As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module.  An independent module is a module which is not derived from or based on this library.  If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so.  If you do not wish to do so, delete this exception statement from your version.
diff --git a/enterprise/j2ee.dd.webservice/external/netbeans-license.txt b/enterprise/j2ee.dd.webservice/external/netbeans-license.txt
deleted file mode 100644
index a01c72ee18..0000000000
--- a/enterprise/j2ee.dd.webservice/external/netbeans-license.txt
+++ /dev/null
@@ -1,141 +0,0 @@
-COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
-
-1. Definitions.
-1.1. "Contributor" means each individual or entity that creates or contributes to the creation of Modifications.
-1.2. "Contributor Version" means the combination of the Original Software, prior Modifications used by a Contributor (if any), and the Modifications made by that particular Contributor.
-1.3. "Covered Software" means (a) the Original Software, or (b) Modifications, or (c) the combination of files containing Original Software with files containing Modifications, in each case including portions thereof.
-1.4. "Executable" means the Covered Software in any form other than Source Code.
-1.5. "Initial Developer" means the individual or entity that first makes Original Software available under this License.
-1.6. "Larger Work" means a work which combines Covered Software or portions thereof with code not governed by the terms of this License.
-1.7. "License" means this document.
-1.8. "Licensable" means having the right to grant, to the maximum extent possible, whether at the time of the initial grant or subsequently acquired, any and all of the rights conveyed herein.
-1.9 "Modifications" means the Source Code and Executable form of any of the following:
-A. Any file that results from an addition to, deletion from or modification of the contents of a file containing Original Software or previous Modifications;
-B. Any new file that contains any part of the Original Software or previous Modification; or
-C. Any new file that is contributed or otherwise made available under the terms of this License.
-1.10. "Original Software" means the Source Code and Executable form of computer software code that is originally released under this License.
-1.11. "Patent Claims" means any patent claim(s), now owned or hereafter acquired, including without limitation, method, process, and apparatus claims, in any patent Licensable by grantor.
-1.12. "Source Code" means (a) the common form of computer software code in which modifications are made and (b) associated documentation included in or with such code.
-1.13. "You" (or "Your") means an individual or a legal entity exercising rights under, and complying with all of the terms of, this License. For legal entities, "You" includes any entity which controls, is controlled by, or is under common control with You. For purposes of this definition, "control" means (a) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (b) ownership of more than fifty percent (50%) of the outstanding shares or beneficial ownership of such entity.
-2. License Grants.
-2.1. The Initial Developer Grant.
-Conditioned upon Your compliance with Section 3.1 below and subject to third party intellectual property claims, the Initial Developer hereby grants You a world-wide, royalty-free, non-exclusive license:
-(a) under intellectual property rights (other than patent or trademark) Licensable by Initial Developer, to use, reproduce, modify, display, perform, sublicense and distribute the Original Software (or portions thereof), with or without Modifications, and/or as part of a Larger Work; and
-(b) under Patent Claims infringed by the making, using or selling of Original Software, to make, have made, use, practice, sell, and offer for sale, and/or otherwise dispose of the Original Software (or portions thereof).
-(c) The licenses granted in Sections 2.1(a) and (b) are effective on the date Initial Developer first distributes or otherwise makes the Original Software available to a third party under the terms of this License.
-(d) Notwithstanding Section 2.1(b) above, no patent license is granted: (1) for code that You delete from the Original Software, or (2) for infringements caused by: (i) the modification of the Original Software, or (ii) the combination of the Original Software with other software or devices.
-2.2. Contributor Grant.
-Conditioned upon Your compliance with Section 3.1 below and subject to third party intellectual property claims, each Contributor hereby grants You a world-wide, royalty-free, non-exclusive license:
-(a) under intellectual property rights (other than patent or trademark) Licensable by Contributor to use, reproduce, modify, display, perform, sublicense and distribute the Modifications created by such Contributor (or portions thereof), either on an unmodified basis, with other Modifications, as Covered Software and/or as part of a Larger Work; and
-(b) under Patent Claims infringed by the making, using, or selling of Modifications made by that Contributor either alone and/or in combination with its Contributor Version (or portions of such combination), to make, use, sell, offer for sale, have made, and/or otherwise dispose of: (1) Modifications made by that Contributor (or portions thereof); and (2) the combination of Modifications made by that Contributor with its Contributor Version (or portions of such combination).
-(c) The licenses granted in Sections 2.2(a) and 2.2(b) are effective on the date Contributor first distributes or otherwise makes the Modifications available to a third party.
-(d) Notwithstanding Section 2.2(b) above, no patent license is granted: (1) for any code that Contributor has deleted from the Contributor Version; (2) for infringements caused by: (i) third party modifications of Contributor Version, or (ii) the combination of Modifications made by that Contributor with other software (except as part of the Contributor Version) or other devices; or (3) under Patent Claims infringed by Covered Software in the absence of Modifications made by that Contributor.
-3. Distribution Obligations.
-3.1. Availability of Source Code.
-Any Covered Software that You distribute or otherwise make available in Executable form must also be made available in Source Code form and that Source Code form must be distributed only under the terms of this License. You must include a copy of this License with every copy of the Source Code form of the Covered Software You distribute or otherwise make available. You must inform recipients of any such Covered Software in Executable form as to how they can obtain such Covered Software in Source Code form in a reasonable manner on or through a medium customarily used for software exchange.
-3.2. Modifications.
-The Modifications that You create or to which You contribute are governed by the terms of this License. You represent that You believe Your Modifications are Your original creation(s) and/or You have sufficient rights to grant the rights conveyed by this License.
-3.3. Required Notices.
-You must include a notice in each of Your Modifications that identifies You as the Contributor of the Modification. You may not remove or alter any copyright, patent or trademark notices contained within the Covered Software, or any notices of licensing or any descriptive text giving attribution to any Contributor or the Initial Developer.
-3.4. Application of Additional Terms.
-You may not offer or impose any terms on any Covered Software in Source Code form that alters or restricts the applicable version of this License or the recipients. rights hereunder. You may choose to offer, and to charge a fee for, warranty, support, indemnity or liability obligations to one or more recipients of Covered Software. However, you may do so only on Your own behalf, and not on behalf of the Initial Developer or any Contributor. You must make it absolutely clear that any such warranty, support, indemnity or liability obligation is offered by You alone, and You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of warranty, support, indemnity or liability terms You offer.
-3.5. Distribution of Executable Versions.
-You may distribute the Executable form of the Covered Software under the terms of this License or under the terms of a license of Your choice, which may contain terms different from this License, provided that You are in compliance with the terms of this License and that the license for the Executable form does not attempt to limit or alter the recipient.s rights in the Source Code form from the rights set forth in this License. If You distribute the Covered Software in Executable form under a different license, You must make it absolutely clear that any terms which differ from this License are offered by You alone, not by the Initial Developer or Contributor. You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of any such terms You offer.
-3.6. Larger Works.
-You may create a Larger Work by combining Covered Software with other code not governed by the terms of this License and distribute the Larger Work as a single product. In such a case, You must make sure the requirements of this License are fulfilled for the Covered Software.
-4. Versions of the License.
-4.1. New Versions.
-Oracle Corp. is the initial license steward and may publish revised and/or new versions of this License from time to time. Each version will be given a distinguishing version number. Except as provided in Section 4.3, no one other than the license steward has the right to modify this License.
-4.2. Effect of New Versions.
-You may always continue to use, distribute or otherwise make the Covered Software available under the terms of the version of the License under which You originally received the Covered Software. If the Initial Developer includes a notice in the Original Software prohibiting it from being distributed or otherwise made available under any subsequent version of the License, You must distribute and make the Covered Software available under the terms of the version of the License under which You originally received the Covered Software. Otherwise, You may also choose to use, distribute or otherwise make the Covered Software available under the terms of any subsequent version of the License published by the license steward.
-4.3. Modified Versions.
-When You are an Initial Developer and You want to create a new license for Your Original Software, You may create and use a modified version of this License if You: (a) rename the license and remove any references to the name of the license steward (except to note that the license differs from this License); and (b) otherwise make it clear that the license contains terms which differ from this License.
-5. DISCLAIMER OF WARRANTY.
-COVERED SOFTWARE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED SOFTWARE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED SOFTWARE IS WITH YOU. SHOULD ANY COVERED SOFTWARE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY COVERED SOFTWARE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.
-6. TERMINATION.
-6.1. This License and the rights granted hereunder will terminate automatically if You fail to comply with terms herein and fail to cure such breach within 30 days of becoming aware of the breach. Provisions which, by their nature, must remain in effect beyond the termination of this License shall survive.
-6.2. If You assert a patent infringement claim (excluding declaratory judgment actions) against Initial Developer or a Contributor (the Initial Developer or Contributor against whom You assert such claim is referred to as "Participant") alleging that the Participant Software (meaning the Contributor Version where the Participant is a Contributor or the Original Software where the Participant is the Initial Developer) directly or indirectly infringes any patent, then any and all rights granted directly or indirectly to You by such Participant, the Initial Developer (if the Initial Developer is not the Participant) and all Contributors under Sections 2.1 and/or 2.2 of this License shall, upon 60 days notice from Participant terminate prospectively and automatically at the expiration of such 60 day notice period, unless if within such 60 day period You withdraw Your claim with respect to the Participant Software against such Participant either unilaterally or pursuant to a written agreement with Participant.
-6.3. In the event of termination under Sections 6.1 or 6.2 above, all end user licenses that have been validly granted by You or any distributor hereunder prior to termination (excluding licenses granted to You by any distributor) shall survive termination.
-7. LIMITATION OF LIABILITY.
-UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED SOFTWARE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOST PROFITS, LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY RESULTING FROM SUCH PARTY.S NEGLIGENCE TO THE EXTENT APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU.
-8. U.S. GOVERNMENT END USERS.
-The Covered Software is a "commercial item," as that term is defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer software" (as that term is defined at 48 C.F.R. .252.227-7014(a)(1)) and "commercial computer software documentation" as such terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995), all U.S. Government End Users acquire Covered Software with only those rights set forth herein. This U.S. Government Rights clause is in lieu of, and supersedes, any other FAR, DFAR, or other clause or provision that addresses Government rights in computer software under this License.
-9. MISCELLANEOUS.
-This License represents the complete agreement concerning subject matter hereof. If any provision of this License is held to be unenforceable, such provision shall be reformed only to the extent necessary to make it enforceable. This License shall be governed by the law of the jurisdiction specified in a notice contained within the Original Software (except to the extent applicable law, if any, provides otherwise), excluding such jurisdiction.s conflict-of-law provisions. Any litigation relating to this License shall be subject to the jurisdiction of the courts located in the jurisdiction and venue specified in a notice contained within the Original Software, with the losing party responsible for costs, including, without limitation, court costs and reasonable attorneys. fees and expenses. The application of the United Nations Convention on Contracts for the International Sale of Goods is expressly excluded. Any law or regulation which provides that the language of a contract shall be construed against the drafter shall not apply to this License. You agree that You alone are responsible for compliance with the United States export administration regulations (and the export control laws and regulation of any other countries) when You use, distribute or otherwise make available any Covered Software.
-10. RESPONSIBILITY FOR CLAIMS.
-As between Initial Developer and the Contributors, each party is responsible for claims and damages arising, directly or indirectly, out of its utilization of rights under this License and You agree to work with Initial Developer and Contributors to distribute such responsibility on an equitable basis. Nothing herein is intended or shall be deemed to constitute any admission of liability.
-NOTICE PURSUANT TO SECTION 9 OF THE COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL)
-The code released under the CDDL shall be governed by the laws of the State of California (excluding conflict-of-law provisions). Any litigation relating to this License shall be subject to the jurisdiction of the Federal Courts of the Northern District of California and the state courts of the State of California, with venue lying in Santa Clara County, California.
-The GNU General Public License (GPL) Version 2, June 1991
-
-Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.
-Preamble
-The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too.
-When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.
-To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.
-For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.
-We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.
-Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.
-Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.
-The precise terms and conditions for copying, distribution and modification follow.
-TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".
-Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.
-1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.
-You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.
-2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:
-a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
-b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
-c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)
-These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.
-Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.
-In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.
-3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
-a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
-b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
-c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)
-The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.
-If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.
-4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
-5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.
-6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.
-7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.
-If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.
-It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.
-This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.
-8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.
-9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
-Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.
-10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.
-NO WARRANTY
-11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
-END OF TERMS AND CONDITIONS
-How to Apply These Terms to Your New Programs
-If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms.
-To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.
-One line to give the program's name and a brief idea of what it does.
-Copyright (C)
-This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
-This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
-You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-Also add information on how to contact you by electronic and paper mail.
-If the program is interactive, make it output a short notice like this when it starts in an interactive mode:
-Gnomovision version 69, Copyright (C) year name of author
-Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details.
-The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program.
-You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names:
-Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker.
-signature of Ty Coon, 1 April 1989
-Ty Coon, President of Vice
-This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License.
-"CLASSPATH" EXCEPTION TO THE GPL VERSION 2
-Certain source files distributed by Oracle America, Inc. and/or its affiliates are subject to the following clarification and special exception to the GPLv2, based on the GNU Project exception for its Classpath libraries, known as the GNU Classpath Exception, but only where Oracle has expressly included in the particular source file's header the words "Oracle designates this particular file as subject to the "Classpath" exception as provided by Oracle in the LICENSE file that accompanied this code."
-You should also note that Oracle includes multiple, independent programs in this software package. Some of those programs are provided under licenses deemed incompatible with the GPLv2 by the Free Software Foundation and others. For example, the package includes programs licensed under the Apache License, Version 2.0. Such programs are licensed to you under their original licenses.
-Oracle facilitates your further distribution of this package by adding the Classpath Exception to the necessary parts of its GPLv2 code, which permits you to use that code in combination with other independent modules not licensed under the GPLv2. However, note that this would not permit you to commingle code under an incompatible license with Oracle's GPLv2 licensed code by, for example, cutting and pasting such code into a file also containing Oracle's GPLv2 licensed code and then distributing the result.
-Additionally, if you were to remove the Classpath Exception from any of the files to which it applies and distribute the result, you would likely be required to license some or all of the other code in that distribution under the GPLv2 as well, and since the GPLv2 is incompatible with the license terms of some items included in the distribution by Oracle, removing the Classpath Exception could therefore effectively compromise your ability to further distribute the package.
-Proceed with caution and we recommend that you obtain the advice of a lawyer skilled in open source matters before removing the Classpath Exception or making modifications to this package which may subsequently be redistributed and/or involve the use of third party software.
-CLASSPATH EXCEPTION
-Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License version 2 cover the whole combination.
-As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.
diff --git a/enterprise/j2ee.dd.webservice/external/w3c-license.txt b/enterprise/j2ee.dd.webservice/external/w3c-license.txt
deleted file mode 100644
index 78b5539394..0000000000
--- a/enterprise/j2ee.dd.webservice/external/w3c-license.txt
+++ /dev/null
@@ -1,37 +0,0 @@
-W3C Software and Document Notice and License
-
-
-
-Status: This license takes effect 13 May, 2015.
-
-
-
-This work is being provided by the copyright holders under the following license.
-
-License
-
-By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions.
-
-Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications:
-.The full text of this NOTICE in a location viewable to users of the redistributed or derivative work.
-.Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included.
-.Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright � [YEAR] W3C� (MIT, ERCIM, Keio, Beihang)." 
-
-Disclaimers
-
-THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
-
-COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT.
-
-The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders.
-
-Notes
-
-
-
-This version: http://www.w3.org/Consortium/Legal/2015/copyright-software-and-document
-
-Previous version: http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
-
-This version makes clear that the license is applicable to both software and text, by changing the name and substituting "work" for instances of "software and its documentation." It moves "notice of changes or modifications to the files" to the copyright notice, to make clear that the license is compatible with other liberal licenses.
-
diff --git a/enterprise/j2ee.dd.webservice/licenseinfo.xml b/enterprise/j2ee.dd.webservice/licenseinfo.xml
new file mode 100644
index 0000000000..80c4ac7c44
--- /dev/null
+++ b/enterprise/j2ee.dd.webservice/licenseinfo.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+-->
+<licenseinfo>
+    <fileset>
+        <file>src/org/netbeans/modules/j2ee/dd/impl/resources/j2ee_1_4.xsd</file>
+        <file>src/org/netbeans/modules/j2ee/dd/impl/resources/j2ee_web_services_1_1.xsd</file>
+        <file>src/org/netbeans/modules/j2ee/dd/impl/resources/j2ee_web_services_client_1_1.xsd</file>
+        <file>src/org/netbeans/modules/j2ee/dd/impl/resources/javaee_5.xsd</file>
+        <file>src/org/netbeans/modules/j2ee/dd/impl/resources/javaee_web_services_1_2.xsd</file>
+        <file>src/org/netbeans/modules/j2ee/dd/impl/resources/javaee_web_services_client_1_2.xsd</file>
+        <license ref="CDDL-1.1" />
+        <comment type="CATEGORY_B" />
+    </fileset>
+    <fileset>
+        <file>src/org/netbeans/modules/j2ee/dd/impl/resources/XMLSchema.dtd</file>
+        <file>src/org/netbeans/modules/j2ee/dd/impl/resources/datatypes.dtd</file>
+        <file>src/org/netbeans/modules/j2ee/dd/impl/resources/xml.xsd</file>
+        <license ref="W3C2" />
+        <comment type="CATEGORY_B" />
+    </fileset>
+</licenseinfo>
diff --git a/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/XMLSchema.dtd b/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/XMLSchema.dtd
new file mode 100644
index 0000000000..aeedc4c8e8
--- /dev/null
+++ b/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/XMLSchema.dtd
@@ -0,0 +1,451 @@
+<!--
+
+W3C Software and Document Notice and License
+
+This work is being provided by the copyright holders under the following license.
+
+License
+
+By obtaining and/or copying this work, you (the licensee) agree that you have
+read, understood, and will comply with the following terms and conditions.
+
+Permission to copy, modify, and distribute this work, with or without
+modification, for any purpose and without fee or royalty is hereby granted,
+provided that you include the following on ALL copies of the work or portions
+thereof, including modifications:
+
+- The full text of this NOTICE in a location viewable to users of the
+  redistributed or derivative work.
+- Any pre-existing intellectual property disclaimers, notices, or terms and
+  conditions. If none exist, the W3C Software and Document Short Notice should
+  be included.
+- Notice of any changes or modifications, through a copyright statement on the
+  new code or document such as "This software or document includes material
+  copied from or derived from [title and URI of the W3C document].
+  Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)."
+
+Disclaimers
+
+THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR
+ WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF
+MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE
+SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS,
+TRADEMARKS OR OTHER RIGHTS.
+
+COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT.
+
+The name and trademarks of copyright holders may NOT be used in advertising or
+publicity pertaining to the work without specific, written prior permission.
+Title to copyright in this work will at all times remain with copyright
+holders.
+
+Changes:
+
+- File content downloaded from https://www.w3.org/2001/XMLSchema.dtd
+- Added license information from https://www.w3.org/Consortium/Legal/2015/copyright-software-and-document
+
+-->
+
+<!-- DTD for XML Schemas: Part 1: Structures
+     Public Identifier: "-//W3C//DTD XMLSCHEMA 200102//EN"
+     Official Location: http://www.w3.org/2001/XMLSchema.dtd -->
+<!-- $Id$ -->
+<!-- Note this DTD is NOT normative, or even definitive. -->           <!--d-->
+<!-- prose copy in the structures REC is the definitive version -->    <!--d-->
+<!-- (which shouldn't differ from this one except for this -->         <!--d-->
+<!-- comment and entity expansions, but just in case) -->              <!--d-->
+<!-- With the exception of cases with multiple namespace
+     prefixes for the XML Schema namespace, any XML document which is
+     not valid per this DTD given redefinitions in its internal subset of the
+     'p' and 's' parameter entities below appropriate to its namespace
+     declaration of the XML Schema namespace is almost certainly not
+     a valid schema. -->
+
+<!-- The simpleType element and its constituent parts
+     are defined in XML Schema: Part 2: Datatypes -->
+<!ENTITY % xs-datatypes PUBLIC 'datatypes' 'datatypes.dtd' >
+
+<!ENTITY % p 'xs:'> <!-- can be overriden in the internal subset of a
+                         schema document to establish a different
+                         namespace prefix -->
+<!ENTITY % s ':xs'> <!-- if %p is defined (e.g. as foo:) then you must
+                         also define %s as the suffix for the appropriate
+                         namespace declaration (e.g. :foo) -->
+<!ENTITY % nds 'xmlns%s;'>
+
+<!-- Define all the element names, with optional prefix -->
+<!ENTITY % schema "%p;schema">
+<!ENTITY % complexType "%p;complexType">
+<!ENTITY % complexContent "%p;complexContent">
+<!ENTITY % simpleContent "%p;simpleContent">
+<!ENTITY % extension "%p;extension">
+<!ENTITY % element "%p;element">
+<!ENTITY % unique "%p;unique">
+<!ENTITY % key "%p;key">
+<!ENTITY % keyref "%p;keyref">
+<!ENTITY % selector "%p;selector">
+<!ENTITY % field "%p;field">
+<!ENTITY % group "%p;group">
+<!ENTITY % all "%p;all">
+<!ENTITY % choice "%p;choice">
+<!ENTITY % sequence "%p;sequence">
+<!ENTITY % any "%p;any">
+<!ENTITY % anyAttribute "%p;anyAttribute">
+<!ENTITY % attribute "%p;attribute">
+<!ENTITY % attributeGroup "%p;attributeGroup">
+<!ENTITY % include "%p;include">
+<!ENTITY % import "%p;import">
+<!ENTITY % redefine "%p;redefine">
+<!ENTITY % notation "%p;notation">
+
+<!-- annotation elements -->
+<!ENTITY % annotation "%p;annotation">
+<!ENTITY % appinfo "%p;appinfo">
+<!ENTITY % documentation "%p;documentation">
+
+<!-- Customisation entities for the ATTLIST of each element type.
+     Define one of these if your schema takes advantage of the
+     anyAttribute='##other' in the schema for schemas -->
+
+<!ENTITY % schemaAttrs ''>
+<!ENTITY % complexTypeAttrs ''>
+<!ENTITY % complexContentAttrs ''>
+<!ENTITY % simpleContentAttrs ''>
+<!ENTITY % extensionAttrs ''>
+<!ENTITY % elementAttrs ''>
+<!ENTITY % groupAttrs ''>
+<!ENTITY % allAttrs ''>
+<!ENTITY % choiceAttrs ''>
+<!ENTITY % sequenceAttrs ''>
+<!ENTITY % anyAttrs ''>
+<!ENTITY % anyAttributeAttrs ''>
+<!ENTITY % attributeAttrs ''>
+<!ENTITY % attributeGroupAttrs ''>
+<!ENTITY % uniqueAttrs ''>
+<!ENTITY % keyAttrs ''>
+<!ENTITY % keyrefAttrs ''>
+<!ENTITY % selectorAttrs ''>
+<!ENTITY % fieldAttrs ''>
+<!ENTITY % includeAttrs ''>
+<!ENTITY % importAttrs ''>
+<!ENTITY % redefineAttrs ''>
+<!ENTITY % notationAttrs ''>
+<!ENTITY % annotationAttrs ''>
+<!ENTITY % appinfoAttrs ''>
+<!ENTITY % documentationAttrs ''>
+
+<!ENTITY % complexDerivationSet "CDATA">
+      <!-- #all or space-separated list drawn from derivationChoice -->
+<!ENTITY % blockSet "CDATA">
+      <!-- #all or space-separated list drawn from
+                      derivationChoice + 'substitution' -->
+
+<!ENTITY % mgs '%all; | %choice; | %sequence;'>
+<!ENTITY % cs '%choice; | %sequence;'>
+<!ENTITY % formValues '(qualified|unqualified)'>
+
+
+<!ENTITY % attrDecls    '((%attribute;| %attributeGroup;)*,(%anyAttribute;)?)'>
+
+<!ENTITY % particleAndAttrs '((%mgs; | %group;)?, %attrDecls;)'>
+
+<!-- This is used in part2 -->
+<!ENTITY % restriction1 '((%mgs; | %group;)?)'>
+
+%xs-datatypes;
+
+<!-- the duplication below is to produce an unambiguous content model
+     which allows annotation everywhere -->
+<!ELEMENT %schema; ((%include; | %import; | %redefine; | %annotation;)*,
+                    ((%simpleType; | %complexType;
+                      | %element; | %attribute;
+                      | %attributeGroup; | %group;
+                      | %notation; ),
+                     (%annotation;)*)* )>
+<!ATTLIST %schema;
+   targetNamespace      %URIref;               #IMPLIED
+   version              CDATA                  #IMPLIED
+   %nds;                %URIref;               #FIXED 'http://www.w3.org/2001/XMLSchema'
+   xmlns                CDATA                  #IMPLIED
+   finalDefault         %complexDerivationSet; ''
+   blockDefault         %blockSet;             ''
+   id                   ID                     #IMPLIED
+   elementFormDefault   %formValues;           'unqualified'
+   attributeFormDefault %formValues;           'unqualified'
+   xml:lang             CDATA                  #IMPLIED
+   %schemaAttrs;>
+<!-- Note the xmlns declaration is NOT in the Schema for Schemas,
+     because at the Infoset level where schemas operate,
+     xmlns(:prefix) is NOT an attribute! -->
+<!-- The declaration of xmlns is a convenience for schema authors -->
+ 
+<!-- The id attribute here and below is for use in external references
+     from non-schemas using simple fragment identifiers.
+     It is NOT used for schema-to-schema reference, internal or
+     external. -->
+
+<!-- a type is a named content type specification which allows attribute
+     declarations-->
+<!-- -->
+
+<!ELEMENT %complexType; ((%annotation;)?,
+                         (%simpleContent;|%complexContent;|
+                          %particleAndAttrs;))>
+
+<!ATTLIST %complexType;
+          name      %NCName;                        #IMPLIED
+          id        ID                              #IMPLIED
+          abstract  %boolean;                       #IMPLIED
+          final     %complexDerivationSet;          #IMPLIED
+          block     %complexDerivationSet;          #IMPLIED
+          mixed (true|false) 'false'
+          %complexTypeAttrs;>
+
+<!-- particleAndAttrs is shorthand for a root type -->
+<!-- mixed is disallowed if simpleContent, overriden if complexContent
+     has one too. -->
+
+<!-- If anyAttribute appears in one or more referenced attributeGroups
+     and/or explicitly, the intersection of the permissions is used -->
+
+<!ELEMENT %complexContent; ((%annotation;)?, (%restriction;|%extension;))>
+<!ATTLIST %complexContent;
+          mixed (true|false) #IMPLIED
+          id    ID           #IMPLIED
+          %complexContentAttrs;>
+
+<!-- restriction should use the branch defined above, not the simple
+     one from part2; extension should use the full model  -->
+
+<!ELEMENT %simpleContent; ((%annotation;)?, (%restriction;|%extension;))>
+<!ATTLIST %simpleContent;
+          id    ID           #IMPLIED
+          %simpleContentAttrs;>
+
+<!-- restriction should use the simple branch from part2, not the 
+     one defined above; extension should have no particle  -->
+
+<!ELEMENT %extension; ((%annotation;)?, (%particleAndAttrs;))>
+<!ATTLIST %extension;
+          base  %QName;      #REQUIRED
+          id    ID           #IMPLIED
+          %extensionAttrs;>
+
+<!-- an element is declared by either:
+ a name and a type (either nested or referenced via the type attribute)
+ or a ref to an existing element declaration -->
+
+<!ELEMENT %element; ((%annotation;)?, (%complexType;| %simpleType;)?,
+                     (%unique; | %key; | %keyref;)*)>
+<!-- simpleType or complexType only if no type|ref attribute -->
+<!-- ref not allowed at top level -->
+<!ATTLIST %element;
+            name               %NCName;               #IMPLIED
+            id                 ID                     #IMPLIED
+            ref                %QName;                #IMPLIED
+            type               %QName;                #IMPLIED
+            minOccurs          %nonNegativeInteger;   #IMPLIED
+            maxOccurs          CDATA                  #IMPLIED
+            nillable           %boolean;              #IMPLIED
+            substitutionGroup  %QName;                #IMPLIED
+            abstract           %boolean;              #IMPLIED
+            final              %complexDerivationSet; #IMPLIED
+            block              %blockSet;             #IMPLIED
+            default            CDATA                  #IMPLIED
+            fixed              CDATA                  #IMPLIED
+            form               %formValues;           #IMPLIED
+            %elementAttrs;>
+<!-- type and ref are mutually exclusive.
+     name and ref are mutually exclusive, one is required -->
+<!-- In the absence of type AND ref, type defaults to type of
+     substitutionGroup, if any, else the ur-type, i.e. unconstrained -->
+<!-- default and fixed are mutually exclusive -->
+
+<!ELEMENT %group; ((%annotation;)?,(%mgs;)?)>
+<!ATTLIST %group; 
+          name        %NCName;               #IMPLIED
+          ref         %QName;                #IMPLIED
+          minOccurs   %nonNegativeInteger;   #IMPLIED
+          maxOccurs   CDATA                  #IMPLIED
+          id          ID                     #IMPLIED
+          %groupAttrs;>
+
+<!ELEMENT %all; ((%annotation;)?, (%element;)*)>
+<!ATTLIST %all;
+          minOccurs   (1)                    #IMPLIED
+          maxOccurs   (1)                    #IMPLIED
+          id          ID                     #IMPLIED
+          %allAttrs;>
+
+<!ELEMENT %choice; ((%annotation;)?, (%element;| %group;| %cs; | %any;)*)>
+<!ATTLIST %choice;
+          minOccurs   %nonNegativeInteger;   #IMPLIED
+          maxOccurs   CDATA                  #IMPLIED
+          id          ID                     #IMPLIED
+          %choiceAttrs;>
+
+<!ELEMENT %sequence; ((%annotation;)?, (%element;| %group;| %cs; | %any;)*)>
+<!ATTLIST %sequence;
+          minOccurs   %nonNegativeInteger;   #IMPLIED
+          maxOccurs   CDATA                  #IMPLIED
+          id          ID                     #IMPLIED
+          %sequenceAttrs;>
+
+<!-- an anonymous grouping in a model, or
+     a top-level named group definition, or a reference to same -->
+
+<!-- Note that if order is 'all', group is not allowed inside.
+     If order is 'all' THIS group must be alone (or referenced alone) at
+     the top level of a content model -->
+<!-- If order is 'all', minOccurs==maxOccurs==1 on element/any inside -->
+<!-- Should allow minOccurs=0 inside order='all' . . . -->
+
+<!ELEMENT %any; (%annotation;)?>
+<!ATTLIST %any;
+            namespace       CDATA                  '##any'
+            processContents (skip|lax|strict)      'strict'
+            minOccurs       %nonNegativeInteger;   '1'
+            maxOccurs       CDATA                  '1'
+            id              ID                     #IMPLIED
+            %anyAttrs;>
+
+<!-- namespace is interpreted as follows:
+                  ##any      - - any non-conflicting WFXML at all
+
+                  ##other    - - any non-conflicting WFXML from namespace other
+                                  than targetNamespace
+
+                  ##local    - - any unqualified non-conflicting WFXML/attribute
+                  one or     - - any non-conflicting WFXML from
+                  more URI        the listed namespaces
+                  references
+
+                  ##targetNamespace ##local may appear in the above list,
+                    with the obvious meaning -->
+
+<!ELEMENT %anyAttribute; (%annotation;)?>
+<!ATTLIST %anyAttribute;
+            namespace       CDATA              '##any'
+            processContents (skip|lax|strict)  'strict'
+            id              ID                 #IMPLIED
+            %anyAttributeAttrs;>
+<!-- namespace is interpreted as for 'any' above -->
+
+<!-- simpleType only if no type|ref attribute -->
+<!-- ref not allowed at top level, name iff at top level -->
+<!ELEMENT %attribute; ((%annotation;)?, (%simpleType;)?)>
+<!ATTLIST %attribute;
+          name      %NCName;      #IMPLIED
+          id        ID            #IMPLIED
+          ref       %QName;       #IMPLIED
+          type      %QName;       #IMPLIED
+          use       (prohibited|optional|required) #IMPLIED
+          default   CDATA         #IMPLIED
+          fixed     CDATA         #IMPLIED
+          form      %formValues;  #IMPLIED
+          %attributeAttrs;>
+<!-- type and ref are mutually exclusive.
+     name and ref are mutually exclusive, one is required -->
+<!-- default for use is optional when nested, none otherwise -->
+<!-- default and fixed are mutually exclusive -->
+<!-- type attr and simpleType content are mutually exclusive -->
+
+<!-- an attributeGroup is a named collection of attribute decls, or a
+     reference thereto -->
+<!ELEMENT %attributeGroup; ((%annotation;)?,
+                       (%attribute; | %attributeGroup;)*,
+                       (%anyAttribute;)?) >
+<!ATTLIST %attributeGroup;
+                 name       %NCName;       #IMPLIED
+                 id         ID             #IMPLIED
+                 ref        %QName;        #IMPLIED
+                 %attributeGroupAttrs;>
+
+<!-- ref iff no content, no name.  ref iff not top level -->
+
+<!-- better reference mechanisms -->
+<!ELEMENT %unique; ((%annotation;)?, %selector;, (%field;)+)>
+<!ATTLIST %unique;
+          name     %NCName;       #REQUIRED
+	  id       ID             #IMPLIED
+	  %uniqueAttrs;>
+
+<!ELEMENT %key;    ((%annotation;)?, %selector;, (%field;)+)>
+<!ATTLIST %key;
+          name     %NCName;       #REQUIRED
+	  id       ID             #IMPLIED
+	  %keyAttrs;>
+
+<!ELEMENT %keyref; ((%annotation;)?, %selector;, (%field;)+)>
+<!ATTLIST %keyref;
+          name     %NCName;       #REQUIRED
+	  refer    %QName;        #REQUIRED
+	  id       ID             #IMPLIED
+	  %keyrefAttrs;>
+
+<!ELEMENT %selector; ((%annotation;)?)>
+<!ATTLIST %selector;
+          xpath %XPathExpr; #REQUIRED
+          id    ID          #IMPLIED
+          %selectorAttrs;>
+<!ELEMENT %field; ((%annotation;)?)>
+<!ATTLIST %field;
+          xpath %XPathExpr; #REQUIRED
+          id    ID          #IMPLIED
+          %fieldAttrs;>
+
+<!-- Schema combination mechanisms -->
+<!ELEMENT %include; (%annotation;)?>
+<!ATTLIST %include;
+          schemaLocation %URIref; #REQUIRED
+          id             ID       #IMPLIED
+          %includeAttrs;>
+
+<!ELEMENT %import; (%annotation;)?>
+<!ATTLIST %import;
+          namespace      %URIref; #IMPLIED
+          schemaLocation %URIref; #IMPLIED
+          id             ID       #IMPLIED
+          %importAttrs;>
+
+<!ELEMENT %redefine; (%annotation; | %simpleType; | %complexType; |
+                      %attributeGroup; | %group;)*>
+<!ATTLIST %redefine;
+          schemaLocation %URIref; #REQUIRED
+          id             ID       #IMPLIED
+          %redefineAttrs;>
+
+<!ELEMENT %notation; (%annotation;)?>
+<!ATTLIST %notation;
+	  name        %NCName;    #REQUIRED
+	  id          ID          #IMPLIED
+	  public      CDATA       #REQUIRED
+	  system      %URIref;    #IMPLIED
+	  %notationAttrs;>
+
+<!-- Annotation is either application information or documentation -->
+<!-- By having these here they are available for datatypes as well
+     as all the structures elements -->
+
+<!ELEMENT %annotation; (%appinfo; | %documentation;)*>
+<!ATTLIST %annotation; %annotationAttrs;>
+
+<!-- User must define annotation elements in internal subset for this
+     to work -->
+<!ELEMENT %appinfo; ANY>   <!-- too restrictive -->
+<!ATTLIST %appinfo;
+          source     %URIref;      #IMPLIED
+          id         ID         #IMPLIED
+          %appinfoAttrs;>
+<!ELEMENT %documentation; ANY>   <!-- too restrictive -->
+<!ATTLIST %documentation;
+          source     %URIref;   #IMPLIED
+          id         ID         #IMPLIED
+          xml:lang   CDATA      #IMPLIED
+          %documentationAttrs;>
+
+<!NOTATION XMLSchemaStructures PUBLIC
+           'structures' 'http://www.w3.org/2001/XMLSchema.xsd' >
+<!NOTATION XML PUBLIC
+           'REC-xml-1998-0210' 'http://www.w3.org/TR/1998/REC-xml-19980210' >
diff --git a/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/datatypes.dtd b/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/datatypes.dtd
new file mode 100644
index 0000000000..25af49797f
--- /dev/null
+++ b/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/datatypes.dtd
@@ -0,0 +1,255 @@
+<!--
+
+W3C Software and Document Notice and License
+
+This work is being provided by the copyright holders under the following license.
+
+License
+
+By obtaining and/or copying this work, you (the licensee) agree that you have
+read, understood, and will comply with the following terms and conditions.
+
+Permission to copy, modify, and distribute this work, with or without
+modification, for any purpose and without fee or royalty is hereby granted,
+provided that you include the following on ALL copies of the work or portions
+thereof, including modifications:
+
+- The full text of this NOTICE in a location viewable to users of the
+  redistributed or derivative work.
+- Any pre-existing intellectual property disclaimers, notices, or terms and
+  conditions. If none exist, the W3C Software and Document Short Notice should
+  be included.
+- Notice of any changes or modifications, through a copyright statement on the
+  new code or document such as "This software or document includes material
+  copied from or derived from [title and URI of the W3C document].
+  Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)."
+
+Disclaimers
+
+THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR
+ WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF
+MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE
+SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS,
+TRADEMARKS OR OTHER RIGHTS.
+
+COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT.
+
+The name and trademarks of copyright holders may NOT be used in advertising or
+publicity pertaining to the work without specific, written prior permission.
+Title to copyright in this work will at all times remain with copyright
+holders.
+
+Changes:
+
+- File content downloaded from https://www.w3.org/2001/datatypes.dtd
+- Added license information from https://www.w3.org/Consortium/Legal/2015/copyright-software-and-document
+
+-->
+
+<!-- DTD for XML Schemas: Part 1: Structures
+     Public Identifier: "-//W3C//DTD XMLSCHEMA 200102//EN"
+     Official Location: https://www.w3.org/2001/datatypes.dtd -->
+<!--
+        DTD for XML Schemas: Part 2: Datatypes
+        $Id$
+        Note this DTD is NOT normative, or even definitive. - - the
+        prose copy in the datatypes REC is the definitive version
+        (which shouldn't differ from this one except for this comment
+        and entity expansions, but just in case)
+  -->
+
+<!--
+        This DTD cannot be used on its own, it is intended
+        only for incorporation in XMLSchema.dtd, q.v.
+  -->
+
+<!-- Define all the element names, with optional prefix -->
+<!ENTITY % simpleType "%p;simpleType">
+<!ENTITY % restriction "%p;restriction">
+<!ENTITY % list "%p;list">
+<!ENTITY % union "%p;union">
+<!ENTITY % maxExclusive "%p;maxExclusive">
+<!ENTITY % minExclusive "%p;minExclusive">
+<!ENTITY % maxInclusive "%p;maxInclusive">
+<!ENTITY % minInclusive "%p;minInclusive">
+<!ENTITY % totalDigits "%p;totalDigits">
+<!ENTITY % fractionDigits "%p;fractionDigits">
+<!ENTITY % length "%p;length">
+<!ENTITY % minLength "%p;minLength">
+<!ENTITY % maxLength "%p;maxLength">
+<!ENTITY % enumeration "%p;enumeration">
+<!ENTITY % whiteSpace "%p;whiteSpace">
+<!ENTITY % pattern "%p;pattern">
+
+<!--
+        Customisation entities for the ATTLIST of each element
+        type. Define one of these if your schema takes advantage
+        of the anyAttribute='##other' in the schema for schemas
+  -->
+
+<!ENTITY % simpleTypeAttrs "">
+<!ENTITY % restrictionAttrs "">
+<!ENTITY % listAttrs "">
+<!ENTITY % unionAttrs "">
+<!ENTITY % maxExclusiveAttrs "">
+<!ENTITY % minExclusiveAttrs "">
+<!ENTITY % maxInclusiveAttrs "">
+<!ENTITY % minInclusiveAttrs "">
+<!ENTITY % totalDigitsAttrs "">
+<!ENTITY % fractionDigitsAttrs "">
+<!ENTITY % lengthAttrs "">
+<!ENTITY % minLengthAttrs "">
+<!ENTITY % maxLengthAttrs "">
+<!ENTITY % enumerationAttrs "">
+<!ENTITY % whiteSpaceAttrs "">
+<!ENTITY % patternAttrs "">
+
+<!-- Define some entities for informative use as attribute
+        types -->
+<!ENTITY % URIref "CDATA">
+<!ENTITY % XPathExpr "CDATA">
+<!ENTITY % QName "NMTOKEN">
+<!ENTITY % QNames "NMTOKENS">
+<!ENTITY % NCName "NMTOKEN">
+<!ENTITY % nonNegativeInteger "NMTOKEN">
+<!ENTITY % boolean "(true|false)">
+<!ENTITY % simpleDerivationSet "CDATA">
+<!--
+        #all or space-separated list drawn from derivationChoice
+  -->
+
+<!--
+        Note that the use of 'facet' below is less restrictive
+        than is really intended:  There should in fact be no
+        more than one of each of minInclusive, minExclusive,
+        maxInclusive, maxExclusive, totalDigits, fractionDigits,
+        length, maxLength, minLength within datatype,
+        and the min- and max- variants of Inclusive and Exclusive
+        are mutually exclusive. On the other hand,  pattern and
+        enumeration may repeat.
+  -->
+<!ENTITY % minBound "(%minInclusive; | %minExclusive;)">
+<!ENTITY % maxBound "(%maxInclusive; | %maxExclusive;)">
+<!ENTITY % bounds "%minBound; | %maxBound;">
+<!ENTITY % numeric "%totalDigits; | %fractionDigits;">
+<!ENTITY % ordered "%bounds; | %numeric;">
+<!ENTITY % unordered
+   "%pattern; | %enumeration; | %whiteSpace; | %length; |
+   %maxLength; | %minLength;">
+<!ENTITY % facet "%ordered; | %unordered;">
+<!ENTITY % facetAttr 
+        "value CDATA #REQUIRED
+        id ID #IMPLIED">
+<!ENTITY % fixedAttr "fixed %boolean; #IMPLIED">
+<!ENTITY % facetModel "(%annotation;)?">
+<!ELEMENT %simpleType;
+        ((%annotation;)?, (%restriction; | %list; | %union;))>
+<!ATTLIST %simpleType;
+    name      %NCName; #IMPLIED
+    final     %simpleDerivationSet; #IMPLIED
+    id        ID       #IMPLIED
+    %simpleTypeAttrs;>
+<!-- name is required at top level -->
+<!ELEMENT %restriction; ((%annotation;)?,
+                         (%restriction1; |
+                          ((%simpleType;)?,(%facet;)*)),
+                         (%attrDecls;))>
+<!ATTLIST %restriction;
+    base      %QName;                  #IMPLIED
+    id        ID       #IMPLIED
+    %restrictionAttrs;>
+<!--
+        base and simpleType child are mutually exclusive,
+        one is required.
+
+        restriction is shared between simpleType and
+        simpleContent and complexContent (in XMLSchema.xsd).
+        restriction1 is for the latter cases, when this
+        is restricting a complex type, as is attrDecls.
+  -->
+<!ELEMENT %list; ((%annotation;)?,(%simpleType;)?)>
+<!ATTLIST %list;
+    itemType      %QName;             #IMPLIED
+    id        ID       #IMPLIED
+    %listAttrs;>
+<!--
+        itemType and simpleType child are mutually exclusive,
+        one is required
+  -->
+<!ELEMENT %union; ((%annotation;)?,(%simpleType;)*)>
+<!ATTLIST %union;
+    id            ID       #IMPLIED
+    memberTypes   %QNames;            #IMPLIED
+    %unionAttrs;>
+<!--
+        At least one item in memberTypes or one simpleType
+        child is required
+  -->
+
+<!ELEMENT %maxExclusive; %facetModel;>
+<!ATTLIST %maxExclusive;
+        %facetAttr;
+        %fixedAttr;
+        %maxExclusiveAttrs;>
+<!ELEMENT %minExclusive; %facetModel;>
+<!ATTLIST %minExclusive;
+        %facetAttr;
+        %fixedAttr;
+        %minExclusiveAttrs;>
+
+<!ELEMENT %maxInclusive; %facetModel;>
+<!ATTLIST %maxInclusive;
+        %facetAttr;
+        %fixedAttr;
+        %maxInclusiveAttrs;>
+<!ELEMENT %minInclusive; %facetModel;>
+<!ATTLIST %minInclusive;
+        %facetAttr;
+        %fixedAttr;
+        %minInclusiveAttrs;>
+
+<!ELEMENT %totalDigits; %facetModel;>
+<!ATTLIST %totalDigits;
+        %facetAttr;
+        %fixedAttr;
+        %totalDigitsAttrs;>
+<!ELEMENT %fractionDigits; %facetModel;>
+<!ATTLIST %fractionDigits;
+        %facetAttr;
+        %fixedAttr;
+        %fractionDigitsAttrs;>
+
+<!ELEMENT %length; %facetModel;>
+<!ATTLIST %length;
+        %facetAttr;
+        %fixedAttr;
+        %lengthAttrs;>
+<!ELEMENT %minLength; %facetModel;>
+<!ATTLIST %minLength;
+        %facetAttr;
+        %fixedAttr;
+        %minLengthAttrs;>
+<!ELEMENT %maxLength; %facetModel;>
+<!ATTLIST %maxLength;
+        %facetAttr;
+        %fixedAttr;
+        %maxLengthAttrs;>
+
+<!-- This one can be repeated -->
+<!ELEMENT %enumeration; %facetModel;>
+<!ATTLIST %enumeration;
+        %facetAttr;
+        %enumerationAttrs;>
+
+<!ELEMENT %whiteSpace; %facetModel;>
+<!ATTLIST %whiteSpace;
+        %facetAttr;
+        %fixedAttr;
+        %whiteSpaceAttrs;>
+
+<!-- This one can be repeated -->
+<!ELEMENT %pattern; %facetModel;>
+<!ATTLIST %pattern;
+        %facetAttr;
+        %patternAttrs;>
diff --git a/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/j2ee_1_4.xsd b/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/j2ee_1_4.xsd
new file mode 100644
index 0000000000..c1510f7fa0
--- /dev/null
+++ b/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/j2ee_1_4.xsd
@@ -0,0 +1,1620 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema
+    targetNamespace="http://java.sun.com/xml/ns/j2ee"
+    xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"
+    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+    elementFormDefault="qualified"
+    attributeFormDefault="unqualified"
+    version="1.4">
+    <xsd:annotation>
+        <xsd:documentation>
+            @(#)j2ee_1_4.xsds	1.43 03/09/16
+        </xsd:documentation>
+    </xsd:annotation>
+
+    <xsd:annotation>
+        <xsd:documentation>
+            DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+            Copyright 1997-2010 Oracle and/or its affiliates. All rights reserved.
+
+Oracle and Java are registered trademarks of Oracle and/or its affiliates.
+Other names may be trademarks of their respective owners.
+
+
+            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
+            http://www.netbeans.org/cddl-gplv2.html
+            or nbbuild/licenses/CDDL-GPL-2-CP. 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
+            nbbuild/licenses/CDDL-GPL-2-CP.  Oracle designates this
+            particular file as subject to the "Classpath" exception as provided
+            by Oracle 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):
+
+            The Original Software is NetBeans. The Initial Developer of the Original
+            Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun
+            Microsystems, Inc. All Rights Reserved.
+
+            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 do not 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.
+
+        </xsd:documentation>
+    </xsd:annotation>
+
+    <xsd:annotation>
+        <xsd:documentation>
+
+            The following definitions that appear in the common
+            shareable schema(s) of J2EE deployment descriptors should be
+            interpreted with respect to the context they are included:
+
+            Deployment Component may indicate one of the following:
+            j2ee application;
+            application client;
+            web application;
+            enterprise bean;
+            resource adapter;
+
+            Deployment File may indicate one of the following:
+            ear file;
+            war file;
+            jar file;
+            rar file;
+
+        </xsd:documentation>
+    </xsd:annotation>
+
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace"
+                schemaLocation="xml.xsd"/>
+
+    <xsd:include schemaLocation=
+                 "j2ee_web_services_client_1_1.xsd"/>
+
+
+    <!-- **************************************************** -->
+
+    <xsd:group name="descriptionGroup">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This group keeps the usage of the contained description related
+                elements consistent across J2EE deployment descriptors.
+                
+                All elements may occur multiple times with different languages,
+                to support localization of the content.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="j2ee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="display-name"
+                         type="j2ee:display-nameType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="icon"
+                         type="j2ee:iconType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+        </xsd:sequence>
+    </xsd:group>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="descriptionType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The description type is used by a description element to
+                provide text describing the parent element.  The elements
+                that use this type should include any information that the
+                Deployment Component's Deployment File file producer wants
+                to provide to the consumer of the Deployment Component's
+                Deployment File (i.e., to the Deployer). Typically, the
+                tools used by such a Deployment File consumer will display
+                the description when processing the parent element that
+                contains the description.
+                
+                The lang attribute defines the language that the
+                description is provided in. The default value is "en" (English).
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="j2ee:xsdStringType">
+                <xsd:attribute ref="xml:lang"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:simpleType name="dewey-versionType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type defines a dewey decimal which is used
+                to describe versions of documents.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:restriction base="xsd:decimal">
+            <xsd:whiteSpace value="collapse"/>
+        </xsd:restriction>
+        
+    </xsd:simpleType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="display-nameType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The display-name type contains a short name that is intended
+	  to be displayed by tools. It is used by display-name
+	  elements.  The display name need not be unique.
+
+	  Example:
+
+	  ...
+	     <display-name xml:lang="en">Employee Self Service</display-name>
+
+	  The value of the xml:lang attribute is "en" (English) by default.
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="j2ee:string">
+                <xsd:attribute ref="xml:lang"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="ejb-linkType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The ejb-linkType is used by ejb-link
+	  elements in the ejb-ref or ejb-local-ref elements to specify
+	  that an EJB reference is linked to enterprise bean.
+
+	  The value of the ejb-link element must be the ejb-name of an
+	  enterprise bean in the same ejb-jar file or in another ejb-jar
+	  file in the same J2EE application unit.
+
+	  Alternatively, the name in the ejb-link element may be
+	  composed of a path name specifying the ejb-jar containing the
+	  referenced enterprise bean with the ejb-name of the target
+	  bean appended and separated from the path name by "#".  The
+	  path name is relative to the Deployment File containing
+	  Deployment Component that is referencing the enterprise
+	  bean.  This allows multiple enterprise beans with the same
+	  ejb-name to be uniquely identified.
+
+	  Examples:
+
+	      <ejb-link>EmployeeRecord</ejb-link>
+
+	      <ejb-link>../products/product.jar#ProductEJB</ejb-link>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="j2ee:string"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="ejb-local-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The ejb-local-refType is used by ejb-local-ref elements for
+                the declaration of a reference to an enterprise bean's local
+                home. The declaration consists of:
+                
+                - an optional description
+                - the EJB reference name used in the code of the Deployment
+                Component that's referencing the enterprise bean
+                - the expected type of the referenced enterprise bean
+                - the expected local home and local interfaces of the
+                referenced enterprise bean
+                - optional ejb-link information, used to specify the
+                referenced enterprise bean
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="j2ee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="ejb-ref-name"
+                         type="j2ee:ejb-ref-nameType"/>
+            <xsd:element name="ejb-ref-type"
+                         type="j2ee:ejb-ref-typeType"/>
+            <xsd:element name="local-home"
+                         type="j2ee:local-homeType"/>
+            <xsd:element name="local"
+                         type="j2ee:localType"/>
+            <xsd:element name="ejb-link"
+                         type="j2ee:ejb-linkType"
+                         minOccurs="0"/>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="ejb-ref-nameType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The ejb-ref-name element contains the name of an EJB
+	  reference. The EJB reference is an entry in the
+	  Deployment Component's environment and is relative to the
+	  java:comp/env context.  The name must be unique within the
+	  Deployment Component.
+
+	  It is recommended that name is prefixed with "ejb/".
+
+	  Example:
+
+	  <ejb-ref-name>ejb/Payroll</ejb-ref-name>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="j2ee:jndi-nameType"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="ejb-ref-typeType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The ejb-ref-typeType contains the expected type of the
+                referenced enterprise bean.
+                
+                The ejb-ref-type designates a value
+                that must be one of the following:
+                
+                Entity
+                Session
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="j2ee:string">
+                <xsd:enumeration value="Entity"/>
+                <xsd:enumeration value="Session"/>
+            </xsd:restriction>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="ejb-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The ejb-refType is used by ejb-ref elements for the
+                declaration of a reference to an enterprise bean's home. The
+                declaration consists of:
+                
+                - an optional description
+                - the EJB reference name used in the code of
+                the Deployment Component that's referencing the enterprise
+                bean
+                - the expected type of the referenced enterprise bean
+                - the expected home and remote interfaces of the referenced
+                enterprise bean
+                - optional ejb-link information, used to specify the
+                referenced enterprise bean
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="j2ee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="ejb-ref-name"
+                         type="j2ee:ejb-ref-nameType"/>
+            <xsd:element name="ejb-ref-type"
+                         type="j2ee:ejb-ref-typeType"/>
+            
+            <xsd:element name="home"
+                         type="j2ee:homeType"/>
+            <xsd:element name="remote"
+                         type="j2ee:remoteType"/>
+            <xsd:element name="ejb-link"
+                         type="j2ee:ejb-linkType"
+                         minOccurs="0"/>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="emptyType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type is used to designate an empty
+                element when used.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="env-entry-type-valuesType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  This type contains the fully-qualified Java type of the
+	  environment entry value that is expected by the
+	  application's code.
+
+	  The following are the legal values of env-entry-type-valuesType:
+
+	      java.lang.Boolean
+	      java.lang.Byte
+	      java.lang.Character
+	      java.lang.String
+	      java.lang.Short
+	      java.lang.Integer
+	      java.lang.Long
+	      java.lang.Float
+	      java.lang.Double
+
+	  Example:
+
+	  <env-entry-type>java.lang.Boolean</env-entry-type>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="j2ee:string">
+                <xsd:enumeration value="java.lang.Boolean"/>
+                <xsd:enumeration value="java.lang.Byte"/>
+                <xsd:enumeration value="java.lang.Character"/>
+                <xsd:enumeration value="java.lang.String"/>
+                <xsd:enumeration value="java.lang.Short"/>
+                <xsd:enumeration value="java.lang.Integer"/>
+                <xsd:enumeration value="java.lang.Long"/>
+                <xsd:enumeration value="java.lang.Float"/>
+                <xsd:enumeration value="java.lang.Double"/>
+            </xsd:restriction>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="env-entryType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The env-entryType is used to declare an application's
+                environment entry. The declaration consists of an optional
+                description, the name of the environment entry, and an
+                optional value.  If a value is not specified, one must be
+                supplied during deployment.
+                
+                It is used by env-entry elements.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="j2ee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="env-entry-name"
+                         type="j2ee:jndi-nameType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        <![CDATA[
+
+	      The env-entry-name element contains the name of a
+	      Deployment Component's environment entry.  The name
+	      is a JNDI name relative to the java:comp/env
+	      context.  The name must be unique within a
+	      Deployment Component. The uniqueness
+	      constraints must be defined within the declared
+	      context.
+
+	      Example:
+
+	      <env-entry-name>minAmount</env-entry-name>
+
+	      ]]>
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="env-entry-type"
+                         type="j2ee:env-entry-type-valuesType"/>
+            
+            <xsd:element name="env-entry-value"
+                         type="j2ee:xsdStringType"
+                         minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        <![CDATA[
+
+	      The env-entry-value designates the value of a
+	      Deployment Component's environment entry. The value
+	      must be a String that is valid for the
+	      constructor of the specified type that takes a
+	      single String parameter, or for java.lang.Character,
+	      a single character.
+
+	      Example:
+
+	      <env-entry-value>100.00</env-entry-value>
+
+	      ]]>
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="fully-qualified-classType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The elements that use this type designate the name of a
+                Java class or interface.  The name is in the form of a
+                "binary name", as defined in the JLS.  This is the form
+                of name used in Class.forName().  Tools that need the
+                canonical name (the name used in source code) will need
+                to convert this binary name to the canonical name.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="j2ee:string"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="generic-booleanType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type defines four different values which can designate
+                boolean values. This includes values yes and no which are
+                not designated by xsd:boolean
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="j2ee:string">
+                <xsd:enumeration value="true"/>
+                <xsd:enumeration value="false"/>
+                <xsd:enumeration value="yes"/>
+                <xsd:enumeration value="no"/>
+            </xsd:restriction>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="homeType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The homeType defines the fully-qualified name of
+	  an enterprise bean's home interface.
+
+	  Example:
+
+	      <home>com.aardvark.payroll.PayrollHome</home>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="j2ee:fully-qualified-classType"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="iconType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The icon type contains small-icon and large-icon elements
+                that specify the file names for small and large GIF or
+                JPEG icon images used to represent the parent element in a
+                GUI tool.
+                
+                The xml:lang attribute defines the language that the
+                icon file names are provided in. Its value is "en" (English)
+                by default.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="small-icon" type="j2ee:pathType"
+                         minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        <![CDATA[
+
+	      The small-icon element contains the name of a file
+	      containing a small (16 x 16) icon image. The file
+	      name is a relative path within the Deployment
+	      Component's Deployment File.
+
+	      The image may be either in the JPEG or GIF format.
+	      The icon can be used by tools.
+
+	      Example:
+
+	      <small-icon>employee-service-icon16x16.jpg</small-icon>
+
+	      ]]>
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="large-icon" type="j2ee:pathType"
+                         minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        <![CDATA[
+
+	      The large-icon element contains the name of a file
+	      containing a large
+	      (32 x 32) icon image. The file name is a relative
+	      path within the Deployment Component's Deployment
+	      File.
+
+	      The image may be either in the JPEG or GIF format.
+	      The icon can be used by tools.
+
+	      Example:
+
+	      <large-icon>employee-service-icon32x32.jpg</large-icon>
+
+	      ]]>
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+        </xsd:sequence>
+        
+        <xsd:attribute ref="xml:lang"/>
+        <xsd:attribute name="id" type="xsd:ID"/>
+        
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="java-identifierType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The java-identifierType defines a Java identifier.
+                The users of this type should further verify that
+                the content does not contain Java reserved keywords.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="j2ee:string">
+                <xsd:pattern value="($|_|\p{L})(\p{L}|\p{Nd}|_|$)*"/>
+            </xsd:restriction>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="java-typeType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This is a generic type that designates a Java primitive
+                type or a fully qualified name of a Java interface/type,
+                or an array of such types.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="j2ee:string">
+                <xsd:pattern value="[^\p{Z}]*"/>
+            </xsd:restriction>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="jndi-nameType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The jndi-nameType type designates a JNDI name in the
+                Deployment Component's environment and is relative to the
+                java:comp/env context.  A JNDI name must be unique within the
+                Deployment Component.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="j2ee:string"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:group name="jndiEnvironmentRefsGroup">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This group keeps the usage of the contained JNDI environment
+                reference elements consistent across J2EE deployment descriptors.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:element name="env-entry"
+                         type="j2ee:env-entryType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="ejb-ref"
+                         type="j2ee:ejb-refType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="ejb-local-ref"
+                         type="j2ee:ejb-local-refType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:group ref="j2ee:service-refGroup"/>
+            <xsd:element name="resource-ref"
+                         type="j2ee:resource-refType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="resource-env-ref"
+                         type="j2ee:resource-env-refType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="message-destination-ref"
+                         type="j2ee:message-destination-refType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+        </xsd:sequence>
+    </xsd:group>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="listenerType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The listenerType indicates the deployment properties for a web
+                application listener bean.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:group ref="j2ee:descriptionGroup"/>
+            <xsd:element name="listener-class"
+                         type="j2ee:fully-qualified-classType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The listener-class element declares a class in the
+                        application must be registered as a web
+                        application listener bean. The value is the fully
+                        qualified classname of the listener class.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="local-homeType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The local-homeType defines the fully-qualified
+                name of an enterprise bean's local home interface.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="j2ee:fully-qualified-classType"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="localType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The localType defines the fully-qualified name of an
+                enterprise bean's local interface.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="j2ee:fully-qualified-classType"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="message-destination-linkType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The message-destination-linkType is used to link a message
+                destination reference or message-driven bean to a message
+                destination.
+                
+                The Assembler sets the value to reflect the flow of messages
+                between producers and consumers in the application.
+                
+                The value must be the message-destination-name of a message
+                destination in the same Deployment File or in another
+                Deployment File in the same J2EE application unit.
+                
+                Alternatively, the value may be composed of a path name
+                specifying a Deployment File containing the referenced
+                message destination with the message-destination-name of the
+                destination appended and separated from the path name by
+                "#". The path name is relative to the Deployment File
+                containing Deployment Component that is referencing the
+                message destination.  This allows multiple message
+                destinations with the same name to be uniquely identified.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="j2ee:string"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="message-destination-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The message-destination-ref element contains a declaration
+	  of Deployment Component's reference to a message destination
+	  associated with a resource in Deployment Component's
+	  environment. It consists of:
+
+		  - an optional description
+		  - the message destination reference name
+		  - the message destination type
+		  - a specification as to whether the
+		    destination is used for
+		    consuming or producing messages, or both
+		  - a link to the message destination
+
+	  Examples:
+
+	  <message-destination-ref>
+		  <message-destination-ref-name>jms/StockQueue
+		  </message-destination-ref-name>
+		  <message-destination-type>javax.jms.Queue
+		  </message-destination-type>
+		  <message-destination-usage>Consumes
+		  </message-destination-usage>
+		  <message-destination-link>CorporateStocks
+		  </message-destination-link>
+	  </message-destination-ref>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="j2ee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="message-destination-ref-name"
+                         type="j2ee:jndi-nameType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The message-destination-ref-name element specifies
+                        the name of a message destination reference; its
+                        value is the environment entry name used in
+                        Deployment Component code.  The name is a JNDI name
+                        relative to the java:comp/env context and must be
+                        unique within an ejb-jar (for enterprise beans) or a
+                        Deployment File (for others).
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="message-destination-type"
+                         type="j2ee:message-destination-typeType"/>
+            <xsd:element name="message-destination-usage"
+                         type="j2ee:message-destination-usageType"/>
+            <xsd:element name="message-destination-link"
+                         type="j2ee:message-destination-linkType"
+                         minOccurs="0"/>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+        
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="message-destination-typeType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The message-destination-typeType specifies the type of
+	  the destination. The type is specified by the Java interface
+	  expected to be implemented by the destination.
+
+	  Example:
+
+	    <message-destination-type>javax.jms.Queue
+	    </message-destination-type>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="j2ee:fully-qualified-classType"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="message-destination-usageType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The message-destination-usageType specifies the use of the
+                message destination indicated by the reference.  The value
+                indicates whether messages are consumed from the message
+                destination, produced for the destination, or both.  The
+                Assembler makes use of this information in linking producers
+                of a destination with its consumers.
+                
+                The value of the message-destination-usage element must be
+                one of the following:
+                Consumes
+                Produces
+                ConsumesProduces
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="j2ee:string">
+                <xsd:enumeration value="Consumes"/>
+                <xsd:enumeration value="Produces"/>
+                <xsd:enumeration value="ConsumesProduces"/>
+            </xsd:restriction>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="message-destinationType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The message-destinationType specifies a message
+	  destination. The logical destination described by this
+	  element is mapped to a physical destination by the Deployer.
+
+	  The message destination element contains:
+
+		  - an optional description
+		  - an optional display-name
+		  - an optional icon
+		  - a message destination name which must be unique
+		    among message destination names within the same
+		    Deployment File.
+
+	  Example:
+
+	  <message-destination>
+		  <message-destination-name>CorporateStocks
+		  </message-destination-name>
+	  </message-destination>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:group ref="j2ee:descriptionGroup"/>
+            <xsd:element name="message-destination-name"
+                         type="j2ee:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The message-destination-name element specifies a
+                        name for a message destination.  This name must be
+                        unique among the names of message destinations
+                        within the Deployment File.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="param-valueType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type is a general type that can be used to declare
+                parameter/value lists.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="j2ee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="param-name"
+                         type="j2ee:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The param-name element contains the name of a
+                        parameter.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="param-value"
+                         type="j2ee:xsdStringType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The param-value element contains the value of a
+                        parameter.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="pathType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The elements that use this type designate either a relative
+                path or an absolute path starting with a "/".
+                
+                In elements that specify a pathname to a file within the
+                same Deployment File, relative filenames (i.e., those not
+                starting with "/") are considered relative to the root of
+                the Deployment File's namespace.  Absolute filenames (i.e.,
+                those starting with "/") also specify names in the root of
+                the Deployment 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:simpleContent>
+            <xsd:restriction base="j2ee:string"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="remoteType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The remote element contains the fully-qualified name
+	  of the enterprise bean's remote interface.
+
+	  Example:
+
+	      <remote>com.wombat.empl.EmployeeService</remote>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="j2ee:fully-qualified-classType"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="res-authType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The res-authType specifies whether the Deployment Component
+                code signs on programmatically to the resource manager, or
+                whether the Container will sign on to the resource manager
+                on behalf of the Deployment Component. In the latter case,
+                the Container uses information that is supplied by the
+                Deployer.
+                
+                The value must be one of the two following:
+                
+                Application
+                Container
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="j2ee:string">
+                <xsd:enumeration value="Application"/>
+                <xsd:enumeration value="Container"/>
+            </xsd:restriction>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="res-sharing-scopeType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The res-sharing-scope type specifies whether connections
+                obtained through the given resource manager connection
+                factory reference can be shared. The value, if specified,
+                must be one of the two following:
+                
+                Shareable
+                Unshareable
+                
+                The default value is Shareable.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="j2ee:string">
+                <xsd:enumeration value="Shareable"/>
+                <xsd:enumeration value="Unshareable"/>
+            </xsd:restriction>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="resource-env-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The resource-env-refType is used to define
+	  resource-env-type elements.  It contains a declaration of a
+	  Deployment Component's reference to an administered object
+	  associated with a resource in the Deployment Component's
+	  environment.  It consists of an optional description, the
+	  resource environment reference name, and an indication of
+	  the resource environment reference type expected by the
+	  Deployment Component code.
+
+	  Example:
+
+	  <resource-env-ref>
+	      <resource-env-ref-name>jms/StockQueue
+	      </resource-env-ref-name>
+	      <resource-env-ref-type>javax.jms.Queue
+	      </resource-env-ref-type>
+	  </resource-env-ref>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="j2ee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="resource-env-ref-name"
+                         type="j2ee:jndi-nameType">
+                <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 Deployment Component code.  The name is a JNDI
+                        name relative to the java:comp/env context and must
+                        be unique within a Deployment Component.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="resource-env-ref-type"
+                         type="j2ee:fully-qualified-classType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The resource-env-ref-type element specifies the type
+                        of a resource environment reference.  It is the
+                        fully qualified name of a Java language class or
+                        interface.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="resource-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The resource-refType contains a declaration of a
+	  Deployment Component's reference to an external resource. It
+	  consists of an optional description, the resource manager
+	  connection factory reference name, the indication of the
+	  resource manager connection factory type expected by the
+	  Deployment Component code, the type of authentication
+	  (Application or Container), and an optional specification of
+	  the shareability of connections obtained from the resource
+	  (Shareable or Unshareable).
+
+	  Example:
+
+	  <resource-ref>
+	      <res-ref-name>jdbc/EmployeeAppDB</res-ref-name>
+	      <res-type>javax.sql.DataSource</res-type>
+	      <res-auth>Container</res-auth>
+	      <res-sharing-scope>Shareable</res-sharing-scope>
+	  </resource-ref>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="j2ee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="res-ref-name"
+                         type="j2ee:jndi-nameType">
+                <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 a Deployment File.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="res-type"
+                         type="j2ee:fully-qualified-classType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The res-type element specifies the type of the data
+                        source. The type is specified by the fully qualified
+                        Java language class or interface
+                        expected to be implemented by the data source.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="res-auth"
+                         type="j2ee:res-authType"/>
+            
+            <xsd:element name="res-sharing-scope"
+                         type="j2ee:res-sharing-scopeType"
+                         minOccurs="0"/>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="role-nameType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The role-nameType designates the name of a security role.
+                
+                The name must conform to the lexical rules for a token.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:simpleContent>
+            <xsd:restriction base="j2ee:string"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="run-asType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The run-asType specifies the run-as identity to be
+                used for the execution of a component. It contains an
+                optional description, and the name of a security role.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="j2ee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="role-name"
+                         type="j2ee:role-nameType"/>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="security-role-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The security-role-refType contains the declaration of a
+                security role reference in a component's or a
+                Deployment Component's code. The declaration consists of an
+                optional description, the security role name used in the
+                code, and an optional link to a security role. If the
+                security role is not specified, the Deployer must choose an
+                appropriate security role.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="j2ee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="role-name"
+                         type="j2ee:role-nameType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The value of the role-name element must be the String used
+                        as the parameter to the
+                        EJBContext.isCallerInRole(String roleName) method or the
+                        HttpServletRequest.isUserInRole(String role) method.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="role-link"
+                         type="j2ee:role-nameType"
+                         minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The role-link element is a reference to a defined
+                        security role. The role-link element must contain
+                        the name of one of the security roles defined in the
+                        security-role elements.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="security-roleType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The security-roleType contains the definition of a security
+	  role. The definition consists of an optional description of the
+	  security role, and the security role name.
+
+	  Example:
+
+	      <security-role>
+	      <description>
+		  This role includes all employees who are authorized
+		  to access the employee service application.
+	      </description>
+	      <role-name>employee</role-name>
+	      </security-role>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="j2ee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="role-name"
+                         type="j2ee:role-nameType"/>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="string">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This is a special string datatype that is defined by J2EE as
+                a base type for defining collapsed strings. When schemas
+                require trailing/leading space elimination as well as
+                collapsing the existing whitespace, this base type may be
+                used.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:token">
+                <xsd:attribute name="id" type="xsd:ID"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="true-falseType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This simple type designates a boolean with only two
+                permissible values
+                
+                - true
+                - false
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="j2ee:xsdBooleanType">
+                <xsd:pattern value="(true|false)"/>
+            </xsd:restriction>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="url-patternType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The url-patternType contains the url pattern of the mapping.
+                It must follow the rules specified in Section 11.2 of the
+                Servlet API Specification. This pattern is assumed to be in
+                URL-decoded form and must not contain CR(#xD) or LF(#xA).
+                If it contains those characters, the container must inform
+                the developer with a descriptive error message.
+                The container must preserve all characters including whitespaces.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:string"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="xsdAnyURIType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type adds an "id" attribute to xsd:anyURI.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:anyURI">
+                <xsd:attribute name="id" type="xsd:ID"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="xsdBooleanType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type adds an "id" attribute to xsd:boolean.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:boolean">
+                <xsd:attribute name="id" type="xsd:ID"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="xsdIntegerType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type adds an "id" attribute to xsd:integer.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:integer">
+                <xsd:attribute name="id" type="xsd:ID"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="xsdNMTOKENType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type adds an "id" attribute to xsd:NMTOKEN.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:NMTOKEN">
+                <xsd:attribute name="id" type="xsd:ID"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="xsdNonNegativeIntegerType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type adds an "id" attribute to xsd:nonNegativeInteger.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:nonNegativeInteger">
+                <xsd:attribute name="id" type="xsd:ID"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="xsdPositiveIntegerType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type adds an "id" attribute to xsd:positiveInteger.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:positiveInteger">
+                <xsd:attribute name="id" type="xsd:ID"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="xsdQNameType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type adds an "id" attribute to xsd:QName.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:QName">
+                <xsd:attribute name="id" type="xsd:ID"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="xsdStringType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type adds an "id" attribute to xsd:string.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:string">
+                <xsd:attribute name="id" type="xsd:ID"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+</xsd:schema>
+
diff --git a/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/j2ee_web_services_1_1.xsd b/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/j2ee_web_services_1_1.xsd
new file mode 100644
index 0000000000..fb52d4e1c4
--- /dev/null
+++ b/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/j2ee_web_services_1_1.xsd
@@ -0,0 +1,504 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+            targetNamespace="http://java.sun.com/xml/ns/j2ee"
+            xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"
+            xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+            elementFormDefault="qualified"
+            attributeFormDefault="unqualified"
+            version="1.1">
+    <xsd:annotation>
+        <xsd:documentation>
+            @(#)j2ee_web_services_1_1.xsds	1.11 02/11/03
+        </xsd:documentation>
+    </xsd:annotation>
+
+    <xsd:annotation>
+        <xsd:documentation>
+
+            DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+            Copyright 1997-2010 Oracle and/or its affiliates. All rights reserved.
+
+Oracle and Java are registered trademarks of Oracle and/or its affiliates.
+Other names may be trademarks of their respective owners.
+
+
+            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
+            http://www.netbeans.org/cddl-gplv2.html
+            or nbbuild/licenses/CDDL-GPL-2-CP. 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
+            nbbuild/licenses/CDDL-GPL-2-CP.  Oracle designates this
+            particular file as subject to the "Classpath" exception as provided
+            by Oracle 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):
+
+            The Original Software is NetBeans. The Initial Developer of the Original
+            Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun
+            Microsystems, Inc. All Rights Reserved.
+
+            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 do not 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.
+
+        </xsd:documentation>
+    </xsd:annotation>
+
+    <xsd:annotation>
+        <xsd:documentation>
+
+            (C) Copyright International Business Machines Corporation 2002
+
+        </xsd:documentation>
+    </xsd:annotation>
+
+    <xsd:annotation>
+        <xsd:documentation>
+            <![CDATA[
+
+	The webservices element is the root element for the web services
+	deployment descriptor.  It specifies the set of web service
+	descriptions that are to be deployed into the J2EE Application
+	Server and the dependencies they have on container resources and
+	services.  The deployment descriptor must be named
+	"META-INF/webservices.xml" in the web services' jar file.
+
+	Used in: webservices.xml
+
+	All webservices deployment descriptors must indicate the
+	webservices schema by using the J2EE namespace:
+
+	http://java.sun.com/xml/ns/j2ee
+
+	and by indicating the version of the schema by using the version
+	element as shown below:
+
+	    <webservices xmlns="http://java.sun.com/xml/ns/j2ee"
+	      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	      xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
+		http://www.ibm.com/webservices/xsd/j2ee_web_services_1_1.xsd"
+	      version="1.1">
+	      ...
+	    </webservices>
+
+	The instance documents may indicate the published version of the
+	schema using the xsi:schemaLocation attribute for the J2EE
+	namespace with the following location:
+
+	http://www.ibm.com/webservices/xsd/j2ee_web_services_1_1.xsd
+
+	]]>
+        </xsd:documentation>
+    </xsd:annotation>
+    
+    <xsd:annotation>
+        <xsd:documentation>
+            
+            The following conventions apply to all J2EE
+            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="j2ee_1_4.xsd"/>
+    
+    
+    <!-- **************************************************** -->
+
+
+    <xsd:element name="webservices" type="j2ee:webservicesType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The webservices element is the root element for the web services
+                deployment descriptor.  It specifies the set of web service
+                descriptions that are to be deployed into the J2EE Application Server
+                and the dependencies they have on container resources and services.
+                
+                Used in: webservices.xml
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:key name="webservice-description-name-key">
+            <xsd:annotation>
+                <xsd:documentation>
+                    
+                    The webservice-description-name identifies the collection of
+                    port-components associated with a WSDL file and JAX-RPC mapping. The
+                    name must be unique within the deployment descriptor.
+                    
+                </xsd:documentation>
+            </xsd:annotation>
+            <xsd:selector xpath="j2ee:webservice-description"/>
+            <xsd:field xpath="j2ee:webservice-description-name"/>
+        </xsd:key>
+    </xsd:element>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="port-componentType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The port-component element associates a WSDL port with a web service
+                interface and implementation.  It defines the name of the port as a
+                component, optional description, optional display name, optional iconic
+                representations, WSDL port QName, Service Endpoint Interface, Service
+                Implementation Bean.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="j2ee:descriptionType"
+                         minOccurs="0" maxOccurs="1"/>
+            <xsd:element name="display-name"
+                         type="j2ee:display-nameType"
+                         minOccurs="0" maxOccurs="1"/>
+            <xsd:element name="icon"
+                         type="j2ee:iconType"
+                         minOccurs="0" maxOccurs="1"/>
+            <xsd:element name="port-component-name"
+                         type="j2ee:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        <![CDATA[
+
+	      The port-component-name element specifies a port component's
+	      name.  This name is assigned by the module producer to name
+	      the service implementation bean in the module's deployment
+	      descriptor. The name must be unique among the port component
+	      names defined in the same module.
+
+	      Used in: port-component
+
+	      Example:
+		      <port-component-name>EmployeeService
+		      </port-component-name>
+
+	      ]]>
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="wsdl-port"
+                         type="j2ee:xsdQNameType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        Defines the name space and local name part of the WSDL port QName.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="service-endpoint-interface"
+                         type="j2ee:fully-qualified-classType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        <![CDATA[
+
+	      The service-endpoint-interface element contains the
+	      fully-qualified name of the port component's Service Endpoint
+	      Interface.
+
+	      Used in: port-component
+
+	      Example:
+		      <remote>com.wombat.empl.EmployeeService</remote>
+
+	      ]]>
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="service-impl-bean"
+                         type="j2ee:service-impl-beanType"/>
+            
+            <xsd:element name="handler"
+                         type="j2ee:port-component_handlerType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="port-component_handlerType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                Declares the handler for a port-component. Handlers can access the
+                init-param name/value pairs using the HandlerInfo interface.
+                
+                Used in: port-component
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:group ref="j2ee:descriptionGroup"/>
+            <xsd:element name="handler-name"
+                         type="j2ee:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        Defines the name of the handler. The name must be unique within the
+                        module.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="handler-class"
+                         type="j2ee:fully-qualified-classType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        Defines a fully qualified class name for the handler implementation.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="init-param"
+                         type="j2ee:param-valueType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+            
+            <xsd:element name="soap-header"
+                         type="j2ee:xsdQNameType"
+                         minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        Defines the QName of a SOAP header that will be processed by the
+                        handler.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="soap-role"
+                         type="j2ee:string"
+                         minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The soap-role element contains a SOAP actor definition that the
+                        Handler will play as a role.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="service-impl-beanType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The service-impl-bean element defines the web service implementation.
+                A service implementation can be an EJB bean class or JAX-RPC web
+                component.  Existing EJB implementations are exposed as a web service
+                using an ejb-link.
+                
+                Used in: port-component
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:choice>
+            <xsd:element name="ejb-link"
+                         type="j2ee:ejb-linkType"/>
+            <xsd:element name="servlet-link"
+                         type="j2ee:servlet-linkType"/>
+        </xsd:choice>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="servlet-linkType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The servlet-link element is used in the service-impl-bean element
+	  to specify that a Service Implementation Bean is defined as a
+	  JAX-RPC Service Endpoint.
+
+	  The value of the servlet-link element must be the servlet-name of
+	  a JAX-RPC Service Endpoint in the same WAR file.
+
+	  Used in: service-impl-bean
+
+	  Example:
+		  <servlet-link>StockQuoteService</servlet-link>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="j2ee:string"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="webservice-descriptionType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The webservice-description element defines a WSDL document file
+                and the set of Port components associated with the WSDL ports
+                defined in the WSDL document.  There may be multiple
+                webservice-descriptions defined within a module.
+                
+                All WSDL file ports must have a corresponding port-component element
+                defined.
+                
+                Used in: webservices
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="j2ee:descriptionType"
+                         minOccurs="0" maxOccurs="1"/>
+            <xsd:element name="display-name"
+                         type="j2ee:display-nameType"
+                         minOccurs="0" maxOccurs="1"/>
+            <xsd:element name="icon"
+                         type="j2ee:iconType"
+                         minOccurs="0" maxOccurs="1"/>
+            <xsd:element name="webservice-description-name"
+                         type="j2ee:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The webservice-description-name identifies the collection of
+                        port-components associated with a WSDL file and JAX-RPC
+                        mapping. The name must be unique within the deployment descriptor.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="wsdl-file"
+                         type="j2ee:pathType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The wsdl-file element contains the name of a WSDL file in the
+                        module.  The file name is a relative path within the module.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="jaxrpc-mapping-file"
+                         type="j2ee:pathType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The jaxrpc-mapping-file element contains the name of a file that
+                        describes the JAX-RPC mapping between the Java interaces used by
+                        the application and the WSDL description in the wsdl-file.  The
+                        file name is a relative path within the module.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="port-component"
+                         type="j2ee:port-componentType"
+                         minOccurs="1" maxOccurs="unbounded">
+                <xsd:key name="port-component_handler-name-key">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            
+                            Defines the name of the handler. The name must be unique
+                            within the module.
+                            
+                        </xsd:documentation>
+                    </xsd:annotation>
+                    <xsd:selector xpath="j2ee:handler"/>
+                    <xsd:field xpath="j2ee:handler-name"/>
+                </xsd:key>
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="webservicesType">
+        <xsd:sequence>
+            <xsd:group ref="j2ee:descriptionGroup"/>
+            <xsd:element name="webservice-description"
+                         type="j2ee:webservice-descriptionType"
+                         minOccurs="1" maxOccurs="unbounded">
+                <xsd:key name="port-component-name-key">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            <![CDATA[
+
+		The port-component-name element specifies a port
+		component's name.  This name is assigned by the module
+		producer to name the service implementation bean in the
+		module's deployment descriptor. The name must be unique
+		among the port component names defined in the same module.
+
+		Used in: port-component
+
+		Example:
+			<port-component-name>EmployeeService
+			</port-component-name>
+
+		]]>
+                        </xsd:documentation>
+                    </xsd:annotation>
+                    <xsd:selector xpath="j2ee:port-component"/>
+                    <xsd:field xpath="j2ee:port-component-name"/>
+                </xsd:key>
+            </xsd:element>
+        </xsd:sequence>
+        
+        <xsd:attribute name="version"
+                       type="j2ee:dewey-versionType"
+                       fixed="1.1"
+                       use="required">
+            <xsd:annotation>
+                <xsd:documentation>
+                    
+                    The required value for the version is 1.1.
+                    
+                </xsd:documentation>
+            </xsd:annotation>
+        </xsd:attribute>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+</xsd:schema>
+
diff --git a/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/j2ee_web_services_client_1_1.xsd b/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/j2ee_web_services_client_1_1.xsd
new file mode 100644
index 0000000000..80edb3d6eb
--- /dev/null
+++ b/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/j2ee_web_services_client_1_1.xsd
@@ -0,0 +1,357 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+            targetNamespace="http://java.sun.com/xml/ns/j2ee"
+            xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"
+            xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+            elementFormDefault="qualified"
+            attributeFormDefault="unqualified"
+            version="1.1">
+    <xsd:annotation>
+        <xsd:documentation>
+            @(#)j2ee_web_services_client_1_1.xsds	1.10 02/11/03
+        </xsd:documentation>
+    </xsd:annotation>
+
+    <xsd:annotation>
+        <xsd:documentation>
+
+            DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+            Copyright 1997-2010 Oracle and/or its affiliates. All rights reserved.
+
+Oracle and Java are registered trademarks of Oracle and/or its affiliates.
+Other names may be trademarks of their respective owners.
+
+
+            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
+            http://www.netbeans.org/cddl-gplv2.html
+            or nbbuild/licenses/CDDL-GPL-2-CP. 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
+            nbbuild/licenses/CDDL-GPL-2-CP.  Oracle designates this
+            particular file as subject to the "Classpath" exception as provided
+            by Oracle 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):
+
+            The Original Software is NetBeans. The Initial Developer of the Original
+            Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun
+            Microsystems, Inc. All Rights Reserved.
+
+            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 do not 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.
+
+        </xsd:documentation>
+    </xsd:annotation>
+    <xsd:annotation>
+        <xsd:documentation>
+
+            (C) Copyright International Business Machines Corporation 2002
+
+        </xsd:documentation>
+    </xsd:annotation>
+
+
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="port-component-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+
+                The port-component-ref element declares a client dependency
+                on the container for resolving a Service Endpoint Interface
+                to a WSDL port. It optionally associates the Service Endpoint
+                Interface with a particular port-component. This is only used
+                by the container for a Service.getPort(Class) method call.
+
+            </xsd:documentation>
+        </xsd:annotation>
+
+        <xsd:sequence>
+            <xsd:element name="service-endpoint-interface"
+                         type="j2ee:fully-qualified-classType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The service-endpoint-interface element defines a fully qualified
+                        Java class that represents the Service Endpoint Interface of a
+                        WSDL port.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="port-component-link"
+                         type="j2ee:string"
+                         minOccurs="0" maxOccurs="1">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The port-component-link element links a port-component-ref
+                        to a specific port-component required to be made available
+                        by a service reference.
+                        
+                        The value of a port-component-link must be the
+                        port-component-name of a port-component in the same module
+                        or another module in the same application unit. The syntax
+                        for specification follows the syntax defined for ejb-link
+                        in the EJB 2.0 specification.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:group name="service-refGroup">
+        <xsd:sequence>
+            <xsd:element name="service-ref"
+                         type="j2ee:service-refType"
+                         minOccurs="0" maxOccurs="unbounded">
+                <xsd:key name="service-ref_handler-name-key">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            
+                            Defines the name of the handler. The name must be unique
+                            within the module.
+                            
+                        </xsd:documentation>
+                    </xsd:annotation>
+                    <xsd:selector xpath="j2ee:handler"/>
+                    <xsd:field xpath="j2ee:handler-name"/>
+                </xsd:key>
+            </xsd:element>
+        </xsd:sequence>
+    </xsd:group>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="service-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The service-ref element declares a reference to a Web
+                service. It contains optional description, display name and
+                icons, a declaration of the required Service interface,
+                an optional WSDL document location, an optional set
+                of JAX-RPC mappings, an optional QName for the service element,
+                an optional set of Service Endpoint Interfaces to be resolved
+                by the container to a WSDL port, and an optional set of handlers.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:group ref="j2ee:descriptionGroup"/>
+            <xsd:element name="service-ref-name"
+                         type="j2ee:jndi-nameType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The service-ref-name element declares logical name that the
+                        components in the module use to look up the Web service. It
+                        is recommended that all service reference names start with
+                        "service/".
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="service-interface"
+                         type="j2ee:fully-qualified-classType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The service-interface element declares the fully qualified class
+                        name of the JAX-RPC Service interface the client depends on.
+                        In most cases the value will be javax.xml.rpc.Service.  A JAX-RPC
+                        generated Service Interface class may also be specified.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="wsdl-file"
+                         type="j2ee:xsdAnyURIType"
+                         minOccurs="0" maxOccurs="1">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The wsdl-file element contains the URI location of a WSDL
+                        file. The location is relative to the root of the module.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="jaxrpc-mapping-file"
+                         type="j2ee:pathType"
+                         minOccurs="0" maxOccurs="1">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The jaxrpc-mapping-file element contains the name of a file that
+                        describes the JAX-RPC mapping between the Java interaces used by
+                        the application and the WSDL description in the wsdl-file.  The
+                        file name is a relative path within the module file.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="service-qname"
+                         type="j2ee:xsdQNameType"
+                         minOccurs="0" maxOccurs="1">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The service-qname element declares the specific WSDL service
+                        element that is being refered to.  It is not specified if no
+                        wsdl-file is declared.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="port-component-ref"
+                         type="j2ee:port-component-refType"
+                         minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The port-component-ref element declares a client dependency
+                        on the container for resolving a Service Endpoint Interface
+                        to a WSDL port. It optionally associates the Service Endpoint
+                        Interface with a particular port-component. This is only used
+                        by the container for a Service.getPort(Class) method call.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="handler"
+                         type="j2ee:service-ref_handlerType"
+                         minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        Declares the handler for a port-component. Handlers can
+                        access the init-param name/value pairs using the
+                        HandlerInfo interface. If port-name is not specified, the
+                        handler is assumed to be associated with all ports of the
+                        service.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="service-ref_handlerType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                Declares the handler for a port-component. Handlers can access the
+                init-param name/value pairs using the HandlerInfo interface. If
+                port-name is not specified, the handler is assumed to be associated
+                with all ports of the service.
+                
+                Used in: service-ref
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:group ref="j2ee:descriptionGroup"/>
+            <xsd:element name="handler-name"
+                         type="j2ee:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        Defines the name of the handler. The name must be unique
+                        within the module.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="handler-class"
+                         type="j2ee:fully-qualified-classType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        Defines a fully qualified class name for the handler
+                        implementation.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="init-param"
+                         type="j2ee:param-valueType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+            
+            <xsd:element name="soap-header"
+                         type="j2ee:xsdQNameType"
+                         minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        Defines the QName of a SOAP header that will be processed
+                        by the handler.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="soap-role"
+                         type="j2ee:string"
+                         minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The soap-role element contains a SOAP actor definition that
+                        the Handler will play as a role.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="port-name"
+                         type="j2ee:string"
+                         minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The port-name element defines the WSDL port-name that a
+                        handler should be associated with.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+</xsd:schema>
+
diff --git a/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/javaee_5.xsd b/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/javaee_5.xsd
new file mode 100644
index 0000000000..ea9990664d
--- /dev/null
+++ b/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/javaee_5.xsd
@@ -0,0 +1,2115 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<xsd:schema
+    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="5">
+    <xsd:annotation>
+        <xsd:documentation>
+            @(#)javaee_5.xsds	1.65 06/02/17
+        </xsd:documentation>
+    </xsd:annotation>
+
+    <xsd:annotation>
+        <xsd:documentation>
+
+            DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+            Copyright 1997-2010 Oracle and/or its affiliates. All rights reserved.
+
+Oracle and Java are registered trademarks of Oracle and/or its affiliates.
+Other names may be trademarks of their respective owners.
+
+
+            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
+            http://www.netbeans.org/cddl-gplv2.html
+            or nbbuild/licenses/CDDL-GPL-2-CP. 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
+            nbbuild/licenses/CDDL-GPL-2-CP.  Oracle designates this
+            particular file as subject to the "Classpath" exception as provided
+            by Oracle 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):
+
+            The Original Software is NetBeans. The Initial Developer of the Original
+            Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun
+            Microsystems, Inc. All Rights Reserved.
+
+            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 do not 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.
+
+        </xsd:documentation>
+    </xsd:annotation>
+
+    <xsd:annotation>
+        <xsd:documentation>
+
+            The following definitions that appear in the common
+            shareable schema(s) of J2EE deployment descriptors should be
+            interpreted with respect to the context they are included:
+
+            Deployment Component may indicate one of the following:
+            j2ee application;
+            application client;
+            web application;
+            enterprise bean;
+            resource adapter;
+
+            Deployment File may indicate one of the following:
+            ear file;
+            war file;
+            jar file;
+            rar file;
+
+        </xsd:documentation>
+    </xsd:annotation>
+
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace"
+                schemaLocation="xml.xsd"/>
+
+    <xsd:include schemaLocation="javaee_web_services_client_1_2.xsd"/>
+
+
+    <!-- **************************************************** -->
+
+    <xsd:group name="descriptionGroup">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This group keeps the usage of the contained description related
+                elements consistent across Java EE deployment descriptors.
+                
+                All elements may occur multiple times with different languages,
+                to support localization of the content.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="javaee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="display-name"
+                         type="javaee:display-nameType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="icon"
+                         type="javaee:iconType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+        </xsd:sequence>
+    </xsd:group>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="descriptionType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The description type is used by a description element to
+                provide text describing the parent element.  The elements
+                that use this type should include any information that the
+                Deployment Component's Deployment File file producer wants
+                to provide to the consumer of the Deployment Component's
+                Deployment File (i.e., to the Deployer). Typically, the
+                tools used by such a Deployment File consumer will display
+                the description when processing the parent element that
+                contains the description.
+                
+                The lang attribute defines the language that the
+                description is provided in. The default value is "en" (English).
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="javaee:xsdStringType">
+                <xsd:attribute ref="xml:lang"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:simpleType name="dewey-versionType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type defines a dewey decimal that is used
+                to describe versions of documents.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <!-- Used for generation of backward-compatible DDAPI implementations - fix it!
+    <xsd:restriction base="xsd:token">
+      <xsd:pattern value="\.?[0-9]+(\.[0-9]+)*"/>
+    </xsd:restriction>
+    -->
+    
+        <xsd:restriction base="xsd:decimal">
+            <xsd:whiteSpace value="collapse"/>
+        </xsd:restriction>
+        
+    </xsd:simpleType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="display-nameType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The display-name type contains a short name that is intended
+	  to be displayed by tools. It is used by display-name
+	  elements.  The display name need not be unique.
+
+	  Example:
+
+	  ...
+	     <display-name xml:lang="en">
+	       Employee Self Service
+	     </display-name>
+
+	  The value of the xml:lang attribute is "en" (English) by default.
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="javaee:string">
+                <xsd:attribute ref="xml:lang"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="ejb-linkType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The ejb-linkType is used by ejb-link
+	  elements in the ejb-ref or ejb-local-ref elements to specify
+	  that an EJB reference is linked to enterprise bean.
+
+	  The value of the ejb-link element must be the ejb-name of an
+	  enterprise bean in the same ejb-jar file or in another ejb-jar
+	  file in the same Java EE application unit.
+
+	  Alternatively, the name in the ejb-link element may be
+	  composed of a path name specifying the ejb-jar containing the
+	  referenced enterprise bean with the ejb-name of the target
+	  bean appended and separated from the path name by "#".  The
+	  path name is relative to the Deployment File containing
+	  Deployment Component that is referencing the enterprise
+	  bean.  This allows multiple enterprise beans with the same
+	  ejb-name to be uniquely identified.
+
+	  Examples:
+
+	      <ejb-link>EmployeeRecord</ejb-link>
+
+	      <ejb-link>../products/product.jar#ProductEJB</ejb-link>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:string"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="ejb-local-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The ejb-local-refType is used by ejb-local-ref elements for
+                the declaration of a reference to an enterprise bean's local
+                home or to the local business interface of a 3.0 bean.
+                The declaration consists of:
+                
+                - an optional description
+                - the EJB reference name used in the code of the Deployment
+                Component that's referencing the enterprise bean.
+                - the optional expected type of the referenced enterprise bean
+                - the optional expected local interface of the referenced
+                enterprise bean or the local business interface of the
+                referenced enterprise bean.
+                - the optional expected local home interface of the referenced
+                enterprise bean. Not applicable if this ejb-local-ref refers
+                to the local business interface of a 3.0 bean.
+                - optional ejb-link information, used to specify the
+                referenced enterprise bean
+                - optional elements to define injection of the named enterprise
+                bean into a component field or property.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="javaee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="ejb-ref-name"
+                         type="javaee:ejb-ref-nameType"/>
+            <xsd:element name="ejb-ref-type"
+                         type="javaee:ejb-ref-typeType"
+                         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-link"
+                         type="javaee:ejb-linkType"
+                         minOccurs="0"/>
+            <xsd:group ref="javaee:resourceGroup"/>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="ejb-ref-nameType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The ejb-ref-name element contains the name of an EJB
+	  reference. The EJB reference is an entry in the
+	  Deployment Component's environment and is relative to the
+	  java:comp/env context.  The name must be unique within the
+	  Deployment Component.
+
+	  It is recommended that name is prefixed with "ejb/".
+
+	  Example:
+
+	  <ejb-ref-name>ejb/Payroll</ejb-ref-name>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:jndi-nameType"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="ejb-ref-typeType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The ejb-ref-typeType contains the expected type of the
+                referenced enterprise bean.
+                
+                The ejb-ref-type designates a value
+                that must be one of the following:
+                
+                Entity
+                Session
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:string">
+                <xsd:enumeration value="Entity"/>
+                <xsd:enumeration value="Session"/>
+            </xsd:restriction>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="ejb-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The ejb-refType is used by ejb-ref elements for the
+                declaration of a reference to an enterprise bean's home or
+                to the remote business interface of a 3.0 bean.
+                The declaration consists of:
+                
+                - an optional description
+                - the EJB reference name used in the code of
+                the Deployment Component that's referencing the enterprise
+                bean.
+                - the optional expected type of the referenced enterprise bean
+                - the optional remote interface of the referenced enterprise bean
+                or the remote business interface of the referenced enterprise
+                bean
+                - the optional expected home interface of the referenced
+                enterprise bean.  Not applicable if this ejb-ref
+                refers to the remote business interface of a 3.0 bean.
+                - optional ejb-link information, used to specify the
+                referenced enterprise bean
+                - optional elements to define injection of the named enterprise
+                bean into a component field or property
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="javaee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="ejb-ref-name"
+                         type="javaee:ejb-ref-nameType"/>
+            <xsd:element name="ejb-ref-type"
+                         type="javaee:ejb-ref-typeType"
+                         minOccurs="0"/>
+            <xsd:element name="home"
+                         type="javaee:homeType"
+                         minOccurs="0"/>
+            <xsd:element name="remote"
+                         type="javaee:remoteType"
+                         minOccurs="0"/>
+            <xsd:element name="ejb-link"
+                         type="javaee:ejb-linkType"
+                         minOccurs="0"/>
+            <xsd:group ref="javaee:resourceGroup"/>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="emptyType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type is used to designate an empty
+                element when used.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="env-entry-type-valuesType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  This type contains the fully-qualified Java type of the
+	  environment entry value that is expected by the
+	  application's code.
+
+	  The following are the legal values of env-entry-type-valuesType:
+
+	      java.lang.Boolean
+	      java.lang.Byte
+	      java.lang.Character
+	      java.lang.String
+	      java.lang.Short
+	      java.lang.Integer
+	      java.lang.Long
+	      java.lang.Float
+	      java.lang.Double
+
+	  Example:
+
+	  <env-entry-type>java.lang.Boolean</env-entry-type>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:string">
+                <xsd:enumeration value="java.lang.Boolean"/>
+                <xsd:enumeration value="java.lang.Byte"/>
+                <xsd:enumeration value="java.lang.Character"/>
+                <xsd:enumeration value="java.lang.String"/>
+                <xsd:enumeration value="java.lang.Short"/>
+                <xsd:enumeration value="java.lang.Integer"/>
+                <xsd:enumeration value="java.lang.Long"/>
+                <xsd:enumeration value="java.lang.Float"/>
+                <xsd:enumeration value="java.lang.Double"/>
+            </xsd:restriction>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="env-entryType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The env-entryType is used to declare an application's
+                environment entry. The declaration consists of an optional
+                description, the name of the environment entry, a type
+                (optional if the value is injected, otherwise required), and
+                an optional value.
+                
+                It also includes optional elements to define injection of
+                the named resource into fields or JavaBeans properties.
+                
+                If a value is not specified and injection is requested,
+                no injection will occur and no entry of the specified name
+                will be created.  This allows an initial value to be
+                specified in the source code without being incorrectly
+                changed when no override has been specified.
+                
+                If a value is not specified and no injection is requested,
+                a value must be supplied during deployment.
+                
+                This type is used by env-entry elements.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="javaee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="env-entry-name"
+                         type="javaee:jndi-nameType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        <![CDATA[
+
+	      The env-entry-name element contains the name of a
+	      Deployment Component's environment entry.  The name
+	      is a JNDI name relative to the java:comp/env
+	      context.  The name must be unique within a
+	      Deployment Component. The uniqueness
+	      constraints must be defined within the declared
+	      context.
+
+	      Example:
+
+	      <env-entry-name>minAmount</env-entry-name>
+
+	      ]]>
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="env-entry-type"
+                         type="javaee:env-entry-type-valuesType"
+                         minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        <![CDATA[
+
+	      The env-entry-type element contains the Java language
+	      type of the environment entry.  If an injection target
+	      is specified for the environment entry, the type may
+	      be omitted, or must match the type of the injection
+	      target.  If no injection target is specified, the type
+	      is required.
+
+	      Example:
+
+	      <env-entry-type>java.lang.Integer</env-entry-type>
+
+	      ]]>
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="env-entry-value"
+                         type="javaee:xsdStringType"
+                         minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        <![CDATA[
+
+	      The env-entry-value designates the value of a
+	      Deployment Component's environment entry. The value
+	      must be a String that is valid for the
+	      constructor of the specified type that takes a
+	      single String parameter, or for java.lang.Character,
+	      a single character.
+
+	      Example:
+
+	      <env-entry-value>100.00</env-entry-value>
+
+	      ]]>
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:group ref="javaee:resourceGroup"/>
+            
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="fully-qualified-classType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The elements that use this type designate the name of a
+                Java class or interface.  The name is in the form of a
+                "binary name", as defined in the JLS.  This is the form
+                of name used in Class.forName().  Tools that need the
+                canonical name (the name used in source code) will need
+                to convert this binary name to the canonical name.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:string"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="generic-booleanType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type defines four different values which can designate
+                boolean values. This includes values yes and no which are
+                not designated by xsd:boolean
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:string">
+                <xsd:enumeration value="true"/>
+                <xsd:enumeration value="false"/>
+                <xsd:enumeration value="yes"/>
+                <xsd:enumeration value="no"/>
+            </xsd:restriction>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="homeType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The homeType defines the fully-qualified name of
+	  an enterprise bean's home interface.
+
+	  Example:
+
+	      <home>com.aardvark.payroll.PayrollHome</home>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:fully-qualified-classType"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="iconType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The icon type contains small-icon and large-icon elements
+                that specify the file names for small and large GIF, JPEG,
+                or PNG icon images used to represent the parent element in a
+                GUI tool.
+                
+                The xml:lang attribute defines the language that the
+                icon file names are provided in. Its value is "en" (English)
+                by default.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="small-icon" type="javaee:pathType"
+                         minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        <![CDATA[
+
+	      The small-icon element contains the name of a file
+	      containing a small (16 x 16) icon image. The file
+	      name is a relative path within the Deployment
+	      Component's Deployment File.
+
+	      The image may be in the GIF, JPEG, or PNG format.
+	      The icon can be used by tools.
+
+	      Example:
+
+	      <small-icon>employee-service-icon16x16.jpg</small-icon>
+
+	      ]]>
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="large-icon" type="javaee:pathType"
+                         minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        <![CDATA[
+
+	      The large-icon element contains the name of a file
+	      containing a large
+	      (32 x 32) icon image. The file name is a relative
+	      path within the Deployment Component's Deployment
+	      File.
+
+	      The image may be in the GIF, JPEG, or PNG format.
+	      The icon can be used by tools.
+
+	      Example:
+
+	      <large-icon>employee-service-icon32x32.jpg</large-icon>
+
+	      ]]>
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+        </xsd:sequence>
+        
+        <xsd:attribute ref="xml:lang"/>
+        <xsd:attribute name="id" type="xsd:ID"/>
+        
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="injection-targetType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                An injection target specifies a class and a name within
+                that class into which a resource should be injected.
+                
+                The injection target class specifies the fully qualified
+                class name that is the target of the injection.  The
+                Java EE specifications describe which classes can be an
+                injection target.
+                
+                The injection target name specifies the target within
+                the specified class.  The target is first looked for as a
+                JavaBeans property name.  If not found, the target is
+                looked for as a field name.
+                
+                The specified resource will be injected into the target
+                during initialization of the class by either calling the
+                set method for the target property or by setting a value
+                into the named field.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:element name="injection-target-class"
+                         type="javaee:fully-qualified-classType"/>
+            <xsd:element name="injection-target-name"
+                         type="javaee:java-identifierType"/>
+        </xsd:sequence>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="java-identifierType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The java-identifierType defines a Java identifier.
+                The users of this type should further verify that
+                the content does not contain Java reserved keywords.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:string">
+                <xsd:pattern value="($|_|\p{L})(\p{L}|\p{Nd}|_|$)*"/>
+            </xsd:restriction>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="java-typeType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This is a generic type that designates a Java primitive
+                type or a fully qualified name of a Java interface/type,
+                or an array of such types.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:string">
+                <xsd:pattern value="[^\p{Z}]*"/>
+            </xsd:restriction>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="jndi-nameType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The jndi-nameType type designates a JNDI name in the
+                Deployment Component's environment and is relative to the
+                java:comp/env context.  A JNDI name must be unique within the
+                Deployment Component.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:string"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:group name="jndiEnvironmentRefsGroup">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This group keeps the usage of the contained JNDI environment
+                reference elements consistent across Java EE deployment descriptors.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:element name="env-entry"
+                         type="javaee:env-entryType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="ejb-ref"
+                         type="javaee:ejb-refType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="ejb-local-ref"
+                         type="javaee:ejb-local-refType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:group ref="javaee:service-refGroup"/>
+            <xsd:element name="resource-ref"
+                         type="javaee:resource-refType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="resource-env-ref"
+                         type="javaee:resource-env-refType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="message-destination-ref"
+                         type="javaee:message-destination-refType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="persistence-context-ref"
+                         type="javaee:persistence-context-refType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="persistence-unit-ref"
+                         type="javaee:persistence-unit-refType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="post-construct"
+                         type="javaee:lifecycle-callbackType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+            <xsd:element name="pre-destroy"
+                         type="javaee:lifecycle-callbackType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+        </xsd:sequence>
+    </xsd:group>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="lifecycle-callbackType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The lifecycle-callback type specifies a method on a
+                class to be called when a lifecycle event occurs.
+                Note that each class may have only one lifecycle callback
+                method for any given event and that the method may not
+                be overloaded.
+                
+                If the lifefycle-callback-class element is missing then
+                the class defining the callback is assumed to be the
+                component class in scope at the place in the descriptor
+                in which the callback definition appears.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:element name="lifecycle-callback-class"
+                         type="javaee:fully-qualified-classType"
+                         minOccurs="0"/>
+            <xsd:element name="lifecycle-callback-method"
+                         type="javaee:java-identifierType"/>
+        </xsd:sequence>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="listenerType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The listenerType indicates the deployment properties for a web
+                application listener bean.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:group ref="javaee:descriptionGroup"/>
+            <xsd:element name="listener-class"
+                         type="javaee:fully-qualified-classType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The listener-class element declares a class in the
+                        application must be registered as a web
+                        application listener bean. The value is the fully
+                        qualified classname of the listener class.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="local-homeType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The local-homeType defines the fully-qualified
+                name of an enterprise bean's local home interface.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:fully-qualified-classType"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="localType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The localType defines the fully-qualified name of an
+                enterprise bean's local interface.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:fully-qualified-classType"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="message-destination-linkType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The message-destination-linkType is used to link a message
+                destination reference or message-driven bean to a message
+                destination.
+                
+                The Assembler sets the value to reflect the flow of messages
+                between producers and consumers in the application.
+                
+                The value must be the message-destination-name of a message
+                destination in the same Deployment File or in another
+                Deployment File in the same Java EE application unit.
+                
+                Alternatively, the value may be composed of a path name
+                specifying a Deployment File containing the referenced
+                message destination with the message-destination-name of the
+                destination appended and separated from the path name by
+                "#". The path name is relative to the Deployment File
+                containing Deployment Component that is referencing the
+                message destination.  This allows multiple message
+                destinations with the same name to be uniquely identified.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:string"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="message-destination-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The message-destination-ref element contains a declaration
+	  of Deployment Component's reference to a message destination
+	  associated with a resource in Deployment Component's
+	  environment. It consists of:
+
+		  - an optional description
+		  - the message destination reference name
+		  - an optional message destination type
+		  - an optional specification as to whether
+		    the destination is used for
+		    consuming or producing messages, or both.
+		    if not specified, "both" is assumed.
+		  - an optional link to the message destination
+		  - optional injection targets
+
+	  The message destination type must be supplied unless an
+	  injection target is specified, in which case the type
+	  of the target is used.  If both are specified, the type
+	  must be assignment compatible with the type of the injection
+	  target.
+
+	  Examples:
+
+	  <message-destination-ref>
+		  <message-destination-ref-name>jms/StockQueue
+		  </message-destination-ref-name>
+		  <message-destination-type>javax.jms.Queue
+		  </message-destination-type>
+		  <message-destination-usage>Consumes
+		  </message-destination-usage>
+		  <message-destination-link>CorporateStocks
+		  </message-destination-link>
+	  </message-destination-ref>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="javaee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="message-destination-ref-name"
+                         type="javaee:jndi-nameType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The message-destination-ref-name element specifies
+                        the name of a message destination reference; its
+                        value is the environment entry name used in
+                        Deployment Component code.  The name is a JNDI name
+                        relative to the java:comp/env context and must be
+                        unique within an ejb-jar (for enterprise beans) or a
+                        Deployment File (for others).
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="message-destination-type"
+                         type="javaee:message-destination-typeType"
+                         minOccurs="0"/>
+            <xsd:element name="message-destination-usage"
+                         type="javaee:message-destination-usageType"
+                         minOccurs="0"/>
+            <xsd:element name="message-destination-link"
+                         type="javaee:message-destination-linkType"
+                         minOccurs="0"/>
+            
+            <xsd:group ref="javaee:resourceGroup"/>
+            
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+        
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="message-destination-typeType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The message-destination-typeType specifies the type of
+	  the destination. The type is specified by the Java interface
+	  expected to be implemented by the destination.
+
+	  Example:
+
+	    <message-destination-type>javax.jms.Queue
+	    </message-destination-type>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:fully-qualified-classType"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="message-destination-usageType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The message-destination-usageType specifies the use of the
+                message destination indicated by the reference.  The value
+                indicates whether messages are consumed from the message
+                destination, produced for the destination, or both.  The
+                Assembler makes use of this information in linking producers
+                of a destination with its consumers.
+                
+                The value of the message-destination-usage element must be
+                one of the following:
+                Consumes
+                Produces
+                ConsumesProduces
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:string">
+                <xsd:enumeration value="Consumes"/>
+                <xsd:enumeration value="Produces"/>
+                <xsd:enumeration value="ConsumesProduces"/>
+            </xsd:restriction>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="message-destinationType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The message-destinationType specifies a message
+	  destination. The logical destination described by this
+	  element is mapped to a physical destination by the Deployer.
+
+	  The message destination element contains:
+
+		  - an optional description
+		  - an optional display-name
+		  - an optional icon
+		  - a message destination name which must be unique
+		    among message destination names within the same
+		    Deployment File.
+		  - an optional mapped name
+
+	  Example:
+
+	  <message-destination>
+		  <message-destination-name>CorporateStocks
+		  </message-destination-name>
+	  </message-destination>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:group ref="javaee:descriptionGroup"/>
+            <xsd:element name="message-destination-name"
+                         type="javaee:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The message-destination-name element specifies a
+                        name for a message destination.  This name must be
+                        unique among the names of message destinations
+                        within the Deployment File.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="mapped-name"
+                         type="javaee:xsdStringType"
+                         minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        <![CDATA[
+
+	      A product specific name that this message destination
+	      should be mapped to.  Each message-destination-ref
+	      element that references this message destination will
+	      define a name in the namespace of the referencing
+	      component.  (It's a name in the JNDI java:comp/env
+	      namespace.)  Many application servers provide a way to
+	      map these local names to names of resources known to the
+	      application server.  This mapped name is often a global
+	      JNDI name, but may be a name of any form.  Each of the
+	      local names should be mapped to this same global name.
+
+	      Application servers are not required to support any
+	      particular form or type of mapped name, nor the ability
+	      to use mapped names.  The mapped name is
+	      product-dependent and often installation-dependent.  No
+	      use of a mapped name is portable.
+
+	      ]]>
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="param-valueType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type is a general type that can be used to declare
+                parameter/value lists.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="javaee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="param-name"
+                         type="javaee:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The param-name element contains the name of a
+                        parameter.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="param-value"
+                         type="javaee:xsdStringType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The param-value element contains the value of a
+                        parameter.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="pathType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The elements that use this type designate either a relative
+                path or an absolute path starting with a "/".
+                
+                In elements that specify a pathname to a file within the
+                same Deployment File, relative filenames (i.e., those not
+                starting with "/") are considered relative to the root of
+                the Deployment File's namespace.  Absolute filenames (i.e.,
+                those starting with "/") also specify names in the root of
+                the Deployment 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:simpleContent>
+            <xsd:restriction base="javaee:string"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="persistence-context-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The persistence-context-ref element contains a declaration
+	  of Deployment Component's reference to a persistence context
+	  associated within a Deployment Component's
+	  environment. It consists of:
+
+		  - an optional description
+		  - the persistence context reference name
+		  - an optional persistence unit name.  If not specified,
+                    the default persistence unit is assumed.
+		  - an optional specification as to whether
+		    the persistence context type is Transaction or
+		    Extended.  If not specified, Transaction is assumed.
+                  - an optional list of persistence properties
+		  - optional injection targets
+
+	  Examples:
+
+            <persistence-context-ref>
+              <persistence-context-ref-name>myPersistenceContext
+              </persistence-context-ref-name>
+            </persistence-context-ref>
+
+            <persistence-context-ref>
+              <persistence-context-ref-name>myPersistenceContext
+                </persistence-context-ref-name>
+              <persistence-unit-name>PersistenceUnit1
+                </persistence-unit-name>
+              <persistence-context-type>Extended</persistence-context-type>
+            </persistence-context-ref>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="javaee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="persistence-context-ref-name"
+                         type="javaee:jndi-nameType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The persistence-context-ref-name element specifies
+                        the name of a persistence context reference; its
+                        value is the environment entry name used in
+                        Deployment Component code.  The name is a JNDI name
+                        relative to the java:comp/env context.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="persistence-unit-name"
+                         type="javaee:string"
+                         minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The Application Assembler(or BeanProvider) may use the
+                        following syntax to avoid the need to rename persistence
+                        units to have unique names within a Java EE application.
+                        
+                        The Application Assembler specifies the pathname of the
+                        root of the persistence.xml file for the referenced
+                        persistence unit and appends the name of the persistence
+                        unit separated from the pathname by #. The pathname is
+                        relative to the referencing application component jar file.
+                        In this manner, multiple persistence units with the same
+                        persistence unit name may be uniquely identified when the
+                        Application Assembler cannot change persistence unit names.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="persistence-context-type"
+                         type="javaee:persistence-context-typeType"
+                         minOccurs="0"/>
+            
+            <xsd:element name="persistence-property"
+                         type="javaee:propertyType"
+                         minOccurs="0"
+                         maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        Used to specify properties for the container or persistence
+                        provider.  Vendor-specific properties may be included in
+                        the set of properties.  Properties that are not recognized
+                        by a vendor must be ignored.  Entries that make use of the
+                        namespace javax.persistence and its subnamespaces must not
+                        be used for vendor-specific properties.  The namespace
+                        javax.persistence is reserved for use by the specification.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:group ref="javaee:resourceGroup"/>
+            
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+        
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="persistence-context-typeType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The persistence-context-typeType specifies the transactional
+                nature of a persistence context reference.
+                
+                The value of the persistence-context-type element must be
+                one of the following:
+                Transaction
+                Extended
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:string">
+                <xsd:enumeration value="Transaction"/>
+                <xsd:enumeration value="Extended"/>
+            </xsd:restriction>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="persistence-unit-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The persistence-unit-ref element contains a declaration
+	  of Deployment Component's reference to a persistence unit
+	  associated within a Deployment Component's
+	  environment. It consists of:
+
+		  - an optional description
+		  - the persistence unit reference name
+		  - an optional persistence unit name.  If not specified,
+                    the default persistence unit is assumed.
+		  - optional injection targets
+
+	  Examples:
+
+            <persistence-unit-ref>
+              <persistence-unit-ref-name>myPersistenceUnit
+              </persistence-unit-ref-name>
+            </persistence-unit-ref>
+
+            <persistence-unit-ref>
+              <persistence-unit-ref-name>myPersistenceUnit
+                </persistence-unit-ref-name>
+              <persistence-unit-name>PersistenceUnit1
+                </persistence-unit-name>
+            </persistence-unit-ref>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="javaee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="persistence-unit-ref-name"
+                         type="javaee:jndi-nameType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The persistence-unit-ref-name element specifies
+                        the name of a persistence unit reference; its
+                        value is the environment entry name used in
+                        Deployment Component code.  The name is a JNDI name
+                        relative to the java:comp/env context.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="persistence-unit-name"
+                         type="javaee:string"
+                         minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The Application Assembler(or BeanProvider) may use the
+                        following syntax to avoid the need to rename persistence
+                        units to have unique names within a Java EE application.
+                        
+                        The Application Assembler specifies the pathname of the
+                        root of the persistence.xml file for the referenced
+                        persistence unit and appends the name of the persistence
+                        unit separated from the pathname by #. The pathname is
+                        relative to the referencing application component jar file.
+                        In this manner, multiple persistence units with the same
+                        persistence unit name may be uniquely identified when the
+                        Application Assembler cannot change persistence unit names.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:group ref="javaee:resourceGroup"/>
+            
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+        
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="propertyType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                Specifies a name/value pair.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="name"
+                         type="javaee:xsdStringType">
+            </xsd:element>
+            <xsd:element name="value"
+                         type="javaee:xsdStringType">
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="remoteType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The remote element contains the fully-qualified name
+	  of the enterprise bean's remote interface.
+
+	  Example:
+
+	      <remote>com.wombat.empl.EmployeeService</remote>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:fully-qualified-classType"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="res-authType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The res-authType specifies whether the Deployment Component
+                code signs on programmatically to the resource manager, or
+                whether the Container will sign on to the resource manager
+                on behalf of the Deployment Component. In the latter case,
+                the Container uses information that is supplied by the
+                Deployer.
+                
+                The value must be one of the two following:
+                
+                Application
+                Container
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:string">
+                <xsd:enumeration value="Application"/>
+                <xsd:enumeration value="Container"/>
+            </xsd:restriction>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="res-sharing-scopeType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The res-sharing-scope type specifies whether connections
+                obtained through the given resource manager connection
+                factory reference can be shared. The value, if specified,
+                must be one of the two following:
+                
+                Shareable
+                Unshareable
+                
+                The default value is Shareable.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:string">
+                <xsd:enumeration value="Shareable"/>
+                <xsd:enumeration value="Unshareable"/>
+            </xsd:restriction>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="resource-env-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The resource-env-refType is used to define
+	  resource-env-type elements.  It contains a declaration of a
+	  Deployment Component's reference to an administered object
+	  associated with a resource in the Deployment Component's
+	  environment.  It consists of an optional description, the
+	  resource environment reference name, and an optional
+	  indication of the resource environment reference type
+	  expected by the Deployment Component code.
+
+	  It also includes optional elements to define injection of
+	  the named resource into fields or JavaBeans properties.
+
+	  The resource environment type must be supplied unless an
+	  injection target is specified, in which case the type
+	  of the target is used.  If both are specified, the type
+	  must be assignment compatible with the type of the injection
+	  target.
+
+	  Example:
+
+	  <resource-env-ref>
+	      <resource-env-ref-name>jms/StockQueue
+	      </resource-env-ref-name>
+	      <resource-env-ref-type>javax.jms.Queue
+	      </resource-env-ref-type>
+	  </resource-env-ref>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="javaee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="resource-env-ref-name"
+                         type="javaee:jndi-nameType">
+                <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 Deployment Component code.  The name is a JNDI
+                        name relative to the java:comp/env context and must
+                        be unique within a Deployment Component.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="resource-env-ref-type"
+                         type="javaee:fully-qualified-classType"
+                         minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The resource-env-ref-type element specifies the type
+                        of a resource environment reference.  It is the
+                        fully qualified name of a Java language class or
+                        interface.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:group ref="javaee:resourceGroup"/>
+            
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="resource-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The resource-refType contains a declaration of a
+	  Deployment Component's reference to an external resource. It
+	  consists of an optional description, the resource manager
+	  connection factory reference name, an optional indication of
+	  the resource manager connection factory type expected by the
+	  Deployment Component code, an optional type of authentication
+	  (Application or Container), and an optional specification of
+	  the shareability of connections obtained from the resource
+	  (Shareable or Unshareable).
+
+	  It also includes optional elements to define injection of
+	  the named resource into fields or JavaBeans properties.
+
+	  The connection factory type must be supplied unless an
+	  injection target is specified, in which case the type
+	  of the target is used.  If both are specified, the type
+	  must be assignment compatible with the type of the injection
+	  target.
+
+	  Example:
+
+	  <resource-ref>
+	      <res-ref-name>jdbc/EmployeeAppDB</res-ref-name>
+	      <res-type>javax.sql.DataSource</res-type>
+	      <res-auth>Container</res-auth>
+	      <res-sharing-scope>Shareable</res-sharing-scope>
+	  </resource-ref>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="javaee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="res-ref-name"
+                         type="javaee:jndi-nameType">
+                <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 a Deployment File.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="res-type"
+                         type="javaee:fully-qualified-classType"
+                         minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The res-type element specifies the type of the data
+                        source. The type is specified by the fully qualified
+                        Java language class or interface
+                        expected to be implemented by the data source.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="res-auth"
+                         type="javaee:res-authType"
+                         minOccurs="0"/>
+            
+            <xsd:element name="res-sharing-scope"
+                         type="javaee:res-sharing-scopeType"
+                         minOccurs="0"/>
+            
+            <xsd:group ref="javaee:resourceGroup"/>
+            
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:group name="resourceGroup">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This group collects elements that are common to all the
+                JNDI resource elements.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:element name="mapped-name"
+                         type="javaee:xsdStringType"
+                         minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        <![CDATA[
+
+	      A product specific name that this resource should be
+	      mapped to.  The name of this resource, as defined by the
+	      resource's name element or defaulted, is a name that is
+	      local to the application component using the resource.
+	      (It's a name in the JNDI java:comp/env namespace.)  Many
+	      application servers provide a way to map these local
+	      names to names of resources known to the application
+	      server.  This mapped name is often a global JNDI name,
+	      but may be a name of any form.
+
+	      Application servers are not required to support any
+	      particular form or type of mapped name, nor the ability
+	      to use mapped names.  The mapped name is
+	      product-dependent and often installation-dependent.  No
+	      use of a mapped name is portable.
+
+	      ]]>
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="injection-target"
+                         type="javaee:injection-targetType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+        </xsd:sequence>
+    </xsd:group>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="role-nameType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The role-nameType designates the name of a security role.
+                
+                The name must conform to the lexical rules for a token.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:string"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="run-asType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The run-asType specifies the run-as identity to be
+                used for the execution of a component. It contains an
+                optional description, and the name of a security role.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="javaee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="role-name"
+                         type="javaee:role-nameType"/>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="security-role-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The security-role-refType contains the declaration of a
+                security role reference in a component's or a
+                Deployment Component's code. The declaration consists of an
+                optional description, the security role name used in the
+                code, and an optional link to a security role. If the
+                security role is not specified, the Deployer must choose an
+                appropriate security role.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="javaee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="role-name"
+                         type="javaee:role-nameType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The value of the role-name element must be the String used
+                        as the parameter to the
+                        EJBContext.isCallerInRole(String roleName) method or the
+                        HttpServletRequest.isUserInRole(String role) method.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="role-link"
+                         type="javaee:role-nameType"
+                         minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The role-link element is a reference to a defined
+                        security role. The role-link element must contain
+                        the name of one of the security roles defined in the
+                        security-role elements.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="security-roleType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The security-roleType contains the definition of a security
+	  role. The definition consists of an optional description of
+	  the security role, and the security role name.
+
+	  Example:
+
+	      <security-role>
+	      <description>
+		  This role includes all employees who are authorized
+		  to access the employee service application.
+	      </description>
+	      <role-name>employee</role-name>
+	      </security-role>
+
+	  ]]>
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="javaee:descriptionType"
+                         minOccurs="0"
+                         maxOccurs="unbounded"/>
+            <xsd:element name="role-name"
+                         type="javaee:role-nameType"/>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="string">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This is a special string datatype that is defined by Java EE as
+                a base type for defining collapsed strings. When schemas
+                require trailing/leading space elimination as well as
+                collapsing the existing whitespace, this base type may be
+                used.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:token">
+                <xsd:attribute name="id" type="xsd:ID"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="true-falseType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This simple type designates a boolean with only two
+                permissible values
+                
+                - true
+                - false
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:xsdBooleanType">
+                <xsd:pattern value="(true|false)"/>
+            </xsd:restriction>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="url-patternType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The url-patternType contains the url pattern of the mapping.
+                It must follow the rules specified in Section 11.2 of the
+                Servlet API Specification. This pattern is assumed to be in
+                URL-decoded form and must not contain CR(#xD) or LF(#xA).
+                If it contains those characters, the container must inform
+                the developer with a descriptive error message.
+                The container must preserve all characters including whitespaces.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:string"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="xsdAnyURIType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type adds an "id" attribute to xsd:anyURI.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:anyURI">
+                <xsd:attribute name="id" type="xsd:ID"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="xsdBooleanType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type adds an "id" attribute to xsd:boolean.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:boolean">
+                <xsd:attribute name="id" type="xsd:ID"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="xsdIntegerType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type adds an "id" attribute to xsd:integer.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:integer">
+                <xsd:attribute name="id" type="xsd:ID"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="xsdNMTOKENType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type adds an "id" attribute to xsd:NMTOKEN.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:NMTOKEN">
+                <xsd:attribute name="id" type="xsd:ID"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="xsdNonNegativeIntegerType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type adds an "id" attribute to xsd:nonNegativeInteger.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:nonNegativeInteger">
+                <xsd:attribute name="id" type="xsd:ID"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="xsdPositiveIntegerType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type adds an "id" attribute to xsd:positiveInteger.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:positiveInteger">
+                <xsd:attribute name="id" type="xsd:ID"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="xsdQNameType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type adds an "id" attribute to xsd:QName.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:QName">
+                <xsd:attribute name="id" type="xsd:ID"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="xsdStringType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                This type adds an "id" attribute to xsd:string.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:string">
+                <xsd:attribute name="id" type="xsd:ID"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+</xsd:schema>
+
diff --git a/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/javaee_web_services_1_2.xsd b/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/javaee_web_services_1_2.xsd
new file mode 100644
index 0000000000..04363aeae9
--- /dev/null
+++ b/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/javaee_web_services_1_2.xsd
@@ -0,0 +1,785 @@
+<?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="1.2">
+    <xsd:annotation>
+        <xsd:documentation>
+            @(#)javaee_web_services_1_2.xsds	1.18 02/13/06
+        </xsd:documentation>
+    </xsd:annotation>
+
+    <xsd:annotation>
+        <xsd:documentation>
+
+            DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+            Copyright 1997-2010 Oracle and/or its affiliates. All rights reserved.
+
+Oracle and Java are registered trademarks of Oracle and/or its affiliates.
+Other names may be trademarks of their respective owners.
+
+
+            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
+            http://www.netbeans.org/cddl-gplv2.html
+            or nbbuild/licenses/CDDL-GPL-2-CP. 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
+            nbbuild/licenses/CDDL-GPL-2-CP.  Oracle designates this
+            particular file as subject to the "Classpath" exception as provided
+            by Oracle 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):
+
+            The Original Software is NetBeans. The Initial Developer of the Original
+            Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun
+            Microsystems, Inc. All Rights Reserved.
+
+            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 do not 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.
+
+        </xsd:documentation>
+    </xsd:annotation>
+
+    <xsd:annotation>
+        <xsd:documentation>
+
+            (C) Copyright International Business Machines Corporation 2002
+
+        </xsd:documentation>
+    </xsd:annotation>
+
+    <xsd:annotation>
+        <xsd:documentation>
+            <![CDATA[
+
+	The webservices element is the root element for the web services
+	deployment descriptor.  It specifies the set of web service
+	descriptions that are to be deployed into the Java EE Application
+	Server and the dependencies they have on container resources and
+	services.  The deployment descriptor must be named
+	"META-INF/webservices.xml" in the web services' jar file.
+
+	Used in: webservices.xml
+
+	All webservices deployment descriptors must indicate the
+	webservices 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:
+
+	    <webservices 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/javaee_web_services_1_2.xsd"
+	      version="1.2">
+	      ...
+	    </webservices>
+
+	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/javaee_web_services_1_2.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_5.xsd"/>
+    
+    
+    <!-- **************************************************** -->
+
+    <xsd:element name="webservices" type="javaee:webservicesType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The webservices element is the root element for the web services
+                deployment descriptor.  It specifies the set of web service
+                descriptions that are to be deployed into the Java EE Application Server
+                and the dependencies they have on container resources and services.
+                
+                Used in: webservices.xml
+                
+            </xsd:documentation>
+            
+        </xsd:annotation>
+        
+        <xsd:key name="webservice-description-name-key">
+            <xsd:annotation>
+                <xsd:documentation>
+                    
+                    The webservice-description-name identifies the collection of
+                    port-components associated with a WSDL file and JAX-RPC mapping. The
+                    name must be unique within the deployment descriptor.
+                    
+                </xsd:documentation>
+            </xsd:annotation>
+            <xsd:selector xpath="javaee:webservice-description"/>
+            
+            <xsd:field xpath="javaee:webservice-description-name"/>
+        </xsd:key>
+    </xsd:element>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="handler-chainType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The handler-chain element defines the handlerchain.
+                Handlerchain can be defined such that the handlers in the
+                handlerchain operate,all ports of a service, on a specific
+                port or on a list of protocol-bindings. The choice of elements
+                service-name-pattern, port-name-pattern and protocol-bindings
+                are used to specify whether the handlers in handler-chain are
+                for a service, port or protocol binding. If none of these
+                choices are specified with the handler-chain element then the
+                handlers specified in the handler-chain will be applied on
+                everything.
+                
+            </xsd:documentation>
+            
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            
+            <xsd:choice minOccurs="0" maxOccurs="1">
+                <xsd:element name="service-name-pattern"
+                             type="javaee:qname-pattern" />
+                <xsd:element name="port-name-pattern"
+                             type="javaee:qname-pattern" />
+                <xsd:element name="protocol-bindings"
+                             type="javaee:protocol-bindingListType"/>
+            </xsd:choice>
+            
+            <xsd:element name="handler"
+                         type="javaee:port-component_handlerType"
+                         minOccurs="1" maxOccurs="unbounded"/>
+        </xsd:sequence>
+        
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="handler-chainsType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The handler-chains element defines the handlerchains associated
+                with this service or service endpoint.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="handler-chain"
+                         type="javaee:handler-chainType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+        </xsd:sequence>
+        
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="port-componentType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The port-component element associates a WSDL port with a web service
+                interface and implementation.  It defines the name of the port as a
+                component, optional description, optional display name, optional iconic
+                representations, WSDL port QName, Service Endpoint Interface, Service
+                Implementation Bean.
+                
+                This element also associates a WSDL service with a JAX-WS Provider
+                implementation.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            
+            <xsd:element name="description"
+                         type="javaee:descriptionType"
+                         minOccurs="0" maxOccurs="1"/>
+            <xsd:element name="display-name"
+                         type="javaee:display-nameType"
+                         minOccurs="0" maxOccurs="1"/>
+            <xsd:element name="icon"
+                         type="javaee:iconType"
+                         minOccurs="0" maxOccurs="1"/>
+            <xsd:element name="port-component-name"
+                         type="javaee:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        <![CDATA[
+
+	      The port-component-name element specifies a port component's
+	      name.  This name is assigned by the module producer to name
+	      the service implementation bean in the module's deployment
+	      descriptor. The name must be unique among the port component
+	      names defined in the same module.
+
+	      Used in: port-component
+
+	      Example:
+		      <port-component-name>EmployeeService
+		      </port-component-name>
+
+	      ]]>
+                    </xsd:documentation>
+                </xsd:annotation>
+                
+            </xsd:element>
+            <xsd:element name="wsdl-service"
+                         type="javaee:xsdQNameType"
+                         minOccurs="0" maxOccurs="1">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        Defines the name space and local name part of the WSDL
+                        service QName. This is required to be specified for
+                        port components that are JAX-WS Provider implementations.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="wsdl-port"
+                         type="javaee:xsdQNameType"
+                         minOccurs="0" maxOccurs="1">
+                
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        Defines the name space and local name part of the WSDL
+                        port QName. This is not required to be specified for port
+                        components that are JAX-WS Provider implementations
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="enable-mtom"
+                         type="javaee:true-falseType"
+                         minOccurs="0" maxOccurs="1">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        Used to enable or disable SOAP MTOM/XOP mechanism for an
+                        endpoint implementation.
+                        
+                        Not to be specified for JAX-RPC runtime
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="protocol-binding"
+                         type="javaee:protocol-bindingType"
+                         minOccurs="0" maxOccurs="1">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        Used to specify the protocol binding used by the port-component.
+                        If this element is not specified, then the default binding is
+                        used (SOAP 1.1 over HTTP)
+                        
+                    </xsd:documentation>
+                    
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="service-endpoint-interface"
+                         type="javaee:fully-qualified-classType"
+                         minOccurs="0" maxOccurs="1">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        <![CDATA[
+
+	      The service-endpoint-interface element contains the
+	      fully-qualified name of the port component's Service Endpoint
+	      Interface.
+
+	      Used in: port-component
+
+	      Example:
+		      <remote>com.wombat.empl.EmployeeService</remote>
+
+	      This may not be specified in case there is no Service
+	      Enpoint Interface as is the case with directly using an
+	      implementation class with the @WebService annotation.
+
+	      When the port component is a Provider implementation
+	      this is not specified.
+
+	      ]]>
+                    </xsd:documentation>
+                </xsd:annotation>
+                
+            </xsd:element>
+            <xsd:element name="service-impl-bean"
+                         type="javaee:service-impl-beanType"/>
+            
+            <xsd:choice>
+                <xsd:element name="handler"
+                      type="javaee:port-component_handlerType"
+                      minOccurs="0" maxOccurs="unbounded">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            To be used with JAX-RPC based runtime only.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                    
+                </xsd:element>
+                <xsd:element name="handler-chains"
+                      type="javaee:handler-chainsType"
+                      minOccurs="0" maxOccurs="1">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            To be used with JAX-WS based runtime only.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+            </xsd:choice>
+            
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="port-component_handlerType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                Declares the handler for a port-component. Handlers can access the
+                init-param name/value pairs using the HandlerInfo interface.
+                
+                Used in: port-component
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:group ref="javaee:descriptionGroup"/>
+            <xsd:element name="handler-name"
+                         type="javaee:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        Defines the name of the handler. The name must be unique within the
+                        module.
+                        
+                    </xsd:documentation>
+                    
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="handler-class"
+                         type="javaee:fully-qualified-classType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        Defines a fully qualified class name for the handler implementation.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="init-param"
+                         type="javaee:param-valueType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+            
+            <xsd:element name="soap-header"
+                         type="javaee:xsdQNameType"
+                         minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        Defines the QName of a SOAP header that will be processed by the
+                        handler.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="soap-role"
+                         type="javaee:string"
+                         minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The soap-role element contains a SOAP actor definition that the
+                        Handler will play as a role.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+        
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:simpleType name="protocol-URIAliasType">
+        <xsd:annotation>
+            <xsd:documentation>
+                Defines the type that is used for specifying tokens that
+                start with ## which are used to alias existing standard
+                protocol bindings and support aliases for new standard
+                binding URIs that are introduced in future specifications.
+                
+                The following tokens alias the standard protocol binding
+                URIs:
+                
+                ##SOAP11_HTTP = "http://schemas.xmlsoap.org/wsdl/soap/http"
+                ##SOAP11_HTTP_MTOM =
+                "http://schemas.xmlsoap.org/wsdl/soap/http?mtom=true"
+                ##SOAP12_HTTP = "http://www.w3.org/2003/05/soap/bindings/HTTP/"
+                ##SOAP12_HTTP_MTOM =
+                "http://www.w3.org/2003/05/soap/bindings/HTTP/?mtom=true"
+                ##XML_HTTP = "http://www.w3.org/2004/08/wsdl/http"
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:restriction base="xsd:token">
+            
+            <xsd:pattern value="##.+"/>
+        </xsd:restriction>
+    </xsd:simpleType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:simpleType name="protocol-bindingListType">
+        <xsd:annotation>
+            <xsd:documentation>
+                Defines the type used for specifying a list of
+                protocol-bindingType(s). For e.g.
+                
+                ##SOAP11_HTTP ##SOAP12_HTTP ##XML_HTTP
+                
+            </xsd:documentation>
+            
+        </xsd:annotation>
+        <xsd:list itemType="javaee:protocol-bindingType"/>
+    </xsd:simpleType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:simpleType name="protocol-bindingType">
+        <xsd:annotation>
+            <xsd:documentation>
+                Defines the type used for specifying the URI for the
+                protocol binding used by the port-component.  For
+                portability one could use one of the following tokens that
+                alias the standard binding types:
+                
+                ##SOAP11_HTTP
+                ##SOAP11_HTTP_MTOM
+                ##SOAP12_HTTP
+                ##SOAP12_HTTP_MTOM
+                ##XML_HTTP
+                
+                Other specifications could define tokens that start with ##
+                to alias new standard binding URIs that are introduced.
+                
+            </xsd:documentation>
+            
+        </xsd:annotation>
+        <xsd:union memberTypes="xsd:anyURI javaee:protocol-URIAliasType"/>
+    </xsd:simpleType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:simpleType name="qname-pattern">
+        <xsd:annotation>
+            <xsd:documentation>
+                This is used to specify the QName pattern in the
+                attribute service-name-pattern and port-name-pattern in
+                the handler-chain element
+                
+                For example, the various forms acceptable here for
+                service-name-pattern attribute in handler-chain element
+                are :
+                
+                Exact Name: service-name-pattern="ns1:EchoService"
+                
+                In this case, handlers specified in this
+                handler-chain element will apply to all ports with
+                this exact service name. The namespace prefix must
+                have been declared in a namespace declaration
+                attribute in either the start-tag of the element
+                where the prefix is used or in an an ancestor
+                element (i.e. an element in whose content the
+                prefixed markup occurs)
+                
+                Pattern : service-name-pattern="ns1:EchoService*"
+                
+                In this case, handlers specified in this
+                handler-chain element will apply to all ports whose
+                Service names are like EchoService1, EchoServiceFoo
+                etc. The namespace prefix must have been declared in
+                a namespace declaration attribute in either the
+                start-tag of the element where the prefix is used or
+                in an an ancestor element (i.e. an element in whose
+                content the prefixed markup occurs)
+                
+                Wild Card : service-name-pattern="*"
+                
+                In this case, handlers specified in this handler-chain
+                element will apply to ports of all service names.
+                
+                The same can be applied to port-name attribute in
+                handler-chain element.
+                
+            </xsd:documentation>
+            
+        </xsd:annotation>
+        
+        <xsd:restriction base="xsd:token">
+            <xsd:pattern value="\*|([\i-[:]][\c-[:]]*:)?[\i-[:]][\c-[:]]*\*?"/>
+        </xsd:restriction>
+        
+    </xsd:simpleType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="service-impl-beanType">
+        
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The service-impl-bean element defines the web service implementation.
+                A service implementation can be an EJB bean class or JAX-RPC web
+                component.  Existing EJB implementations are exposed as a web service
+                using an ejb-link.
+                
+                Used in: port-component
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:choice>
+            <xsd:element name="ejb-link"
+                         type="javaee:ejb-linkType"/>
+            <xsd:element name="servlet-link"
+                         type="javaee:servlet-linkType"/>
+        </xsd:choice>
+        
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="servlet-linkType">
+        <xsd:annotation>
+            <xsd:documentation>
+                <![CDATA[
+
+	  The servlet-link element is used in the service-impl-bean element
+	  to specify that a Service Implementation Bean is defined as a
+	  JAX-RPC Service Endpoint.
+
+	  The value of the servlet-link element must be the servlet-name of
+	  a JAX-RPC Service Endpoint in the same WAR file.
+
+	  Used in: service-impl-bean
+
+	  Example:
+		  <servlet-link>StockQuoteService</servlet-link>
+
+	  ]]>
+            </xsd:documentation>
+            
+        </xsd:annotation>
+        <xsd:simpleContent>
+            <xsd:restriction base="javaee:string"/>
+        </xsd:simpleContent>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="webservice-descriptionType">
+        <xsd:annotation>
+            
+            <xsd:documentation>
+                
+                The webservice-description element defines a WSDL document file
+                and the set of Port components associated with the WSDL ports
+                defined in the WSDL document.  There may be multiple
+                webservice-descriptions defined within a module.
+                
+                All WSDL file ports must have a corresponding port-component element
+                defined.
+                
+                Used in: webservices
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="description"
+                         type="javaee:descriptionType"
+                         minOccurs="0" maxOccurs="1"/>
+            <xsd:element name="display-name"
+                         type="javaee:display-nameType"
+                         minOccurs="0" maxOccurs="1"/>
+            <xsd:element name="icon"
+                         type="javaee:iconType"
+                         minOccurs="0" maxOccurs="1"/>
+            
+            <xsd:element name="webservice-description-name"
+                         type="javaee:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The webservice-description-name identifies the collection of
+                        port-components associated with a WSDL file and JAX-RPC
+                        mapping. The name must be unique within the deployment descriptor.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="wsdl-file"
+                         type="javaee:pathType"
+                         minOccurs="0" maxOccurs="1">
+                <xsd:annotation>
+                    
+                    <xsd:documentation>
+                        
+                        The wsdl-file element contains the name of a WSDL file in the
+                        module.  The file name is a relative path within the module.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="jaxrpc-mapping-file"
+                         type="javaee:pathType"
+                         minOccurs="0" maxOccurs="1">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The jaxrpc-mapping-file element contains the name of a file that
+                        describes the JAX-RPC mapping between the Java interaces used by
+                        the application and the WSDL description in the wsdl-file.  The
+                        file name is a relative path within the module.
+                        
+                        This is not required when JAX-WS based runtime is used.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="port-component"
+                         type="javaee:port-componentType"
+                         minOccurs="1" maxOccurs="unbounded">
+                <xsd:key name="port-component_handler-name-key">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            
+                            Defines the name of the handler. The name must be unique
+                            within the module.
+                            
+                        </xsd:documentation>
+                        
+                    </xsd:annotation>
+                    <xsd:selector xpath="javaee:handler"/>
+                    <xsd:field xpath="javaee:handler-name"/>
+                </xsd:key>
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="webservicesType">
+        <xsd:sequence>
+            <xsd:group ref="javaee:descriptionGroup"/>
+            <xsd:element name="webservice-description"
+                         type="javaee:webservice-descriptionType"
+                         minOccurs="1" maxOccurs="unbounded">
+                <xsd:key name="port-component-name-key">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            <![CDATA[
+
+		The port-component-name element specifies a port
+		component's name.  This name is assigned by the module
+		producer to name the service implementation bean in the
+		module's deployment descriptor. The name must be unique
+		among the port component names defined in the same module.
+
+		Used in: port-component
+
+		Example:
+			<port-component-name>EmployeeService
+			</port-component-name>
+
+		]]>
+
+                        </xsd:documentation>
+                    </xsd:annotation>
+                    <xsd:selector xpath="javaee:port-component"/>
+                    <xsd:field xpath="javaee:port-component-name"/>
+                </xsd:key>
+            </xsd:element>
+        </xsd:sequence>
+        
+        <xsd:attribute name="version"
+                       type="javaee:dewey-versionType"
+                       fixed="1.2"
+                       use="required">
+            
+            <xsd:annotation>
+                <xsd:documentation>
+                    
+                    The required value for the version is 1.2.
+                    
+                </xsd:documentation>
+            </xsd:annotation>
+        </xsd:attribute>
+        
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+</xsd:schema>
diff --git a/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/javaee_web_services_client_1_2.xsd b/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/javaee_web_services_client_1_2.xsd
new file mode 100644
index 0000000000..29387bfa83
--- /dev/null
+++ b/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/javaee_web_services_client_1_2.xsd
@@ -0,0 +1,608 @@
+<?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="1.2">
+    <xsd:annotation>
+        <xsd:documentation>
+            @(#)javaee_web_services_client_1_2.xsds	1.19 02/13/06
+        </xsd:documentation>
+    </xsd:annotation>
+
+    <xsd:annotation>
+        <xsd:documentation>
+
+
+            DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+            Copyright 1997-2010 Oracle and/or its affiliates. All rights reserved.
+
+Oracle and Java are registered trademarks of Oracle and/or its affiliates.
+Other names may be trademarks of their respective owners.
+
+
+            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
+            http://www.netbeans.org/cddl-gplv2.html
+            or nbbuild/licenses/CDDL-GPL-2-CP. 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
+            nbbuild/licenses/CDDL-GPL-2-CP.  Oracle designates this
+            particular file as subject to the "Classpath" exception as provided
+            by Oracle 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):
+
+            The Original Software is NetBeans. The Initial Developer of the Original
+            Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun
+            Microsystems, Inc. All Rights Reserved.
+
+            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 do not 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.
+
+        </xsd:documentation>
+    </xsd:annotation>
+
+    <xsd:annotation>
+        <xsd:documentation>
+
+            (C) Copyright International Business Machines Corporation 2002
+
+        </xsd:documentation>
+    </xsd:annotation>
+
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="port-component-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+
+                The port-component-ref element declares a client dependency
+                on the container for resolving a Service Endpoint Interface
+                to a WSDL port. It optionally associates the Service Endpoint
+                Interface with a particular port-component. This is only used
+                by the container for a Service.getPort(Class) method call.
+
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            
+            <xsd:element name="service-endpoint-interface"
+                         type="javaee:fully-qualified-classType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The service-endpoint-interface element defines a fully qualified
+                        Java class that represents the Service Endpoint Interface of a
+                        WSDL port.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="enable-mtom"
+                         type="javaee:true-falseType"
+                         minOccurs="0" maxOccurs="1">
+                
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        Used to enable or disable SOAP MTOM/XOP mechanism on the client
+                        side for a port-component.
+                        
+                        Not to be specified for JAX-RPC runtime
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="port-component-link"
+                         type="javaee:string"
+                         minOccurs="0" maxOccurs="1">
+                <xsd:annotation>
+                    
+                    <xsd:documentation>
+                        
+                        The port-component-link element links a port-component-ref
+                        to a specific port-component required to be made available
+                        by a service reference.
+                        
+                        The value of a port-component-link must be the
+                        port-component-name of a port-component in the same module
+                        or another module in the same application unit. The syntax
+                        for specification follows the syntax defined for ejb-link
+                        in the EJB 2.0 specification.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:group name="service-refGroup">
+        <xsd:sequence>
+            <xsd:element name="service-ref"
+                         type="javaee:service-refType"
+                         minOccurs="0" maxOccurs="unbounded">
+                <xsd:key name="service-ref_handler-name-key">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            
+                            Defines the name of the handler. The name must be unique
+                            within the module.
+                            
+                        </xsd:documentation>
+                        
+                    </xsd:annotation>
+                    <xsd:selector xpath="javaee:handler"/>
+                    <xsd:field xpath="javaee:handler-name"/>
+                </xsd:key>
+            </xsd:element>
+        </xsd:sequence>
+    </xsd:group>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="service-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The service-ref element declares a reference to a Web
+                service. It contains optional description, display name and
+                icons, a declaration of the required Service interface,
+                an optional WSDL document location, an optional set
+                of JAX-RPC mappings, an optional QName for the service element,
+                an optional set of Service Endpoint Interfaces to be resolved
+                by the container to a WSDL port, and an optional set of handlers.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:group ref="javaee:descriptionGroup"/>
+            
+            <xsd:element name="service-ref-name"
+                         type="javaee:jndi-nameType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The service-ref-name element declares logical name that the
+                        components in the module use to look up the Web service. It
+                        is recommended that all service reference names start with
+                        "service/".
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="service-interface"
+                         type="javaee:fully-qualified-classType">
+                
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The service-interface element declares the fully qualified class
+                        name of the JAX-RPC Service interface the client depends on.
+                        In most cases the value will be javax.xml.rpc.Service.  A JAX-RPC
+                        generated Service Interface class may also be specified.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="service-ref-type"
+                         type="javaee:fully-qualified-classType"
+                         minOccurs="0" maxOccurs="1">
+                <xsd:annotation>
+                    
+                    <xsd:documentation>
+                        
+                        The service-ref-type element declares the type of the service-ref
+                        element that is injected or returned when a JNDI lookup is done.
+                        This must be either a fully qualified name of Service class or
+                        the fully qualified name of service endpoint interface class.
+                        This is only used with JAX-WS runtime where the corresponding
+                        @WebServiceRef annotation can be used to denote both a Service
+                        or a Port.
+                        
+                        If this is not specified, then the type of service-ref element
+                        that is injected or returned when a JNDI lookup is done is
+                        always a Service interface/class.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="wsdl-file"
+                         type="javaee:xsdAnyURIType"
+                         minOccurs="0" maxOccurs="1">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The wsdl-file element contains the URI location of a WSDL
+                        file. The location is relative to the root of the module.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="jaxrpc-mapping-file"
+                         type="javaee:pathType"
+                         minOccurs="0" maxOccurs="1">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The jaxrpc-mapping-file element contains the name of a file that
+                        describes the JAX-RPC mapping between the Java interaces used by
+                        the application and the WSDL description in the wsdl-file.  The
+                        file name is a relative path within the module file.
+                        
+                        This is not required when JAX-WS based runtime is used.
+                        
+                    </xsd:documentation>
+                    
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="service-qname"
+                         type="javaee:xsdQNameType"
+                         minOccurs="0" maxOccurs="1">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The service-qname element declares the specific WSDL service
+                        element that is being refered to.  It is not specified if no
+                        wsdl-file is declared.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+                
+            </xsd:element>
+            
+            <xsd:element name="port-component-ref"
+                         type="javaee:port-component-refType"
+                         minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The port-component-ref element declares a client dependency
+                        on the container for resolving a Service Endpoint Interface
+                        to a WSDL port. It optionally associates the Service Endpoint
+                        Interface with a particular port-component. This is only used
+                        by the container for a Service.getPort(Class) method call.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:choice>
+                <xsd:element name="handler"
+                      type="javaee:service-ref_handlerType"
+                      minOccurs="0" maxOccurs="unbounded">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            
+                            Declares the handler for a port-component. Handlers can
+                            access the init-param name/value pairs using the
+                            HandlerInfo interface. If port-name is not specified, the
+                            handler is assumed to be associated with all ports of the
+                            service.
+                            
+                            To be used with JAX-RPC based runtime only.
+                            
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+                
+                <xsd:element name="handler-chains"
+                      type="javaee:service-ref_handler-chainsType"
+                      minOccurs="0" maxOccurs="1">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            To be used with JAX-WS based runtime only.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+            </xsd:choice>
+            
+            <xsd:group ref="javaee:resourceGroup"/>
+            
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="service-ref_handler-chainType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The handler-chain element defines the handlerchain.
+                Handlerchain can be defined such that the handlers in the
+                handlerchain operate,all ports of a service, on a specific
+                port or on a list of protocol-bindings. The choice of elements
+                service-name-pattern, port-name-pattern and protocol-bindings
+                are used to specify whether the handlers in handler-chain are
+                for a service, port or protocol binding. If none of these
+                choices are specified with the handler-chain element then the
+                handlers specified in the handler-chain will be applied on
+                everything.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            
+            <xsd:choice minOccurs="0" maxOccurs="1">
+                <xsd:element name="service-name-pattern"
+                             type="javaee:service-ref_qname-pattern" />
+                <xsd:element name="port-name-pattern"
+                             type="javaee:service-ref_qname-pattern" />
+                <xsd:element name="protocol-bindings"
+                             type="javaee:service-ref_protocol-bindingListType"/>
+                
+            </xsd:choice>
+            
+            <xsd:element name="handler"
+                         type="javaee:service-ref_handlerType"
+                         minOccurs="1" maxOccurs="unbounded"/>
+        </xsd:sequence>
+        
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="service-ref_handler-chainsType">
+        
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                The handler-chains element defines the handlerchains associated with this
+                service or service endpoint.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:sequence>
+            <xsd:element name="handler-chain"
+                         type="javaee:service-ref_handler-chainType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+        </xsd:sequence>
+        
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:complexType name="service-ref_handlerType">
+        <xsd:annotation>
+            <xsd:documentation>
+                
+                Declares the handler for a port-component. Handlers can access the
+                init-param name/value pairs using the HandlerInfo interface. If
+                port-name is not specified, the handler is assumed to be associated
+                with all ports of the service.
+                
+                Used in: service-ref
+                
+            </xsd:documentation>
+            
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:group ref="javaee:descriptionGroup"/>
+            <xsd:element name="handler-name"
+                         type="javaee:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        Defines the name of the handler. The name must be unique
+                        within the module.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+                
+            </xsd:element>
+            <xsd:element name="handler-class"
+                         type="javaee:fully-qualified-classType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        Defines a fully qualified class name for the handler
+                        implementation.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="init-param"
+                         type="javaee:param-valueType"
+                         minOccurs="0" maxOccurs="unbounded"/>
+            
+            <xsd:element name="soap-header"
+                         type="javaee:xsdQNameType"
+                         minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        Defines the QName of a SOAP header that will be processed
+                        by the handler.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="soap-role"
+                         type="javaee:string"
+                         minOccurs="0" maxOccurs="unbounded">
+                
+                <xsd:annotation>
+                    <xsd:documentation>
+                        
+                        The soap-role element contains a SOAP actor definition that
+                        the Handler will play as a role.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            
+            <xsd:element name="port-name"
+                         type="javaee:string"
+                         minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    
+                    <xsd:documentation>
+                        
+                        The port-name element defines the WSDL port-name that a
+                        handler should be associated with.
+                        
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="id" type="xsd:ID"/>
+    </xsd:complexType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:simpleType name="service-ref_protocol-URIAliasType">
+        <xsd:annotation>
+            <xsd:documentation>
+                Defines the type that is used for specifying tokens that
+                start with ## which are used to alias existing standard
+                protocol bindings and support aliases for new standard
+                binding URIs that are introduced in future specifications.
+                
+                The following tokens alias the standard protocol binding
+                URIs:
+                
+                ##SOAP11_HTTP = "http://schemas.xmlsoap.org/wsdl/soap/http"
+                ##SOAP11_HTTP_MTOM =
+                "http://schemas.xmlsoap.org/wsdl/soap/http?mtom=true"
+                ##SOAP12_HTTP = "http://www.w3.org/2003/05/soap/bindings/HTTP/"
+                ##SOAP12_HTTP_MTOM =
+                "http://www.w3.org/2003/05/soap/bindings/HTTP/?mtom=true"
+                ##XML_HTTP = "http://www.w3.org/2004/08/wsdl/http"
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:restriction base="xsd:token">
+            <xsd:pattern value="##.+"/>
+            
+        </xsd:restriction>
+    </xsd:simpleType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:simpleType name="service-ref_protocol-bindingListType">
+        <xsd:annotation>
+            <xsd:documentation>
+                Defines the type used for specifying a list of
+                protocol-bindingType(s). For e.g.
+                
+                ##SOAP11_HTTP ##SOAP12_HTTP ##XML_HTTP
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:list itemType="javaee:service-ref_protocol-bindingType"/>
+    </xsd:simpleType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:simpleType name="service-ref_protocol-bindingType">
+        <xsd:annotation>
+            <xsd:documentation>
+                Defines the type used for specifying the URI for the
+                protocol binding used by the port-component.  For
+                portability one could use one of the following tokens that
+                alias the standard binding types:
+                
+                ##SOAP11_HTTP
+                ##SOAP11_HTTP_MTOM
+                ##SOAP12_HTTP
+                ##SOAP12_HTTP_MTOM
+                ##XML_HTTP
+                
+                Other specifications could define tokens that start with ##
+                to alias new standard binding URIs that are introduced.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:union memberTypes="xsd:anyURI javaee:service-ref_protocol-URIAliasType"/>
+    </xsd:simpleType>
+    
+    <!-- **************************************************** -->
+
+    <xsd:simpleType name="service-ref_qname-pattern">
+        <xsd:annotation>
+            <xsd:documentation>
+                This is used to specify the QName pattern in the
+                attribute service-name-pattern and port-name-pattern in
+                the handler-chain element
+                
+                For example, the various forms acceptable here for
+                service-name-pattern attribute in handler-chain element
+                are :
+                
+                Exact Name: service-name-pattern="ns1:EchoService"
+                
+                In this case, handlers specified in this
+                handler-chain element will apply to all ports with
+                this exact service name. The namespace prefix must
+                have been declared in a namespace declaration
+                attribute in either the start-tag of the element
+                where the prefix is used or in an an ancestor
+                element (i.e. an element in whose content the
+                prefixed markup occurs)
+                
+                Pattern : service-name-pattern="ns1:EchoService*"
+                
+                In this case, handlers specified in this
+                handler-chain element will apply to all ports whose
+                Service names are like EchoService1, EchoServiceFoo
+                etc. The namespace prefix must have been declared in
+                a namespace declaration attribute in either the
+                start-tag of the element where the prefix is used or
+                in an an ancestor element (i.e. an element in whose
+                content the prefixed markup occurs)
+                
+                Wild Card : service-name-pattern="*"
+                
+                In this case, handlers specified in this handler-chain
+                element will apply to ports of all service names.
+                
+                The same can be applied to port-name attribute in
+                handler-chain element.
+                
+            </xsd:documentation>
+        </xsd:annotation>
+        
+        <xsd:restriction base="xsd:token">
+            <xsd:pattern value="\*|([\i-[:]][\c-[:]]*:)?[\i-[:]][\c-[:]]*\*?"/>
+        </xsd:restriction>
+        
+    </xsd:simpleType>
+    
+</xsd:schema>
diff --git a/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/xml.xsd b/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/xml.xsd
new file mode 100644
index 0000000000..81a9a72e05
--- /dev/null
+++ b/enterprise/j2ee.dd.webservice/src/org/netbeans/modules/j2ee/dd/impl/resources/xml.xsd
@@ -0,0 +1,130 @@
+<?xml version='1.0'?>
+<!--
+
+W3C Software and Document Notice and License
+
+This work is being provided by the copyright holders under the following license.
+
+License
+
+By obtaining and/or copying this work, you (the licensee) agree that you have
+read, understood, and will comply with the following terms and conditions.
+
+Permission to copy, modify, and distribute this work, with or without
+modification, for any purpose and without fee or royalty is hereby granted,
+provided that you include the following on ALL copies of the work or portions
+thereof, including modifications:
+
+- The full text of this NOTICE in a location viewable to users of the
+  redistributed or derivative work.
+- Any pre-existing intellectual property disclaimers, notices, or terms and
+  conditions. If none exist, the W3C Software and Document Short Notice should
+  be included.
+- Notice of any changes or modifications, through a copyright statement on the
+  new code or document such as "This software or document includes material
+  copied from or derived from [title and URI of the W3C document].
+  Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)."
+
+Disclaimers
+
+THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR
+ WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF
+MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE
+SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS,
+TRADEMARKS OR OTHER RIGHTS.
+
+COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT.
+
+The name and trademarks of copyright holders may NOT be used in advertising or
+publicity pertaining to the work without specific, written prior permission.
+Title to copyright in this work will at all times remain with copyright
+holders.
+
+Changes:
+
+- File content downloaded from https://www.w3.org/2001/xml.xsd
+- Added license information from https://www.w3.org/Consortium/Legal/2015/copyright-software-and-document
+
+-->
+
+<!DOCTYPE xs:schema PUBLIC "-//W3C//DTD XMLSCHEMA 200102//EN" "XMLSchema.dtd" >
+<xs:schema targetNamespace="http://www.w3.org/XML/1998/namespace" xmlns:xs="http://www.w3.org/2001/XMLSchema" xml:lang="en">
+
+ <xs:annotation>
+  <xs:documentation>
+   See http://www.w3.org/XML/1998/namespace.html and
+   http://www.w3.org/TR/REC-xml for information about this namespace.
+  </xs:documentation>
+ </xs:annotation>
+
+ <xs:annotation>
+  <xs:documentation>This schema defines attributes and an attribute group
+        suitable for use by
+        schemas wishing to allow xml:base, xml:lang or xml:space attributes
+        on elements they define.
+
+        To enable this, such a schema must import this schema
+        for the XML namespace, e.g. as follows:
+        &lt;schema . . .>
+         . . .
+         &lt;import namespace="http://www.w3.org/XML/1998/namespace"
+                    schemaLocation="http://www.w3.org/2001/03/xml.xsd"/>
+
+        Subsequently, qualified reference to any of the attributes
+        or the group defined below will have the desired effect, e.g.
+
+        &lt;type . . .>
+         . . .
+         &lt;attributeGroup ref="xml:specialAttrs"/>
+ 
+         will define a type which will schema-validate an instance
+         element with any of those attributes</xs:documentation>
+ </xs:annotation>
+
+ <xs:annotation>
+  <xs:documentation>In keeping with the XML Schema WG's standard versioning
+   policy, this schema document will persist at
+   http://www.w3.org/2001/03/xml.xsd.
+   At the date of issue it can also be found at
+   http://www.w3.org/2001/xml.xsd.
+   The schema document at that URI may however change in the future,
+   in order to remain compatible with the latest version of XML Schema
+   itself.  In other words, if the XML Schema namespace changes, the version
+   of this document at
+   http://www.w3.org/2001/xml.xsd will change
+   accordingly; the version at
+   http://www.w3.org/2001/03/xml.xsd will not change.
+  </xs:documentation>
+ </xs:annotation>
+
+ <xs:attribute name="lang" type="xs:language">
+  <xs:annotation>
+   <xs:documentation>In due course, we should install the relevant ISO 2- and 3-letter
+         codes as the enumerated possible values . . .</xs:documentation>
+  </xs:annotation>
+ </xs:attribute>
+
+ <xs:attribute name="space" default="preserve">
+  <xs:simpleType>
+   <xs:restriction base="xs:NCName">
+    <xs:enumeration value="default"/>
+    <xs:enumeration value="preserve"/>
+   </xs:restriction>
+  </xs:simpleType>
+ </xs:attribute>
+
+ <xs:attribute name="base" type="xs:anyURI">
+  <xs:annotation>
+   <xs:documentation>See http://www.w3.org/TR/xmlbase/ for
+                     information about this attribute.</xs:documentation>
+  </xs:annotation>
+ </xs:attribute>
+
+ <xs:attributeGroup name="specialAttrs">
+  <xs:attribute ref="xml:base"/>
+  <xs:attribute ref="xml:lang"/>
+  <xs:attribute ref="xml:space"/>
+ </xs:attributeGroup>
+
+</xs:schema>


 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org
For additional commands, e-mail: notifications-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists